Difference between revisions of "SoC 2010 ASF Demuxer"
Line 41: | Line 41: | ||
==Produced code== | ==Produced code== | ||
− | For convenience everything is hosted in [http://github.com/juhovh/vlc github] repository. The master branch will | + | For convenience everything is hosted in [http://github.com/juhovh/vlc github] repository. There are at least three branches available, plus possibly some extra branches depending on the need. The meaning of the branches is as follows: |
+ | |||
+ | '''master''' - Follows the VLC master in [git://git.videolan.org/vlc.git] plus patches | ||
+ | '''vlc-1.1''' - Follows the VLC 1.1 branch in [git://git.videolan.org/vlc/vlc-1.1.git] plus patches | ||
+ | '''libasf''' - Branched from VLC 1.1 for now because it's more stable, contains experimental ASF code | ||
+ | |||
+ | The new code will first enter the ''libasf'' branch and when it's stable enough I will port it for the 1.2 version and push to ''master''. The main idea is to have only that kind of code that can be merged to upstream in ''master'' and ''vlc-1.1'' branches. The ''vlc-1.1'' branch is mainly for patching possible small issues that come up in VLC 1.1 or backporting changes from ''master'' when appropriate. |
Revision as of 09:03, 23 May 2010
This project is part of Google Summer of Code 2010.
|
Contents
ASF and other demuxer support
Abstract
I was selected to do a project related to ASF and Matroska demuxers, but since there's some overlap related to Matroska, my main goal now is to improve both the ASF demuxer and muxer as much as I can and then find another similar project to work on the rest of the time. It's worth to note that the timeline on this website is just a suggestion, and it's no problem to work on small independent patches during the time as well. I like to do things well on the first try, that's why the schedule is not made too tight.
Information
I'm a student at Aalto University School of Science and Technology and I hope this is my final year here. I've been a student since 2003 and plan to graduate during summer 2010. Partly because of all this I might have some other things to take care of until the end of June. The plan is to work full time on this project from July to August however. I have a personal website that I made some years ago, it has most of the useful information about myself.
Timeline
Date | Period | Description |
---|---|---|
April 26 - May 24 | Community bonding | Getting more familiar with the VLC code base, some small fixes. |
May 24 - May 30 | Week 1 | Review all the existing code, map out needed features. |
May 31 - June 6 | Week 2 | Start cleaning up the demuxer code, go through existing related bugs. |
June 7 - June 13 | Week 3 | Write a working VLC demuxer plugin with a clear API. |
June 14 - June 20 | Week 4 | Work on an API to combine the demuxing and muxing code together. |
June 21 - June 27 | Week 5 | Finish and review the muxing code, write some test cases. |
June 28 - July 4 | Week 6 | Write a working VLC muxer plugin using the rewritten muxer. |
July 5 - July 11 | Week 7 | Extra cleaning up period, because there's always something that slips the deadline. |
July 12 - July 18 | Week 8 | (small extra project, to be discussed with mentors) |
July 19 - July 25 | Week 9 | (small extra project, to be discussed with mentors) |
July 26 - August 1 | Week 10 | Start finishing up (write test suites, run code with valgrind). |
August 2 - August 8 | Week 11 | Continue finishing up. |
August 9 - August 15 | Week 12 | Finish up and do any final testing. |
Produced code
For convenience everything is hosted in github repository. There are at least three branches available, plus possibly some extra branches depending on the need. The meaning of the branches is as follows:
master - Follows the VLC master in [1] plus patches vlc-1.1 - Follows the VLC 1.1 branch in [2] plus patches libasf - Branched from VLC 1.1 for now because it's more stable, contains experimental ASF code
The new code will first enter the libasf branch and when it's stable enough I will port it for the 1.2 version and push to master. The main idea is to have only that kind of code that can be merged to upstream in master and vlc-1.1 branches. The vlc-1.1 branch is mainly for patching possible small issues that come up in VLC 1.1 or backporting changes from master when appropriate.