[gstreamermm] Plugins: Wrap new core plugins.
- From: José Alburquerque <jaalburqu src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gstreamermm] Plugins: Wrap new core plugins.
- Date: Mon, 18 Apr 2011 05:17:23 +0000 (UTC)
commit d1a6deab637e2d7331cf9eeefee28876688932a2
Author: José Alburquerque <jaalburqu svn gnome org>
Date: Mon Apr 18 01:12:13 2011 -0400
Plugins: Wrap new core plugins.
* configure.ac: Modify the format of the plugin definitions to include
the target .hg basename along with the plugin name because some
plugins (like the new input-selector and output-selector plugins) use
dashes in the plugin name while the target .hg filename generally does
not.
* gstreamer/src/filelist.am: Add the new funnel, inpput-selector,
output-selector and valve core plugins.
* gstreamer/src/Makefile.am: Adapt to the above change.
* gstreamer/src/gst_enums.defs:
* gstreamer/src/gst_enums.defs.patch: Update the enum defs patch and
regenerate the enum defs file for the enums of the new plugins.
* tools/extra_defs_gen/generate_defs_gst.cc:
* gstreamer/src/gst_signals.defs: Add the new plugins to the extra
defs generation utility and regenerate the extra defs file for the
properties and signals of the new plugins.
* tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Modified so
that there are no build errors if a signal name of a plugin happens to
be a C++ keyword (such as the "switch" signal of the input-selector
plugin).
ChangeLog | 27 +
configure.ac | 137 ++---
gstreamer/src/Makefile.am | 14 +-
gstreamer/src/filelist.am | 12 +-
gstreamer/src/gst_enums.defs | 133 ++++-
gstreamer/src/gst_enums.defs.patch | 260 ++------
gstreamer/src/gst_signals.defs | 631 +++++++++++---------
tools/extra_defs_gen/generate_defs_gst.cc | 4 +
.../extra_defs_gen/generate_plugin_gmmproc_file.cc | 4 +-
9 files changed, 667 insertions(+), 555 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index c91adb0..8b37787 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,30 @@
+2011-04-18 José Alburquerque <jaalburqu svn gnome org>
+
+ Plugins: Wrap new core plugins.
+
+ * configure.ac: Modify the format of the plugin definitions to include
+ the target .hg basename along with the plugin name because some
+ plugins (like the new input-selector and output-selector plugins) use
+ dashes in the plugin name while the target .hg filename generally does
+ not.
+ * gstreamer/src/filelist.am: Add the new funnel, inpput-selector,
+ output-selector and valve core plugins.
+ * gstreamer/src/Makefile.am: Adapt to the above change.
+
+ * gstreamer/src/gst_enums.defs:
+ * gstreamer/src/gst_enums.defs.patch: Update the enum defs patch and
+ regenerate the enum defs file for the enums of the new plugins.
+
+ * tools/extra_defs_gen/generate_defs_gst.cc:
+ * gstreamer/src/gst_signals.defs: Add the new plugins to the extra
+ defs generation utility and regenerate the extra defs file for the
+ properties and signals of the new plugins.
+
+ * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Modified so
+ that there are no build errors if a signal name of a plugin happens to
+ be a C++ keyword (such as the "switch" signal of the input-selector
+ plugin).
+
2011-04-17 José Alburquerque <jaalburqu svn gnome org>
Plugin Generator: Use Glib::OptionContext instead of GOptionContext.
diff --git a/configure.ac b/configure.ac
index 5b941da..5247aa2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -77,78 +77,73 @@ MM_ARG_WITH_TAGFILE_DOC([pangomm-1.4.tag], [pangomm-1.4])
#########################################################################
# To add a plugin, add the plugin definition, in the form of
-# "plugin=CppClassName" to the space-separated list of definitions below.
-# (Where "plugin" is the plugin name as recognized by gst-inspect and
-# "CppClassName" is the desired name of the C++ class.)
-#
-# Also add the target .hg file name to the plugins_hg variable in the
-# gstreamer/src/fileslist.am. (That must be the same as "CppClassName" - all
-# in lowercase with a .hg extension).
-#
-# TODO: Include appsink and appsrc plug-ins in list below if they indeed are
-# plug-ins (see gst-plugins-base docs for details) and when they don't cause
-# gstreamermm initialization errors.
+# "hgfilebasename|plugin|CppClassName" to the space-separated list of
+# definitions below. (Where "hgfilebasename" is the basename of the .hg file
AC_SUBST([GSTREAMERMM_PLUGIN_DEFS], ["\
-adder=Adder \
-alsamixer=AlsaMixer \
-alsasink=AlsaSink \
-alsasrc=AlsaSrc \
-audioconvert=AudioConvert \
-audiorate=AudioRate \
-audioresample=AudioResample \
-audiotestsrc=AudioTestSrc \
-capsfilter=CapsFilter \
-cdparanoiasrc=CdParanoiaSrc \
-clockoverlay=ClockOverlay \
-decodebin2=DecodeBin2 \
-decodebin=DecodeBin \
-fakesink=FakeSink \
-fakesrc=FakeSrc \
-fdsink=FdSink \
-fdsrc=FdSrc \
-ffmpegcolorspace=FfmpegColorSpace \
-filesink=FileSink \
-filesrc=FileSrc \
-gdpdepay=GDPDepay \
-gdppay=GDPPay \
-giosink=GioSink \
-giosrc=GioSrc \
-giostreamsink=GioStreamSink \
-giostreamsrc=GioStreamSrc \
-identity=Identity \
-multifdsink=MultiFdSink \
-multiqueue=MultiQueue \
-oggdemux=OggDemux \
-oggmux=OggMux \
-playbin2=PlayBin2 \
-playbin=PlayBin \
-queue=Queue \
-queue2=Queue2 \
-subtitleoverlay=SubtitleOverlay \
-tcpclientsink=TCPClientSink \
-tcpclientsrc=TCPClientSrc \
-tcpserversink=TcpServerSink \
-tcpserversrc=TCPServerSrc \
-tee=Tee \
-textoverlay=TextOverlay \
-textrender=TextRender \
-theoradec=TheoraDec \
-theoraenc=TheoraEnc \
-theoraparse=TheoraParse \
-timeoverlay=TimeOverlay \
-typefind=TypeFindElement \
-uridecodebin=UriDecodeBin \
-videorate=VideoRate \
-videoscale=VideoScale \
-videotestsrc=VideoTestSrc \
-volume=Volume \
-vorbisdec=VorbisDec \
-vorbisenc=VorbisEnc \
-vorbisparse=VorbisParse \
-vorbistag=VorbisTag \
-ximagesink=XImageSink \
-xvimagesink=XvImageSink
+adder|adder|Adder \
+alsamixer|alsamixer|AlsaMixer \
+alsasink|alsasink|AlsaSink \
+alsasrc|alsasrc|AlsaSrc \
+audioconvert|audioconvert|AudioConvert \
+audiorate|audiorate|AudioRate \
+audioresample|audioresample|AudioResample \
+audiotestsrc|audiotestsrc|AudioTestSrc \
+capsfilter|capsfilter|CapsFilter \
+cdparanoiasrc|cdparanoiasrc|CdParanoiaSrc \
+clockoverlay|clockoverlay|ClockOverlay \
+decodebin2|decodebin2|DecodeBin2 \
+decodebin|decodebin|DecodeBin \
+fakesink|fakesink|FakeSink \
+fakesrc|fakesrc|FakeSrc \
+fdsink|fdsink|FdSink \
+fdsrc|fdsrc|FdSrc \
+ffmpegcolorspace|ffmpegcolorspace|FfmpegColorSpace \
+filesink|filesink|FileSink \
+filesrc|filesrc|FileSrc \
+funnel|funnel|Funnel \
+gdpdepay|gdpdepay|GDPDepay \
+gdppay|gdppay|GDPPay \
+giosink|giosink|GioSink \
+giosrc|giosrc|GioSrc \
+giostreamsink|giostreamsink|GioStreamSink \
+giostreamsrc|giostreamsrc|GioStreamSrc \
+identity|identity|Identity \
+inputselector|input-selector|InputSelector \
+multifdsink|multifdsink|MultiFdSink \
+multiqueue|multiqueue|MultiQueue \
+oggdemux|oggdemux|OggDemux \
+oggmux|oggmux|OggMux \
+outputselector|output-selector|OutputSelector \
+playbin2|playbin2|PlayBin2 \
+playbin|playbin|PlayBin \
+queue|queue|Queue \
+queue2|queue2|Queue2 \
+subtitleoverlay|subtitleoverlay|SubtitleOverlay \
+tcpclientsink|tcpclientsink|TCPClientSink \
+tcpclientsrc|tcpclientsrc|TCPClientSrc \
+tcpserversink|tcpserversink|TcpServerSink \
+tcpserversrc|tcpserversrc|TCPServerSrc \
+tee|tee|Tee \
+textoverlay|textoverlay|TextOverlay \
+textrender|textrender|TextRender \
+theoradec|theoradec|TheoraDec \
+theoraenc|theoraenc|TheoraEnc \
+theoraparse|theoraparse|TheoraParse \
+timeoverlay|timeoverlay|TimeOverlay \
+typefindelement|typefind|TypeFindElement \
+uridecodebin|uridecodebin|UriDecodeBin \
+valve|valve|Valve \
+videorate|videorate|VideoRate \
+videoscale|videoscale|VideoScale \
+videotestsrc|videotestsrc|VideoTestSrc \
+volume|volume|Volume \
+vorbisdec|vorbisdec|VorbisDec \
+vorbisenc|vorbisenc|VorbisEnc \
+vorbisparse|vorbisparse|VorbisParse \
+vorbistag|vorbistag|VorbisTag \
+ximagesink|ximagesink|XImageSink \
+xvimagesink|xvimagesink|XvImageSink
"])
# Check for the existence of the plug-ins. Note that this check doesn't
@@ -164,7 +159,7 @@ AS_IF([test "x$USE_MAINTAINER_MODE" != xno],
do
# Extract plugin name and run gst-inspect to check whether the plugin
# is installed on the build system.
- gstmm_plugin_name=`[expr "X$gstmm_plugin_def" : 'X\([^=]*\)' 2>&]AS_MESSAGE_LOG_FD`
+ gstmm_plugin_name=`[expr "X$gstmm_plugin_def" : 'X[a-z][a-z0-9]\+|\([^|]*\)' 2>&]AS_MESSAGE_LOG_FD`
AS_IF([$GST_INSPECT "$gstmm_plugin_name" >/dev/null 2>&AS_MESSAGE_LOG_FD],,
[AC_MSG_FAILURE([[The gstreamer plug-in '$gstmm_plugin_name' does not exist.
If you built gst-plugins-base from source code then you might need to
diff --git a/gstreamer/src/Makefile.am b/gstreamer/src/Makefile.am
index f79441b..2496e0b 100644
--- a/gstreamer/src/Makefile.am
+++ b/gstreamer/src/Makefile.am
@@ -33,8 +33,8 @@ generate_plugin_dependencies = \
$(codegen_srcdir)/extra_defs_gen/generate_plugin_gmmproc_file.cc \
$(addprefix $(codegen_m4_srcdir)/,$(files_plugin_m4))
-target_plugin = $(patsubst %element,%,$(basename $(notdir $@)))
-target_plugin_def = $(subst =, ,$(filter $(target_plugin)=%,$(GSTREAMERMM_PLUGIN_DEFS)))
+target_hg_basename = $(basename $(notdir $@))
+target_plugin_and_classname = $(wordlist 2,3,$(subst |, ,$(filter $(target_hg_basename)|%,$(GSTREAMERMM_PLUGIN_DEFS))))
$(binding_outputdir)/gst_wrap_init.cc: $(generate_gst_wrap_init) $(binding_relfiles_hg)
$(AM_V_GEN)$(PERL) -- $(generate_gst_wrap_init) $(wrap_init_flags) \
@@ -44,12 +44,14 @@ $(binding_outputdir)/gst_wrap_init.cc: $(generate_gst_wrap_init) $(binding_relfi
# through m4 using the macros in tools/m4/ctocpp_base.m4 which then produces
# the final .ccg file.
$(addprefix $(srcdir)/,$(plugins_ccg)): $(generate_plugin_dependencies)
- $(AM_V_GEN)$(generate_plugin_gmmproc_file) --ccg $(target_plugin_def) \
- | $(M4) -I $(codegen_m4_srcdir) >$@
+ $(AM_V_GEN)$(generate_plugin_gmmproc_file) --ccg \
+ $(target_plugin_and_classname) | $(M4) -I $(codegen_m4_srcdir) >$@
# This is to generate plugin .hg files. The generated .hg file is piped
# through m4 using the macros in tools/m4/ctocpp_base.m4 which then produces
# the final .hg file.
$(addprefix $(srcdir)/,$(plugins_hg)): %.hg: %.ccg $(generate_plugin_dependencies)
- $(AM_V_GEN)$(generate_plugin_gmmproc_file) --hg $(target_plugin_def) \
- | $(M4) -I $(codegen_m4_srcdir) >$@
+ @echo Plugin def: $(target_plugin_and_classname)
+ $(AM_V_GEN)$(generate_plugin_gmmproc_file) \
+ --hg $(target_plugin_and_classname) | $(M4) -I $(codegen_m4_srcdir) \
+ >$@
diff --git a/gstreamer/src/filelist.am b/gstreamer/src/filelist.am
index c3bb3a9..e0353e9 100644
--- a/gstreamer/src/filelist.am
+++ b/gstreamer/src/filelist.am
@@ -11,9 +11,11 @@ files_defs = \
gst_docs_override.xml
# To add a plugin, add the plugin definition, in the form of
-# "plugin=CppClassName" to the GSTREAMERMM_PLUGIN_DEFS variable of the
-# configure.ac file. (Where "plugin" is the plugin name as recognized by
-# gst-inspect and "CppClassName" is the desired name of the C++ class.)
+# "hgfilebasename|plugin|CppClassName" to the GSTREAMERMM_PLUGIN_DEFS variable
+# of the configure.ac file. (Where "hgfilebasename" is the basename of the .hg
+# file (ie. without the .hg extension), "plugin" is the plugin name as
+# recognized by gst-inspect and "CppClassName" is the desired name of the C++
+# class.)
#
# Also add the target .hg file name to the the variable below. (That must be
# the same as "CppClassName" - all in lowercase with a .hg extension). Make
@@ -43,6 +45,7 @@ plugins_hg = \
ffmpegcolorspace.hg \
filesink.hg \
filesrc.hg \
+ funnel.hg \
gdpdepay.hg \
gdppay.hg \
giosink.hg \
@@ -50,10 +53,12 @@ plugins_hg = \
giostreamsink.hg \
giostreamsrc.hg \
identity.hg \
+ inputselector.hg \
multifdsink.hg \
multiqueue.hg \
oggdemux.hg \
oggmux.hg \
+ outputselector.hg \
playbin2.hg \
playbin.hg \
queue.hg \
@@ -72,6 +77,7 @@ plugins_hg = \
timeoverlay.hg \
typefindelement.hg \
uridecodebin.hg \
+ valve.hg \
videorate.hg \
videoscale.hg \
videotestsrc.hg \
diff --git a/gstreamer/src/gst_enums.defs b/gstreamer/src/gst_enums.defs
index 13fdd70..90bf96f 100644
--- a/gstreamer/src/gst_enums.defs
+++ b/gstreamer/src/gst_enums.defs
@@ -21,6 +21,7 @@
;; Original typedef:
;; typedef enum {
;; GST_BUFFER_FLAG_READONLY = GST_MINI_OBJECT_FLAG_READONLY,
+;; GST_BUFFER_FLAG_MEDIA4 = GST_MINI_OBJECT_FLAG_RESERVED1,
;; GST_BUFFER_FLAG_PREROLL = (GST_MINI_OBJECT_FLAG_LAST << 0),
;; GST_BUFFER_FLAG_DISCONT = (GST_MINI_OBJECT_FLAG_LAST << 1),
;; GST_BUFFER_FLAG_IN_CAPS = (GST_MINI_OBJECT_FLAG_LAST << 2),
@@ -37,6 +38,7 @@
(c-name "GstBufferFlag")
(values
'("readonly" "GST_BUFFER_FLAG_READONLY" "GST_MINI_OBJECT_FLAG_READONLY")
+ '("media4" "GST_BUFFER_FLAG_MEDIA4" "GST_MINI_OBJECT_FLAG_RESERVED1")
'("preroll" "GST_BUFFER_FLAG_PREROLL" "(GST_MINI_OBJECT_FLAG_LAST << 0)")
'("discont" "GST_BUFFER_FLAG_DISCONT" "(GST_MINI_OBJECT_FLAG_LAST << 1)")
'("in-caps" "GST_BUFFER_FLAG_IN_CAPS" "(GST_MINI_OBJECT_FLAG_LAST << 2)")
@@ -136,6 +138,21 @@
)
)
+;; Original typedef:
+;; typedef enum {
+;; GST_CAPS_INTERSECT_ZIG_ZAG = 0,
+;; GST_CAPS_INTERSECT_FIRST = 1
+;; } GstCapsIntersectMode;
+
+(define-enum-extended CapsIntersectMode
+ (in-module "Gst")
+ (c-name "GstCapsIntersectMode")
+ (values
+ '("zig-zag" "GST_CAPS_INTERSECT_ZIG_ZAG" "0")
+ '("first" "GST_CAPS_INTERSECT_FIRST" "1")
+ )
+)
+
;; From gstclock.h
;; Original typedef:
@@ -147,7 +164,8 @@
;; GST_CLOCK_BUSY = 3,
;; GST_CLOCK_BADTIME = 4,
;; GST_CLOCK_ERROR = 5,
-;; GST_CLOCK_UNSUPPORTED = 6
+;; GST_CLOCK_UNSUPPORTED = 6,
+;; GST_CLOCK_DONE = 7
;; } GstClockReturn;
(define-enum-extended ClockReturn
@@ -161,6 +179,7 @@
'("badtime" "GST_CLOCK_BADTIME" "4")
'("error" "GST_CLOCK_ERROR" "5")
'("unsupported" "GST_CLOCK_UNSUPPORTED" "6")
+ '("done" "GST_CLOCK_DONE" "7")
)
)
@@ -530,6 +549,23 @@
)
)
+;; Original typedef:
+;; typedef enum {
+;; GST_QOS_TYPE_OVERFLOW = 0,
+;; GST_QOS_TYPE_UNDERFLOW = 1,
+;; GST_QOS_TYPE_THROTTLE = 2
+;; } GstQOSType;
+
+(define-enum-extended QOSType
+ (in-module "Gst")
+ (c-name "GstQOSType")
+ (values
+ '("overflow" "GST_QOS_TYPE_OVERFLOW" "0")
+ '("underflow" "GST_QOS_TYPE_UNDERFLOW" "1")
+ '("throttle" "GST_QOS_TYPE_THROTTLE" "2")
+ )
+)
+
;; From gstformat.h
;; Original typedef:
@@ -820,6 +856,7 @@
;; GST_MESSAGE_REQUEST_STATE = (1 << 22),
;; GST_MESSAGE_STEP_START = (1 << 23),
;; GST_MESSAGE_QOS = (1 << 24),
+;; GST_MESSAGE_PROGRESS = (1 << 25),
;; GST_MESSAGE_ANY = ~0
;; } GstMessageType;
@@ -853,6 +890,7 @@
'("request-state" "GST_MESSAGE_REQUEST_STATE" "(1 << 22)")
'("step-start" "GST_MESSAGE_STEP_START" "(1 << 23)")
'("qos" "GST_MESSAGE_QOS" "(1 << 24)")
+ '("progress" "GST_MESSAGE_PROGRESS" "(1 << 25)")
'("any" "GST_MESSAGE_ANY" "0x0")
)
)
@@ -898,12 +936,34 @@
)
)
+;; Original typedef:
+;; typedef enum {
+;; GST_PROGRESS_TYPE_START = 0,
+;; GST_PROGRESS_TYPE_CONTINUE = 1,
+;; GST_PROGRESS_TYPE_COMPLETE = 2,
+;; GST_PROGRESS_TYPE_CANCELED = 3,
+;; GST_PROGRESS_TYPE_ERROR = 4,
+;; } GstProgressType;
+
+(define-enum-extended ProgressType
+ (in-module "Gst")
+ (c-name "GstProgressType")
+ (values
+ '("start" "GST_PROGRESS_TYPE_START" "0")
+ '("continue" "GST_PROGRESS_TYPE_CONTINUE" "1")
+ '("complete" "GST_PROGRESS_TYPE_COMPLETE" "2")
+ '("canceled" "GST_PROGRESS_TYPE_CANCELED" "3")
+ '("error" "GST_PROGRESS_TYPE_ERROR" "4")
+ )
+)
+
;; From gstminiobject.h
;; Original typedef:
;; typedef enum
;; {
;; GST_MINI_OBJECT_FLAG_READONLY = (1<<0),
+;; GST_MINI_OBJECT_FLAG_RESERVED1 = (1<<1),
;; /* padding */
;; GST_MINI_OBJECT_FLAG_LAST = (1<<4)
;; } GstMiniObjectFlags;
@@ -913,6 +973,7 @@
(c-name "GstMiniObjectFlags")
(values
'("readonly" "GST_MINI_OBJECT_FLAG_READONLY" "(1<<0)")
+ '("reserved1" "GST_MINI_OBJECT_FLAG_RESERVED1" "(1<<1)")
'("last" "GST_MINI_OBJECT_FLAG_LAST" "(1<<4)")
)
)
@@ -1109,6 +1170,7 @@
;; Original typedef:
;; typedef enum {
+;; /* FIXME0.11: this is not used and the purpose is unclear */
;; GST_PAD_TEMPLATE_FIXED = (GST_OBJECT_FLAG_LAST << 0),
;; /* padding */
;; GST_PAD_TEMPLATE_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 4)
@@ -1367,8 +1429,13 @@
;; GST_QUARK_PROCESSED = 98,
;; GST_QUARK_DROPPED = 99,
;; GST_QUARK_BUFFERING_RANGES = 100,
+;; GST_QUARK_MESSAGE_PROGRESS = 101,
+;; GST_QUARK_CODE = 102,
+;; GST_QUARK_TEXT = 103,
+;; GST_QUARK_PERCENT = 104,
+;; GST_QUARK_TIMEOUT = 105,
;;
-;; GST_QUARK_MAX = 101
+;; GST_QUARK_MAX = 106
;; } GstQuarkId;
(define-enum-extended QuarkId
@@ -1476,7 +1543,12 @@
'("processed" "GST_QUARK_PROCESSED" "98")
'("dropped" "GST_QUARK_DROPPED" "99")
'("buffering-ranges" "GST_QUARK_BUFFERING_RANGES" "100")
- '("max" "GST_QUARK_MAX" "101")
+ '("message-progress" "GST_QUARK_MESSAGE_PROGRESS" "101")
+ '("code" "GST_QUARK_CODE" "102")
+ '("text" "GST_QUARK_TEXT" "103")
+ '("percent" "GST_QUARK_PERCENT" "104")
+ '("timeout" "GST_QUARK_TIMEOUT" "105")
+ '("max" "GST_QUARK_MAX" "106")
)
)
@@ -1703,6 +1775,25 @@
)
)
+;; From gstbaseparse.h
+
+;; Original typedef:
+;; typedef enum {
+;; GST_BASE_PARSE_FRAME_FLAG_NONE = 0,
+;; GST_BASE_PARSE_FRAME_FLAG_NO_FRAME = (1 << 0),
+;; GST_BASE_PARSE_FRAME_FLAG_CLIP = (1 << 1)
+;; } GstBaseParseFrameFlags;
+
+(define-flags-extended BaseParseFrameFlags
+ (in-module "Gst")
+ (c-name "GstBaseParseFrameFlags")
+ (values
+ '("none" "GST_BASE_PARSE_FRAME_FLAG_NONE" "0x0")
+ '("no-frame" "GST_BASE_PARSE_FRAME_FLAG_NO_FRAME" "(1 << 0)")
+ '("clip" "GST_BASE_PARSE_FRAME_FLAG_CLIP" "(1 << 1)")
+ )
+)
+
;; From gstbasesrc.h
;; Original typedef:
@@ -3576,7 +3667,14 @@
;; GST_VIDEO_FORMAT_RGB15,
;; GST_VIDEO_FORMAT_BGR15,
;; GST_VIDEO_FORMAT_UYVP,
-;; GST_VIDEO_FORMAT_A420
+;; GST_VIDEO_FORMAT_A420,
+;; GST_VIDEO_FORMAT_RGB8_PALETTED,
+;; GST_VIDEO_FORMAT_YUV9,
+;; GST_VIDEO_FORMAT_YVU9,
+;; GST_VIDEO_FORMAT_IYU1,
+;; GST_VIDEO_FORMAT_ARGB64,
+;; GST_VIDEO_FORMAT_AYUV64,
+;; GST_VIDEO_FORMAT_r210
;; } GstVideoFormat;
(define-enum-extended VideoFormat
@@ -3619,6 +3717,13 @@
'("bgr15" "GST_VIDEO_FORMAT_BGR15" "33")
'("uyvp" "GST_VIDEO_FORMAT_UYVP" "34")
'("a420" "GST_VIDEO_FORMAT_A420" "35")
+ '("rgb8-paletted" "GST_VIDEO_FORMAT_RGB8_PALETTED" "36")
+ '("yuv9" "GST_VIDEO_FORMAT_YUV9" "37")
+ '("yvu9" "GST_VIDEO_FORMAT_YVU9" "38")
+ '("iyu1" "GST_VIDEO_FORMAT_IYU1" "39")
+ '("argb64" "GST_VIDEO_FORMAT_ARGB64" "40")
+ '("ayuv64" "GST_VIDEO_FORMAT_AYUV64" "41")
+ '("r210" "GST_VIDEO_FORMAT_r210" "42")
)
)
@@ -4499,7 +4604,8 @@
;; GST_TEXT_OVERLAY_VALIGN_BASELINE,
;; GST_TEXT_OVERLAY_VALIGN_BOTTOM,
;; GST_TEXT_OVERLAY_VALIGN_TOP,
-;; GST_TEXT_OVERLAY_VALIGN_POS
+;; GST_TEXT_OVERLAY_VALIGN_POS,
+;; GST_TEXT_OVERLAY_VALIGN_CENTER
;; } GstTextOverlayVAlign;
(define-enum-extended TextOverlayVAlign
@@ -4510,6 +4616,7 @@
'("bottom" "GST_TEXT_OVERLAY_VALIGN_BOTTOM" "1")
'("top" "GST_TEXT_OVERLAY_VALIGN_TOP" "2")
'("pos" "GST_TEXT_OVERLAY_VALIGN_POS" "3")
+ '("center" "GST_TEXT_OVERLAY_VALIGN_CENTER" "4")
)
)
@@ -4518,7 +4625,7 @@
;; GST_TEXT_OVERLAY_HALIGN_LEFT,
;; GST_TEXT_OVERLAY_HALIGN_CENTER,
;; GST_TEXT_OVERLAY_HALIGN_RIGHT,
-;; GST_TEXT_OVERLAY_HALIGN_TOP,
+;; GST_TEXT_OVERLAY_HALIGN_UNUSED,
;; GST_TEXT_OVERLAY_HALIGN_POS
;; } GstTextOverlayHAlign;
@@ -4529,7 +4636,7 @@
'("left" "GST_TEXT_OVERLAY_HALIGN_LEFT" "0")
'("center" "GST_TEXT_OVERLAY_HALIGN_CENTER" "1")
'("right" "GST_TEXT_OVERLAY_HALIGN_RIGHT" "2")
- '("top" "GST_TEXT_OVERLAY_HALIGN_TOP" "3")
+ '("unused" "GST_TEXT_OVERLAY_HALIGN_UNUSED" "3")
'("pos" "GST_TEXT_OVERLAY_HALIGN_POS" "4")
)
)
@@ -4664,7 +4771,7 @@
;; Handwritten for CdParanoiaSrc plugin (values taken from output of
;; `gst-inspect cdparanoiasrc' -- "paranoia-mode" property information)
-(define-enum-extended GstCdParanoiaSrc
+(define-enum-extended CdParanoiaMode
(in-module "Gst")
(c-name "GstCdParanoiaMode")
(values
@@ -4687,3 +4794,13 @@
'("epoll" "GST_FD_SET_MODE_EPOLL" "2")
)
)
+;; Handwritten for OutputSelector plugin (taken from gstoutputselector.c):
+(define-enum-extended OutputSelectorPadNegotiationMode
+ (in-module "Gst")
+ (c-name "GstOutputSelectorPadNegotiationMode")
+ (values
+ '("none" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_NONE" "0")
+ '("all" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ALL" "1")
+ '("active" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ACTIVE" "2")
+ )
+)
diff --git a/gstreamer/src/gst_enums.defs.patch b/gstreamer/src/gst_enums.defs.patch
index ffcb9a5..ae81f48 100644
--- a/gstreamer/src/gst_enums.defs.patch
+++ b/gstreamer/src/gst_enums.defs.patch
@@ -1,28 +1,12 @@
---- gst_enums_orig.defs 2010-10-20 22:48:27.000000000 -0400
-+++ gst_enums.defs 2010-10-20 22:43:34.000000000 -0400
-@@ -1,11 +1,13 @@
+--- gst_enums.defs 2011-04-18 00:50:03.000000000 -0400
++++ gst_enums.defs.new 2011-04-18 00:40:36.000000000 -0400
+@@ -1,3 +1,5 @@
+;; Apply gst_enums.defs.patch after regenerating.
+
;; From gstbin.h
;; Original typedef:
- ;; typedef enum {
- ;; /* padding */
- ;; GST_BIN_FLAG_LAST = (GST_ELEMENT_FLAG_LAST << 5)
- ;; } GstBinFlags;
-
- (define-flags-extended BinFlags
- (in-module "Gst")
- (c-name "GstBinFlags")
-@@ -479,92 +481,22 @@
- (in-module "Gst")
- (c-name "GstEventTypeFlags")
- (values
- '("upstream" "GST_EVENT_TYPE_UPSTREAM" "1 << 0")
- '("downstream" "GST_EVENT_TYPE_DOWNSTREAM" "1 << 1")
- '("serialized" "GST_EVENT_TYPE_SERIALIZED" "1 << 2")
- )
- )
+@@ -506,76 +508,6 @@
;; Original typedef:
;; typedef enum {
@@ -99,23 +83,7 @@
;; /* one of these */
;; GST_SEEK_TYPE_NONE = 0,
;; GST_SEEK_TYPE_CUR = 1,
- ;; GST_SEEK_TYPE_SET = 2,
- ;; GST_SEEK_TYPE_END = 3
- ;; } GstSeekType;
-
- (define-enum-extended SeekType
- (in-module "Gst")
- (c-name "GstSeekType")
- (values
-@@ -1903,111 +1835,123 @@
- ;; FAKE_SINK_STATE_ERROR_READY_PAUSED,
- ;; FAKE_SINK_STATE_ERROR_PAUSED_PLAYING,
- ;; FAKE_SINK_STATE_ERROR_PLAYING_PAUSED,
- ;; FAKE_SINK_STATE_ERROR_PAUSED_READY,
- ;; FAKE_SINK_STATE_ERROR_READY_NULL
- ;; } GstFakeSinkStateError;
-
- (define-enum-extended FakeSinkStateError
+@@ -2002,13 +1934,13 @@
(in-module "Gst")
(c-name "GstFakeSinkStateError")
(values
@@ -136,21 +104,7 @@
)
)
- ;; From gstfakesrc.h
-
- ;; Original typedef:
- ;; typedef enum {
- ;; FAKE_SRC_FIRST_LAST_LOOP = 1,
- ;; FAKE_SRC_LAST_FIRST_LOOP,
- ;; FAKE_SRC_PING_PONG,
- ;; FAKE_SRC_ORDERED_RANDOM,
- ;; FAKE_SRC_RANDOM,
- ;; FAKE_SRC_PATTERN_LOOP,
- ;; FAKE_SRC_PING_PONG_PATTERN,
- ;; FAKE_SRC_GET_ALWAYS_SUCEEDS
- ;; } GstFakeSrcOutputType;
-
- (define-enum-extended FakeSrcOutputType
+@@ -2030,14 +1962,14 @@
(in-module "Gst")
(c-name "GstFakeSrcOutputType")
(values
@@ -173,13 +127,7 @@
)
)
- ;; Original typedef:
- ;; typedef enum {
- ;; FAKE_SRC_DATA_ALLOCATE = 1,
- ;; FAKE_SRC_DATA_SUBBUFFER
- ;; } GstFakeSrcDataType;
-
- (define-enum-extended FakeSrcDataType
+@@ -2051,8 +1983,8 @@
(in-module "Gst")
(c-name "GstFakeSrcDataType")
(values
@@ -190,14 +138,7 @@
)
)
- ;; Original typedef:
- ;; typedef enum {
- ;; FAKE_SRC_SIZETYPE_EMPTY = 1,
- ;; FAKE_SRC_SIZETYPE_FIXED,
- ;; FAKE_SRC_SIZETYPE_RANDOM
- ;; } GstFakeSrcSizeType;
-
- (define-enum-extended FakeSrcSizeType
+@@ -2067,9 +1999,9 @@
(in-module "Gst")
(c-name "GstFakeSrcSizeType")
(values
@@ -210,16 +151,7 @@
)
)
- ;; Original typedef:
- ;; typedef enum {
- ;; FAKE_SRC_FILLTYPE_NOTHING = 1,
- ;; FAKE_SRC_FILLTYPE_ZERO,
- ;; FAKE_SRC_FILLTYPE_RANDOM,
- ;; FAKE_SRC_FILLTYPE_PATTERN,
- ;; FAKE_SRC_FILLTYPE_PATTERN_CONT
- ;; } GstFakeSrcFillType;
-
- (define-enum-extended FakeSrcFillType
+@@ -2086,40 +2018,23 @@
(in-module "Gst")
(c-name "GstFakeSrcFillType")
(values
@@ -233,14 +165,38 @@
+ '("random" "GST_FAKE_SRC_FILLTYPE_RANDOM" "3")
+ '("pattern" "GST_FAKE_SRC_FILLTYPE_PATTERN" "4")
+ '("pattern-cont" "GST_FAKE_SRC_FILLTYPE_PATTERN_CONT" "5")
-+ )
-+)
-+
+ )
+ )
+
+-;; From gstqueue.h
+-
+-;; Original typedef:
+-;; typedef enum _GstQueueLeaky GstQueueLeaky;
+-;; typedef struct _GstQueueClass GstQueueClass;
+-;;
+-;; /**
+-;; * GstQueueLeaky:
+-;; * @GST_QUEUE_NO_LEAK: Not Leaky
+-;; * @GST_QUEUE_LEAK_UPSTREAM: Leaky on upstream (new buffers)
+-;; * @GST_QUEUE_LEAK_DOWNSTREAM: Leaky on downstream (old buffers)
+-;; *
+-;; * Buffer dropping scheme to avoid the queue to block when full.
+-;; */
+-;; enum _GstQueueLeaky {
+-;; GST_QUEUE_NO_LEAK = 0,
+-;; GST_QUEUE_LEAK_UPSTREAM = 1,
+-;; GST_QUEUE_LEAK_DOWNSTREAM = 2
+-;; };
+-
+-(define-enum-extended
+;; Handwritten for the filesink plug-in (Gst::FileSink).
+(define-enum-extended FileSinkBufferMode
-+ (in-module "Gst")
+ (in-module "Gst")
+- (c-name "")
+ (c-name "GstFileSinkBufferMode")
-+ (values
+ (values
+- '("upstream" "GST_QUEUE_LEAK_UPSTREAM" "1")
+- '("downstream" "GST_QUEUE_LEAK_DOWNSTREAM" "2")
+ '("default" "GST_FILE_SINK_BUFFER_MODE_DEFAULT" "-1")
+ '("full" "GST_FILE_SINK_BUFFER_MODE_FULL" "0")
+ '("line" "GST_FILE_SINK_BUFFER_MODE_LINE" "1")
@@ -248,23 +204,7 @@
)
)
- ;; From gsttee.h
-
- ;; Original typedef:
- ;; typedef enum {
- ;; GST_TEE_PULL_MODE_NEVER,
- ;; GST_TEE_PULL_MODE_SINGLE,
- ;; } GstTeePullMode;
-
-@@ -2057,22 +2001,33 @@
- (c-name "GstAudioFieldFlag")
- (values
- '("rate" "GST_AUDIO_FIELD_RATE" "(1 << 0)")
- '("channels" "GST_AUDIO_FIELD_CHANNELS" "(1 << 1)")
- '("endianness" "GST_AUDIO_FIELD_ENDIANNESS" "(1 << 2)")
- '("width" "GST_AUDIO_FIELD_WIDTH" "(1 << 3)")
- '("depth" "GST_AUDIO_FIELD_DEPTH" "(1 << 4)")
- '("signed" "GST_AUDIO_FIELD_SIGNED" "(1 << 5)")
+@@ -2185,6 +2100,17 @@
)
)
@@ -282,23 +222,7 @@
;; From gstbaseaudiosink.h
;; Original typedef:
- ;; typedef enum
- ;; {
- ;; GST_BASE_AUDIO_SINK_SLAVE_RESAMPLE,
- ;; GST_BASE_AUDIO_SINK_SLAVE_SKEW,
- ;; GST_BASE_AUDIO_SINK_SLAVE_NONE
- ;; } GstBaseAudioSinkSlaveMethod;
-
- (define-enum-extended BaseAudioSinkSlaveMethod
-@@ -3693,48 +3648,48 @@
- ;; {
- ;; DITHER_NONE = 0,
- ;; DITHER_RPDF,
- ;; DITHER_TPDF,
- ;; DITHER_TPDF_HF
- ;; } GstAudioConvertDithering;
-
- (define-enum-extended AudioConvertDithering
+@@ -3835,10 +3761,10 @@
(in-module "Gst")
(c-name "GstAudioConvertDithering")
(values
@@ -313,17 +237,7 @@
)
)
- ;; Original typedef:
- ;; typedef enum
- ;; {
- ;; NOISE_SHAPING_NONE = 0,
- ;; NOISE_SHAPING_ERROR_FEEDBACK,
- ;; NOISE_SHAPING_SIMPLE,
- ;; NOISE_SHAPING_MEDIUM,
- ;; NOISE_SHAPING_HIGH
- ;; } GstAudioConvertNoiseShaping;
-
- (define-enum-extended AudioConvertNoiseShaping
+@@ -3856,11 +3782,11 @@
(in-module "Gst")
(c-name "GstAudioConvertNoiseShaping")
(values
@@ -340,23 +254,7 @@
)
)
- ;; From gstaudiotestsrc.h
-
- ;; Original typedef:
- ;; typedef enum {
- ;; GST_AUDIO_TEST_SRC_WAVE_SINE,
- ;; GST_AUDIO_TEST_SRC_WAVE_SQUARE,
- ;; GST_AUDIO_TEST_SRC_WAVE_SAW,
- ;; GST_AUDIO_TEST_SRC_WAVE_TRIANGLE,
-@@ -4584,42 +4539,42 @@
- ;; GST_TEXT_OVERLAY_WRAP_MODE_NONE = -1,
- ;; GST_TEXT_OVERLAY_WRAP_MODE_WORD = PANGO_WRAP_WORD,
- ;; GST_TEXT_OVERLAY_WRAP_MODE_CHAR = PANGO_WRAP_CHAR,
- ;; GST_TEXT_OVERLAY_WRAP_MODE_WORD_CHAR = PANGO_WRAP_WORD_CHAR
- ;; } GstTextOverlayWrapMode;
-
- (define-enum-extended TextOverlayWrapMode
- (in-module "Gst")
+@@ -4728,9 +4654,9 @@
(c-name "GstTextOverlayWrapMode")
(values
'("none" "GST_TEXT_OVERLAY_WRAP_MODE_NONE" "-1")
@@ -369,14 +267,7 @@
)
)
- ;; Original typedef:
- ;; typedef enum {
- ;; GST_TEXT_OVERLAY_LINE_ALIGN_LEFT = PANGO_ALIGN_LEFT,
- ;; GST_TEXT_OVERLAY_LINE_ALIGN_CENTER = PANGO_ALIGN_CENTER,
- ;; GST_TEXT_OVERLAY_LINE_ALIGN_RIGHT = PANGO_ALIGN_RIGHT
- ;; } GstTextOverlayLineAlign;
-
- (define-flags-extended TextOverlayLineAlign
+@@ -4745,9 +4671,9 @@
(in-module "Gst")
(c-name "GstTextOverlayLineAlign")
(values
@@ -389,23 +280,7 @@
)
)
- ;; From gsttextrender.h
-
- ;; Original typedef:
- ;; typedef enum {
- ;; GST_TEXT_RENDER_VALIGN_BASELINE,
- ;; GST_TEXT_RENDER_VALIGN_BOTTOM,
- ;; GST_TEXT_RENDER_VALIGN_TOP
- ;; } GstTextRenderVAlign;
-@@ -4654,56 +4609,81 @@
- ;; Original typedef:
- ;; typedef enum {
- ;; GST_TEXT_RENDER_LINE_ALIGN_LEFT = PANGO_ALIGN_LEFT,
- ;; GST_TEXT_RENDER_LINE_ALIGN_CENTER = PANGO_ALIGN_CENTER,
- ;; GST_TEXT_RENDER_LINE_ALIGN_RIGHT = PANGO_ALIGN_RIGHT
- ;; } GstTextRenderLineAlign;
-
- (define-flags-extended TextRenderLineAlign
+@@ -4798,9 +4724,9 @@
(in-module "Gst")
(c-name "GstTextRenderLineAlign")
(values
@@ -418,18 +293,7 @@
)
)
- ;; From gsttheoraenc.h
-
- ;; Original typedef:
- ;; typedef enum
- ;; {
- ;; BORDER_NONE,
- ;; BORDER_BLACK,
- ;; BORDER_MIRROR
- ;; }
- ;; GstTheoraEncBorderMode;
-
- (define-enum-extended TheoraEncBorderMode
+@@ -4819,9 +4745,9 @@
(in-module "Gst")
(c-name "GstTheoraEncBorderMode")
(values
@@ -442,15 +306,7 @@
)
)
- ;; Original typedef:
- ;; typedef enum
- ;; {
- ;; MULTIPASS_MODE_SINGLE_PASS,
- ;; MULTIPASS_MODE_FIRST_PASS,
- ;; MULTIPASS_MODE_SECOND_PASS
- ;; } GstTheoraEncMultipassMode;
-
- (define-enum-extended TheoraEncMultipassMode
+@@ -4837,9 +4763,44 @@
(in-module "Gst")
(c-name "GstTheoraEncMultipassMode")
(values
@@ -460,12 +316,12 @@
+ '("single-pass" "GST_THEORA_ENC_MULTIPASS_MODE_SINGLE_PASS" "0")
+ '("first-pass" "GST_THEORA_ENC_MULTIPASS_MODE_FIRST_PASS" "1")
+ '("second-pass" "GST_THEORA_ENC_MULTIPASS_MODE_SECOND_PASS" "2")
-+ )
-+)
-+
+ )
+ )
+
+;; Handwritten for CdParanoiaSrc plugin (values taken from output of
+;; `gst-inspect cdparanoiasrc' -- "paranoia-mode" property information)
-+(define-enum-extended GstCdParanoiaSrc
++(define-enum-extended CdParanoiaMode
+ (in-module "Gst")
+ (c-name "GstCdParanoiaMode")
+ (values
@@ -475,9 +331,9 @@
+ '("scratch" "GST_PARANOIA_MODE_SCRATCH" "1<<3")
+ '("repair" "GST_PARANOIA_MODE_REPAIR" "1<<4")
+ '("full" "GST_PARANOIA_MODE_FULL" "0xff")
- )
- )
-
++ )
++)
++
+;; Handwritten for MultiFdSink plugin (taken from gstmultifdsink.c):
+(define-enum-extended FDSetMode
+ (in-module "Gst")
@@ -488,3 +344,13 @@
+ '("epoll" "GST_FD_SET_MODE_EPOLL" "2")
+ )
+)
++;; Handwritten for OutputSelector plugin (taken from gstoutputselector.c):
++(define-enum-extended OutputSelectorPadNegotiationMode
++ (in-module "Gst")
++ (c-name "GstOutputSelectorPadNegotiationMode")
++ (values
++ '("none" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_NONE" "0")
++ '("all" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ALL" "1")
++ '("active" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ACTIVE" "2")
++ )
++)
diff --git a/gstreamer/src/gst_signals.defs b/gstreamer/src/gst_signals.defs
index 259a538..d545eb4 100644
--- a/gstreamer/src/gst_signals.defs
+++ b/gstreamer/src/gst_signals.defs
@@ -29,6 +29,15 @@
(construct-only #f)
)
+(define-property enable-async
+ (of-object "GstBus")
+ (prop-type "GParamBoolean")
+ (docs "Enable async message delivery for bus watches and gst_bus_pop()")
+ (readable #f)
+ (writable #t)
+ (construct-only #t)
+)
+
;; From GstBin
(define-signal element-added
@@ -832,6 +841,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstBaseSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
;; From GstBaseTransform
(define-property name
@@ -1543,6 +1561,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstFakeSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property state-error
(of-object "GstFakeSink")
(prop-type "GParamEnum")
@@ -1716,6 +1743,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstFdSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property fd
(of-object "GstFdSink")
(prop-type "GParamInt")
@@ -1992,6 +2028,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstFileSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property location
(of-object "GstFileSink")
(prop-type "GParamString")
@@ -2028,6 +2073,17 @@
(construct-only #f)
)
+;; From GstFunnel
+
+(define-property name
+ (of-object "GstFunnel")
+ (prop-type "GParamString")
+ (docs "The name of the object")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
;; From GstIdentity
(define-signal handoff
@@ -2174,6 +2230,52 @@
(construct-only #f)
)
+;; From GstInputSelector
+
+(define-signal block
+ (of-object "GstInputSelector")
+ (return-type "gint64")
+ (when "last")
+)
+
+(define-signal switch
+ (of-object "GstInputSelector")
+ (return-type "void")
+ (when "last")
+ (parameters
+ '("GstPad*" "p0")
+ '("gint64" "p1")
+ '("gint64" "p2")
+ )
+)
+
+(define-property name
+ (of-object "GstInputSelector")
+ (prop-type "GParamString")
+ (docs "The name of the object")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
+(define-property n-pads
+ (of-object "GstInputSelector")
+ (prop-type "GParamUInt")
+ (docs "The number of sink pads")
+ (readable #t)
+ (writable #f)
+ (construct-only #f)
+)
+
+(define-property active-pad
+ (of-object "GstInputSelector")
+ (prop-type "GParamObject")
+ (docs "The currently active sink pad")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
;; From GstMultiQueue
(define-signal underrun
@@ -2278,6 +2380,44 @@
(construct-only #f)
)
+;; From GstOutputSelector
+
+(define-property name
+ (of-object "GstOutputSelector")
+ (prop-type "GParamString")
+ (docs "The name of the object")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
+(define-property active-pad
+ (of-object "GstOutputSelector")
+ (prop-type "GParamObject")
+ (docs "Currently active src pad")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
+(define-property resend-latest
+ (of-object "GstOutputSelector")
+ (prop-type "GParamBoolean")
+ (docs "Resend latest buffer after a switch to a new pad")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
+(define-property pad-negotiation-mode
+ (of-object "GstOutputSelector")
+ (prop-type "GParamEnum")
+ (docs "The mode to be used for pad negotiation")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
;; From GstQueue
(define-signal underrun
@@ -2498,7 +2638,7 @@
(define-property low-percent
(of-object "GstQueue2")
(prop-type "GParamInt")
- (docs "Low threshold for buffering to start")
+ (docs "Low threshold for buffering to start. Only used if use-buffering is True")
(readable #t)
(writable #t)
(construct-only #f)
@@ -2507,7 +2647,7 @@
(define-property high-percent
(of-object "GstQueue2")
(prop-type "GParamInt")
- (docs "High threshold for buffering to finish")
+ (docs "High threshold for buffering to finish. Only used if use-buffering is True")
(readable #t)
(writable #t)
(construct-only #f)
@@ -2543,7 +2683,7 @@
(define-property ring-buffer-max-size
(of-object "GstQueue2")
(prop-type "GParamUInt64")
- (docs "Max. amount of data in the ring buffer (bytes, 0 = disabled")
+ (docs "Max. amount of data in the ring buffer (bytes, 0 = disabled)")
(readable #t)
(writable #t)
(construct-only #f)
@@ -2680,6 +2820,26 @@
(construct-only #f)
)
+;; From GstValve
+
+(define-property name
+ (of-object "GstValve")
+ (prop-type "GParamString")
+ (docs "The name of the object")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
+(define-property drop
+ (of-object "GstValve")
+ (prop-type "GParamBoolean")
+ (docs "Whether to drop buffers and events or let them through")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
;; From GstAudioClock
(define-property name
@@ -2857,6 +3017,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstBaseAudioSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property buffer-time
(of-object "GstBaseAudioSink")
(prop-type "GParamInt64")
@@ -3113,6 +3282,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstAudioSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property buffer-time
(of-object "GstAudioSink")
(prop-type "GParamInt64")
@@ -3716,6 +3894,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstVideoSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property show-preroll-frame
(of-object "GstVideoSink")
(prop-type "GParamBoolean")
@@ -4189,6 +4376,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstAlsaSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property buffer-time
(of-object "GstAlsaSink")
(prop-type "GParamInt64")
@@ -4726,6 +4922,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstAppSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property caps
(of-object "GstAppSink")
(prop-type "GParamBoxed")
@@ -4747,7 +4952,7 @@
(define-property emit-signals
(of-object "GstAppSink")
(prop-type "GParamBoolean")
- (docs "Emit new-preroll and new-buffer signals")
+ (docs "Emit new-preroll, new-buffer and new-buffer-list signals")
(readable #t)
(writable #t)
(construct-only #f)
@@ -4874,6 +5079,15 @@
(construct-only #f)
)
+(define-property skip-to-first
+ (of-object "GstAudioRate")
+ (prop-type "GParamBoolean")
+ (docs "Don't produce buffers before the first one we receive")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
;; From GstAudioResample
(define-property name
@@ -5467,6 +5681,17 @@
)
)
+(define-signal autoplug-sort
+ (of-object "GstDecodeBin2")
+ (return-type "GValueArray*")
+ (when "last")
+ (parameters
+ '("GstPad*" "p0")
+ '("GstCaps*" "p1")
+ '("GValueArray*" "p2")
+ )
+)
+
(define-signal autoplug-select
(of-object "GstDecodeBin2")
(return-type "GstAutoplugSelectResult")
@@ -5503,17 +5728,6 @@
)
)
-(define-signal autoplug-sort
- (of-object "GstDecodeBin2")
- (return-type "GValueArray*")
- (when "last")
- (parameters
- '("GstPad*" "p0")
- '("GstCaps*" "p1")
- '("GValueArray*" "p2")
- )
-)
-
(define-property name
(of-object "GstDecodeBin2")
(prop-type "GParamString")
@@ -5810,6 +6024,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstGioSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property location
(of-object "GstGioSink")
(prop-type "GParamString")
@@ -5994,6 +6217,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstGioStreamSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property stream
(of-object "GstGioStreamSink")
(prop-type "GParamObject")
@@ -6059,253 +6291,6 @@
(construct-only #f)
)
-;; From GstGnomeVFSSink
-
-(define-signal allow-overwrite
- (of-object "GstGnomeVFSSink")
- (return-type "gboolean")
- (when "unknown")
- (parameters
- '("GnomeVFSURI*" "p0")
- )
-)
-
-(define-property name
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamString")
- (docs "The name of the object")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property preroll-queue-len
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamUInt")
- (docs "Number of buffers to queue during preroll")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property sync
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamBoolean")
- (docs "Sync on the clock")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property max-lateness
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamInt64")
- (docs "Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property qos
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamBoolean")
- (docs "Generate Quality-of-Service events upstream")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property async
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamBoolean")
- (docs "Go asynchronously to PAUSED")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property ts-offset
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamInt64")
- (docs "Timestamp offset in nanoseconds")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property enable-last-buffer
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamBoolean")
- (docs "Enable the last-buffer property")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property last-buffer
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamSpecMiniObject")
- (docs "The last buffer received in the sink")
- (readable #t)
- (writable #f)
- (construct-only #f)
-)
-
-(define-property blocksize
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamUInt")
- (docs "Size in bytes to pull per buffer (0 = default)")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property render-delay
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamUInt64")
- (docs "Additional render delay of the sink in nanoseconds")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property location
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamString")
- (docs "Location of the file to write")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property uri
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamBoxed")
- (docs "URI for GnomeVFS")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property handle
- (of-object "GstGnomeVFSSink")
- (prop-type "GParamBoxed")
- (docs "Handle for GnomeVFS")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-;; From GstGnomeVFSSrc
-
-(define-property name
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamString")
- (docs "The name of the object")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property blocksize
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamULong")
- (docs "Size in bytes to read per buffer (-1 = default)")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property num-buffers
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamInt")
- (docs "Number of buffers to output before sending EOS (-1 = unlimited)")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property typefind
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamBoolean")
- (docs "Run typefind before negotiating")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property do-timestamp
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamBoolean")
- (docs "Apply current stream time to buffers")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property handle
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamBoxed")
- (docs "Handle for GnomeVFS")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property location
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamString")
- (docs "Location of the file to read")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property iradio-mode
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamBoolean")
- (docs "Enable internet radio mode (extraction of shoutcast/icecast metadata)")
- (readable #t)
- (writable #t)
- (construct-only #f)
-)
-
-(define-property iradio-name
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamString")
- (docs "Name of the stream")
- (readable #t)
- (writable #f)
- (construct-only #f)
-)
-
-(define-property iradio-genre
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamString")
- (docs "Genre of the stream")
- (readable #t)
- (writable #f)
- (construct-only #f)
-)
-
-(define-property iradio-url
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamString")
- (docs "Homepage URL for radio stream")
- (readable #t)
- (writable #f)
- (construct-only #f)
-)
-
-(define-property iradio-title
- (of-object "GstGnomeVFSSrc")
- (prop-type "GParamString")
- (docs "Name of currently playing song")
- (readable #t)
- (writable #f)
- (construct-only #f)
-)
-
;; From GstMultiFdSink
(define-signal add
@@ -6491,6 +6476,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstMultiFdSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property protocol
(of-object "GstMultiFdSink")
(prop-type "GParamEnum")
@@ -6958,6 +6952,15 @@
;; From GstPlayBin2
+(define-signal source-setup
+ (of-object "GstPlayBin2")
+ (return-type "void")
+ (when "last")
+ (parameters
+ '("GstElement*" "p0")
+ )
+)
+
(define-signal about-to-finish
(of-object "GstPlayBin2")
(return-type "void")
@@ -7564,6 +7567,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstTCPClientSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property host
(of-object "GstTCPClientSink")
(prop-type "GParamString")
@@ -7766,6 +7778,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstTCPServerSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property protocol
(of-object "GstTCPServerSink")
(prop-type "GParamEnum")
@@ -8380,7 +8401,7 @@
(define-property speed-level
(of-object "GstTheoraEnc")
(prop-type "GParamInt")
- (docs "Controls the amount of motion vector searching done while encoding. This property requires libtheora version >= 1.0")
+ (docs "Controls the amount of analysis performed when encoding. Higher values trade compression quality for speed. This property requires libtheora version >= 1.0, and the maximum value may vary based on encoder version.")
(readable #t)
(writable #t)
(construct-only #f)
@@ -8389,7 +8410,7 @@
(define-property vp3-compatible
(of-object "GstTheoraEnc")
(prop-type "GParamBoolean")
- (docs "Disables non-VP3 compatible features. This property requires libtheora version >= 1.1")
+ (docs "Disables non-VP3 compatible features")
(readable #t)
(writable #t)
(construct-only #f)
@@ -8398,7 +8419,7 @@
(define-property drop-frames
(of-object "GstTheoraEnc")
(prop-type "GParamBoolean")
- (docs "Allow or disallow frame dropping. This property requires libtheora version >= 1.1")
+ (docs "Allow or disallow frame dropping")
(readable #t)
(writable #t)
(construct-only #f)
@@ -8407,7 +8428,7 @@
(define-property cap-overflow
(of-object "GstTheoraEnc")
(prop-type "GParamBoolean")
- (docs "Enable capping of bit reservoir overflows. This property requires libtheora version >= 1.1")
+ (docs "Enable capping of bit reservoir overflows")
(readable #t)
(writable #t)
(construct-only #f)
@@ -8416,7 +8437,7 @@
(define-property cap-underflow
(of-object "GstTheoraEnc")
(prop-type "GParamBoolean")
- (docs "Enable capping of bit reservoir underflows. This property requires libtheora version >= 1.1")
+ (docs "Enable capping of bit reservoir underflows")
(readable #t)
(writable #t)
(construct-only #f)
@@ -8425,7 +8446,7 @@
(define-property rate-buffer
(of-object "GstTheoraEnc")
(prop-type "GParamInt")
- (docs "Sets the size of the rate control buffer, in units of frames. The default value of 0 instructs the encoder to automatically select an appropriate value. This property requires libtheora version >= 1.1")
+ (docs "Sets the size of the rate control buffer, in units of frames. The default value of 0 instructs the encoder to automatically select an appropriate value")
(readable #t)
(writable #t)
(construct-only #f)
@@ -8692,6 +8713,17 @@
)
)
+(define-signal autoplug-sort
+ (of-object "GstURIDecodeBin")
+ (return-type "GValueArray*")
+ (when "last")
+ (parameters
+ '("GstPad*" "p0")
+ '("GstCaps*" "p1")
+ '("GValueArray*" "p2")
+ )
+)
+
(define-signal autoplug-select
(of-object "GstURIDecodeBin")
(return-type "GstAutoplugSelectResult")
@@ -8709,6 +8741,15 @@
(when "last")
)
+(define-signal source-setup
+ (of-object "GstURIDecodeBin")
+ (return-type "void")
+ (when "last")
+ (parameters
+ '("GstElement*" "p0")
+ )
+)
+
(define-property name
(of-object "GstURIDecodeBin")
(prop-type "GParamString")
@@ -9411,6 +9452,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstXImageSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property show-preroll-frame
(of-object "GstXImageSink")
(prop-type "GParamBoolean")
@@ -9474,6 +9524,24 @@
(construct-only #f)
)
+(define-property window-width
+ (of-object "GstXImageSink")
+ (prop-type "GParamUInt64")
+ (docs "Width of the window")
+ (readable #t)
+ (writable #f)
+ (construct-only #f)
+)
+
+(define-property window-height
+ (of-object "GstXImageSink")
+ (prop-type "GParamUInt64")
+ (docs "Height of the window")
+ (readable #t)
+ (writable #f)
+ (construct-only #f)
+)
+
;; From GstXvImageSink
(define-property name
@@ -9575,6 +9643,15 @@
(construct-only #f)
)
+(define-property throttle-time
+ (of-object "GstXvImageSink")
+ (prop-type "GParamUInt64")
+ (docs "The time to keep between rendered buffers (unused)")
+ (readable #t)
+ (writable #t)
+ (construct-only #f)
+)
+
(define-property show-preroll-frame
(of-object "GstXvImageSink")
(prop-type "GParamBoolean")
@@ -9728,3 +9805,21 @@
(construct-only #f)
)
+(define-property window-width
+ (of-object "GstXvImageSink")
+ (prop-type "GParamUInt64")
+ (docs "Width of the window")
+ (readable #t)
+ (writable #f)
+ (construct-only #f)
+)
+
+(define-property window-height
+ (of-object "GstXvImageSink")
+ (prop-type "GParamUInt64")
+ (docs "Height of the window")
+ (readable #t)
+ (writable #f)
+ (construct-only #f)
+)
+
diff --git a/tools/extra_defs_gen/generate_defs_gst.cc b/tools/extra_defs_gen/generate_defs_gst.cc
index 9297c39..915b654 100644
--- a/tools/extra_defs_gen/generate_defs_gst.cc
+++ b/tools/extra_defs_gen/generate_defs_gst.cc
@@ -136,12 +136,16 @@ int main (int argc, char *argv[])
<< get_plugin_defs("fdsrc", gst_type_is_a_pointer)
<< get_plugin_defs("filesrc", gst_type_is_a_pointer)
<< get_plugin_defs("filesink", gst_type_is_a_pointer)
+ << get_plugin_defs("funnel", gst_type_is_a_pointer)
<< get_plugin_defs("identity", gst_type_is_a_pointer)
+ << get_plugin_defs("input-selector", gst_type_is_a_pointer)
<< get_plugin_defs("multiqueue", gst_type_is_a_pointer)
+ << get_plugin_defs("output-selector", gst_type_is_a_pointer)
<< get_plugin_defs("queue", gst_type_is_a_pointer)
<< get_plugin_defs("queue2", gst_type_is_a_pointer)
<< get_plugin_defs("tee", gst_type_is_a_pointer)
<< get_plugin_defs("typefind", gst_type_is_a_pointer)
+ << get_plugin_defs("valve", gst_type_is_a_pointer)
// gst-plugins-base (GStreamer base) types:
<< get_defs(GST_TYPE_AUDIO_CLOCK, gst_type_is_a_pointer)
diff --git a/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc b/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc
index 7f29d00..6c551c0 100644
--- a/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc
+++ b/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc
@@ -432,7 +432,7 @@ static std::string get_signal_wrap_statements(std::string& includeMacroCalls,
signalMethodName + '(';
cClassSignalDeclarations += " " + returnCType + " (*" +
- signalMethodName + ") (" + cTypeName + "* element";
+ signalMethodName + "_signal) (" + cTypeName + "* element";
//Loop through the list of parameters:
const GType* pParameters = signalQuery.param_types;
@@ -542,7 +542,7 @@ static std::string get_signal_wrap_statements(std::string& includeMacroCalls,
}
}
- wrapStatement += "), \"" + signalName + "\")\n";
+ wrapStatement += "), \"" + signalName + "\", no_default_handler)\n";
// Finish off the action signal declaration and definition if this
// is an action signal.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]