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

From VideoLAN Wiki
Jump to navigation Jump to search
(updated links)
 
(57 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 ==
Line 13: Line 13:
 
! Task  
 
! Task  
 
! Date of completion
 
! 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  
 
| Youtube API key, Authentication  
|  
+
| 11 June 2010
 
|-
 
|-
| Network Proxy support, Youtube credential storage
+
| Network Proxy support
|  
+
| 15 August 2010
 
|-
 
|-
| Sharing option, video export for Youtube
+
| Direct Video Upload!
|  
+
| 19 June 2010
 
|-
 
|-
| Direct Video Upload!
+
| YouTube XML Feed Parser
|  
+
| 5 July 2010
 
|-
 
|-
| Import media from Youtube (Search and Retrieval)
 
|
 
 
|}
 
|}
  
 +
== Short Term Goals ==
  
 +
0. Proxy support.
  
== Roadmap ==
+
1. XML parsing, copy url(s) to clipboard...
  
1. Get to know working of Youtube Protocols [DONE]
+
2. Handling Network/YT failure.
  
2. Hack VLMC and create repo. [DONE]
+
3. NSIS/Windows build problem.
  
3. Write Export Dialog. [DONE]
+
4. Mac detatched video widget bug.
 
 
4. Write mechanism to render movie to a temporary directory, while blocking video editing. [IN PROGRESS]
 
 
 
5. Write mechanism to refine video exporting method according to formats, quality etc.
 
 
 
6. Integrate Youtube settings (API key etc...) in VLMC.
 
 
 
7. Integrate network settings, like proxy etc.
 
 
 
8. Write authentication/networking tests.
 
 
 
9. Video Upload etc.<br>
 
  
 
== Proposed Timeline  ==
 
== Proposed Timeline  ==
Line 67: Line 67:
 
|-
 
|-
 
|  
 
|  
Implement and test authentication API in VLMC. Major UI portion should be implemented.  
+
Implement and test authentication API in VLMC.&nbsp;Export movie project + UI (supported formats). Start studying direct upload API. <br>
  
Work on export movie project to flv(or other supported formats). <br>  
+
|
 +
May 31 - June 20<br>  
  
Start studying and implementation of direct upload API. <br>
+
| Completed
 
 
| May 31 - June 20<br>
 
 
|-
 
|-
 
|  
 
|  
Direct upload must be implemented by now(+/-1 week). <br>
+
Direct upload must be implemented by now. <br>  
 
 
Add option in VLMC preferences to configure Network Proxy and manage Youtube credentials. <br>  
 
  
 
| June 20 - June 27  
 
| June 20 - June 27  
| <br>
+
| Completed.
 
|-
 
|-
 
|  
 
|  
Start working on video searching and retrieval from Youtube.<br>  
+
Add option in VLMC preferences to configure Network Proxy and manage Youtube credentials. <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  
 
| June 28 - July 25  
| <br>
+
| Completed.<br>
 
|-
 
|-
 
|  
 
|  
Given time, implement other Youtube APIs like: <br>
+
Other feature(s) in VLMC...<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  
 
| July 26 - August 8  
| <br>
+
| Completed.
 
|-
 
|-
 
|  
 
|  
Line 107: Line 96:
  
 
| August 9 - August 15  
 
| August 9 - August 15  
| <br>
+
| Completed
|-
+
|-  
 
| Submit patches to Google, SoC Over!  
 
| Submit patches to Google, SoC Over!  
 
| &gt;16 August  
 
| &gt;16 August  
| <br>
+
| DONE!
 
|}
 
|}
 +
 +
Tracker: https://spreadsheets.google.com/ccc?key=0Avd3p221yiM5dEg0WDBIY0ZkNXUzczRpVzNrWDNuUVE&hl=en#gid=0
  
 
== Repository  ==
 
== Repository  ==
  
Waiting for a repo at git.videolan.org For the time being using repo at Github: http://github.com/rohityadav/vlmc
+
=== 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]
 +
 
 +
* 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