<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">2013/7/6 Alexey Chernov <span dir="ltr"><<a href="mailto:4ernov@gmail.com" target="_blank">4ernov@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Hello,<br>
<br>
some time ago I fixed some minor problems in osxvideosink, but there're some<br>
more remaining ones which I'm working at now. There're also some questions on<br>
code and structure of osxvideosink which I hope someone could answer.<br>
<br>
1. There's a piece of code under RUN_NS_APP_THREAD definition. What's the exact<br>
purpose of that? If I got it right, it tries to use NS application main loop<br>
instead of Glib main loop to make the element work even if Glib main loop is<br>
not running. But is there any point to have that? I believe, all the rest of<br>
GStreamer elements and core wouldn't work without Glib main loop rotating.<br>
Please, correct me if I'm wrong.<br></blockquote><div><br></div><div>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.<br>
This conditional code is used for OS X <= 10.5 (<a href="http://cgit.freedesktop.org/gstreamer-sdk/gst-plugins-good/tree/sys/osxvideo/osxvideosink.h#n43">http://cgit.freedesktop.org/gstreamer-sdk/gst-plugins-good/tree/sys/osxvideo/osxvideosink.h#n43</a>) <br>
</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
2. When ontaining a window to display video<br>
(gst_osx_video_sink_osxwindow_create() function in osxvideosink.m) it first<br>
posts 'have-ns-view' message in hope that someone would receive it and take<br>
inner GLView (actually responsible for displaying video) to subviews. 'Embed'<br>
property also serves this purpose. Is it really needed functionality given<br>
that we have GstVideoOverlay interface with methods exactly for this case? The<br>
problem is that it obfuscates the code of<br>
gst_osx_video_sink_osxwindow_create() considerably as we have to wait for<br>
answer both on 'have-ns-view' message and<br>
gst_video_overlay_prepare_window_handle() there.<br></blockquote><div><br></div><div>This was kept in 0.10 for backwards compatibility in the early stage of this sink and it should be removed in 1.0 <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
3. Would anyone mind if we split osxvideosink.h(.m) to two files with one have<br>
C code of helper functions and another one have Objective C code of<br>
GstOSXVideoSinkObject and some other objects? I think, it could make the whole<br>
code simpler.<br></blockquote><div><br></div><div>Sure, go ahead :)<br><br></div><div>Cheers,<br></div><div>Andoni <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Best regards,<br>
Alexey Chernov<br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Andoni Morales Alastruey<br><br>LongoMatch:The Digital Coach<br><a href="http://www.longomatch.ylatuya.es">http://www.longomatch.ylatuya.es</a>
</div></div>