mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 20:21:24 +00:00
Merge branch 'master' into 0.11
This commit is contained in:
commit
357fcbc306
36 changed files with 5346 additions and 95 deletions
2
common
2
common
|
@ -1 +1 @@
|
|||
Subproject commit 1de7f6ab2d4bc1af69f06079cf0f4e2cbbfdc178
|
||||
Subproject commit 6aec6b9716c184c60c4bc6a5916a2471cfa8c8cd
|
32
configure.ac
32
configure.ac
|
@ -41,6 +41,8 @@ dnl we override it here if we need to for the release candidate of new series
|
|||
GST_MAJORMINOR=0.11
|
||||
AC_SUBST(GST_MAJORMINOR)
|
||||
|
||||
AG_GST_LIBTOOL_PREPARE
|
||||
|
||||
dnl FIXME: this macro doesn't actually work;
|
||||
dnl the generated libtool script has no support for the listed tags.
|
||||
dnl So this needs to be fixed first if we want to use this
|
||||
|
@ -304,6 +306,7 @@ AG_GST_CHECK_PLUGIN(dtmf)
|
|||
AG_GST_CHECK_PLUGIN(dvbsuboverlay)
|
||||
AG_GST_CHECK_PLUGIN(dvdspu)
|
||||
AG_GST_CHECK_PLUGIN(festival)
|
||||
AG_GST_CHECK_PLUGIN(fieldanalysis)
|
||||
AG_GST_CHECK_PLUGIN(freeze)
|
||||
AG_GST_CHECK_PLUGIN(frei0r)
|
||||
AG_GST_CHECK_PLUGIN(gaudieffects)
|
||||
|
@ -636,6 +639,13 @@ AG_GST_CHECK_FEATURE(CELT, [celt], celt, [
|
|||
dnl to prevent an error
|
||||
true
|
||||
])
|
||||
|
||||
PKG_CHECK_MODULES(CELT_0_11, celt >= 0.11.0, [
|
||||
AC_DEFINE([HAVE_CELT_0_11], 1, [Define if libcelt 0.11 is installed])
|
||||
], [
|
||||
dnl to prevent an error
|
||||
true
|
||||
])
|
||||
AC_SUBST(CELT_CFLAGS)
|
||||
AC_SUBST(CELT_LIBS)
|
||||
])
|
||||
|
@ -651,6 +661,23 @@ AG_GST_CHECK_FEATURE(COG, [Cog plugin], cog, [
|
|||
AC_SUBST(COG_LIBS)
|
||||
])
|
||||
|
||||
dnl *** Curl ***
|
||||
translit(dnm, m, l) AM_CONDITIONAL(USE_CURL, true)
|
||||
AG_GST_CHECK_FEATURE(CURL, [Curl plugin], curl, [
|
||||
PKG_CHECK_MODULES(CURL, libcurl >= 7.21.0, [
|
||||
HAVE_CURL="yes"
|
||||
AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/ip.h netinet/tcp.h fcntl.h],
|
||||
[ ], [HAVE_CURL="no"])
|
||||
AC_MSG_CHECKING([for socket support needed by curlsink])
|
||||
AC_MSG_RESULT($HAVE_CURL)
|
||||
], [
|
||||
HAVE_CURL="no"
|
||||
AC_MSG_RESULT(no)
|
||||
])
|
||||
AC_SUBST(CURL_CFLAGS)
|
||||
AC_SUBST(CURL_LIBS)
|
||||
])
|
||||
|
||||
dnl *** dc1394 ***
|
||||
translit(dnm, m, l) AM_CONDITIONAL(USE_DC1394, true)
|
||||
AG_GST_CHECK_FEATURE(DC1394, [libdc1394], dc1394, [
|
||||
|
@ -1590,6 +1617,7 @@ AM_CONDITIONAL(USE_BZ2, false)
|
|||
AM_CONDITIONAL(USE_CDAUDIO, false)
|
||||
AM_CONDITIONAL(USE_CELT, false)
|
||||
AM_CONDITIONAL(USE_COG, false)
|
||||
AM_CONDITIONAL(USE_CURL, false)
|
||||
AM_CONDITIONAL(USE_DC1394, false)
|
||||
AM_CONDITIONAL(USE_DIRECTFB, false)
|
||||
AM_CONDITIONAL(USE_DIRAC, false)
|
||||
|
@ -1701,7 +1729,7 @@ AC_SUBST(GST_LIB_LDFLAGS)
|
|||
|
||||
dnl this really should only contain flags, not libs - they get added before
|
||||
dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
|
||||
GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_desc\$\$' $GST_ALL_LDFLAGS"
|
||||
GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_desc.*' $GST_ALL_LDFLAGS"
|
||||
AC_SUBST(GST_PLUGIN_LDFLAGS)
|
||||
|
||||
dnl *** output files ***
|
||||
|
@ -1733,6 +1761,7 @@ gst/dtmf/Makefile
|
|||
gst/dvbsuboverlay/Makefile
|
||||
gst/dvdspu/Makefile
|
||||
gst/festival/Makefile
|
||||
gst/fieldanalysis/Makefile
|
||||
gst/freeze/Makefile
|
||||
gst/frei0r/Makefile
|
||||
gst/gaudieffects/Makefile
|
||||
|
@ -1826,6 +1855,7 @@ ext/bz2/Makefile
|
|||
ext/cdaudio/Makefile
|
||||
ext/celt/Makefile
|
||||
ext/cog/Makefile
|
||||
ext/curl/Makefile
|
||||
ext/dc1394/Makefile
|
||||
ext/dirac/Makefile
|
||||
ext/directfb/Makefile
|
||||
|
|
|
@ -94,6 +94,7 @@ EXTRA_HFILES = \
|
|||
$(top_srcdir)/ext/amrwbenc/gstamrwbenc.h \
|
||||
$(top_srcdir)/ext/celt/gstceltdec.h \
|
||||
$(top_srcdir)/ext/celt/gstceltenc.h \
|
||||
$(top_srcdir)/ext/curl/gstcurlsink.h \
|
||||
$(top_srcdir)/ext/dc1394/gstdc1394.h \
|
||||
$(top_srcdir)/ext/directfb/dfbvideosink.h \
|
||||
$(top_srcdir)/ext/dts/gstdtsdec.h \
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
<xi:include href="xml/element-chromium.xml" />
|
||||
<xi:include href="xml/element-circle.xml" />
|
||||
<xi:include href="xml/element-coloreffects.xml" />
|
||||
<xi:include href="xml/element-curlsink.xml" />
|
||||
<xi:include href="xml/element-cvdilate.xml" />
|
||||
<xi:include href="xml/element-cverode.xml" />
|
||||
<xi:include href="xml/element-cvequalizehist.xml" />
|
||||
|
@ -147,6 +148,7 @@
|
|||
<xi:include href="xml/plugin-cdxaparse.xml" />
|
||||
<xi:include href="xml/plugin-celt.xml" />
|
||||
<xi:include href="xml/plugin-coloreffects.xml" />
|
||||
<xi:include href="xml/plugin-curl.xml" />
|
||||
<xi:include href="xml/plugin-dataurisrc.xml" />
|
||||
<xi:include href="xml/plugin-dccp.xml" />
|
||||
<xi:include href="xml/plugin-debugutilsbad.xml" />
|
||||
|
|
|
@ -244,6 +244,20 @@ GST_TYPE_COLOR_EFFECTS
|
|||
gst_color_effects_get_type
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<FILE>element-curlsink</FILE>
|
||||
<TITLE>curlsink</TITLE>
|
||||
GstCurlSink
|
||||
<SUBSECTION Standard>
|
||||
GstCurlSinkClass
|
||||
GST_CURL_SINK
|
||||
GST_CURL_SINK_CLASS
|
||||
GST_IS_CURL_SINK
|
||||
GST_IS_CURL_SINK_CLASS
|
||||
GST_TYPE_CURL_SINK
|
||||
gst_curl_sink_get_type
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<FILE>element-cvdilate</FILE>
|
||||
<TITLE>cvdilate</TITLE>
|
||||
|
|
|
@ -1675,7 +1675,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>trans-mode</NICK>
|
||||
<BLURB>Transmission Mode (DVB-T).</BLURB>
|
||||
<DEFAULT>8k</DEFAULT>
|
||||
<DEFAULT>8K</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -17955,7 +17955,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>trans-mode</NICK>
|
||||
<BLURB>Transmission Mode (DVB-T).</BLURB>
|
||||
<DEFAULT>8k</DEFAULT>
|
||||
<DEFAULT>8K</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -18322,7 +18322,7 @@
|
|||
<NAME>GstH264Parse::split-packetized</NAME>
|
||||
<TYPE>gboolean</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<FLAGS>rwx</FLAGS>
|
||||
<NICK>Split packetized</NICK>
|
||||
<BLURB>Split NAL units of packetized streams.</BLURB>
|
||||
<DEFAULT>FALSE</DEFAULT>
|
||||
|
@ -18352,7 +18352,7 @@
|
|||
<NAME>GstH264Parse::config-interval</NAME>
|
||||
<TYPE>guint</TYPE>
|
||||
<RANGE><= 3600</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<FLAGS>rwx</FLAGS>
|
||||
<NICK>SPS PPS Send Interval</NICK>
|
||||
<BLURB>Send SPS and PPS Insertion Interval in seconds (sprop parameter sets will be multiplexed in the data stream when detected.) (0 = disabled).</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
|
@ -26510,7 +26510,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>physics</NICK>
|
||||
<BLURB>water density: from 1 to 4.</BLURB>
|
||||
<DEFAULT>4.63015e-299</DEFAULT>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26550,7 +26550,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>splash</NICK>
|
||||
<BLURB>make a big splash in the center.</BLURB>
|
||||
<DEFAULT>7.7486e-304</DEFAULT>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26560,7 +26560,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>splash</NICK>
|
||||
<BLURB>make a big splash in the center.</BLURB>
|
||||
<DEFAULT>4.62957e-299</DEFAULT>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26590,7 +26590,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>ratiox</NICK>
|
||||
<BLURB>x-ratio.</BLURB>
|
||||
<DEFAULT>2.31928e-310</DEFAULT>
|
||||
<DEFAULT>3.81574e-236</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26600,7 +26600,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>ratioy</NICK>
|
||||
<BLURB>y-ratio.</BLURB>
|
||||
<DEFAULT>2.31928e-310</DEFAULT>
|
||||
<DEFAULT>2.58656e-231</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26610,7 +26610,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>DelayTime</NICK>
|
||||
<BLURB>the delay time.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
<DEFAULT>-6.17189e+303</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26640,7 +26640,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Color</NICK>
|
||||
<BLURB>the color of the image.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
<DEFAULT>7.05334e-30</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26650,7 +26650,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Color</NICK>
|
||||
<BLURB>the color of the image.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
<DEFAULT>7.05334e-30</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -26990,7 +26990,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>lredscale</NICK>
|
||||
<BLURB>multiplier for downscaling non-edge brightness.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
<DEFAULT>8.20251e-304</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -27000,7 +27000,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>lthresh</NICK>
|
||||
<BLURB>threshold for edge lightening.</BLURB>
|
||||
<DEFAULT>6.9235e+228</DEFAULT>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -27010,7 +27010,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>lupscale</NICK>
|
||||
<BLURB>multiplier for upscaling edge brightness.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
<DEFAULT>7.74861e-304</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -27180,7 +27180,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>blend</NICK>
|
||||
<BLURB>blend factor.</BLURB>
|
||||
<DEFAULT>-6.17056e+303</DEFAULT>
|
||||
<DEFAULT>8.20251e-304</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -27190,7 +27190,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>fader</NICK>
|
||||
<BLURB>the fader position.</BLURB>
|
||||
<DEFAULT>7.7486e-304</DEFAULT>
|
||||
<DEFAULT>-5.83035e+303</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -27370,7 +27370,7 @@
|
|||
<FLAGS>rw</FLAGS>
|
||||
<NICK>HSync</NICK>
|
||||
<BLURB>the hsync offset.</BLURB>
|
||||
<DEFAULT>2.38039e-316</DEFAULT>
|
||||
<DEFAULT>1.86264e-09</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
|
@ -45499,7 +45499,7 @@
|
|||
<RANGE>[0,1000000000]</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Bit rate</NICK>
|
||||
<BLURB>Bit rate.</BLURB>
|
||||
<BLURB>Bit rate (in bits/sec).</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
|
@ -47036,7 +47036,7 @@
|
|||
<ARG>
|
||||
<NAME>GstRsvgOverlay::x</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>>= 0</RANGE>
|
||||
<RANGE>>= -2147483647</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>x offset</NICK>
|
||||
<BLURB>Specify an x offset.</BLURB>
|
||||
|
@ -47046,10 +47046,280 @@
|
|||
<ARG>
|
||||
<NAME>GstRsvgOverlay::y</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>>= 0</RANGE>
|
||||
<RANGE>>= -2147483647</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>y offset</NICK>
|
||||
<BLURB>Specify a y offset.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstRsvgOverlay::height</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>>= -2147483647</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>height</NICK>
|
||||
<BLURB>Specify a height in pixels.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstRsvgOverlay::height-relative</NAME>
|
||||
<TYPE>gfloat</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>relative height</NICK>
|
||||
<BLURB>Specify a height relative to the display size.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstRsvgOverlay::width</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>>= -2147483647</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>width</NICK>
|
||||
<BLURB>Specify a width in pixels.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstRsvgOverlay::width-relative</NAME>
|
||||
<TYPE>gfloat</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>relative width</NICK>
|
||||
<BLURB>Specify a width relative to the display size.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstRsvgOverlay::x-relative</NAME>
|
||||
<TYPE>gfloat</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>x relative offset</NICK>
|
||||
<BLURB>Specify an x offset relative to the display size.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstRsvgOverlay::y-relative</NAME>
|
||||
<TYPE>gfloat</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>y relative offset</NICK>
|
||||
<BLURB>Specify a y offset relative to the display size.</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstLegacyH264Parse::access-unit</NAME>
|
||||
<TYPE>gboolean</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Access Units</NICK>
|
||||
<BLURB>Output Acess Units rather than NALUs.</BLURB>
|
||||
<DEFAULT>FALSE</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstLegacyH264Parse::config-interval</NAME>
|
||||
<TYPE>guint</TYPE>
|
||||
<RANGE><= 3600</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>SPS PPS Send Interval</NICK>
|
||||
<BLURB>Send SPS and PPS Insertion Interval in seconds (sprop parameter sets will be multiplexed in the data stream when detected.) (0 = disabled).</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstLegacyH264Parse::output-format</NAME>
|
||||
<TYPE>GstH264ParseFormat</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Output Format</NICK>
|
||||
<BLURB>Output Format of stream (bytestream or otherwise).</BLURB>
|
||||
<DEFAULT>Input Format</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstLegacyH264Parse::split-packetized</NAME>
|
||||
<TYPE>gboolean</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Split packetized</NICK>
|
||||
<BLURB>Split NAL units of packetized streams.</BLURB>
|
||||
<DEFAULT>FALSE</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCsp::dither</NAME>
|
||||
<TYPE>GstColorspaceDitherMethod</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Dither</NICK>
|
||||
<BLURB>Apply dithering while converting.</BLURB>
|
||||
<DEFAULT>No dithering (default)</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>MpegTSParse2::program-numbers</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Program Numbers</NICK>
|
||||
<BLURB>Colon separated list of programs.</BLURB>
|
||||
<DEFAULT>""</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstTSDemux::emit-stats</NAME>
|
||||
<TYPE>gboolean</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Emit statistics</NICK>
|
||||
<BLURB>Emit messages for every pcr/opcr/pts/dts.</BLURB>
|
||||
<DEFAULT>FALSE</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstTSDemux::program-number</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>>= G_MAXULONG</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Program number</NICK>
|
||||
<BLURB>Program Number to demux for (-1 to ignore).</BLURB>
|
||||
<DEFAULT>-1</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::accept-self-signed</NAME>
|
||||
<TYPE>gboolean</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Accept self-signed certificates</NICK>
|
||||
<BLURB>Accept self-signed SSL/TLS certificates.</BLURB>
|
||||
<DEFAULT>FALSE</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::content-type</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Content type</NICK>
|
||||
<BLURB>The mime type of the body of the request.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::file-name</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Base file name</NICK>
|
||||
<BLURB>The base file name for the uploaded images.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::location</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Location</NICK>
|
||||
<BLURB>URI location to write to.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::passwd</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>User password</NICK>
|
||||
<BLURB>User password to use for server authentication.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::proxy</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Proxy</NICK>
|
||||
<BLURB>HTTP proxy server URI.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::proxy-passwd</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Proxy user password</NICK>
|
||||
<BLURB>Proxy user password to use for proxy authentication.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::proxy-port</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>>= 0</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Proxy port</NICK>
|
||||
<BLURB>HTTP proxy server port.</BLURB>
|
||||
<DEFAULT>3128</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::proxy-user</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Proxy user name</NICK>
|
||||
<BLURB>Proxy user name to use for proxy authentication.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::qos-dscp</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>[0,63]</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>QoS diff srv code point</NICK>
|
||||
<BLURB>Quality of Service, differentiated services code point (0 default).</BLURB>
|
||||
<DEFAULT>0</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::timeout</NAME>
|
||||
<TYPE>gint</TYPE>
|
||||
<RANGE>>= 0</RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Timeout</NICK>
|
||||
<BLURB>Number of seconds waiting to write before timeout.</BLURB>
|
||||
<DEFAULT>30</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::use-content-length</NAME>
|
||||
<TYPE>gboolean</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>Use content length header</NICK>
|
||||
<BLURB>Use the Content-Length HTTP header instead of Transfer-Encoding header.</BLURB>
|
||||
<DEFAULT>FALSE</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
<ARG>
|
||||
<NAME>GstCurlSink::user</NAME>
|
||||
<TYPE>gchar*</TYPE>
|
||||
<RANGE></RANGE>
|
||||
<FLAGS>rw</FLAGS>
|
||||
<NICK>User name</NICK>
|
||||
<BLURB>User name to use for server authentication.</BLURB>
|
||||
<DEFAULT>NULL</DEFAULT>
|
||||
</ARG>
|
||||
|
||||
|
|
|
@ -14,17 +14,22 @@ GObject
|
|||
GstAsfMux
|
||||
GstAsfParse
|
||||
GstAssRender
|
||||
GstAudioBaseParseBad
|
||||
GstBaseParseBad
|
||||
GstAacParse
|
||||
GstAc3Parse
|
||||
GstAmrParse
|
||||
GstDcaParse
|
||||
GstDiracParse
|
||||
GstFlacParse
|
||||
GstH263Parse
|
||||
GstH264Parse
|
||||
GstMpegAudioParse
|
||||
GstBaseRTPDepayload
|
||||
GstRtpDTMFDepay
|
||||
GstRtpVP8Depay
|
||||
GstBaseRTPPayload
|
||||
GstRtpAsfPay
|
||||
GstRtpVP8Pay
|
||||
GstBaseSink
|
||||
GstBaseAudioSink
|
||||
GstAudioSink
|
||||
|
@ -32,6 +37,7 @@ GObject
|
|||
GstNasSink
|
||||
GstSDLAudioSink
|
||||
GstChecksumSink
|
||||
GstCurlSink
|
||||
GstDCCPClientSink
|
||||
GstDCCPServerSink
|
||||
GstFBDEVSink
|
||||
|
@ -52,6 +58,7 @@ GObject
|
|||
GstMMS
|
||||
GstMythtvSrc
|
||||
GstNeonhttpSrc
|
||||
GstRTMPSrc
|
||||
GstRfbSrc
|
||||
GstShmSrc
|
||||
GstVCDSrc
|
||||
|
@ -181,8 +188,6 @@ GObject
|
|||
GstDiracEnc
|
||||
GstSchroEnc
|
||||
GstVP8Enc
|
||||
GstBaseVideoParse
|
||||
GstSchroParse
|
||||
GstBin
|
||||
DvbBaseBin
|
||||
GstAutoConvert
|
||||
|
@ -216,7 +221,6 @@ GObject
|
|||
GstGPPMux
|
||||
GstGSMDec
|
||||
GstGSMEnc
|
||||
GstH264Parse
|
||||
GstISMLMux
|
||||
GstId3BaseMux
|
||||
GstId3Mux
|
||||
|
@ -231,6 +235,7 @@ GObject
|
|||
GstKateParse
|
||||
GstKateTag
|
||||
GstKateTiger
|
||||
GstLegacyH264Parse
|
||||
GstLiveAdder
|
||||
GstMJ2Mux
|
||||
GstMP4Mux
|
||||
|
@ -436,6 +441,9 @@ GObject
|
|||
Gstpyramidsegment
|
||||
Gsttextwrite
|
||||
MpegPsMux
|
||||
MpegTSBase
|
||||
GstTSDemux
|
||||
MpegTSParse2
|
||||
MpegTSParse
|
||||
MpegTsMux
|
||||
MpegVideoParse
|
||||
|
|
|
@ -14,13 +14,14 @@ GstAutoConvert GstChildProxy
|
|||
GstAutoVideoConvert GstChildProxy
|
||||
GstSDPDemux GstChildProxy
|
||||
GstFPSDisplaySink GstChildProxy
|
||||
GstMpeg2enc GstPreset
|
||||
GstSDLVideoSink GstImplementsInterface GstXOverlay GstNavigation
|
||||
GstDfbVideoSink GstImplementsInterface GstNavigation GstColorBalance
|
||||
VdpSink GstImplementsInterface GstNavigation GstXOverlay
|
||||
GstApExSink GstImplementsInterface GstMixer
|
||||
GstMpeg2enc GstPreset
|
||||
GstCeltEnc GstTagSetter GstPreset
|
||||
GstCDAudio GstURIHandler
|
||||
GstRTMPSrc GstURIHandler
|
||||
GstMythtvSrc GstURIHandler
|
||||
GstMMS GstURIHandler
|
||||
GstNeonhttpSrc GstURIHandler
|
||||
|
|
|
@ -20,13 +20,13 @@
|
|||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-raw-yuv, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(fourcc){ I420, NV12, NV21, YV12, YUY2, Y42B, Y444, YUV9, YVU9, Y41B, Y800, Y8 , GREY, Y16 , UYVY, YVYU, IYU1, v308, AYUV, v210, A420 }; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)63488, green_mask=(int)2016, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)31, green_mask=(int)2016, blue_mask=(int)63488, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31744, green_mask=(int)992, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31, green_mask=(int)992, blue_mask=(int)31744, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)4321, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)1234, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
|
||||
<details>video/x-raw-yuv, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(fourcc){ I420, NV12, NV21, YV12, YUY2, Y42B, Y444, YUV9, YVU9, Y41B, Y800, Y8 , GREY, Y16 , UYVY, YVYU, IYU1, v308, AYUV, v210, v216, A420, AY64 }; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)63488, green_mask=(int)2016, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)31, green_mask=(int)2016, blue_mask=(int)63488, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31744, green_mask=(int)992, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31, green_mask=(int)992, blue_mask=(int)31744, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)4321, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)1234, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)30, endianness=(int)4321, red_mask=(int)1072693248, green_mask=(int)1047552, blue_mask=(int)1023, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)64, depth=(int)64, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-raw-yuv, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(fourcc){ I420, NV12, NV21, YV12, YUY2, Y42B, Y444, YUV9, YVU9, Y41B, Y800, Y8 , GREY, Y16 , UYVY, YVYU, IYU1, v308, AYUV, v210, A420 }; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)63488, green_mask=(int)2016, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)31, green_mask=(int)2016, blue_mask=(int)63488, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31744, green_mask=(int)992, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31, green_mask=(int)992, blue_mask=(int)31744, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)4321, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)1234, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
|
||||
<details>video/x-raw-yuv, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(fourcc){ I420, NV12, NV21, YV12, YUY2, Y42B, Y444, YUV9, YVU9, Y41B, Y800, Y8 , GREY, Y16 , UYVY, YVYU, IYU1, v308, AYUV, v210, v216, A420, AY64 }; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)63488, green_mask=(int)2016, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)16, endianness=(int)1234, red_mask=(int)31, green_mask=(int)2016, blue_mask=(int)63488, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31744, green_mask=(int)992, blue_mask=(int)31, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)16, depth=(int)15, endianness=(int)1234, red_mask=(int)31, green_mask=(int)992, blue_mask=(int)31744, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)8, depth=(int)8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)4321, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-gray, bpp=(int)16, depth=(int)16, endianness=(int)1234, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)30, endianness=(int)4321, red_mask=(int)1072693248, green_mask=(int)1047552, blue_mask=(int)1023, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)64, depth=(int)64, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
|
|
28
docs/plugins/inspect/plugin-curl.xml
Normal file
28
docs/plugins/inspect/plugin-curl.xml
Normal file
|
@ -0,0 +1,28 @@
|
|||
<plugin>
|
||||
<name>curl</name>
|
||||
<description>libcurl-based elements</description>
|
||||
<filename>../../ext/curl/.libs/libgstcurl.so</filename>
|
||||
<basename>libgstcurl.so</basename>
|
||||
<version>0.10.21.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-bad</source>
|
||||
<package>GStreamer Bad Plug-ins git</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>curlsink</name>
|
||||
<longname>Curl sink</longname>
|
||||
<class>Sink/Network</class>
|
||||
<description>Upload data over the network to a server using libcurl</description>
|
||||
<author>Patricia Muscalu <patricia@axis.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
|
@ -10,7 +10,7 @@
|
|||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>h264parse</name>
|
||||
<name>legacyh264parse</name>
|
||||
<longname>H264Parse</longname>
|
||||
<class>Codec/Parser/Video</class>
|
||||
<description>Parses raw h264 stream</description>
|
||||
|
|
79
docs/plugins/inspect/plugin-mpegtsdemux.xml
Normal file
79
docs/plugins/inspect/plugin-mpegtsdemux.xml
Normal file
|
@ -0,0 +1,79 @@
|
|||
<plugin>
|
||||
<name>mpegtsdemux</name>
|
||||
<description>MPEG TS demuxer</description>
|
||||
<filename>../../gst/mpegtsdemux/.libs/libgstmpegtsdemux.so</filename>
|
||||
<basename>libgstmpegtsdemux.so</basename>
|
||||
<version>0.10.21.1</version>
|
||||
<license>unknown</license>
|
||||
<source>gst-plugins-bad</source>
|
||||
<package>GStreamer Bad Plug-ins git</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>tsdemux</name>
|
||||
<longname>MPEG transport stream demuxer</longname>
|
||||
<class>Codec/Demuxer</class>
|
||||
<description>Demuxes MPEG2 transport streams</description>
|
||||
<author>Zaheer Abbas Merali <zaheerabbas at merali dot org>; Edward Hervey <edward.hervey@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/mpegts, systemstream=(boolean)true</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>audio_%04x</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>audio/mpeg, mpegversion=(int){ 1, 4 }; audio/x-lpcm, width=(int){ 16, 20, 24 }, rate=(int){ 48000, 96000 }, channels=(int)[ 1, 8 ], dynamic_range=(int)[ 0, 255 ], emphasis=(boolean){ false, true }, mute=(boolean){ false, true }; audio/x-ac3; audio/x-eac3; audio/x-dts; audio/x-private-ts-lpcm</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>private_%04x</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>subpicture_%04x</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>subpicture/x-pgs; video/x-dvd-subpicture</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>video_%04x</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>video/mpeg, mpegversion=(int){ 1, 2, 4 }, systemstream=(boolean)false; video/x-h264; video/x-dirac; video/x-wmv, wmvversion=(int)3, format=(fourcc)WVC1</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>tsparse</name>
|
||||
<longname>MPEG transport stream parser</longname>
|
||||
<class>Codec/Parser</class>
|
||||
<description>Parses MPEG2 transport streams</description>
|
||||
<author>Alessandro Decina <alessandro@nnva.org>, Zaheer Abbas Merali <zaheerabbas at merali dot org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/mpegts, systemstream=(boolean)true</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>program_%d</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>video/mpegts, systemstream=(boolean)true</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src%d</name>
|
||||
<direction>source</direction>
|
||||
<presence>request</presence>
|
||||
<details>video/mpegts, systemstream=(boolean)true</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
28
docs/plugins/inspect/plugin-rtmpsrc.xml
Normal file
28
docs/plugins/inspect/plugin-rtmpsrc.xml
Normal file
|
@ -0,0 +1,28 @@
|
|||
<plugin>
|
||||
<name>rtmpsrc</name>
|
||||
<description>RTMP source</description>
|
||||
<filename>../../ext/rtmp/.libs/libgstrtmp.so</filename>
|
||||
<basename>libgstrtmp.so</basename>
|
||||
<version>0.10.21.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-bad</source>
|
||||
<package>GStreamer Bad Plug-ins git</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>rtmpsrc</name>
|
||||
<longname>RTMP Source</longname>
|
||||
<class>Source/File</class>
|
||||
<description>Read RTMP streams</description>
|
||||
<author>Bastien Nocera <hadess@hadess.net>, Sebastian Dröge <sebastian.droege@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
55
docs/plugins/inspect/plugin-rtpvp8.xml
Normal file
55
docs/plugins/inspect/plugin-rtpvp8.xml
Normal file
|
@ -0,0 +1,55 @@
|
|||
<plugin>
|
||||
<name>rtpvp8</name>
|
||||
<description>rtpvp8</description>
|
||||
<filename>../../gst/rtpvp8/.libs/libgstrtpvp8.so</filename>
|
||||
<basename>libgstrtpvp8.so</basename>
|
||||
<version>0.10.21.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-bad</source>
|
||||
<package>GStreamer Bad Plug-ins git</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>rtpvp8depay</name>
|
||||
<longname>RTP VP8 depayloader</longname>
|
||||
<class>Codec/Depayloader/Network/RTP</class>
|
||||
<description>Extracts VP8 video from RTP packets)</description>
|
||||
<author>Sjoerd Simons <sjoerd@luon.net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/x-rtp, payload=(int)[ 96, 127 ], clock-rate=(int)90000, media=(string)video, encoding-name=(string)VP8-DRAFT-0-3-2</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-vp8</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rtpvp8pay</name>
|
||||
<longname>RTP VP8 payloader</longname>
|
||||
<class>Codec/Payloader/Network/RTP</class>
|
||||
<description>Puts VP8 video in RTP packets)</description>
|
||||
<author>Sjoerd Simons <sjoerd@luon.net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-vp8</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/x-rtp, payload=(int)[ 96, 127 ], clock-rate=(int)90000, encoding-name=(string)VP8-DRAFT-0-3-2</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
|
@ -51,26 +51,5 @@
|
|||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>schroparse</name>
|
||||
<longname>Dirac Parser</longname>
|
||||
<class>Codec/Parser/Video</class>
|
||||
<description>Parse Dirac streams</description>
|
||||
<author>David Schleef <ds@schleef.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-dirac</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-dirac; video/x-qt-part; video/x-avi-part; video/x-mp4-part</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
76
docs/plugins/inspect/plugin-videoparsersbad.xml
Normal file
76
docs/plugins/inspect/plugin-videoparsersbad.xml
Normal file
|
@ -0,0 +1,76 @@
|
|||
<plugin>
|
||||
<name>videoparsersbad</name>
|
||||
<description>videoparsers</description>
|
||||
<filename>../../gst/videoparsers/.libs/libgstvideoparsersbad.so</filename>
|
||||
<basename>libgstvideoparsersbad.so</basename>
|
||||
<version>0.10.21.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-bad</source>
|
||||
<package>GStreamer Bad Plug-ins git</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>diracparse</name>
|
||||
<longname>FIXME</longname>
|
||||
<class>Generic</class>
|
||||
<description>FIXME</description>
|
||||
<author>David Schleef <ds@schleef.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/unknown</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/unknown</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>h263parse</name>
|
||||
<longname>H.263 parser</longname>
|
||||
<class>Codec/Parser/Video</class>
|
||||
<description>Parses H.263 streams</description>
|
||||
<author>Arun Raghavan <arun.raghavan@collabora.co.uk>,Edward Hervey <edward.hervey@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-h263, variant=(string)itu, parsed=(boolean)false</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-h263, variant=(string)itu, parsed=(boolean)true</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>h264parse</name>
|
||||
<longname>H.264 parser</longname>
|
||||
<class>Codec/Parser/Video</class>
|
||||
<description>Parses H.264 streams</description>
|
||||
<author>Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-h264, parsed=(boolean)false</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-h264, parsed=(boolean)true</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
|
@ -64,6 +64,12 @@ else
|
|||
COG_DIR=
|
||||
endif
|
||||
|
||||
if USE_CURL
|
||||
CURL_DIR=curl
|
||||
else
|
||||
CURL_DIR=
|
||||
endif
|
||||
|
||||
if USE_DC1394
|
||||
DC1394_DIR=dc1394
|
||||
else
|
||||
|
@ -379,6 +385,7 @@ SUBDIRS=\
|
|||
$(CDAUDIO_DIR) \
|
||||
$(CELT_DIR) \
|
||||
$(COG_DIR) \
|
||||
$(CURL_DIR) \
|
||||
$(DC1394_DIR) \
|
||||
$(DIRAC_DIR) \
|
||||
$(DIRECTFB_DIR) \
|
||||
|
|
|
@ -510,10 +510,15 @@ celt_dec_chain_parse_header (GstCeltDec * dec, GstBuffer * buf)
|
|||
goto mode_init_failed;
|
||||
|
||||
/* initialize the decoder */
|
||||
#ifdef HAVE_CELT_0_11
|
||||
dec->state =
|
||||
celt_decoder_create_custom (dec->mode, dec->header.nb_channels, &error);
|
||||
#else
|
||||
#ifdef HAVE_CELT_0_7
|
||||
dec->state = celt_decoder_create (dec->mode, dec->header.nb_channels, &error);
|
||||
#else
|
||||
dec->state = celt_decoder_create (dec->mode);
|
||||
#endif
|
||||
#endif
|
||||
if (!dec->state)
|
||||
goto init_failed;
|
||||
|
|
|
@ -629,10 +629,14 @@ gst_celt_enc_setup (GstCeltEnc * enc)
|
|||
if (!enc->mode)
|
||||
goto mode_initialization_failed;
|
||||
|
||||
#ifdef HAVE_CELT_0_11
|
||||
celt_header_init (&enc->header, enc->mode, enc->frame_size, enc->channels);
|
||||
#else
|
||||
#ifdef HAVE_CELT_0_7
|
||||
celt_header_init (&enc->header, enc->mode, enc->channels);
|
||||
#else
|
||||
celt_header_init (&enc->header, enc->mode);
|
||||
#endif
|
||||
#endif
|
||||
enc->header.nb_channels = enc->channels;
|
||||
|
||||
|
@ -642,10 +646,14 @@ gst_celt_enc_setup (GstCeltEnc * enc)
|
|||
celt_mode_info (enc->mode, CELT_GET_FRAME_SIZE, &enc->frame_size);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_CELT_0_11
|
||||
enc->state = celt_encoder_create_custom (enc->mode, enc->channels, &error);
|
||||
#else
|
||||
#ifdef HAVE_CELT_0_7
|
||||
enc->state = celt_encoder_create (enc->mode, enc->channels, &error);
|
||||
#else
|
||||
enc->state = celt_encoder_create (enc->mode);
|
||||
#endif
|
||||
#endif
|
||||
if (!enc->state)
|
||||
goto encoder_creation_failed;
|
||||
|
|
15
ext/curl/Makefile.am
Normal file
15
ext/curl/Makefile.am
Normal file
|
@ -0,0 +1,15 @@
|
|||
plugin_LTLIBRARIES = libgstcurl.la
|
||||
|
||||
libgstcurl_la_SOURCES = gstcurl.c gstcurlsink.c
|
||||
libgstcurl_la_CFLAGS = \
|
||||
$(GST_BASE_CFLAGS) \
|
||||
$(GST_CFLAGS) \
|
||||
$(CURL_CFLAGS)
|
||||
libgstcurl_la_LIBADD = \
|
||||
$(GST_BASE_LIBS) \
|
||||
$(GST_LIBS) \
|
||||
$(CURL_LIBS)
|
||||
libgstcurl_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
||||
libgstcurl_la_LIBTOOLFLAGS = --tag=disable-static
|
||||
|
||||
noinst_HEADERS = gstcurlsink.h
|
40
ext/curl/gstcurl.c
Normal file
40
ext/curl/gstcurl.c
Normal file
|
@ -0,0 +1,40 @@
|
|||
/* GStreamer
|
||||
* Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library 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
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include "gstcurlsink.h"
|
||||
|
||||
static gboolean
|
||||
plugin_init (GstPlugin * plugin)
|
||||
{
|
||||
|
||||
if (!gst_element_register (plugin, "curlsink", GST_RANK_NONE,
|
||||
GST_TYPE_CURL_SINK))
|
||||
return FALSE;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
|
||||
GST_VERSION_MINOR,
|
||||
"curl",
|
||||
"libcurl-based elements",
|
||||
plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
|
1268
ext/curl/gstcurlsink.c
Normal file
1268
ext/curl/gstcurlsink.c
Normal file
File diff suppressed because it is too large
Load diff
100
ext/curl/gstcurlsink.h
Normal file
100
ext/curl/gstcurlsink.h
Normal file
|
@ -0,0 +1,100 @@
|
|||
/* GStreamer
|
||||
* Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library 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
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef __GST_CURL_SINK__
|
||||
#define __GST_CURL_SINK__
|
||||
|
||||
#include <gst/gst.h>
|
||||
#include <gst/base/gstbasesink.h>
|
||||
#include <curl/curl.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_CURL_SINK \
|
||||
(gst_curl_sink_get_type())
|
||||
#define GST_CURL_SINK(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_CURL_SINK, GstCurlSink))
|
||||
#define GST_CURL_SINK_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_CURL_SINK, GstCurlSinkClass))
|
||||
#define GST_IS_CURL_SINK(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_CURL_SINK))
|
||||
#define GST_IS_CURL_SINK_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_CURL_SINK))
|
||||
|
||||
typedef struct _GstCurlSink GstCurlSink;
|
||||
typedef struct _GstCurlSinkClass GstCurlSinkClass;
|
||||
|
||||
typedef struct _TransferBuffer TransferBuffer;
|
||||
typedef struct _TransferCondition TransferCondition;
|
||||
|
||||
struct _TransferBuffer {
|
||||
guint8 *ptr;
|
||||
size_t len;
|
||||
size_t offset;
|
||||
};
|
||||
|
||||
struct _TransferCondition {
|
||||
GCond *cond;
|
||||
gboolean data_sent;
|
||||
gboolean data_available;
|
||||
};
|
||||
|
||||
struct _GstCurlSink
|
||||
{
|
||||
GstBaseSink parent;
|
||||
|
||||
/*< private >*/
|
||||
CURLM *multi_handle;
|
||||
CURL *curl;
|
||||
struct curl_slist *header_list;
|
||||
GstPollFD fd;
|
||||
GstPoll *fdset;
|
||||
GThread *transfer_thread;
|
||||
GstFlowReturn flow_ret;
|
||||
TransferBuffer *transfer_buf;
|
||||
TransferCondition *transfer_cond;
|
||||
gint num_buffers_per_packet;
|
||||
gint timeout;
|
||||
gchar *url;
|
||||
gchar *user;
|
||||
gchar *passwd;
|
||||
gchar *proxy;
|
||||
guint proxy_port;
|
||||
gchar *proxy_user;
|
||||
gchar *proxy_passwd;
|
||||
gchar *file_name;
|
||||
guint qos_dscp;
|
||||
gboolean accept_self_signed;
|
||||
gboolean use_content_length;
|
||||
gboolean transfer_thread_close;
|
||||
gboolean new_file;
|
||||
gchar *content_type;
|
||||
gboolean proxy_headers_set;
|
||||
};
|
||||
|
||||
struct _GstCurlSinkClass
|
||||
{
|
||||
GstBaseSinkClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_curl_sink_get_type (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif
|
|
@ -256,12 +256,13 @@ refuse_caps:
|
|||
}
|
||||
}
|
||||
|
||||
static gboolean
|
||||
static GstFlowReturn
|
||||
gst_jasper_dec_negotiate (GstJasperDec * dec, jas_image_t * image)
|
||||
{
|
||||
GstFlowReturn flow_ret = GST_FLOW_OK;
|
||||
gint width, height, channels;
|
||||
gint i, j;
|
||||
gboolean negotiate = FALSE, ret = TRUE;
|
||||
gboolean negotiate = FALSE;
|
||||
jas_clrspc_t clrspc;
|
||||
GstCaps *allowed_caps, *caps;
|
||||
|
||||
|
@ -316,7 +317,7 @@ gst_jasper_dec_negotiate (GstJasperDec * dec, jas_image_t * image)
|
|||
goto done;
|
||||
|
||||
/* clear and refresh to new state */
|
||||
ret = FALSE;
|
||||
flow_ret = GST_FLOW_NOT_NEGOTIATED;
|
||||
dec->format = GST_VIDEO_FORMAT_UNKNOWN;
|
||||
dec->width = width;
|
||||
dec->height = height;
|
||||
|
@ -419,24 +420,30 @@ gst_jasper_dec_negotiate (GstJasperDec * dec, jas_image_t * image)
|
|||
|
||||
GST_DEBUG_OBJECT (dec, "Set format to %d, size to %dx%d", dec->format,
|
||||
dec->width, dec->height);
|
||||
ret = gst_pad_set_caps (dec->srcpad, caps);
|
||||
|
||||
if (!gst_pad_set_caps (dec->srcpad, caps))
|
||||
flow_ret = GST_FLOW_NOT_NEGOTIATED;
|
||||
else
|
||||
flow_ret = GST_FLOW_OK;
|
||||
|
||||
gst_caps_unref (caps);
|
||||
}
|
||||
|
||||
done:
|
||||
return ret;
|
||||
return flow_ret;
|
||||
|
||||
/* ERRORS */
|
||||
fail_image:
|
||||
{
|
||||
GST_DEBUG_OBJECT (dec, "Failed to process decoded image.");
|
||||
ret = FALSE;
|
||||
flow_ret = GST_FLOW_NOT_NEGOTIATED;
|
||||
goto done;
|
||||
}
|
||||
not_supported:
|
||||
{
|
||||
GST_DEBUG_OBJECT (dec, "Decoded image has unsupported colour space.");
|
||||
ret = FALSE;
|
||||
GST_ELEMENT_ERROR (dec, STREAM, DECODE, (NULL), ("Unsupported colorspace"));
|
||||
flow_ret = GST_FLOW_ERROR;
|
||||
goto done;
|
||||
}
|
||||
}
|
||||
|
@ -460,7 +467,8 @@ gst_jasper_dec_get_picture (GstJasperDec * dec, guint8 * data,
|
|||
if (!(image = jas_image_decode (stream, dec->fmt, (char *) "")))
|
||||
goto fail_decode;
|
||||
|
||||
if (!gst_jasper_dec_negotiate (dec, image))
|
||||
ret = gst_jasper_dec_negotiate (dec, image);
|
||||
if (ret != GST_FLOW_OK)
|
||||
goto fail_negotiate;
|
||||
|
||||
ret = gst_pad_alloc_buffer_and_set_caps (dec->srcpad,
|
||||
|
@ -548,7 +556,6 @@ no_buffer:
|
|||
fail_negotiate:
|
||||
{
|
||||
GST_DEBUG_OBJECT (dec, "Failed to determine output caps.");
|
||||
ret = GST_FLOW_NOT_NEGOTIATED;
|
||||
goto done;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -65,6 +65,8 @@ GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
GST_DEBUG_CATEGORY_STATIC (fps_display_sink_debug);
|
||||
#define GST_CAT_DEFAULT fps_display_sink_debug
|
||||
|
||||
#define DEFAULT_SYNC TRUE
|
||||
|
||||
enum
|
||||
{
|
||||
/* FILL ME */
|
||||
|
@ -114,7 +116,7 @@ fps_display_sink_class_init (GstFPSDisplaySinkClass * klass)
|
|||
g_object_class_install_property (gobject_klass, ARG_SYNC,
|
||||
g_param_spec_boolean ("sync",
|
||||
"Sync", "Sync on the clock (if the internally used sink doesn't "
|
||||
"have this property it will be ignored", TRUE,
|
||||
"have this property it will be ignored", DEFAULT_SYNC,
|
||||
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE));
|
||||
|
||||
g_object_class_install_property (gobject_klass, ARG_TEXT_OVERLAY,
|
||||
|
@ -310,7 +312,7 @@ static void
|
|||
fps_display_sink_init (GstFPSDisplaySink * self,
|
||||
GstFPSDisplaySinkClass * g_class)
|
||||
{
|
||||
self->sync = FALSE;
|
||||
self->sync = DEFAULT_SYNC;
|
||||
self->signal_measurements = DEFAULT_SIGNAL_FPS_MEASUREMENTS;
|
||||
self->use_text_overlay = TRUE;
|
||||
self->fps_update_interval = GST_MSECOND * DEFAULT_FPS_UPDATE_INTERVAL_MS;
|
||||
|
|
26
gst/fieldanalysis/Makefile.am
Normal file
26
gst/fieldanalysis/Makefile.am
Normal file
|
@ -0,0 +1,26 @@
|
|||
plugin_LTLIBRARIES = libgstfieldanalysis.la
|
||||
|
||||
ORC_SOURCE=gstfieldanalysisorc
|
||||
include $(top_srcdir)/common/orc.mak
|
||||
|
||||
libgstfieldanalysis_la_SOURCES = gstfieldanalysis.c gstfieldanalysis.h
|
||||
nodist_libgstfieldanalysis_la_SOURCES = $(ORC_NODIST_SOURCES)
|
||||
|
||||
libgstfieldanalysis_la_CFLAGS = \
|
||||
$(GST_PLUGINS_BAD_CFLAGS) \
|
||||
$(GST_PLUGINS_BASE_CFLAGS) \
|
||||
$(GST_BASE_CFLAGS) \
|
||||
$(GST_CFLAGS) \
|
||||
$(ORC_CFLAGS)
|
||||
|
||||
libgstfieldanalysis_la_LIBADD = \
|
||||
$(top_builddir)/gst-libs/gst/video/libgstbasevideo-@GST_MAJORMINOR@.la \
|
||||
$(GST_PLUGINS_BASE_LIBS) -lgstvideo-@GST_MAJORMINOR@ \
|
||||
$(GST_BASE_LIBS) \
|
||||
$(GST_LIBS) \
|
||||
$(ORC_LIBS)
|
||||
|
||||
libgstfieldanalysis_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
||||
libgstfieldanalysis_la_LIBTOOLFLAGS = --tag=disable-static
|
||||
|
||||
noinst_HEADERS = gstfieldanalysis.h
|
1806
gst/fieldanalysis/gstfieldanalysis.c
Normal file
1806
gst/fieldanalysis/gstfieldanalysis.c
Normal file
File diff suppressed because it is too large
Load diff
144
gst/fieldanalysis/gstfieldanalysis.h
Normal file
144
gst/fieldanalysis/gstfieldanalysis.h
Normal file
|
@ -0,0 +1,144 @@
|
|||
/*
|
||||
* GStreamer
|
||||
* Copyright (C) 2010 Robert Swain <robert.swain@collabora.co.uk>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
* and/or sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
* DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the
|
||||
* GNU Lesser General Public License Version 2.1 (the "LGPL"), in
|
||||
* which case the following provisions apply instead of the ones
|
||||
* mentioned above:
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library 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
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef __GST_FIELDANALYSIS_H__
|
||||
#define __GST_FIELDANALYSIS_H__
|
||||
|
||||
#include <gst/gst.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
#define GST_TYPE_FIELDANALYSIS \
|
||||
(gst_field_analysis_get_type())
|
||||
#define GST_FIELDANALYSIS(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FIELDANALYSIS,GstFieldAnalysis))
|
||||
#define GST_FIELDANALYSIS_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FIELDANALYSIS,GstFieldAnalysisClass))
|
||||
#define GST_IS_FIELDANALYSIS(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FIELDANALYSIS))
|
||||
#define GST_IS_FIELDANALYSIS_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FIELDANALYSIS))
|
||||
|
||||
typedef struct _GstFieldAnalysis GstFieldAnalysis;
|
||||
typedef struct _GstFieldAnalysisClass GstFieldAnalysisClass;
|
||||
typedef struct _FieldAnalysisFields FieldAnalysisFields;
|
||||
typedef struct _FieldAnalysis FieldAnalysis;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
FIELD_ANALYSIS_PROGRESSIVE,
|
||||
FIELD_ANALYSIS_INTERLACED,
|
||||
FIELD_ANALYSIS_TELECINE_PROGRESSIVE,
|
||||
FIELD_ANALYSIS_TELECINE_MIXED
|
||||
} FieldAnalysisConclusion;
|
||||
|
||||
enum FieldParity
|
||||
{
|
||||
TOP_FIELD,
|
||||
BOTTOM_FIELD,
|
||||
BOTH_FIELDS
|
||||
};
|
||||
|
||||
struct _FieldAnalysisFields
|
||||
{
|
||||
GstBuffer *buf;
|
||||
gboolean parity;
|
||||
};
|
||||
|
||||
struct _FieldAnalysis
|
||||
{
|
||||
/* frame, top, bottom, top with prev bottom, bottom with prev top */
|
||||
gfloat f, t, b, t_b, b_t;
|
||||
FieldAnalysisConclusion conclusion;
|
||||
/* -1 - unknown; 0 - holding none; 1 - top field; 2 - bottom field; 3 - both */
|
||||
gint holding;
|
||||
gboolean gap;
|
||||
};
|
||||
|
||||
typedef enum
|
||||
{
|
||||
METHOD_32DETECT,
|
||||
METHOD_IS_COMBED,
|
||||
METHOD_5_TAP
|
||||
} FieldAnalysisCombMethod;
|
||||
|
||||
struct _GstFieldAnalysis
|
||||
{
|
||||
GstElement element;
|
||||
|
||||
GstPad *sinkpad, *srcpad;
|
||||
|
||||
GQueue *frames;
|
||||
gint width, height;
|
||||
gint data_offset;
|
||||
gint line_stride; /* step size in bytes from the 0th sample of one line to the next */
|
||||
gint sample_incr; /* step size in bytes from one sample to the next */
|
||||
FieldAnalysis results[2];
|
||||
gfloat (*same_field) (GstFieldAnalysis *, FieldAnalysisFields *);
|
||||
gfloat (*same_frame) (GstFieldAnalysis *, FieldAnalysisFields *);
|
||||
guint64 (*block_score_for_row) (GstFieldAnalysis *, guint8 *, guint8 *);
|
||||
gboolean is_telecine;
|
||||
gboolean first_buffer; /* indicates the first buffer for which a buffer will be output
|
||||
* after a discont or flushing seek */
|
||||
guint8 *comb_mask;
|
||||
guint *block_scores;
|
||||
gboolean flushing; /* indicates whether we are flushing or not */
|
||||
|
||||
/* properties */
|
||||
guint32 noise_floor; /* threshold for the result of a metric to be valid */
|
||||
gfloat field_thresh; /* threshold used for the same parity field metric */
|
||||
gfloat frame_thresh; /* threshold used for the opposite parity field metric */
|
||||
gint64 spatial_thresh; /* threshold used spatial comb detection */
|
||||
guint64 block_width, block_height; /* width/height of window used for comb clusted detection */
|
||||
guint64 block_thresh;
|
||||
guint64 ignored_lines;
|
||||
};
|
||||
|
||||
struct _GstFieldAnalysisClass
|
||||
{
|
||||
GstElementClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_field_analysis_get_type (void);
|
||||
|
||||
G_END_DECLS
|
||||
#endif /* __GST_FIELDANALYSIS_H__ */
|
1056
gst/fieldanalysis/gstfieldanalysisorc-dist.c
Normal file
1056
gst/fieldanalysis/gstfieldanalysisorc-dist.c
Normal file
File diff suppressed because it is too large
Load diff
72
gst/fieldanalysis/gstfieldanalysisorc-dist.h
Normal file
72
gst/fieldanalysis/gstfieldanalysisorc-dist.h
Normal file
|
@ -0,0 +1,72 @@
|
|||
|
||||
/* autogenerated from gstfieldanalysisorc.orc */
|
||||
|
||||
#ifndef _GSTFIELDANALYSISORC_H_
|
||||
#define _GSTFIELDANALYSISORC_H_
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void gst_fieldanalysis_orc_init (void);
|
||||
|
||||
|
||||
|
||||
#ifndef _ORC_INTEGER_TYPEDEFS_
|
||||
#define _ORC_INTEGER_TYPEDEFS_
|
||||
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
|
||||
#include <stdint.h>
|
||||
typedef int8_t orc_int8;
|
||||
typedef int16_t orc_int16;
|
||||
typedef int32_t orc_int32;
|
||||
typedef int64_t orc_int64;
|
||||
typedef uint8_t orc_uint8;
|
||||
typedef uint16_t orc_uint16;
|
||||
typedef uint32_t orc_uint32;
|
||||
typedef uint64_t orc_uint64;
|
||||
#define ORC_UINT64_C(x) UINT64_C(x)
|
||||
#elif defined(_MSC_VER)
|
||||
typedef signed __int8 orc_int8;
|
||||
typedef signed __int16 orc_int16;
|
||||
typedef signed __int32 orc_int32;
|
||||
typedef signed __int64 orc_int64;
|
||||
typedef unsigned __int8 orc_uint8;
|
||||
typedef unsigned __int16 orc_uint16;
|
||||
typedef unsigned __int32 orc_uint32;
|
||||
typedef unsigned __int64 orc_uint64;
|
||||
#define ORC_UINT64_C(x) (x##Ui64)
|
||||
#else
|
||||
#include <limits.h>
|
||||
typedef signed char orc_int8;
|
||||
typedef short orc_int16;
|
||||
typedef int orc_int32;
|
||||
typedef unsigned char orc_uint8;
|
||||
typedef unsigned short orc_uint16;
|
||||
typedef unsigned int orc_uint32;
|
||||
#if INT_MAX == LONG_MAX
|
||||
typedef long long orc_int64;
|
||||
typedef unsigned long long orc_uint64;
|
||||
#define ORC_UINT64_C(x) (x##ULL)
|
||||
#else
|
||||
typedef long orc_int64;
|
||||
typedef unsigned long orc_uint64;
|
||||
#define ORC_UINT64_C(x) (x##UL)
|
||||
#endif
|
||||
#endif
|
||||
typedef union { orc_int16 i; orc_int8 x2[2]; } orc_union16;
|
||||
typedef union { orc_int32 i; float f; orc_int16 x2[2]; orc_int8 x4[4]; } orc_union32;
|
||||
typedef union { orc_int64 i; double f; orc_int32 x2[2]; float x2f[2]; orc_int16 x4[4]; } orc_union64;
|
||||
#endif
|
||||
void orc_same_parity_sad_planar_yuv (guint32 * a1, const orc_uint8 * s1, const orc_uint8 * s2, int p2, int n);
|
||||
void orc_same_parity_ssd_planar_yuv (guint32 * a1, const orc_uint8 * s1, const orc_uint8 * s2, int p2, int n);
|
||||
void orc_same_parity_3_tap_planar_yuv (guint32 * a1, const orc_uint8 * s1, const orc_uint8 * s2, const orc_uint8 * s3, const orc_uint8 * s4, const orc_uint8 * s5, const orc_uint8 * s6, int p2, int n);
|
||||
void orc_opposite_parity_5_tap_planar_yuv (guint32 * a1, const orc_uint8 * s1, const orc_uint8 * s2, const orc_uint8 * s3, const orc_uint8 * s4, const orc_uint8 * s5, int p2, int n);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
119
gst/fieldanalysis/gstfieldanalysisorc.orc
Normal file
119
gst/fieldanalysis/gstfieldanalysisorc.orc
Normal file
|
@ -0,0 +1,119 @@
|
|||
|
||||
.init gst_fieldanalysis_orc_init
|
||||
|
||||
|
||||
.function orc_same_parity_sad_planar_yuv
|
||||
.accumulator 4 a1 guint32
|
||||
.source 1 s1
|
||||
.source 1 s2
|
||||
# noise threshold
|
||||
.param 4 nt
|
||||
.temp 2 t1
|
||||
.temp 2 t2
|
||||
.temp 4 t3
|
||||
.temp 4 t4
|
||||
|
||||
convubw t1, s1
|
||||
convubw t2, s2
|
||||
subw t1, t1, t2
|
||||
absw t1, t1
|
||||
convuwl t3, t1
|
||||
cmpgtsl t4, t3, nt
|
||||
andl t3, t3, t4
|
||||
accl a1, t3
|
||||
|
||||
|
||||
.function orc_same_parity_ssd_planar_yuv
|
||||
.accumulator 4 a1 guint32
|
||||
.source 1 s1
|
||||
.source 1 s2
|
||||
# noise threshold
|
||||
.param 4 nt
|
||||
.temp 2 t1
|
||||
.temp 2 t2
|
||||
.temp 4 t3
|
||||
.temp 4 t4
|
||||
|
||||
convubw t1, s1
|
||||
convubw t2, s2
|
||||
subw t1, t1, t2
|
||||
mulswl t3, t1, t1
|
||||
cmpgtsl t4, t3, nt
|
||||
andl t3, t3, t4
|
||||
accl a1, t3
|
||||
|
||||
|
||||
.function orc_same_parity_3_tap_planar_yuv
|
||||
.accumulator 4 a1 guint32
|
||||
.source 1 s1
|
||||
.source 1 s2
|
||||
.source 1 s3
|
||||
.source 1 s4
|
||||
.source 1 s5
|
||||
.source 1 s6
|
||||
# noise threshold
|
||||
.param 4 nt
|
||||
.temp 2 t1
|
||||
.temp 2 t2
|
||||
.temp 2 t3
|
||||
.temp 2 t4
|
||||
.temp 2 t5
|
||||
.temp 2 t6
|
||||
.temp 4 t7
|
||||
.temp 4 t8
|
||||
|
||||
convubw t1, s1
|
||||
convubw t2, s2
|
||||
convubw t3, s3
|
||||
convubw t4, s4
|
||||
convubw t5, s5
|
||||
convubw t6, s6
|
||||
shlw t2, t2, 2
|
||||
shlw t5, t5, 2
|
||||
addw t1, t1, t2
|
||||
addw t1, t1, t3
|
||||
addw t4, t4, t5
|
||||
addw t4, t4, t6
|
||||
subw t1, t1, t4
|
||||
absw t1, t1
|
||||
convuwl t7, t1
|
||||
cmpgtsl t8, t7, nt
|
||||
andl t7, t7, t8
|
||||
accl a1, t7
|
||||
|
||||
|
||||
.function orc_opposite_parity_5_tap_planar_yuv
|
||||
.accumulator 4 a1 guint32
|
||||
.source 1 s1
|
||||
.source 1 s2
|
||||
.source 1 s3
|
||||
.source 1 s4
|
||||
.source 1 s5
|
||||
# noise threshold
|
||||
.param 4 nt
|
||||
.temp 2 t1
|
||||
.temp 2 t2
|
||||
.temp 2 t3
|
||||
.temp 2 t4
|
||||
.temp 2 t5
|
||||
.temp 4 t6
|
||||
.temp 4 t7
|
||||
|
||||
convubw t1, s1
|
||||
convubw t2, s2
|
||||
convubw t3, s3
|
||||
convubw t4, s4
|
||||
convubw t5, s5
|
||||
shlw t3, t3, 2
|
||||
mullw t2, t2, 3
|
||||
mullw t4, t4, 3
|
||||
subw t1, t1, t2
|
||||
addw t1, t1, t3
|
||||
subw t1, t1, t4
|
||||
addw t1, t1, t5
|
||||
absw t1, t1
|
||||
convuwl t6, t1
|
||||
cmpgtsl t7, t6, nt
|
||||
andl t6, t6, t7
|
||||
accl a1, t6
|
||||
|
|
@ -127,7 +127,7 @@ gst_rtp_vp8_pay_parse_frame (GstRtpVP8Pay * self, GstBuffer * buffer)
|
|||
gboolean keyframe;
|
||||
guint32 header_size;
|
||||
guint8 version;
|
||||
guint8 tmp8;
|
||||
guint8 tmp8 = 0;
|
||||
guint8 *data;
|
||||
guint8 partitions;
|
||||
|
||||
|
|
|
@ -272,7 +272,7 @@ gst_dirac_parse_check_valid_frame (GstBaseParse * parse,
|
|||
drain = GST_BASE_PARSE_FRAME_DRAIN (frame);
|
||||
|
||||
if (!sync && !drain) {
|
||||
guint32 next_sync_word;
|
||||
guint32 next_sync_word = 0;
|
||||
|
||||
next_header = GST_READ_UINT32_BE (GST_BUFFER_DATA (frame->buffer) + 5);
|
||||
GST_LOG ("next header %d", next_header);
|
||||
|
|
|
@ -179,7 +179,8 @@ out:
|
|||
}
|
||||
|
||||
static void
|
||||
gst_h263_parse_set_src_caps (GstH263Parse * h263parse, H263Params * params)
|
||||
gst_h263_parse_set_src_caps (GstH263Parse * h263parse,
|
||||
const H263Params * params)
|
||||
{
|
||||
GstStructure *st;
|
||||
GstCaps *caps, *sink_caps;
|
||||
|
@ -283,7 +284,7 @@ gst_h263_parse_check_valid_frame (GstBaseParse * parse,
|
|||
|
||||
/* If this is the first frame, parse and set srcpad caps */
|
||||
if (h263parse->state == PARSING) {
|
||||
H263Params *params = NULL;
|
||||
H263Params params = { 0, };
|
||||
GstFlowReturn res;
|
||||
|
||||
res = gst_h263_parse_get_params (¶ms, buffer, FALSE, &h263parse->state);
|
||||
|
@ -293,11 +294,8 @@ gst_h263_parse_check_valid_frame (GstBaseParse * parse,
|
|||
GST_BASE_PARSE_FORMAT_PASSTHROUGH, TRUE);
|
||||
} else {
|
||||
/* Set srcpad caps since we now have sufficient information to do so */
|
||||
gst_h263_parse_set_src_caps (h263parse, params);
|
||||
gst_h263_parse_set_src_caps (h263parse, ¶ms);
|
||||
}
|
||||
|
||||
if (params)
|
||||
g_free (params);
|
||||
}
|
||||
|
||||
*skipsize = psc_pos;
|
||||
|
@ -325,7 +323,7 @@ gst_h263_parse_parse_frame (GstBaseParse * parse, GstBaseParseFrame * frame)
|
|||
GstH263Parse *h263parse;
|
||||
GstBuffer *buffer;
|
||||
GstFlowReturn res;
|
||||
H263Params *params = NULL;
|
||||
H263Params params = { 0, };
|
||||
|
||||
h263parse = GST_H263_PARSE (parse);
|
||||
buffer = frame->buffer;
|
||||
|
@ -348,12 +346,12 @@ gst_h263_parse_parse_frame (GstBaseParse * parse, GstBaseParseFrame * frame)
|
|||
gst_buffer_set_caps (buffer,
|
||||
GST_PAD_CAPS (GST_BASE_PARSE_SRC_PAD (GST_BASE_PARSE (h263parse))));
|
||||
|
||||
if (gst_h263_parse_is_delta_unit (params))
|
||||
if (gst_h263_parse_is_delta_unit (¶ms))
|
||||
GST_BUFFER_FLAG_UNSET (buffer, GST_BUFFER_FLAG_DELTA_UNIT);
|
||||
else
|
||||
GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DELTA_UNIT);
|
||||
|
||||
out:
|
||||
g_free (params);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ GST_DEBUG_CATEGORY_EXTERN (h263_parse_debug);
|
|||
#define GST_CAT_DEFAULT h263_parse_debug
|
||||
|
||||
gboolean
|
||||
gst_h263_parse_is_delta_unit (H263Params * params)
|
||||
gst_h263_parse_is_delta_unit (const H263Params * params)
|
||||
{
|
||||
return (params->type == PICTURE_I);
|
||||
}
|
||||
|
@ -40,7 +40,7 @@ gst_h263_parse_is_delta_unit (H263Params * params)
|
|||
* extract a subset of the data (for now, it quits once we have the picture
|
||||
* type. */
|
||||
GstFlowReturn
|
||||
gst_h263_parse_get_params (H263Params ** params_p, GstBuffer * buffer,
|
||||
gst_h263_parse_get_params (H263Params * params, GstBuffer * buffer,
|
||||
gboolean fast, H263ParseState * state)
|
||||
{
|
||||
static const guint8 partable[6][2] = {
|
||||
|
@ -72,16 +72,12 @@ gst_h263_parse_get_params (H263Params ** params_p, GstBuffer * buffer,
|
|||
"Extended PType"
|
||||
};
|
||||
|
||||
H263Params *params;
|
||||
GstBitReader br;
|
||||
guint8 tr;
|
||||
guint32 psc, temp32;
|
||||
guint32 psc = 0, temp32;
|
||||
guint8 temp8, pquant;
|
||||
gboolean hasplusptype;
|
||||
|
||||
*params_p = g_new0 (H263Params, 1);
|
||||
params = *params_p;
|
||||
|
||||
/* FIXME: we can optimise a little by checking the value of available
|
||||
* instead of calling using the bit reader's get_bits_* functions. */
|
||||
gst_bit_reader_init_from_buffer (&br, buffer);
|
||||
|
@ -185,7 +181,7 @@ gst_h263_parse_get_params (H263Params ** params_p, GstBuffer * buffer,
|
|||
if (hasplusptype) {
|
||||
guint8 ufep;
|
||||
guint8 cpm;
|
||||
guint32 opptype, mpptype;
|
||||
guint32 opptype = 0, mpptype = 0;
|
||||
|
||||
/* 5.1.4 PLUSPTYPE */
|
||||
|
||||
|
@ -268,7 +264,7 @@ gst_h263_parse_get_params (H263Params ** params_p, GstBuffer * buffer,
|
|||
}
|
||||
|
||||
if (ufep == 1) {
|
||||
guint32 cpfmt;
|
||||
guint32 cpfmt = 0;
|
||||
|
||||
/* 5.1.5 CPFMT : Custom Picture Format (23 bits) */
|
||||
if (!gst_bit_reader_get_bits_uint32 (&br, &cpfmt, 23))
|
||||
|
@ -282,7 +278,7 @@ gst_h263_parse_get_params (H263Params ** params_p, GstBuffer * buffer,
|
|||
params->height = (cpfmt & 0x1f) * 4;
|
||||
|
||||
if (temp8 == 0xf) {
|
||||
guint32 epar;
|
||||
guint32 epar = 0;
|
||||
/* 5.1.6 EPAR : Extended Pixel Aspect Ratio (16bits) */
|
||||
if (!gst_bit_reader_get_bits_uint32 (&br, &epar, 16))
|
||||
goto more;
|
||||
|
@ -455,7 +451,7 @@ beach:
|
|||
}
|
||||
|
||||
gint
|
||||
gst_h263_parse_get_profile (H263Params * params)
|
||||
gst_h263_parse_get_profile (const H263Params * params)
|
||||
{
|
||||
gboolean c, d, d1, d21, d22, e, f, f2, g, h, i, j, k, k0, k1, k2, l, m, n, o,
|
||||
p, q, r, s, t, u, v, w;
|
||||
|
@ -577,7 +573,7 @@ gst_h263_parse_get_profile (H263Params * params)
|
|||
(gst_value_compare (&(f1), &(f2)) == GST_VALUE_EQUAL))
|
||||
|
||||
gint
|
||||
gst_h263_parse_get_level (H263Params * params, gint profile,
|
||||
gst_h263_parse_get_level (const H263Params * params, gint profile,
|
||||
guint bitrate, gint fps_num, gint fps_denom)
|
||||
{
|
||||
GValue fps15 = { 0, };
|
||||
|
@ -659,7 +655,8 @@ gst_h263_parse_get_level (H263Params * params, gint profile,
|
|||
}
|
||||
|
||||
void
|
||||
gst_h263_parse_get_framerate (H263Params * params, gint * num, gint * denom)
|
||||
gst_h263_parse_get_framerate (const H263Params * params, gint * num,
|
||||
gint * denom)
|
||||
{
|
||||
*num = params->pcfnum;
|
||||
*denom = params->pcfdenom;
|
||||
|
|
|
@ -131,14 +131,24 @@ struct _H263Params
|
|||
gint32 pcfnum, pcfdenom;
|
||||
};
|
||||
|
||||
gboolean gst_h263_parse_is_delta_unit (H263Params * params);
|
||||
GstFlowReturn gst_h263_parse_get_params (H263Params ** params_p,
|
||||
GstBuffer * buffer, gboolean fast, H263ParseState * state);
|
||||
void gst_h263_parse_get_framerate (H263Params * params,
|
||||
gint * num, gint * denom);
|
||||
gint gst_h263_parse_get_profile (H263Params * params);
|
||||
gint gst_h263_parse_get_level (H263Params * params, gint profile,
|
||||
guint bitrate, gint fps_num, gint fps_denom);
|
||||
gboolean gst_h263_parse_is_delta_unit (const H263Params * params);
|
||||
|
||||
GstFlowReturn gst_h263_parse_get_params (H263Params * params_p,
|
||||
GstBuffer * buffer,
|
||||
gboolean fast,
|
||||
H263ParseState * state);
|
||||
|
||||
void gst_h263_parse_get_framerate (const H263Params * params,
|
||||
gint * num,
|
||||
gint * denom);
|
||||
|
||||
gint gst_h263_parse_get_profile (const H263Params * params);
|
||||
|
||||
gint gst_h263_parse_get_level (const H263Params * params,
|
||||
gint profile,
|
||||
guint bitrate,
|
||||
gint fps_num,
|
||||
gint fps_denom);
|
||||
|
||||
G_END_DECLS
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue