Several questions on osxvideosink

Andoni Morales ylatuya at
Sat Jul 6 05:44:18 PDT 2013

2013/7/6 Alexey Chernov <4ernov at>

> Hello,
> some time ago I fixed some minor problems in osxvideosink, but there're
> some
> more remaining ones which I'm working at now. There're also some questions
> on
> code and structure of osxvideosink which I hope someone could answer.
> 1. There's a piece of code under RUN_NS_APP_THREAD definition. What's the
> exact
> purpose of that? If I got it right, it tries to use NS application main
> loop
> instead of Glib main loop to make the element work even if Glib main loop
> is
> not running. But is there any point to have that? I believe, all the rest
> of
> GStreamer elements and core wouldn't work without Glib main loop rotating.
> Please, correct me if I'm wrong.

GStreamer apps can run without a glib main loop running. We need the NS run
loop for Cocoa when the sink needs to create its own window and there isn't
any NS run loop running, like for instance with gst-launch.
This conditional code is used for  OS X <= 10.5 (

> 2. When ontaining a window to display video
> (gst_osx_video_sink_osxwindow_create() function in osxvideosink.m) it first
> posts 'have-ns-view' message in hope that someone would receive it and take
> inner GLView (actually responsible for displaying video) to subviews.
> 'Embed'
> property also serves this purpose. Is it really needed functionality given
> that we have GstVideoOverlay interface with methods exactly for this case?
> The
> problem is that it obfuscates the code of
> gst_osx_video_sink_osxwindow_create() considerably as we have to wait for
> answer both on 'have-ns-view' message and
> gst_video_overlay_prepare_window_handle() there.

This was kept in 0.10 for backwards compatibility in the early stage of
this sink and it should be removed in 1.0

> 3. Would anyone mind if we split osxvideosink.h(.m) to two files with one
> have
> C code of helper functions and another one have Objective C code of
> GstOSXVideoSinkObject and some other objects? I think, it could make the
> whole
> code simpler.

Sure, go ahead :)


> Best regards,
> Alexey Chernov
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at

Andoni Morales Alastruey

LongoMatch:The Digital Coach
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the gstreamer-devel mailing list