[vlc-devel] RE : What's the best to communicate between an app and avideo output plugin?
brezhoneg1 at yahoo.fr
Thu Jan 15 14:05:55 CET 2009
I had a similar problem a few weeks ago.
A patch was applied to vmem.c that allows passing parameters at the
media/media_player level for the vmem plugin.
With latest vlc (git), you can now use multiple vmem (via multiple
medias/media_players) within one single libvlc instance.
De : vlc-devel-bounces at videolan.org
[mailto:vlc-devel-bounces at videolan.org] De la part de Julien Pauty
Envoyé : jeudi 15 janvier 2009 11:23
À : vlc-devel at videolan.org
Objet : [vlc-devel] What's the best to communicate between an app and
avideo output plugin?
I wrote a video output plugin for the clutter toolkit, so that we can
use vlc to display videos in a texture. This will be particularly useful
to integrate vlc into media center applications.
I need to pass a texture reference to the video plugin so that the
plugin knows where to write video data. To do that, I use the string
parameters to pass options to the module, when building an instance of
libvlc, like what is done in the vmem module. My problem is that these
option are shared between several video output threads. Suppose I want
to display two videos in my application. I have to create two instances
of libvlc and to pass each time a reference to a different texture. The
problem is that the reference of the second texture will overwrite the
first ref in the option repository. I can circumvept this, by using some
communication data structure shared between the video output module and
the main application, but this seems quite dirty.
I also tried to use the config_PutPsz function to pass options to the
video output module, but this function seems to be available only from
modules and not from external applications.
So my overall question if the following. If I create an application that
uses libvlc to display video, what is the best way to communicate with
the video output module? Is there something else than the option strings
used when creating an instance of libvlc?
Thanks for your help,
More information about the vlc-devel