diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | docs/plugins/Makefile.am | 5 | ||||
-rw-r--r-- | docs/plugins/gst-plugins-bad-plugins-sections.txt | 8 | ||||
-rw-r--r-- | docs/plugins/gst-plugins-bad-plugins.args | 22 | ||||
-rw-r--r-- | sys/osxvideo/osxvideosink.m | 37 |
5 files changed, 78 insertions, 3 deletions
@@ -1,3 +1,12 @@ +2007-05-22 Edward Hervey <edward@fluendo.com> + + * docs/plugins/Makefile.am: + Also look for .m (objectivec) files. + * docs/plugins/gst-plugins-bad-plugins-sections.txt: + * docs/plugins/gst-plugins-bad-plugins.args: + * sys/osxvideo/osxvideosink.m: + Add documentation for element and properties. + 2007-05-21 Stefan Kost <ensonic@users.sf.net> * ChangeLog: diff --git a/docs/plugins/Makefile.am b/docs/plugins/Makefile.am index ac24fec2..73bdbf83 100644 --- a/docs/plugins/Makefile.am +++ b/docs/plugins/Makefile.am @@ -50,7 +50,7 @@ SCAN_OPTIONS= #EXTRA_DIST = gstreamer.types.in gstreamer.hierarchy $(DOC_MODULE)-sections.txt gstreamer-sections.txt $(DOC_MAIN_SGML_FILE) # Extra options to supply to gtkdoc-mkdb. -MKDB_OPTIONS=--sgml-mode --source-suffixes=c,h,cc +MKDB_OPTIONS=--sgml-mode --source-suffixes=c,h,cc,m # Extra options to supply to gtkdoc-fixref. FIXXREF_OPTIONS=--extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gobject \ @@ -61,7 +61,7 @@ FIXXREF_OPTIONS=--extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gobject \ # Used for dependencies. HFILE_GLOB=$(DOC_SOURCE_DIR)/*/*/*.h -CFILE_GLOB=$(DOC_SOURCE_DIR)/*/*/*.c $(DOC_SOURCE_DIR)/*/*/*.cc +CFILE_GLOB=$(DOC_SOURCE_DIR)/*/*/*.c $(DOC_SOURCE_DIR)/*/*/*.cc $(DOC_SOURCE_DIR)/*/*/*.m # this is a wingo addition # thomasvs: another nice wingo addition would be an explanation on why @@ -92,6 +92,7 @@ EXTRA_HFILES = \ $(top_srcdir)/sys/directdraw/gstdirectdrawsink.h \ $(top_srcdir)/sys/directsound/gstdirectsoundsink.h \ $(top_srcdir)/sys/waveform/gstwaveformsink.h \ + $(top_srcdir)/sys/osxvideo/osxvideosink.h \ $(top_srcdir)/ext/directfb/dfbvideosink.h \ $(top_srcdir)/ext/jack/gstjackaudiosink.h \ $(top_srcdir)/ext/musicbrainz/gsttrm.h \ diff --git a/docs/plugins/gst-plugins-bad-plugins-sections.txt b/docs/plugins/gst-plugins-bad-plugins-sections.txt index 8387d060..bd9ba0d5 100644 --- a/docs/plugins/gst-plugins-bad-plugins-sections.txt +++ b/docs/plugins/gst-plugins-bad-plugins-sections.txt @@ -45,6 +45,14 @@ GstOSXVideoSink <TITLE>osxvideosink</TITLE> <SUBSECTION Standard> GstOSXVideoSinkClass +<SUBSECTION Private> +GST_IS_OSX_VIDEO_SINK +GST_IS_OSX_VIDEO_SINK_CLASS +GST_OSX_VIDEO_SINK +GST_OSX_VIDEO_SINK_CLASS +GST_TYPE_OSXVIDEOBUFFER +GST_TYPE_OSX_VIDEO_SINK +GstOSXWindow </SECTION> <SECTION> diff --git a/docs/plugins/gst-plugins-bad-plugins.args b/docs/plugins/gst-plugins-bad-plugins.args index d4ed6597..3a1f1605 100644 --- a/docs/plugins/gst-plugins-bad-plugins.args +++ b/docs/plugins/gst-plugins-bad-plugins.args @@ -17103,4 +17103,24 @@ <NICK>Attenuation of the sound</NICK> <BLURB>The attenuation for the directsound buffer (default is 0 so the directsound buffer will not be attenuated).</BLURB> <DEFAULT>0</DEFAULT> -</ARG>
\ No newline at end of file +</ARG> + +<ARG> +<NAME>GstOSXVideoSink::embed</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>embed</NICK> +<BLURB>When enabled, it can be embedded.</BLURB> +<DEFAULT>FALSE</DEFAULT> +</ARG> + +<ARG> +<NAME>GstOSXVideoSink::fullscreen</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>fullscreen</NICK> +<BLURB>When enabled, the view is fullscreen.</BLURB> +<DEFAULT>FALSE</DEFAULT> +</ARG> diff --git a/sys/osxvideo/osxvideosink.m b/sys/osxvideo/osxvideosink.m index 45dda334..2bb0447b 100644 --- a/sys/osxvideo/osxvideosink.m +++ b/sys/osxvideo/osxvideosink.m @@ -23,6 +23,29 @@ * */ +/** + * SECTION:element-osxvideosink + * + * <refsect2> + * <para> + * The OSXVideoSink renders video frames to a MacOSX window. The video output + * can be directed to a window embedded in an existing NSApp. This can be done + * by setting the "embed" property to #TRUE. When the NSView to be embedded is + * created an element #GstMessage with a name of 'have-ns-view' will be created + * and posted on the bus. The pointer to the NSView to embed will be in the + * 'nsview' field of that message. If no embedding is requested, the plugin will + * create a standalone window. + * </para> + * <title>Examples</title> + * <para> + * Simple timeline to test the sink : + * <programlisting> + * gst-launch-0.10 -v videotestsrc ! osxvideosink + * </programlisting> + * </para> + * </refsect2> + */ + #include "config.h" /* Object header */ @@ -560,9 +583,23 @@ gst_osx_video_sink_class_init (GstOSXVideoSinkClass * klass) gstbasesink_class->render = gst_osx_video_sink_show_frame; gstelement_class->change_state = gst_osx_video_sink_change_state; + /** + * GstOSXVideoSink:embed + * + * Set to #TRUE if you are embedding the video window in an application. + * + **/ + g_object_class_install_property (gobject_class, ARG_EMBED, g_param_spec_boolean ("embed", "embed", "When enabled, it " "can be embedded", FALSE, G_PARAM_READWRITE)); + + /** + * GstOSXVideoSink:fullscreen + * + * Set to #TRUE to have the video displayed in fullscreen. + **/ + g_object_class_install_property (gobject_class, ARG_FULLSCREEN, g_param_spec_boolean ("fullscreen", "fullscreen", "When enabled, the view " "is fullscreen", FALSE, |