Using VideoLAN client as an embedded component

Samuel Hocevar sam at zoy.org
Thu Jun 27 23:58:25 CEST 2002


On Thu, Jun 27, 2002, Rajas Sambhare wrote:

> 1. How feasible will it be to use VideoLAN as an embedded component?

   Pretty easy real soon now. The 0.5.x versions of the VideoLAN client
(currently only in CVS) will provide a library with a simple API for
embedding. I'm currently working on a Mozilla plugin [1] which does
exactly this.

> I don't really know VideoLAN very well to be able to make such an
> analysis. The features we need are:
> 	a. Start, stop, pause, seek (the pause and seek are crucial for
> 	transcribing)

   There are hooks for this. The current player might not please you
terribly because there is a little delay (due to buffering issues)
before the movie really pauses or seeks, but I think this can be worked
out.

> 	b. MPEG1, MPEG2 support, VideoLAN seems to have this.

   Yes. No problem here.

> 	c. Audio extraction for the waveform display.

   This will require some work. vlc already has a simple plugin which
displays a waveform [2] but it's really a quick hack.

> 	d. Resizable video, including full screen playback.

   No problem here, vlc does arbitrary scaling and full screen.

> 2. Currently the embedding approach we seem to be thinking of is simply
> to write a higher level wrapper API which encapsulates the video
> component. Any suggestions?

   Seems reasonable to me. The libvlc API currently looks like this:

    * vlc_create, vlc_init, vlc_close, vlc_destroy for system stuff
    * vlc_add_target, vlc_run, vlc_stop for playback

   I am currently adding stop, pause, play controls to this API for
Javascript scriptability of my plugin, and more will come, so just keep
an eye on the CVS checkins if you want to see how it evolves.

> 3. Finally how well will VideoLAN integrate with wxPython (and
> wxWindows)?

   I'm afraid I cannot answer you right now. vlc is completely interface
agnostic, so wxWindows shouldn't be a problem. And I don't expect any
big issues with writing a wxPython wrapper for the forthcoming libvlc.

   But you never know ... vlc makes extensive use of threads, which
might cause unexpected problems if wxWindows for instance isn't thread
safe. I got a lot of problems with Motif.

[1] http://zoy.org/~sam/vlc/vlc-plugin.jpeg
[2] http://zoy.org/~sam/vlc/vlc-scope.jpeg

Regards,
-- 
Sam.

-- 
This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://www.videolan.org/lists.html
If you are in trouble, please contact <postmaster at videolan.org>



More information about the vlc-devel mailing list