Difference between revisions of "SoC 2010/Youtube Integration VLMC"

From VideoLAN Wiki
Jump to navigation Jump to search
(Asshole)
Line 1: Line 1:
{{SoCProject|year=2010|student=[[User:rohityadav|Rohit Yadav]]|mentor=[[User:etix|Ludovic Fauvet]]}}
 
  
= Youtube Integration+ in VLMC =
 
 
== Abstract ==
 
 
Youtube is the most popular video sharing website, right now. VLMC is a video editing software and having features in VLMC to search-retrieve videos, directly upload/update/delete videos on Youtube, within the application itself, would be awesome. The aim of this project is to write a small C++/Qt based Youtube client library for VLMC that provides her all the APIs to perform all those things.
 
 
== Milestones ==
 
 
{| class="wikitable"
 
|-
 
! Task
 
! Date of completion
 
|-
 
| Sharing option, video export/rendering for Youtube
 
| 24 May 2010
 
|-
 
| Port VLMC to Mac OS
 
| 27 May 2010
 
|-
 
| DEB/RPM support in Build System
 
| 29 May 2010
 
|-
 
| Youtube API key, Authentication
 
|
 
|-
 
| Network Proxy support, Youtube credential storage
 
 
|-
 
| Direct Video Upload!
 
|
 
|-
 
| Import media from Youtube (Search and Retrieval)
 
|
 
|}
 
 
== Short Term Goals ==
 
 
1. Write mechanism to refine video exporting method according to formats, quality etc.
 
 
2. Integrate network settings, like proxy etc. [IN PROGRESS]
 
 
3. Write authentication/networking tests.
 
 
4. Video Upload etc.
 
 
== Proposed Timeline  ==
 
 
{| class="wikitable"
 
|-
 
! Objective
 
! Proposed Duration
 
! Status
 
|-
 
| Get Youtube Developer Key, study authentication protocol and start hacking VLMC.
 
|
 
May 24 - May 30
 
 
| Completed
 
|-
 
|
 
Implement and test authentication API in VLMC. Export movie project + UI (supported formats).
 
Start studying and implementation of direct upload API. <br>
 
|
 
May 31 - June 20<br>
 
| In Progress
 
|-
 
|
 
Direct upload must be implemented by now(+/-1 week). <br>
 
 
Add option in VLMC preferences to configure Network Proxy and manage Youtube credentials. <br>
 
 
| June 20 - June 27
 
| In Progress
 
|-
 
|
 
Start working on video searching and retrieval from Youtube.<br>
 
 
Make custom widgets that hold video thumbnails, searching window that holds results...<br>
 
 
By now the project should reach completion of all major objectives.
 
 
| June 28 - July 25
 
| <br>
 
|-
 
|
 
Given time, implement other Youtube APIs like: <br>
 
 
updating video information, deleting video, create/update/delete playlist etc. <br>
 
 
Use these APIs in VLMC to implements more features.
 
 
| July 26 - August 8
 
| <br>
 
|-
 
|
 
Prepare final report and patch covering all the work done during the SoC.<br>
 
 
| August 9 - August 15
 
| <br>
 
|-
 
| Submit patches to Google, SoC Over!
 
| &gt;16 August
 
| <br>
 
|}
 
 
== Repository  ==
 
 
Repo at Github: http://github.com/rohityadav/vlmc
 
 
== Builds ==
 
 
VLMC 0.1.1:
 
* VLMC i386 deb:http://rohityadav.in/projects/videolan/VLMC-0.1.1-i386-Linux.deb
 
* VLMC i386 rpm: http://rohityadav.in/projects/videolan/VLMC-0.1.1-i386-Linux.rpm
 
* VLMC Mac App Bundle: http://rohityadav.in/projects/videolan/VLMC-0.1.1-i386MacOSX(Buggy).zip
 
 
VLC 1.1git:
 
* VLC 1.1-rc 32Bit Mac OS 10.6 Build : http://rohityadav.in/projects/videolan/vlc-1.1.0-rc.dmg
 
 
== References  ==
 
 
* Building VLMC from source visit: [http://wiki.videolan.org/Building_VLMC Building VLMC from Source]
 
 
* Building x264 and FFMPEG from src: http://ubuntuforums.org/showthread.php?t=786095
 
 
* VLC Build Configuration:
 
 
        mkdir build && cd build && ../configure --prefix=/usr --enable-snapshot --enable-debug \
 
        --enable-dbus-control --enable-mozilla \
 
        --enable-lirc --enable-live555 \
 
        --enable-x264 --with-x264-tree=../extras/x264-trunk --enable-shout --enable-taglib \
 
        --enable-v4l --enable-dvb --enable-realrtsp --enable-svg  --enable-dvdread \
 
        --enable-dc1394 --enable-dv --enable-theora --enable-faad --enable-twolame --enable-real \
 
        --enable-flac --enable-tremor --enable-dirac \
 
        --enable-skins2 --enable-qt4 --enable-ncurses --enable-aa --enable-caca --enable-portaudio \
 
        --enable-jack --enable-xosd --enable-avcodec --enable-avformat --enable-swscale \
 
        --enable-mad --enable-a52 --enable-libmpeg2 --enable-dvdnav --enable-vorbis --enable-ogg \
 
        --enable-theora --enable-mkv --enable-freetype --enable-fribidi --enable-speex --enable-flac \
 
        --enable-alsa --with-ffmpeg-mp3lame --with-ffmpeg-faac
 

Revision as of 21:33, 29 May 2010