[vlc-devel] [PATCH] Add a libvlc_set_video_output function

Rémi Denis-Courmont remi at remlab.net
Wed Feb 12 09:16:57 CET 2014


On Wed, 12 Feb 2014 00:57:13 +0200, Hugo Beauzée-Luyssen <hugo at beauzee.fr>
wrote:
> On Tue, Feb 11, 2014 at 9:20 PM, Rémi Denis-Courmont <remi at remlab.net>
> wrote:
>> For video, the problem never existed to begin with. We already have
>> setters
>> for the parent window - this also covers monitor selection. And those
>> setters
> 
> I'm assuming you're referring to
> libvlc_media_player_set_{xwindow,hwnd,nsobject}, which indeed are
> enough for most usages.
> In my specific case however, I'd like to use the dummy vout in some
> specific case, which is not possible (unless I missed the proper way
> to do so), except by setting it globally, using --vout=dummy as
> libvlc_new's argv parameter.

You can achieve the same thing with output callbacks already. Or you can
turn off the video track, which is far better. Or you can output to a
non-visible window, which allows live toggling too.

Your function has absolutely zero benefits over the libvlc_new() argv
approach. It is dependent on the platform, version, set of available
plugins, knowledge of the plugin names, in the exact same way (assuming we
never rename the "vout" parameter, which we indeed probably never will).
This is exaxctly how libvlc functions should *not* be.

> This works fine on linux as, when I want to render to a widget, the
> proper vout is set by libvlc_media_player_set_xwindow. However,
> neither _set_hwnd nor _set_nsobject are forcing the appropriate vout
> back, thus leading dummy vout to still be used.

If you think there is a bug, you are welcome to fix it.

-- 
Rémi Denis-Courmont
Sent from my collocated server



More information about the vlc-devel mailing list