SoC 2007 Project Mac OS X Framework
Revision as of 13:26, 3 May 2007 by Pdherbemont (talk | contribs) (Make delegate callback (events) get called on main thread.)
This project is part of Google Summer of Code 2007.
|
Contents
Introduction
I (Pierre d'Herbemont) will use this wiki page to detail the work I'll do for the GSoC 2007. My mentor for this project is Felix Kühne.
Project Objectives
More information in my original Proposal.
Status Summary
The simple test app that links to VLC.framework is able to play a given video just fine. Lots of work still needed in the playlist management area and in event handling though.
Timeline
Task Description | Due Date | Accomplished |
---|---|---|
My proposition has been accepted | N/A | Yes 12/04/2007 |
Work on setting up a git server to publish my work.
See Git (thanks to Dionoea). More could be done to set up something better but that's enough for me for now ;) |
15/04/2007 | Yes 13/04/2007 |
Implement the stub framework and the sample code that links to it.
See the commit on commit 1, commit 2. |
15/04/2007 | Yes 13/04/2007 |
First draft of the headers, plus partial implementation. Events, playlist, vout basic usage demo in the sample code.
We do have some draft which cover vout/playlist and shows how events will be relayed. The sample code is less advanced than expected but that's fine, given the wanted simplicity. We do have, as a side effected, implemented VLCPlaylistDataSource which is an NSOutlineView data source, and is an efficient way to display the playlist from guest app. |
29/04/2007 | Yes 29/04/2007 |
Event structure in place in MediaControl. | no due date | Yes 29/04/2007 |
Auto evalutation, keeping in mind my original Proposal: Would current VLC be able to work with the object defined? Is there any simplification possible? What changes to libvlc are needed?. | 29/04/2007 | No (delayed) |
Make delegate callback (events) get called on main thread. | 6/05/2007 | Yes 03/05/2007 |
Code repository
All the code I did for the GSoC is publicly stored on VideoLan's Git Repository for GSoC on the pdherbemont_branch branch. To check it out:
$ git clone git://git.videolan.org/vlc-soc.git $ cd vlc-soc
Now get my branch in a new local osx_framework branch:
$ git checkout -b osx_framework remotes/origin/pdherbemont_branch
And to keep sync-ed, tell git to use remote pdherbemont_branch for osx_framework.
$ git config branch.osx_framework.merge refs/heads/pdherbemont_branch
And tell git the remote repository is named origin.
$ git config branch.osx_framework.remote origin
Now a simple:
$ git pull
Should be enough to get synced.
Building the framework and the test app
- Build VLC as usual. see How to build VLC on Mac OS X.
- Build the framework
$ cd extra/MacOSX/Framework $ make
- Now open extra/MacOSX/Framework/Examples/test/test.xcodeproject with Xcode
- hit command-R
Voilà!