diff options
author | Lionel Landwerlin <llandwerlin@gmail.com> | 2013-07-22 15:23:12 +0100 |
---|---|---|
committer | Lionel Landwerlin <llandwerlin@gmail.com> | 2013-07-22 16:13:48 +0100 |
commit | c97afcf3c3a86a150ffb46cd82a214d6b82492e4 (patch) | |
tree | 2dcf486e209682db16517f999dc1288ca5afa548 | |
parent | 8697f58428f662a6113d9a72d2e8fc853e53751a (diff) | |
download | clutter-gst-c97afcf3c3a86a150ffb46cd82a214d6b82492e4.tar.gz |
update documentation
24 files changed, 295 insertions, 444 deletions
diff --git a/clutter-gst/Makefile.am b/clutter-gst/Makefile.am index 36cc104..fb88f27 100644 --- a/clutter-gst/Makefile.am +++ b/clutter-gst/Makefile.am @@ -2,7 +2,7 @@ include $(top_srcdir)/build/autotools/Makefile.am.silent NULL = # -SUBDIRS = shaders +SUBDIRS = CLEANFILES = # DISTCLEANFILES = # @@ -65,8 +65,6 @@ libclutter_gst_@CLUTTER_GST_MAJORMINOR@_la_SOURCES = \ INCLUDES = \ -I$(top_srcdir) \ - -I$(top_builddir)/clutter-gst/shaders \ - -I$(top_srcdir)/clutter-gst/shaders \ $(NULL) AM_CPPFLAGS = \ diff --git a/clutter-gst/clutter-gst-aspectratio.c b/clutter-gst/clutter-gst-aspectratio.c index c875a58..aca44f0 100644 --- a/clutter-gst/clutter-gst-aspectratio.c +++ b/clutter-gst/clutter-gst-aspectratio.c @@ -27,6 +27,13 @@ * Boston, MA 02111-1307, USA. */ +/** + * SECTION:clutter-gst-aspectratio + * @short_description: A #ClutterContent for displaying video frames with respect to their aspect ratio. + * + * #ClutterGstContent implements the #ClutterContent interface. + */ + #include "clutter-gst-aspectratio.h" #include "clutter-gst-private.h" diff --git a/clutter-gst/clutter-gst-aspectratio.h b/clutter-gst/clutter-gst-aspectratio.h index 3f30dad..3c2e0ba 100644 --- a/clutter-gst/clutter-gst-aspectratio.h +++ b/clutter-gst/clutter-gst-aspectratio.h @@ -66,6 +66,15 @@ typedef struct _ClutterGstAspectratio ClutterGstAspectratio; typedef struct _ClutterGstAspectratioClass ClutterGstAspectratioClass; typedef struct _ClutterGstAspectratioPrivate ClutterGstAspectratioPrivate; +/** + * ClutterGstAspectratio: + * + * Implementation of #ClutterGstContent that displays video streams + * with respects to their aspect ratio. + * + * The #ClutterGstAspectratio structure contains only private data and + * should not be accessed directly. + */ struct _ClutterGstAspectratio { /*< private >*/ @@ -74,8 +83,14 @@ struct _ClutterGstAspectratio ClutterGstAspectratioPrivate *priv; }; +/** + * ClutterGstAspectratioClass: + * + * Base class for #ClutterGstAspectratio. + */ struct _ClutterGstAspectratioClass { + /*< private >*/ ClutterGstContentClass parent_class; }; diff --git a/clutter-gst/clutter-gst-auto-video-sink.c b/clutter-gst/clutter-gst-auto-video-sink.c index 4f0fd57..c7c1cd2 100644 --- a/clutter-gst/clutter-gst-auto-video-sink.c +++ b/clutter-gst/clutter-gst-auto-video-sink.c @@ -19,23 +19,6 @@ * Boston, MA 02110-1301, USA. */ -/** - * SECTION:element-autovideosink - * @see_also: autoaudiosink, ximagesink, xvimagesink, sdlvideosink - * - * autovideosink is a video sink that automatically detects an appropriate - * video sink to use. It does so by scanning the registry for all elements - * that have <quote>Sink</quote> and <quote>Video</quote> in the class field - * of their element information, and also have a non-zero autoplugging rank. - * - * <refsect2> - * <title>Example launch line</title> - * |[ - * gst-launch-1.0 -v -m videotestsrc ! clutterautovideosink - * ]| - * </refsect2> - */ - #ifdef HAVE_CONFIG_H #include "config.h" #endif diff --git a/clutter-gst/clutter-gst-camera.h b/clutter-gst/clutter-gst-camera.h index 902905b..b3702a6 100644 --- a/clutter-gst/clutter-gst-camera.h +++ b/clutter-gst/clutter-gst-camera.h @@ -73,7 +73,8 @@ typedef struct _ClutterGstCameraPrivate ClutterGstCameraPrivate; /** * ClutterGstCamera: * - * Subclass of #ClutterGstActor that displays camera streams using GStreamer. + * Implementation of #ClutterGstPlayer that displays camera streams + * using GStreamer. * * The #ClutterGstCamera structure contains only private data and * should not be accessed directly. diff --git a/clutter-gst/clutter-gst-content.c b/clutter-gst/clutter-gst-content.c index 59ee668..9ea1d30 100644 --- a/clutter-gst/clutter-gst-content.c +++ b/clutter-gst/clutter-gst-content.c @@ -25,6 +25,13 @@ * Boston, MA 02111-1307, USA. */ +/** + * SECTION:clutter-gst-content + * @short_description: A #ClutterContent for displaying video frames. + * + * #ClutterGstContent implements the #ClutterContent interface. + */ + #ifdef HAVE_CONFIG_H #include "config.h" #endif diff --git a/clutter-gst/clutter-gst-content.h b/clutter-gst/clutter-gst-content.h index c362782..4b13f97 100644 --- a/clutter-gst/clutter-gst-content.h +++ b/clutter-gst/clutter-gst-content.h @@ -78,6 +78,10 @@ struct _ClutterGstContentClass GType clutter_gst_content_get_type (void) G_GNUC_CONST; +ClutterContent * clutter_gst_content_new (void); + +ClutterContent * clutter_gst_content_new_with_sink (CoglGstVideoSink *sink); + ClutterGstFrame * clutter_gst_content_get_frame (ClutterGstContent *self); void clutter_gst_content_set_sink (ClutterGstContent *self, diff --git a/clutter-gst/clutter-gst-crop.c b/clutter-gst/clutter-gst-crop.c index 2e01295..e3cf348 100644 --- a/clutter-gst/clutter-gst-crop.c +++ b/clutter-gst/clutter-gst-crop.c @@ -26,6 +26,13 @@ * Boston, MA 02111-1307, USA. */ +/** + * SECTION:clutter-gst-crop + * @short_description: A #ClutterContent for displaying part of video frames + * + * #ClutterGstCrop sub-classes #ClutterGstContent. + */ + #include "clutter-gst-crop.h" #include "clutter-gst-private.h" diff --git a/clutter-gst/clutter-gst-crop.h b/clutter-gst/clutter-gst-crop.h index 0ec830d..a992aa9 100644 --- a/clutter-gst/clutter-gst-crop.h +++ b/clutter-gst/clutter-gst-crop.h @@ -65,15 +65,31 @@ typedef struct _ClutterGstCrop ClutterGstCrop; typedef struct _ClutterGstCropClass ClutterGstCropClass; typedef struct _ClutterGstCropPrivate ClutterGstCropPrivate; +/** + * ClutterGstCrop: + * + * Implementation of #ClutterGstContent that displays a sub region of + * video streams. + * + * The #ClutterGstCrop structure contains only private data and + * should not be accessed directly. + */ struct _ClutterGstCrop { + /*< private >*/ ClutterGstContent parent; ClutterGstCropPrivate *priv; }; +/** + * ClutterGstCropClass: + * + * Base class for #ClutterGstCrop. + */ struct _ClutterGstCropClass { + /*< private >*/ ClutterGstContentClass parent_class; }; diff --git a/clutter-gst/clutter-gst-playback.c b/clutter-gst/clutter-gst-playback.c index 7939fbb..93e1a25 100644 --- a/clutter-gst/clutter-gst-playback.c +++ b/clutter-gst/clutter-gst-playback.c @@ -31,6 +31,13 @@ * Boston, MA 02111-1307, USA. */ +/** + * SECTION:clutter-gst-playback + * @short_description: A #ClutterGstPlayback to play media streams + * + * #ClutterGstPlayback implements #ClutterGstPlayer. + */ + #ifdef HAVE_CONFIG_H #include "config.h" #endif diff --git a/clutter-gst/clutter-gst-playback.h b/clutter-gst/clutter-gst-playback.h index 373379f..ba8ae3e 100644 --- a/clutter-gst/clutter-gst-playback.h +++ b/clutter-gst/clutter-gst-playback.h @@ -73,6 +73,15 @@ typedef struct _ClutterGstPlayback ClutterGstPlayback; typedef struct _ClutterGstPlaybackClass ClutterGstPlaybackClass; typedef struct _ClutterGstPlaybackPrivate ClutterGstPlaybackPrivate; +/** + * ClutterGstPlayback: + * + * Implementation of #ClutterGstPlayback that displays media streams + * using GStreamer. + * + * The #ClutterGstPlayback structure contains only private data and + * should not be accessed directly. + */ struct _ClutterGstPlayback { GObject parent; @@ -80,10 +89,18 @@ struct _ClutterGstPlayback ClutterGstPlaybackPrivate *priv; }; +/** + * ClutterGstPlaybackClass: + * @download_buffering: signal class closure for #ClutterGstPlayback::download-buffering + * + * Base class for #ClutterGstPlayback. + */ struct _ClutterGstPlaybackClass { + /*< private >*/ GObjectClass parent_class; + /*< public >*/ /* signals */ void (* download_buffering) (ClutterGstPlayback *self, gdouble start, diff --git a/clutter-gst/clutter-gst-player.c b/clutter-gst/clutter-gst-player.c index 186ff9a..0d8ef2b 100644 --- a/clutter-gst/clutter-gst-player.c +++ b/clutter-gst/clutter-gst-player.c @@ -36,9 +36,7 @@ * @short_description: An interface for controlling playback of media data * * #ClutterGstPlayer is an interface for controlling playback of media - * sources. Contrary to most interfaces, you don't need to implement - * #ClutterGstPlayer. It already provides an implementation/logic - * leaving you only tweak a few properties to get the desired behavior. + * sources. */ #ifdef HAVE_CONFIG_H diff --git a/clutter-gst/clutter-gst-player.h b/clutter-gst/clutter-gst-player.h index 5d0ea7f..7855c97 100644 --- a/clutter-gst/clutter-gst-player.h +++ b/clutter-gst/clutter-gst-player.h @@ -76,8 +76,19 @@ typedef struct _ClutterGstPlayerIfacePrivate ClutterGstPlayerIfacePrivate; /** * ClutterGstPlayerIface: - * @download_buffering: handler for the #ClutterGstPlayer::download-buffering - * signal + * @get_frame: virtual function; returns the current visible frame + * @get_pipeline: virtual function; returns the current GStreamer pipeline + * @get_video_sink: virtual function; returns the current Cogl video sink + * @get_idle: virtual function; returns whether the player is currently in idle state + * @get_audio_volume: virtual function; returns the current audio volume + * @set_audio_volume: virtual function; sets the audio volume + * @get_playing: virtual function; returns whether the player is currently playing + * @set_playing: virtual function; starts or stops the player from playing + * @new_frame: signal class closure for #ClutterGstPlayer::new-frame + * @ready: signal class closure for #ClutterGstPlayer::ready + * @eos: signal class closure for #ClutterGstPlayer::eos + * @error: signal class closure for #ClutterGstPlayer::error + * @size_change: signal class closure for #ClutterGstPlayer::size-change * * Interface vtable for #ClutterGstPlayer implementations * @@ -105,13 +116,10 @@ struct _ClutterGstPlayerIface void (* set_playing) (ClutterGstPlayer *self, gboolean playing); - void (* _iface_reserved7) (void); - void (* _iface_reserved8) (void); - void (* _iface_reserved9) (void); - void (* _iface_reserved10) (void); - void (* _iface_reserved11) (void); - void (* _iface_reserved12) (void); + /*< private >*/ + gpointer _padding_vfuncs[16]; + /*< public >*/ /* signals */ void (* new_frame) (ClutterGstPlayer *self, ClutterGstFrame *frame); void (* ready) (ClutterGstPlayer *self); @@ -122,13 +130,8 @@ struct _ClutterGstPlayerIface gint width, gint height); - void (* _clutter_reserved6) (void); - void (* _clutter_reserved7) (void); - void (* _clutter_reserved8) (void); - void (* _clutter_reserved9) (void); - void (* _clutter_reserved10) (void); - void (* _clutter_reserved11) (void); - void (* _clutter_reserved12) (void); + /*< private >*/ + gpointer _padding_signals[8]; }; GType clutter_gst_player_get_type (void) G_GNUC_CONST; diff --git a/clutter-gst/shaders/I420.cg b/clutter-gst/shaders/I420.cg deleted file mode 100644 index 6950afe..0000000 --- a/clutter-gst/shaders/I420.cg +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Clutter-gst - * - * GStreamer integration library for Clutter. - * - * Authored By: Damien Lespiau <damien.lespiau@intel.com> - * - * Copyright (C) 2009 Intel Corporation. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see <http://www.gnu.org/licenses/>. - */ - -struct I420_output -{ - float4 color : COLOR; -}; - -struct I420_input -{ - float4 color : COLOR; - float2 Y : TEXCOORD0; - sampler2D Y_tex : TEXUNIT0; - sampler2D U_tex : TEXUNIT1; - sampler2D V_tex : TEXUNIT2; -}; - -I420_output I420_main (I420_input IN) -{ - I420_output OUT; - - float y = 1.1640625 * (tex2D (IN.Y_tex, IN.Y).g - 0.0625); - float u = tex2D (IN.U_tex, IN.Y).g - 0.5; - float v = tex2D (IN.V_tex, IN.Y).g - 0.5; - - OUT.color.r = y + 1.59765625 * v; - OUT.color.g = y - 0.390625 * u - 0.8125 * v; - OUT.color.b = y + 2.015625 * u; - OUT.color.rgb *= IN.color.a; - OUT.color.a = IN.color.a; - - return OUT; -} - diff --git a/clutter-gst/shaders/I420.h b/clutter-gst/shaders/I420.h deleted file mode 100644 index 474f6e2..0000000 --- a/clutter-gst/shaders/I420.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - * This file was generated by pso2h. - */ - -#ifndef __I420_H__ -#define __I420_H__ - -/* - * This define is the size of the shader in bytes. More precisely it's the - * sum of strlen() of every string in the array. - */ -#define I420_FP_SZ 564 - -static const char *I420_fp[] = -{ - "!!ARBfp1.0\n", - "PARAM c[2] = { { 1.1640625, 0.0625, 2.015625, 0.5 },\n", - "{ 0.390625, 0.8125, 1.5976562 } };\n", - "TEMP R0;\n", - "TEMP R1;\n", - "TEX R1.y, fragment.texcoord[0], texture[0], 2D;\n", - "ADD R0.x, R1.y, -c[0].y;\n", - "TEX R0.y, fragment.texcoord[0], texture[2], 2D;\n", - "TEX R1.y, fragment.texcoord[0], texture[1], 2D;\n", - "MUL R0.x, R0, c[0];\n", - "ADD R0.w, R1.y, -c[0];\n", - "MAD R0.z, R0.w, c[0], R0.x;\n", - "ADD R0.y, R0, -c[0].w;\n", - "MAD R0.w, -R0, c[1].x, R0.x;\n", - "MAD R0.x, R0.y, c[1].z, R0;\n", - "MAD R0.y, -R0, c[1], R0.w;\n", - "MUL result.color.xyz, fragment.color.primary.w, R0;\n", - "MOV result.color.w, fragment.color.primary;\n", - "END\n", - NULL -}; - -#endif diff --git a/clutter-gst/shaders/I420.pso b/clutter-gst/shaders/I420.pso deleted file mode 100644 index bd01d38..0000000 --- a/clutter-gst/shaders/I420.pso +++ /dev/null @@ -1,36 +0,0 @@ -!!ARBfp1.0 -# cgc version 3.0.0016, build date Feb 10 2011 -# command line args: -profile arbfp1 -# source file: I420.cg -#vendor NVIDIA Corporation -#version 3.0.0.16 -#profile arbfp1 -#program I420_main -#semantic I420_main.IN -#var float4 IN.color : $vin.COLOR : COL0 : 0 : 1 -#var float2 IN.Y : $vin.TEXCOORD0 : TEX0 : 0 : 1 -#var sampler2D IN.Y_tex : TEXUNIT0 : texunit 0 : 0 : 1 -#var sampler2D IN.U_tex : TEXUNIT1 : texunit 1 : 0 : 1 -#var sampler2D IN.V_tex : TEXUNIT2 : texunit 2 : 0 : 1 -#var float4 I420_main.color : $vout.COLOR : COL : -1 : 1 -#const c[0] = 1.1640625 0.0625 2.015625 0.5 -#const c[1] = 0.390625 0.8125 1.5976562 -PARAM c[2] = { { 1.1640625, 0.0625, 2.015625, 0.5 }, - { 0.390625, 0.8125, 1.5976562 } }; -TEMP R0; -TEMP R1; -TEX R1.y, fragment.texcoord[0], texture[0], 2D; -ADD R0.x, R1.y, -c[0].y; -TEX R0.y, fragment.texcoord[0], texture[2], 2D; -TEX R1.y, fragment.texcoord[0], texture[1], 2D; -MUL R0.x, R0, c[0]; -ADD R0.w, R1.y, -c[0]; -MAD R0.z, R0.w, c[0], R0.x; -ADD R0.y, R0, -c[0].w; -MAD R0.w, -R0, c[1].x, R0.x; -MAD R0.x, R0.y, c[1].z, R0; -MAD R0.y, -R0, c[1], R0.w; -MUL result.color.xyz, fragment.color.primary.w, R0; -MOV result.color.w, fragment.color.primary; -END -# 13 instructions, 2 R-regs diff --git a/clutter-gst/shaders/Makefile.am b/clutter-gst/shaders/Makefile.am deleted file mode 100644 index d6a9e2f..0000000 --- a/clutter-gst/shaders/Makefile.am +++ /dev/null @@ -1,52 +0,0 @@ -include $(top_srcdir)/build/autotools/Makefile.am.silent - -NULL = # - -CLEANFILES = -EXTRA_DIST = I420.cg I420.pso I420.h \ - YV12.cg YV12.pso YV12.h \ - $(NULL) - -# -# If we have python we are able to build the headers holding the fragment -# programs. -# - -if HAVE_PYTHON - -BUILT_SOURCES = I420.h \ - YV12.h \ - $(NULL) - -CLEANFILES += I420.h \ - YV12.h \ - $(NULL) - -# Don't use GNU make extension to avoid automake warnings, yeah I know, that's -# annoying. - -I420.h: I420.pso - $(QUIET_GEN)$(top_srcdir)/scripts/pso2h.py -n I420_fp -o $@ $^ - -YV12.h: YV12.pso - $(QUIET_GEN)$(top_srcdir)/scripts/pso2h.py -n YV12_fp -o $@ $^ - -endif - -# -# Only add those targets if we the Cg compiler is around. -# - -if HAVE_CGC - -CLEANFILES += I420.pso \ - YV12.pso \ - $(NULL) - -I420.pso: I420.cg - $(QUIET_CGC)cgc -entry I420_main -profile arbfp1 -o $@ $^ - -YV12.pso: YV12.cg - $(QUIET_CGC)cgc -entry YV12_main -profile arbfp1 -o $@ $^ - -endif diff --git a/clutter-gst/shaders/YV12.cg b/clutter-gst/shaders/YV12.cg deleted file mode 100644 index df70903..0000000 --- a/clutter-gst/shaders/YV12.cg +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Clutter-gst - * - * GStreamer integration library for Clutter. - * - * Authored By: Damien Lespiau <damien.lespiau@intel.com> - * - * Copyright (C) 2009 Intel Corporation. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see <http://www.gnu.org/licenses/>. - */ - -struct YV12_output -{ - float4 color : COLOR; -}; - -struct YV12_input -{ - float4 color : COLOR; - float2 Y : TEXCOORD0; - sampler2D Y_tex : TEXUNIT0; - sampler2D U_tex : TEXUNIT2; - sampler2D V_tex : TEXUNIT1; -}; - -YV12_output YV12_main (YV12_input IN) -{ - YV12_output OUT; - - float y = 1.1640625 * (tex2D (IN.Y_tex, IN.Y).g - 0.0625); - float u = tex2D (IN.U_tex, IN.Y).g - 0.5; - float v = tex2D (IN.V_tex, IN.Y).g - 0.5; - - OUT.color.r = y + 1.59765625 * v; - OUT.color.g = y - 0.390625 * u - 0.8125 * v; - OUT.color.b = y + 2.015625 * u; - OUT.color.rgb *= IN.color.a; - OUT.color.a = IN.color.a; - - return OUT; -} - diff --git a/clutter-gst/shaders/YV12.h b/clutter-gst/shaders/YV12.h deleted file mode 100644 index dbc56fe..0000000 --- a/clutter-gst/shaders/YV12.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - * This file was generated by pso2h. - */ - -#ifndef __YV12_H__ -#define __YV12_H__ - -/* - * This define is the size of the shader in bytes. More precisely it's the - * sum of strlen() of every string in the array. - */ -#define YV12_FP_SZ 564 - -static const char *YV12_fp[] = -{ - "!!ARBfp1.0\n", - "PARAM c[2] = { { 1.1640625, 0.0625, 2.015625, 0.5 },\n", - "{ 0.390625, 0.8125, 1.5976562 } };\n", - "TEMP R0;\n", - "TEMP R1;\n", - "TEX R1.y, fragment.texcoord[0], texture[0], 2D;\n", - "ADD R0.x, R1.y, -c[0].y;\n", - "TEX R0.y, fragment.texcoord[0], texture[1], 2D;\n", - "TEX R1.y, fragment.texcoord[0], texture[2], 2D;\n", - "MUL R0.x, R0, c[0];\n", - "ADD R0.w, R1.y, -c[0];\n", - "MAD R0.z, R0.w, c[0], R0.x;\n", - "ADD R0.y, R0, -c[0].w;\n", - "MAD R0.w, -R0, c[1].x, R0.x;\n", - "MAD R0.x, R0.y, c[1].z, R0;\n", - "MAD R0.y, -R0, c[1], R0.w;\n", - "MUL result.color.xyz, fragment.color.primary.w, R0;\n", - "MOV result.color.w, fragment.color.primary;\n", - "END\n", - NULL -}; - -#endif diff --git a/clutter-gst/shaders/YV12.pso b/clutter-gst/shaders/YV12.pso deleted file mode 100644 index e43f5e0..0000000 --- a/clutter-gst/shaders/YV12.pso +++ /dev/null @@ -1,36 +0,0 @@ -!!ARBfp1.0 -# cgc version 3.0.0016, build date Feb 10 2011 -# command line args: -profile arbfp1 -# source file: YV12.cg -#vendor NVIDIA Corporation -#version 3.0.0.16 -#profile arbfp1 -#program YV12_main -#semantic YV12_main.IN -#var float4 IN.color : $vin.COLOR : COL0 : 0 : 1 -#var float2 IN.Y : $vin.TEXCOORD0 : TEX0 : 0 : 1 -#var sampler2D IN.Y_tex : TEXUNIT0 : texunit 0 : 0 : 1 -#var sampler2D IN.U_tex : TEXUNIT2 : texunit 2 : 0 : 1 -#var sampler2D IN.V_tex : TEXUNIT1 : texunit 1 : 0 : 1 -#var float4 YV12_main.color : $vout.COLOR : COL : -1 : 1 -#const c[0] = 1.1640625 0.0625 2.015625 0.5 -#const c[1] = 0.390625 0.8125 1.5976562 -PARAM c[2] = { { 1.1640625, 0.0625, 2.015625, 0.5 }, - { 0.390625, 0.8125, 1.5976562 } }; -TEMP R0; -TEMP R1; -TEX R1.y, fragment.texcoord[0], texture[0], 2D; -ADD R0.x, R1.y, -c[0].y; -TEX R0.y, fragment.texcoord[0], texture[1], 2D; -TEX R1.y, fragment.texcoord[0], texture[2], 2D; -MUL R0.x, R0, c[0]; -ADD R0.w, R1.y, -c[0]; -MAD R0.z, R0.w, c[0], R0.x; -ADD R0.y, R0, -c[0].w; -MAD R0.w, -R0, c[1].x, R0.x; -MAD R0.x, R0.y, c[1].z, R0; -MAD R0.y, -R0, c[1], R0.w; -MUL result.color.xyz, fragment.color.primary.w, R0; -MOV result.color.w, fragment.color.primary; -END -# 13 instructions, 2 R-regs diff --git a/configure.ac b/configure.ac index 5c65591..1809fd0 100644 --- a/configure.ac +++ b/configure.ac @@ -309,7 +309,6 @@ AC_OUTPUT([ scripts/Makefile clutter-gst/Makefile clutter-gst/clutter-gst-version.h - clutter-gst/shaders/Makefile tests/Makefile examples/Makefile doc/Makefile diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am index 290cc3a..c01f26f 100644 --- a/doc/reference/Makefile.am +++ b/doc/reference/Makefile.am @@ -25,7 +25,7 @@ DOC_SOURCE_DIR=../../clutter-gst SCANGOBJ_OPTIONS=--type-init-func="clutter_gst_init(0,0)" # Extra options to supply to gtkdoc-scan. -# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED" +# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED" SCAN_OPTIONS=--rebuild-types # Extra options to supply to gtkdoc-mkdb. @@ -38,7 +38,14 @@ MKTMPL_OPTIONS= # Extra options to supply to gtkdoc-fixref. Not normally needed. # e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html -FIXXREF_OPTIONS= +FIXXREF_OPTIONS= \ + --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/glib \ + --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gobject \ + --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/cogl \ + --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/cogl-gst \ + --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gdk-pixbuf \ + --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gstreamer-1.0 \ + $(NULL) # Used for dependencies. The docs will be rebuilt if any of these change. # e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h @@ -49,12 +56,9 @@ CFILE_GLOB=$(top_srcdir)/clutter-gst/*.c # Header files to ignore when scanning. # e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h IGNORE_HFILES= \ - I420.h \ - YV12.h \ clutter-gst.h \ clutter-gst-debug.h \ clutter-gst-private.h \ - clutter-gst-shaders.h \ clutter-gst-auto-video-sink.h \ $(NULL) diff --git a/doc/reference/clutter-gst-docs.sgml b/doc/reference/clutter-gst-docs.sgml index 780a4fc..ace3805 100644 --- a/doc/reference/clutter-gst-docs.sgml +++ b/doc/reference/clutter-gst-docs.sgml @@ -54,11 +54,18 @@ </chapter> <chapter> - <title>Clutter Actors And Objects</title> + <title>Clutter content objects</title> + <xi:include href="xml/clutter-gst-content.xml"/> + <xi:include href="xml/clutter-gst-aspectratio.xml"/> + <xi:include href="xml/clutter-gst-crop.xml"/> + </chapter> + + <chapter> + <title>ClutterGst players</title> <xi:include href="xml/clutter-gst-player.xml"/> - <xi:include href="xml/clutter-gst-camera-actor.xml"/> + <xi:include href="xml/clutter-gst-camera.xml"/> <xi:include href="xml/clutter-gst-camera-device.xml"/> - <xi:include href="xml/clutter-gst-types.xml"/> + <xi:include href="xml/clutter-gst-playback.xml"/> <xi:include href="xml/clutter-gst-util.xml"/> <xi:include href="xml/clutter-gst-version.xml"/> </chapter> diff --git a/doc/reference/clutter-gst-sections.txt b/doc/reference/clutter-gst-sections.txt index 7e2c39c..36af9c4 100644 --- a/doc/reference/clutter-gst-sections.txt +++ b/doc/reference/clutter-gst-sections.txt @@ -8,6 +8,77 @@ clutter_gst_seek_flags_get_type CLUTTER_GST_TYPE_SEEK_FLAGS clutter_gst_buffering_mode_get_type CLUTTER_GST_TYPE_BUFFERING_MODE +<SUBSECTION Standard> +ClutterGstBox +clutter_gst_box_get_width +clutter_gst_box_get_height +clutter_gst_box_get_type +CLUTTER_GST_TYPE_BOX +<SUBSECTION Standard> +ClutterGstFrame +clutter_gst_frame_get_type +CLUTTER_GST_TYPE_FRAME +ClutterGstVideoResolution +</SECTION> + +<SECTION> +<FILE>clutter-gst-content</FILE> +<TITLE>ClutterGstContent</TITLE> +ClutterGstContent +ClutterGstContentClass +clutter_gst_content_new +clutter_gst_content_new_with_sink +clutter_gst_content_get_frame +clutter_gst_content_get_player +clutter_gst_content_get_sink +clutter_gst_content_set_player +clutter_gst_content_set_sink +<SUBSECTION Standard> +CLUTTER_GST_CONTENT +CLUTTER_GST_IS_CONTENT +CLUTTER_GST_TYPE_CONTENT +clutter_gst_content_get_type +CLUTTER_GST_CONTENT_CLASS +CLUTTER_GST_CONTENT_GET_CLASS +CLUTTER_GST_IS_CONTENT_CLASS +<SUBSECTION Private> +ClutterGstContentPrivate +</SECTION> + +<SECTION> +<FILE>clutter-gst-aspectratio</FILE> +<TITLE>ClutterGstAspectratio</TITLE> +ClutterGstAspectratio +ClutterGstAspectratioClass +clutter_gst_aspectratio_new +<SUBSECTION Standard> +CLUTTER_GST_ASPECTRATIO +CLUTTER_GST_IS_ASPECTRATIO +CLUTTER_GST_TYPE_ASPECTRATIO +clutter_gst_aspectratio_get_type +CLUTTER_GST_ASPECTRATIO_CLASS +CLUTTER_GST_ASPECTRATIO_GET_CLASS +CLUTTER_GST_IS_ASPECTRATIO_CLASS +<SUBSECTION Private> +ClutterGstAspectratioPrivate +</SECTION> + +<SECTION> +<FILE>clutter-gst-crop</FILE> +<TITLE>ClutterGstCrop</TITLE> +ClutterGstCrop +ClutterGstCropClass +clutter_gst_crop_new +<SUBSECTION Standard> +CLUTTER_GST_CROP +CLUTTER_GST_IS_CROP +CLUTTER_GST_TYPE_CROP +clutter_gst_crop_get_type +CLUTTER_GST_CROP_CLASS +CLUTTER_GST_CROP_GET_CLASS +CLUTTER_GST_IS_CROP_CLASS +<SUBSECTION Private> +ClutterGstCropPrivate </SECTION> <SECTION> @@ -15,45 +86,14 @@ CLUTTER_GST_TYPE_BUFFERING_MODE <TITLE>ClutterGstPlayer</TITLE> ClutterGstPlayer ClutterGstPlayerIface -clutter_gst_player_class_init -clutter_gst_player_init -clutter_gst_player_deinit +clutter_gst_player_get_frame clutter_gst_player_get_pipeline -clutter_gst_player_set_uri -clutter_gst_player_get_uri -clutter_gst_player_set_filename +clutter_gst_player_get_video_sink +clutter_gst_player_get_idle +clutter_gst_player_get_playing clutter_gst_player_set_playing -clutter_gst_player_is_playing -clutter_gst_player_get_user_agent -clutter_gst_player_set_user_agent -clutter_gst_player_get_seek_flags -clutter_gst_player_set_seek_flags -clutter_gst_player_get_buffering_mode -clutter_gst_player_set_buffering_mode -clutter_gst_player_get_buffer_fill -clutter_gst_player_get_buffer_size -clutter_gst_player_set_buffer_size -clutter_gst_player_get_buffer_duration -clutter_gst_player_set_buffer_duration -clutter_gst_player_set_audio_volume clutter_gst_player_get_audio_volume -clutter_gst_player_get_audio_streams -clutter_gst_player_get_audio_stream -clutter_gst_player_set_audio_stream -clutter_gst_player_set_subtitle_uri -clutter_gst_player_get_subtitle_uri -clutter_gst_player_set_subtitle_font_name -clutter_gst_player_get_subtitle_font_name -clutter_gst_player_get_subtitle_tracks -clutter_gst_player_get_subtitle_track -clutter_gst_player_set_subtitle_track -clutter_gst_player_get_idle -clutter_gst_player_get_can_seek -clutter_gst_player_get_in_seek -clutter_gst_player_set_progress -clutter_gst_player_get_progress -clutter_gst_player_get_duration -clutter_gst_player_is_live_media +clutter_gst_player_set_audio_volume <SUBSECTION Standard> CLUTTER_GST_PLAYER CLUTTER_GST_IS_PLAYER @@ -65,58 +105,55 @@ ClutterGstPlayerIfacePrivate </SECTION> <SECTION> -<FILE>clutter-gst-camera-actor</FILE> -<TITLE>ClutterGstCameraActor</TITLE> -ClutterGstCameraActor -ClutterGstCameraActorClass -clutter_gst_camera_actor_get_brightness -clutter_gst_camera_actor_get_brightness_range -clutter_gst_camera_actor_get_camera_device -clutter_gst_camera_actor_get_camera_devices -clutter_gst_camera_actor_get_camerabin -clutter_gst_camera_actor_get_color_balance_property -clutter_gst_camera_actor_get_color_balance_property_range -clutter_gst_camera_actor_get_contrast -clutter_gst_camera_actor_get_contrast_range -clutter_gst_camera_actor_get_filter -clutter_gst_camera_actor_get_gamma -clutter_gst_camera_actor_get_gamma_range -clutter_gst_camera_actor_get_hue -clutter_gst_camera_actor_get_hue_range -clutter_gst_camera_actor_get_pipeline -clutter_gst_camera_actor_get_saturation -clutter_gst_camera_actor_get_saturation_range -clutter_gst_camera_actor_is_playing -clutter_gst_camera_actor_is_ready_for_capture -clutter_gst_camera_actor_is_recording_video -clutter_gst_camera_actor_new -clutter_gst_camera_actor_remove_filter -clutter_gst_camera_actor_set_brightness -clutter_gst_camera_actor_set_camera_device -clutter_gst_camera_actor_set_color_balance_property -clutter_gst_camera_actor_set_contrast -clutter_gst_camera_actor_set_filter -clutter_gst_camera_actor_set_gamma -clutter_gst_camera_actor_set_hue -clutter_gst_camera_actor_set_photo_profile -clutter_gst_camera_actor_set_playing -clutter_gst_camera_actor_set_saturation -clutter_gst_camera_actor_set_video_profile -clutter_gst_camera_actor_start_video_recording -clutter_gst_camera_actor_stop_video_recording -clutter_gst_camera_actor_supports_color_balance -clutter_gst_camera_actor_supports_gamma_correction -clutter_gst_camera_actor_take_photo -clutter_gst_camera_actor_take_photo_pixbuf +<FILE>clutter-gst-camera</FILE> +<TITLE>ClutterGstCamera</TITLE> +ClutterGstCamera +ClutterGstCameraClass +clutter_gst_camera_new +clutter_gst_camera_get_brightness +clutter_gst_camera_get_brightness_range +clutter_gst_camera_get_camera_device +clutter_gst_camera_get_camera_devices +clutter_gst_camera_get_color_balance_property +clutter_gst_camera_get_color_balance_property_range +clutter_gst_camera_get_contrast +clutter_gst_camera_get_contrast_range +clutter_gst_camera_get_filter +clutter_gst_camera_get_gamma +clutter_gst_camera_get_gamma_range +clutter_gst_camera_get_hue +clutter_gst_camera_get_hue_range +clutter_gst_camera_get_saturation +clutter_gst_camera_get_saturation_range +clutter_gst_camera_is_ready_for_capture +clutter_gst_camera_is_recording_video +clutter_gst_camera_remove_filter +clutter_gst_camera_set_brightness +clutter_gst_camera_set_camera_device +clutter_gst_camera_set_color_balance_property +clutter_gst_camera_set_contrast +clutter_gst_camera_set_filter +clutter_gst_camera_set_gamma +clutter_gst_camera_set_hue +clutter_gst_camera_set_photo_profile +clutter_gst_camera_set_saturation +clutter_gst_camera_set_video_profile +clutter_gst_camera_start_video_recording +clutter_gst_camera_stop_video_recording +clutter_gst_camera_supports_color_balance +clutter_gst_camera_supports_gamma_correction +clutter_gst_camera_take_photo +clutter_gst_camera_take_photo_pixbuf <SUBSECTION Standard> -CLUTTER_GST_CAMERA_ACTOR -CLUTTER_GST_CAMERA_ACTOR_CLASS -CLUTTER_GST_CAMERA_ACTOR_GET_CLASS -CLUTTER_GST_IS_CAMERA_ACTOR -CLUTTER_GST_IS_CAMERA_ACTOR_CLASS -CLUTTER_GST_TYPE_CAMERA_ACTOR -ClutterGstCameraActorPrivate -clutter_gst_camera_actor_get_type +CLUTTER_GST_CAMERA +CLUTTER_GST_CAMERA_CLASS +CLUTTER_GST_CAMERA_GET_CLASS +CLUTTER_GST_IS_CAMERA +CLUTTER_GST_IS_CAMERA_CLASS +CLUTTER_GST_TYPE_CAMERA +clutter_gst_camera_get_type +<SUBSECTION Private> +ClutterGstCameraPrivate </SECTION> <SECTION> @@ -136,8 +173,56 @@ CLUTTER_GST_CAMERA_DEVICE_GET_CLASS CLUTTER_GST_IS_CAMERA_DEVICE CLUTTER_GST_IS_CAMERA_DEVICE_CLASS CLUTTER_GST_TYPE_CAMERA_DEVICE -ClutterGstCameraDevicePrivate clutter_gst_camera_device_get_type +<SUBSECTION Private> +ClutterGstCameraDevicePrivate +</SECTION> + +<SECTION> +<FILE>clutter-gst-playback</FILE> +<TITLE>ClutterGstPlayback</TITLE> +ClutterGstPlayback +ClutterGstPlaybackClass +clutter_gst_playback_new +clutter_gst_playback_get_audio_stream +clutter_gst_playback_get_audio_streams +clutter_gst_playback_get_buffer_duration +clutter_gst_playback_get_buffer_fill +clutter_gst_playback_get_buffering_mode +clutter_gst_playback_get_buffer_size +clutter_gst_playback_get_duration +clutter_gst_playback_get_in_seek +clutter_gst_playback_get_progress +clutter_gst_playback_get_seek_flags +clutter_gst_playback_get_subtitle_font_name +clutter_gst_playback_get_subtitle_track +clutter_gst_playback_get_subtitle_tracks +clutter_gst_playback_get_subtitle_uri +clutter_gst_playback_get_uri +clutter_gst_playback_get_user_agent +clutter_gst_playback_is_live_media +clutter_gst_playback_set_audio_stream +clutter_gst_playback_set_buffer_duration +clutter_gst_playback_set_buffering_mode +clutter_gst_playback_set_buffer_size +clutter_gst_playback_set_filename +clutter_gst_playback_set_progress +clutter_gst_playback_set_seek_flags +clutter_gst_playback_set_subtitle_font_name +clutter_gst_playback_set_subtitle_track +clutter_gst_playback_set_subtitle_uri +clutter_gst_playback_set_uri +clutter_gst_playback_set_user_agent +<SUBSECTION Standard> +CLUTTER_GST_PLAYBACK +CLUTTER_GST_PLAYBACK_CLASS +CLUTTER_GST_PLAYBACK_GET_CLASS +CLUTTER_GST_IS_PLAYBACK +CLUTTER_GST_IS_PLAYBACK_CLASS +CLUTTER_GST_TYPE_PLAYBACK +clutter_gst_playback_get_type +<SUBSECTION Private> +ClutterGstPlaybackPrivate </SECTION> <SECTION> @@ -145,6 +230,7 @@ clutter_gst_camera_device_get_type <TITLE>Utilities</TITLE> clutter_gst_init clutter_gst_init_with_args +clutter_gst_create_video_sink </SECTION> <SECTION> |