[gst-devel] osxvideosink: how to get the window id?

Antoine Martin antoine at nagafix.co.uk
Mon Apr 18 04:20:41 PDT 2011


On 06/23/2010 06:01 PM, Farkas Levente wrote:
> On 06/23/2010 12:27 PM, Philippe Normand wrote:
>> On Sun, 2010-06-13 at 07:30 -0700, Thomas Loewe wrote:
>>> Hi,
>>>
>>> as i understand the latest osxvideosink now supports the xoverlay interface
>>> and i can set the output window via gst_x_overlay_set_xwindow_id().
>>>
>>> My app (based on wxwidgets) is running fine on windows and linux, but on osx
>>> i dont know how to get the window id to redirect the video to my own window.
>>>
>>> Is there any example how to do this on osx?
>>>
>>> Thank you,
>>> Thomas
>>
>> The osxvideosink sends a pointer to a NSView to the application via a
>> message containing a have-ns-view structure, small snippet:
>>
>>     if (gst_structure_has_name(message->structure, "have-ns-view")) {
>>         videoWindow =(NSView*)
>> g_value_get_pointer(gst_structure_get_value(message->structure,
>> "nsview"));
>>
>> Then you can map the NSView to a NSWindow and show it. The message needs
>> to be handled synchronously by the application.
>>
>> If you want a complete example, Alessandro (twi_ on IRC) told me he has
>> one written in Python :)
> 
> if possible i also like to get that complete example:-)
+1

On Linux and Windows, I simply use:
gst.parse_launch(" .. ! .. ! ..")
Does this mean that it won't work for osxvideosink now?
Will I have to construct the pipeline manually and link the pads, etc
Really? Ouch.  :(

Thanks
Antoine



> thanks in advance.
> regards.
> 



More information about the gstreamer-devel mailing list