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

From VideoLAN Wiki
Jump to navigation Jump to search
(updated links)
 
(62 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{SoCProject|year=2010|student=[[User:rohityadav|Rohit Yadav]]|mentor=[[User:etix|Ludovic Fauvet]]}}
+
{{SoCProject|year=2010|student=[[User:rohityadav|Rohit Yadav]]|mentor=[[User:etix|Ludovic Fauvet]]}}  
  
=Youtube Integration in VLMC=
+
= Youtube Integration+ in VLMC =
  
==Abstract==
+
== Abstract ==
  
== Tasks ==
+
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 ==
==Roadmap==
 
  
 
{| class="wikitable"
 
{| class="wikitable"
! Goal !! Duration !! Status
 
 
|-
 
|-
|Get Youtube Developer Key, study authentication protocol and start hacking VLMC. ||April 24 - April 30||
+
! Task
 +
! Date of completion
 +
|-
 +
| Sharing option, video export/rendering for Youtube  
 +
| 24 May 2010
 
|-
 
|-
|Implement and test authentication API in VLMC. Major UI portion should be implemented.
+
| Port VLMC to Mac OS
|Work on export movie project to flv(or other supported formats).
+
| 27 May 2010
|Start studying and implementation of direct upload API. ||May 31 - June 20||
 
 
|-
 
|-
|Direct upload must be implemented by now(+/-1 week). Option in VLMC preference to configure Network Proxy and manage Youtube credentials. Start working on video searching and retrieval from Youtube.||June 20 - June  27||
+
| DEB/RPM support in Build System
 +
| 29 May 2010
 
|-
 
|-
|Work on making custom widget that hold video thumbnails, searching window (with results from Youtube displayed across pages). By now project should reach completion of major objective given under milestone section.  ||June 28 - July 25||
+
| Mac Bundle / DMG in Build System
 +
| 30 May 2010
 
|-
 
|-
|Implement other Youtube APIs like updating video information, deleting video, create/update/delete playlist etc. Use these APIs in VLMC ||July 26 - August 8||
+
| Youtube API key, Authentication
 +
| 11 June 2010
 
|-
 
|-
|Prepare final report for the mentor and patch covering all the work done during the SoC with all the documentation.||August 9 - August 15||
+
| Network Proxy support
 +
| 15 August 2010
 
|-
 
|-
|Submit patches to Google, SoC Over!||>16 August||
+
| Direct Video Upload!  
 +
| 19 June 2010
 +
|-
 +
| YouTube XML Feed Parser
 +
| 5 July 2010
 
|-
 
|-
 
|}
 
|}
  
== Milestones ==
+
== Short Term Goals ==
 +
 
 +
0. Proxy support.
 +
 
 +
1. XML parsing, copy url(s) to clipboard...
 +
 
 +
2. Handling Network/YT failure.
 +
 
 +
3. NSIS/Windows build problem.
 +
 
 +
4. Mac detatched video widget bug.
 +
 
 +
== Proposed Timeline  ==
 +
 
 
{| class="wikitable"
 
{| class="wikitable"
! Task !! Date of completion
 
 
|-
 
|-
| Youtube API key, Authentication ||
+
! Objective
 +
! Proposed Duration
 +
! Status
 
|-
 
|-
| Network Proxy support, Youtube credential storage ||
+
| Get Youtube Developer Key, study authentication protocol and start hacking VLMC.
 +
|  
 +
May 24 - May 30
 +
 
 +
| Completed
 
|-
 
|-
| Sharing option, video export for Youtube ||
+
|  
 +
Implement and test authentication API in VLMC.&nbsp;Export movie project + UI (supported formats). Start studying direct upload API. <br>
 +
 
 +
|  
 +
May 31 - June 20<br>
 +
 
 +
| Completed
 
|-
 
|-
| Direct Video Upload! ||
+
|  
 +
Direct upload must be implemented by now. <br>
 +
 
 +
| June 20 - June 27
 +
| Completed.
 
|-
 
|-
| Import media from Youtube (Search and Retrieval) ||
+
|  
 +
Add option in VLMC preferences to configure Network Proxy and manage Youtube credentials. <br>
 +
 
 +
| June 28 - July 25
 +
| Completed.<br>
 
|-
 
|-
| Multiple Video Import/Export support (if feasible/optional) ||
+
|  
 +
Other feature(s) in VLMC...<br>
 +
 
 +
| July 26 - August 8
 +
| Completed.
 
|-
 
|-
 +
|
 +
Prepare final report and patch covering all the work done during the SoC.<br>
 +
 +
| August 9 - August 15
 +
| Completed
 +
|-
 +
| Submit patches to Google, SoC Over!
 +
| &gt;16 August
 +
| DONE!
 
|}
 
|}
  
== Contact ==
+
Tracker: https://spreadsheets.google.com/ccc?key=0Avd3p221yiM5dEg0WDBIY0ZkNXUzczRpVzNrWDNuUVE&hl=en#gid=0
 +
 
 +
== Repository  ==
 +
 
 +
=== VLMC ===
 +
 
 +
VideoLAN Movie Creator is a non-linear editing software for video creation based on libVLC and running on Windows, Linux and Mac OS X.
 +
* http://github.com/bhaisaab/vlmc
 +
 
 +
=== Libishare ===
 +
 
 +
A small library that lets you share videos on popular video sharing sites such as YouTube.
 +
* http://github.com/bhaisaab/libishare
 +
 
 +
[https://www.ohloh.net/accounts/58276?ref=Detailed https://www.ohloh.net/accounts/58276/widgets/account_detailed.gif]
 +
 
 +
== Builds ==
 +
 
 +
Coming soon!
 +
 
 +
== References  ==
  
 +
* Building VLMC from source visit: [http://wiki.videolan.org/Building_VLMC Building VLMC from Source]
  
== Repository ==
+
* Building x264 and FFMPEG from src: http://ubuntuforums.org/showthread.php?t=786095
  
 +
* VLC Build Configuration:
  
== Building VLMC ==
+
  mkdir build && cd build     
  
For information on building VLMC from source visit: [http://wiki.videolan.org/Building_VLMC Building VLMC from Source]
+
  ../configure --prefix=/usr --enable-snapshot --enable-dbus-control --enable-mozilla --enable-lirc --enable-live555 --enable-x264 --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 --enable-x11 --enable-xvideo --disable-gtk --enable-sdl --enable-avcodec --enable-avformat --enable-swscale --enable-mad --enable-libdvbpsi --enable-a52 --enable-libmpeg2 --enable-dvdnav --enable-faad --enable-vorbis --enable-ogg --enable-theora --enable-faac --enable-mkv --enable-freetype --enable-fribidi --enable-speex --enable-flac --enable-alsa --disable-kde --enable-qt4 --enable-ncurses --enable-release

Latest revision as of 21:31, 9 June 2012

This project is part of Google Summer of Code 2010.
Student: Rohit Yadav
Mentor: 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

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
Mac Bundle / DMG in Build System 30 May 2010
Youtube API key, Authentication 11 June 2010
Network Proxy support 15 August 2010
Direct Video Upload! 19 June 2010
YouTube XML Feed Parser 5 July 2010

Short Term Goals

0. Proxy support.

1. XML parsing, copy url(s) to clipboard...

2. Handling Network/YT failure.

3. NSIS/Windows build problem.

4. Mac detatched video widget bug.

Proposed Timeline

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 direct upload API.

May 31 - June 20

Completed

Direct upload must be implemented by now.

June 20 - June 27 Completed.

Add option in VLMC preferences to configure Network Proxy and manage Youtube credentials.

June 28 - July 25 Completed.

Other feature(s) in VLMC...

July 26 - August 8 Completed.

Prepare final report and patch covering all the work done during the SoC.

August 9 - August 15 Completed
Submit patches to Google, SoC Over! >16 August DONE!

Tracker: https://spreadsheets.google.com/ccc?key=0Avd3p221yiM5dEg0WDBIY0ZkNXUzczRpVzNrWDNuUVE&hl=en#gid=0

Repository

VLMC

VideoLAN Movie Creator is a non-linear editing software for video creation based on libVLC and running on Windows, Linux and Mac OS X.

Libishare

A small library that lets you share videos on popular video sharing sites such as YouTube.

account_detailed.gif

Builds

Coming soon!

References

  • VLC Build Configuration:
 mkdir build && cd build      
 ../configure --prefix=/usr --enable-snapshot --enable-dbus-control --enable-mozilla --enable-lirc --enable-live555 --enable-x264 --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 --enable-x11 --enable-xvideo --disable-gtk --enable-sdl --enable-avcodec --enable-avformat --enable-swscale --enable-mad --enable-libdvbpsi --enable-a52 --enable-libmpeg2 --enable-dvdnav --enable-faad --enable-vorbis --enable-ogg --enable-theora --enable-faac --enable-mkv --enable-freetype --enable-fribidi --enable-speex --enable-flac --enable-alsa --disable-kde --enable-qt4 --enable-ncurses --enable-release