aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2013-07-30 08:37:07 +0200
committerSebastian Dröge <slomo@circular-chaos.org>2013-07-30 08:37:07 +0200
commit9a41dfc03ad755169f6521669f48d05102ea1b92 (patch)
tree71037706b14cf1c4fd6e93cca68ec7439874b03c
parent0c719bb4b9b436059b6dad29eedf71b20db7e822 (diff)
parentf1995f11fc5659ae6e267ba3969a83d58df9a31f (diff)
Merge tag 'upstream/1.1.3' into debian-experimental
Upstream version 1.1.3
-rw-r--r--ChangeLog909
-rw-r--r--NEWS2
-rw-r--r--RELEASE73
-rwxr-xr-xconfigure38
-rw-r--r--configure.ac8
-rw-r--r--docs/plugins/gst-plugins-good-plugins.args14
-rw-r--r--docs/plugins/html/ch01.html2
-rw-r--r--docs/plugins/html/ch02.html2
-rw-r--r--docs/plugins/html/ch03.html2
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-1.0.devhelp2869
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-3gppmux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-aacparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-aasink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-ac3parse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-agingtv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-alawdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-alawenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-alpha.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-alphacolor.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-amrparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-apedemux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-apev2mux.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-aspectratiocrop.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audioamplify.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiochebband.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiocheblimit.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiodynamic.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audioecho.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiofirfilter.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audioiirfilter.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audioinvert.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiokaraoke.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiopanorama.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiowsincband.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-audiowsinclimit.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-auparse.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-autoaudiosink.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-autoaudiosrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-autovideosink.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-autovideosrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-avidemux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-avimux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-avisubtitle.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-cacasink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-cairooverlay.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-capssetter.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-cutter.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-dcaparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-deinterlace.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-deinterleave.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-dicetv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-directsoundsink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-dtmfsrc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-dv1394src.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-dvdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-dvdemux.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-edgetv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-equalizer-10bands.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-equalizer-3bands.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-equalizer-nbands.html8
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-flacdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-flacenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-flacparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-flactag.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-flvdemux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-flvmux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-flxdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-gamma.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-gdkpixbufsink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-goom.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-goom2k1.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-hdv1394src.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-icydemux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-id3demux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-id3v2mux.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-imagefreeze.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-interleave.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-ismlmux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-jackaudiosink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-jackaudiosrc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-jpegdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-jpegenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-level.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-matroskademux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-matroskamux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-mj2mux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-monoscope.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-mp4mux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-mpegaudioparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-mulawdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-mulawenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-multifilesink.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-multifilesrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-multipartdemux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-multipartmux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-multiudpsink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-optv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-oss4sink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-oss4src.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-osssink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-osssrc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-osxaudiosink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-osxaudiosrc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-osxvideosink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-directsound.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html8
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-level.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-monoscope.html8
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-osxaudio.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-osxvideo.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-png.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-waveform.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-pngdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-pngenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-progressreport.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-pulsesink.html10
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-pulsesrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-qtdemux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-qtmoovrecover.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-qtmux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-quarktv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-radioactv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-revtv.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rganalysis.html8
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rglimiter.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rgvolume.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rippletv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpL16depay.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpL16pay.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpac3depay.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpac3pay.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpamrdepay.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpamrpay.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpbin.html14
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpbvdepay.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpbvpay.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpdtmfmux.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpdtmfsrc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpj2kpay.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpjpegpay.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpmux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpptdemux.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpsbcpay.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpsession.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtpssrcdemux.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-sbcparse.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-scaletempo.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-shagadelictv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-shapewipe.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-smpte.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-smptealpha.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-souphttpsrc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-spectrum.html8
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-speexdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-speexenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-splitfilesrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-streaktv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-taginject.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-udpsink.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-udpsrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-v4l2radio.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-v4l2sink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-v4l2src.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-vertigotv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-videobalance.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-videobox.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-videocrop.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-videoflip.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-videomixer.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-vp8dec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-vp8enc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-warptv.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-waveformsink.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-wavenc.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-wavpackdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-wavpackenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-wavpackparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-wavparse.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-webmmux.html6
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-ximagesrc.html4
-rw-r--r--docs/plugins/html/gst-plugins-good-plugins-y4menc.html6
-rw-r--r--docs/plugins/html/index.html2
-rw-r--r--docs/plugins/html/index.sgml1
-rw-r--r--docs/plugins/inspect/plugin-1394.xml2
-rw-r--r--docs/plugins/inspect/plugin-aasink.xml2
-rw-r--r--docs/plugins/inspect/plugin-alaw.xml2
-rw-r--r--docs/plugins/inspect/plugin-alpha.xml2
-rw-r--r--docs/plugins/inspect/plugin-alphacolor.xml2
-rw-r--r--docs/plugins/inspect/plugin-apetag.xml2
-rw-r--r--docs/plugins/inspect/plugin-audiofx.xml2
-rw-r--r--docs/plugins/inspect/plugin-audioparsers.xml2
-rw-r--r--docs/plugins/inspect/plugin-auparse.xml2
-rw-r--r--docs/plugins/inspect/plugin-autodetect.xml2
-rw-r--r--docs/plugins/inspect/plugin-avi.xml2
-rw-r--r--docs/plugins/inspect/plugin-cacasink.xml2
-rw-r--r--docs/plugins/inspect/plugin-cairo.xml2
-rw-r--r--docs/plugins/inspect/plugin-cutter.xml2
-rw-r--r--docs/plugins/inspect/plugin-debug.xml2
-rw-r--r--docs/plugins/inspect/plugin-deinterlace.xml2
-rw-r--r--docs/plugins/inspect/plugin-dtmf.xml2
-rw-r--r--docs/plugins/inspect/plugin-dv.xml2
-rw-r--r--docs/plugins/inspect/plugin-effectv.xml2
-rw-r--r--docs/plugins/inspect/plugin-equalizer.xml2
-rw-r--r--docs/plugins/inspect/plugin-flac.xml2
-rw-r--r--docs/plugins/inspect/plugin-flv.xml2
-rw-r--r--docs/plugins/inspect/plugin-flxdec.xml2
-rw-r--r--docs/plugins/inspect/plugin-gdkpixbuf.xml2
-rw-r--r--docs/plugins/inspect/plugin-goom.xml2
-rw-r--r--docs/plugins/inspect/plugin-goom2k1.xml2
-rw-r--r--docs/plugins/inspect/plugin-icydemux.xml2
-rw-r--r--docs/plugins/inspect/plugin-id3demux.xml2
-rw-r--r--docs/plugins/inspect/plugin-imagefreeze.xml2
-rw-r--r--docs/plugins/inspect/plugin-interleave.xml2
-rw-r--r--docs/plugins/inspect/plugin-isomp4.xml2
-rw-r--r--docs/plugins/inspect/plugin-jack.xml2
-rw-r--r--docs/plugins/inspect/plugin-jpeg.xml2
-rw-r--r--docs/plugins/inspect/plugin-level.xml2
-rw-r--r--docs/plugins/inspect/plugin-matroska.xml2
-rw-r--r--docs/plugins/inspect/plugin-monoscope.xml4
-rw-r--r--docs/plugins/inspect/plugin-mulaw.xml2
-rw-r--r--docs/plugins/inspect/plugin-multifile.xml2
-rw-r--r--docs/plugins/inspect/plugin-multipart.xml2
-rw-r--r--docs/plugins/inspect/plugin-navigationtest.xml2
-rw-r--r--docs/plugins/inspect/plugin-oss4.xml2
-rw-r--r--docs/plugins/inspect/plugin-ossaudio.xml2
-rw-r--r--docs/plugins/inspect/plugin-png.xml2
-rw-r--r--docs/plugins/inspect/plugin-pulseaudio.xml4
-rw-r--r--docs/plugins/inspect/plugin-replaygain.xml2
-rw-r--r--docs/plugins/inspect/plugin-rtp.xml4
-rw-r--r--docs/plugins/inspect/plugin-rtpmanager.xml2
-rw-r--r--docs/plugins/inspect/plugin-rtsp.xml2
-rw-r--r--docs/plugins/inspect/plugin-shapewipe.xml2
-rw-r--r--docs/plugins/inspect/plugin-shout2send.xml2
-rw-r--r--docs/plugins/inspect/plugin-smpte.xml2
-rw-r--r--docs/plugins/inspect/plugin-soup.xml2
-rw-r--r--docs/plugins/inspect/plugin-spectrum.xml2
-rw-r--r--docs/plugins/inspect/plugin-speex.xml2
-rw-r--r--docs/plugins/inspect/plugin-taglib.xml2
-rw-r--r--docs/plugins/inspect/plugin-udp.xml2
-rw-r--r--docs/plugins/inspect/plugin-video4linux2.xml2
-rw-r--r--docs/plugins/inspect/plugin-videobox.xml2
-rw-r--r--docs/plugins/inspect/plugin-videocrop.xml2
-rw-r--r--docs/plugins/inspect/plugin-videofilter.xml2
-rw-r--r--docs/plugins/inspect/plugin-videomixer.xml2
-rw-r--r--docs/plugins/inspect/plugin-vpx.xml2
-rw-r--r--docs/plugins/inspect/plugin-wavenc.xml2
-rw-r--r--docs/plugins/inspect/plugin-wavpack.xml2
-rw-r--r--docs/plugins/inspect/plugin-wavparse.xml2
-rw-r--r--docs/plugins/inspect/plugin-ximagesrc.xml2
-rw-r--r--docs/plugins/inspect/plugin-y4menc.xml2
-rw-r--r--ext/dv/gstdvdemux.c36
-rw-r--r--ext/dv/gstdvdemux.h3
-rw-r--r--ext/flac/gstflacenc.c20
-rw-r--r--ext/jpeg/gstjpegdec.c158
-rw-r--r--ext/jpeg/gstjpegdec.h8
-rw-r--r--ext/jpeg/gstjpegenc.c39
-rw-r--r--ext/pulse/pulsesink.h2
-rw-r--r--ext/pulse/pulseutil.c6
-rw-r--r--ext/soup/gstsouphttpsrc.c19
-rw-r--r--ext/vpx/gstvp8dec.h8
-rw-r--r--ext/vpx/gstvp8enc.h8
-rw-r--r--ext/vpx/gstvp9dec.h8
-rw-r--r--ext/vpx/gstvp9enc.h8
-rw-r--r--gst-plugins-good.doap10
-rw-r--r--gst-plugins-good.spec2
-rw-r--r--gst/audiofx/audioecho.c6
-rw-r--r--gst/audioparsers/Makefile.am1
-rw-r--r--gst/audioparsers/Makefile.in1
-rw-r--r--gst/audioparsers/gstaacparse.c99
-rw-r--r--gst/audioparsers/gstaacparse.h1
-rw-r--r--gst/avi/gstavidemux.c69
-rw-r--r--gst/avi/gstavidemux.h3
-rw-r--r--gst/deinterlace/gstdeinterlace.c8
-rw-r--r--gst/flv/gstflvdemux.c55
-rw-r--r--gst/flv/gstflvdemux.h3
-rw-r--r--gst/goom/gstgoom.c24
-rw-r--r--gst/goom2k1/gstgoom.c26
-rw-r--r--gst/isomp4/gstqtmux.c2
-rw-r--r--gst/isomp4/qtdemux.c624
-rw-r--r--gst/isomp4/qtdemux.h7
-rw-r--r--gst/isomp4/qtdemux_fourcc.h7
-rw-r--r--gst/isomp4/qtdemux_types.c1
-rw-r--r--gst/matroska/matroska-demux.c93
-rw-r--r--gst/matroska/matroska-demux.h4
-rw-r--r--gst/rtp/gstrtpgstpay.c2
-rw-r--r--gst/rtp/gstrtpmp2tpay.c14
-rw-r--r--gst/rtp/gstrtpmp4gpay.c10
-rw-r--r--gst/rtp/gstrtpmp4vpay.c3
-rw-r--r--gst/rtp/gstrtpmpapay.c9
-rw-r--r--gst/rtp/gstrtpmpvpay.c9
-rw-r--r--gst/rtp/gstrtpvrawdepay.c22
-rw-r--r--gst/rtp/gstrtpvrawpay.c5
-rw-r--r--gst/rtpmanager/gstrtpbin.c35
-rw-r--r--gst/rtpmanager/gstrtpbin.h1
-rw-r--r--gst/rtpmanager/gstrtpjitterbuffer.c14
-rw-r--r--gst/rtpmanager/gstrtpmux.c1
-rw-r--r--gst/rtpmanager/gstrtpsession.c54
-rw-r--r--gst/rtpmanager/rtpsession.c1062
-rw-r--r--gst/rtpmanager/rtpsession.h27
-rw-r--r--gst/rtpmanager/rtpsource.c154
-rw-r--r--gst/rtpmanager/rtpsource.h21
-rw-r--r--gst/rtpmanager/rtpstats.h2
-rw-r--r--gst/rtsp/gstrtspsrc.c21
-rw-r--r--gst/videomixer/videomixer2.c6
-rw-r--r--gst/wavparse/gstwavparse.c5
-rw-r--r--po/af.gmobin666 -> 666 bytes
-rw-r--r--po/af.po2
-rw-r--r--po/az.gmobin723 -> 723 bytes
-rw-r--r--po/az.po2
-rw-r--r--po/bg.gmobin11149 -> 11149 bytes
-rw-r--r--po/bg.po2
-rw-r--r--po/ca.gmobin9124 -> 9124 bytes
-rw-r--r--po/ca.po2
-rw-r--r--po/cs.gmobin8856 -> 8856 bytes
-rw-r--r--po/cs.po2
-rw-r--r--po/da.gmobin8139 -> 8139 bytes
-rw-r--r--po/da.po2
-rw-r--r--po/de.gmobin9531 -> 9531 bytes
-rw-r--r--po/de.po2
-rw-r--r--po/el.gmobin11122 -> 11122 bytes
-rw-r--r--po/el.po2
-rw-r--r--po/en_GB.gmobin671 -> 671 bytes
-rw-r--r--po/en_GB.po2
-rw-r--r--po/eo.gmobin1328 -> 1328 bytes
-rw-r--r--po/eo.po2
-rw-r--r--po/es.gmobin9369 -> 9369 bytes
-rw-r--r--po/es.po2
-rw-r--r--po/eu.gmobin7626 -> 7626 bytes
-rw-r--r--po/eu.po2
-rw-r--r--po/fi.gmobin8041 -> 8041 bytes
-rw-r--r--po/fi.po2
-rw-r--r--po/fr.gmobin9222 -> 9222 bytes
-rw-r--r--po/fr.po2
-rw-r--r--po/gl.gmobin9101 -> 9101 bytes
-rw-r--r--po/gl.po2
-rw-r--r--po/gst-plugins-good-1.0.pot53
-rw-r--r--po/hu.gmobin8533 -> 8533 bytes
-rw-r--r--po/hu.po2
-rw-r--r--po/id.gmobin8586 -> 8586 bytes
-rw-r--r--po/id.po2
-rw-r--r--po/it.gmobin8539 -> 8539 bytes
-rw-r--r--po/it.po2
-rw-r--r--po/ja.gmobin9659 -> 9659 bytes
-rw-r--r--po/ja.po2
-rw-r--r--po/lt.gmobin7460 -> 7460 bytes
-rw-r--r--po/lt.po2
-rw-r--r--po/lv.gmobin8543 -> 8543 bytes
-rw-r--r--po/lv.po2
-rw-r--r--po/mt.gmobin5942 -> 5942 bytes
-rw-r--r--po/mt.po2
-rw-r--r--po/nb.gmobin2403 -> 2403 bytes
-rw-r--r--po/nb.po2
-rw-r--r--po/nl.gmobin8545 -> 8545 bytes
-rw-r--r--po/nl.po2
-rw-r--r--po/or.gmobin832 -> 832 bytes
-rw-r--r--po/or.po2
-rw-r--r--po/pl.gmobin8874 -> 8874 bytes
-rw-r--r--po/pl.po2
-rw-r--r--po/pt_BR.gmobin8887 -> 8887 bytes
-rw-r--r--po/pt_BR.po2
-rw-r--r--po/ro.gmobin8001 -> 8001 bytes
-rw-r--r--po/ro.po2
-rw-r--r--po/ru.gmobin11903 -> 11903 bytes
-rw-r--r--po/ru.po2
-rw-r--r--po/sk.gmobin8854 -> 8854 bytes
-rw-r--r--po/sk.po2
-rw-r--r--po/sl.gmobin8497 -> 8497 bytes
-rw-r--r--po/sl.po2
-rw-r--r--po/sq.gmobin685 -> 685 bytes
-rw-r--r--po/sq.po2
-rw-r--r--po/sr.gmobin11202 -> 11202 bytes
-rw-r--r--po/sr.po2
-rw-r--r--po/sv.gmobin8861 -> 8861 bytes
-rw-r--r--po/sv.po2
-rw-r--r--po/tr.gmobin8583 -> 8583 bytes
-rw-r--r--po/tr.po2
-rw-r--r--po/uk.gmobin11775 -> 11775 bytes
-rw-r--r--po/uk.po2
-rw-r--r--po/vi.gmobin8296 -> 8296 bytes
-rw-r--r--po/vi.po2
-rw-r--r--po/zh_CN.gmobin6295 -> 6295 bytes
-rw-r--r--po/zh_CN.po2
-rw-r--r--po/zh_HK.gmobin1571 -> 1571 bytes
-rw-r--r--po/zh_HK.po2
-rw-r--r--po/zh_TW.gmobin1570 -> 1570 bytes
-rw-r--r--po/zh_TW.po2
-rw-r--r--sys/osxaudio/gstosxaudiosink.c3
-rw-r--r--sys/osxvideo/osxvideosink.m3
-rw-r--r--tests/check/elements/videocrop.c14
-rw-r--r--tests/examples/spectrum/spectrum-example.c2
-rw-r--r--tests/files/id3-407349-1.tagbin304 -> 304 bytes
-rw-r--r--tests/files/id3-407349-2.tagbin304 -> 304 bytes
-rw-r--r--tests/files/id3-447000-wcop.tagbin360 -> 360 bytes
-rw-r--r--win32/common/config.h8
459 files changed, 3987 insertions, 2386 deletions
diff --git a/ChangeLog b/ChangeLog
index 2f1ba7da..35e0e77a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,914 @@
+=== release 1.1.3 ===
+
+2013-07-29 Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+ * configure.ac:
+ releasing 1.1.3
+
+2013-07-29 12:12:41 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/avi/gstavidemux.c:
+ * gst/flv/gstflvdemux.c:
+ * gst/isomp4/qtdemux.c:
+ * gst/matroska/matroska-demux.c:
+ gst: Don't swap start/stop for negative rates in the SEGMENT query
+
+2013-07-29 11:18:40 +0200 Matej Knopp <matej.knopp@gmail.com>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: Check for data size when parsing h264 codec data from strf atom
+
+2013-07-29 10:53:54 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/matroska/matroska-demux.c:
+ matroskademux: Implement SEGMENT query
+
+2013-07-29 10:53:47 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/flv/gstflvdemux.c:
+ flvdemux: Implement SEGMENT query
+
+2013-07-29 10:50:59 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/avi/gstavidemux.c:
+ avidemux: Implement SEGMENT query
+
+2013-07-27 18:10:22 +0200 Matej Knopp <matej.knopp@gmail.com>
+
+ * gst/isomp4/qtdemux.c:
+ * gst/isomp4/qtdemux_fourcc.h:
+ qtdemux: Support H264 fourcc
+ https://bugzilla.gnome.org/show_bug.cgi?id=704996
+
+2013-07-28 18:09:33 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * ext/flac/gstflacenc.c:
+ flacenc: Fix handling of image tags
+ The caps should be used to get the mimetype and there is
+ only an info structure for the GstSample if the image-type
+ is not NONE.
+
+2013-07-28 18:04:32 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * ext/flac/gstflacenc.c:
+ flacenc: Don't crash if there is no image tag information
+ https://bugzilla.gnome.org/show_bug.cgi?id=705018
+
+2013-07-28 17:38:56 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/avi/gstavidemux.c:
+ avidemux: Fix duration reporting in push mode
+ https://bugzilla.gnome.org/show_bug.cgi?id=700933
+
+2013-07-28 17:32:27 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/avi/gstavidemux.c:
+ avidemux: Don't forget unmapping and unreffing buffer
+
+2013-07-26 21:06:17 +0200 Matej Knopp <matej.knopp@gmail.com>
+
+ * gst/avi/gstavidemux.c:
+ avidemux: unmap buffer
+ https://bugzilla.gnome.org/show_bug.cgi?id=704951
+
+2013-07-26 22:31:41 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: don't make buffer writable prematurely
+ There is no reason to make the SR buffer writable at this point. This is better
+ delayed until needed.
+
+2013-07-26 22:25:50 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: ignore RTCP for inactive sources
+
+2013-07-26 22:25:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: small cleanup
+
+2013-07-26 17:17:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ * gst/rtpmanager/rtpsource.h:
+ session: handle partial RTCP report blocks
+ When we have more SSRCs to report than what fit in an RTCP packet, use a
+ generation counter to make sure all of them end up in a packet eventually.
+
+2013-07-26 17:23:10 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: create SSRC before doing session cleanup
+ Make the internal source before we do session cleanup
+
+2013-07-26 17:21:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: reorganize the report block code
+
+2013-07-26 16:02:01 +0200 Matej Knopp <matej.knopp@gmail.com>
+
+ * gst/matroska/matroska-demux.c:
+ matroskademux: fix memory leak in check_subtitle_buffer
+ https://bugzilla.gnome.org/show_bug.cgi?id=704921
+
+2013-07-26 14:21:40 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: refactor active and sender checks
+
+2013-07-26 12:06:35 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: remove internal sources on timeout
+ When an internal source times out and becomes a receiver, remove it.
+
+2013-07-26 11:47:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: create an internal source for RTCP
+ When we need to do RTCP and we don't have an internal source yet,
+ make one.
+
+2013-07-26 10:47:28 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ * gst/rtpmanager/rtpsource.c:
+ session: remove old code to change SSRC
+ Remove code used to change the SSRC after a collision. We now send
+ a RECONFIGURE event upstream to make the upstream element change the SSRC.
+
+2013-07-26 10:42:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsource.c:
+ source: don't update packet SSRC
+ Remove the code to update the SSRC in packets, it can never be called now that
+ we always use a source with matching packet SSRC.
+
+2013-07-26 10:24:22 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ session: delay allocation of internal source
+ Allocate the internal source when we receive a caps with the SSRC or when we see
+ a buffer with the SSRC.
+
+2013-07-26 10:00:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpsession.c:
+ * gst/rtpmanager/rtpsession.c:
+ session: generate reconfigure on collision
+ When we detect a collision, change the SSRC that we suggest upstream
+ and trigger RECONFIGURE. This should make upstream select a new SSRC.
+
+2013-07-26 09:37:24 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ session: produce RTCP for all internal sources
+ Loop over all the internal sources and produce RTCP. We also need
+ to queue the RTCP packets and send them when we are finished.
+
+2013-07-26 01:40:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ session: deprecate internal source and ssrc properties
+ Deprecate the internal source and internal ssrc properties. There might
+ be more than one internal source.
+
+2013-07-26 01:29:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: internal sources don't use probation
+
+2013-07-26 01:24:07 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpsession.c:
+ * gst/rtpmanager/rtpsession.c:
+ session: give caps to session
+ Let the session parse the caps and update its SSRC when needed.
+
+2013-07-26 01:14:04 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpsession.c:
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ session: make method to suggest available SSRC
+ Make a method to suggest the best available SSRC. This is the SSRC of the last
+ created internal source and is used to instruct upstream to produce this
+ SSRC.
+
+2013-07-26 01:01:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ session: keep SDES and set on new internal sources
+ Keep track of the SDES ourselves and set it on all newly created
+ internal sources.
+
+2013-07-26 00:48:25 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: make method to make internal sources
+ Add a method to obtain an internal source and use it to create
+ our internal source
+
+2013-07-26 00:29:41 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpstats.h:
+ session: count internal sources and how many are senders
+
+2013-07-26 00:14:29 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpsession.c:
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ rtpsession: separate BYE marking and scheduling
+ First mark sources with BYE and then schedule the BYE RTCP message.
+
+2013-07-25 23:56:46 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: get SSRC from RTCP packet itself
+ Get the SSRC from the RTCP packet instead.
+
+2013-07-25 23:51:34 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: fix bandwidth calculation
+ We iterate over all sources and the internal one is also in the
+ hashtable so avoid adding it twice.
+
+2013-07-25 23:38:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: add some docs
+
+2013-07-25 23:11:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: Rearrange RTCP reporting a little
+ Make a function to generate an RTCP packet for a source, pass the source as a
+ parameter.
+ Move timeout of collisions to session cleanup phase.
+
+2013-07-25 22:39:04 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: move check for is_early around
+ Move the check for the early RTCP to where it is needed and used.
+
+2013-07-25 17:35:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: parse packet outside of the session lock
+
+2013-07-25 17:34:06 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: do nicer checks for internal sources
+
+2013-07-25 17:15:37 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ * gst/rtpmanager/rtpsource.c:
+ * gst/rtpmanager/rtpsource.h:
+ session: let source keep track if it sent BYE
+
+2013-07-25 17:06:22 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsource.c:
+ source: reset more
+
+2013-07-25 16:49:41 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ * gst/rtpmanager/rtpsource.c:
+ * gst/rtpmanager/rtpsource.h:
+ source: also use the source for bye_reason
+ Store the BYE reason in our internal source object. Rename the methods on the
+ source object a little because now the BYE can be received in RTCP or
+ set when the session wants to send BYE.
+
+2013-07-25 16:24:04 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ * gst/rtpmanager/rtpsource.c:
+ * gst/rtpmanager/rtpsource.h:
+ session: configure sdes with structure only
+ Remove code to configure the SDES with methods and types, only
+ allow configuration with GstStructure
+
+2013-07-25 15:56:39 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: refactor add and find source
+ Make functions to find and add a source to the hashtable.
+
+2013-07-25 15:43:11 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpsession.c:
+ * gst/rtpmanager/rtpsession.c:
+ * gst/rtpmanager/rtpsession.h:
+ session: remove source from sync_rtcp
+ We don't need to know the sender source of the session in the
+ callback, the SR packet is for all participants in the session.
+
+2013-07-24 14:18:14 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpjitterbuffer.c:
+ jitterbuffer: add some more debug
+
+2013-07-15 17:11:45 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+ * gst/audioparsers/Makefile.am:
+ * gst/audioparsers/gstaacparse.c:
+ * gst/audioparsers/gstaacparse.h:
+ aacparse: allow conversion from ADTS to raw AAC
+ Some muxers (eg, qtmux) only support raw AAC, so this allows linking
+ an encoder that outputs ADTS only to those muxers.
+ The conversion is simple (omit the first 7 or 9 bytes of the frame),
+ but has to be done in pre_push instead of handle_frame as 1.0 does
+ not seem to allow skipping bytes there as 0.10 used to.
+ Other conversions are not supported (yet).
+
+2013-07-15 17:15:44 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+ * gst/audioparsers/gstaacparse.c:
+ aacparse: fix object_type parsing off-by-one in ADTS frame
+ According to http://wiki.multimedia.cx/index.php?title=ADTS,
+ the value stored in ADTS headers is one less than the object
+ type of the AAC stream.
+ A look at ffmpeg shows it also adds 1 to the value read off
+ the ADTS header.
+ Note that this might break other things that happen to have
+ an inverse off by one to match the existing code.
+
+2013-07-25 11:13:01 -0300 Thiago Santos <thiago.sousa.santos@collabora.com>
+
+ * gst/avi/gstavidemux.c:
+ avidemux: fix seqnum handling for seeks
+ Use the same seqnum as the seek for flushes/segments that are
+ caused by the seek. Also do the same for segment events
+ Fixes #676242
+
+2013-07-25 01:39:58 -0300 Thiago Santos <thiago.sousa.santos@collabora.com>
+
+ * gst/matroska/matroska-demux.c:
+ * gst/matroska/matroska-demux.h:
+ matroskademux: fix seqnum handling for seeks
+ Use the same seqnum as the seek for flushes/segments that are
+ caused by the seek. Also do the same for segment events
+ Fixes #676242
+
+2013-07-25 01:11:31 -0300 Thiago Santos <thiago.sousa.santos@collabora.com>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: correctly handle seqnum for seeks and segments
+ Use the same seqnum on messages and events for derived events.
+ Fixed for flushes / stream-start / segment after a seek, and segment
+ after a segment.
+ Fixes #676242
+
+2013-07-12 20:01:42 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * ext/soup/gstsouphttpsrc.c:
+ souphttpsrc: always ignore HEAD errors
+ https://bugzilla.gnome.org/show_bug.cgi?id=704241
+
+2013-07-25 14:26:07 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * ext/jpeg/gstjpegenc.c:
+ jpegenc: Clean up reset/start/stop handling
+
+2013-07-25 14:13:10 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * ext/jpeg/gstjpegdec.c:
+ * ext/jpeg/gstjpegdec.h:
+ jpegdec: Use base class error handling function instead of replicating it here
+
+2013-07-25 14:12:56 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * ext/jpeg/gstjpegdec.c:
+ jpegdec: Clean up handling of reset/start/stop
+
+2013-07-25 10:41:22 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+ * tests/files/id3-407349-1.tag:
+ * tests/files/id3-407349-2.tag:
+ * tests/files/id3-447000-wcop.tag:
+ tests: fix test ID3 tags up not to rely on dodgy typefinding code
+ Change 0xff 0xfb 'mp3' marker to 'fLaC' marker, so we can fix
+ the typefinder.
+ https://bugzilla.gnome.org/show_bug.cgi?id=681368
+
+2013-07-25 08:22:45 +0200 Alessandro Decina <alessandro.d@gmail.com>
+
+ * sys/osxaudio/gstosxaudiosink.c:
+ osxaudiosink: intersect the probed caps with the filter passed to get_caps()
+
+2013-07-24 14:17:45 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpbin.c:
+ bin: fix compilation
+
+2013-07-24 12:42:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtp/gstrtpvrawdepay.c:
+ vrawdepay: fix UYVP format
+
+2013-07-24 12:41:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtp/gstrtpvrawpay.c:
+ vrawpay: fix UYVP format
+
+2013-07-24 12:41:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtp/gstrtpvrawpay.c:
+ vrawpay: fix caps
+
+2013-07-24 10:49:03 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/gstrtpjitterbuffer.c:
+ rtpjitterbuffer: fix locking
+ Take the lock earlier so that we do things that follow with the right
+ locking.
+
+2013-07-23 17:40:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ rtpsession: don't use invalid times in RTCP timeouts
+ An invalid timeout can be calculated when we disabled RTCP by setting the
+ bandwidth to 0. Make sure all code can handle this case.
+ Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674626
+
+2013-07-23 17:38:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ rtpsession: lock session when changing bandwidth
+ Take the session lock when changing the bandwidth properties so that we don't
+ end up with inconsistent behaviour.
+
+2013-07-23 17:37:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/rtpmanager/rtpsession.c:
+ session: reset some RTCP variables
+ The early_send time was set to 0 and always triggering an early RTCP packet.
+
+2013-07-23 15:03:31 +0200 Edward Hervey <edward@collabora.com>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: Add all the mpeg XDCAM variants
+ This should cover all known XDCAM variants (which are all mpeg2 video)
+ Fixes #672227
+
+2013-07-03 18:41:42 +0200 Carlos Rafael Giani <dv@pseudoterminal.org>
+
+ * gst/rtpmanager/gstrtpbin.c:
+ * gst/rtpmanager/gstrtpbin.h:
+ rtpbin: added custom downstream sync event
+ rtpbin can now send a custom in-band downstream event which informs
+ downstream that the bin has received an RTCP SR packet. This is useful
+ for applications which want to drop the initial unsynchronized received
+ RTP packets.
+ Fixes https://bugzilla.gnome.org/show_bug.cgi?id=703560
+ Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
+
+2013-07-22 18:00:16 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+ * gst/deinterlace/gstdeinterlace.c:
+ deinterlace: fix on-the-fly changing of "mode" and "fields" properties
+ We call setcaps() to reconfigure ourselves, but we need to pass
+ the current *sink* caps, not the source caps then. Also fix a
+ caps leak.
+ https://bugzilla.gnome.org/show_bug.cgi?id=641599
+
+2013-07-22 15:23:39 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/wavparse/gstwavparse.c:
+ wavparse: Add support for group-id in the stream-start event
+
+2013-07-22 15:23:20 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/rtsp/gstrtspsrc.c:
+ rtspsrc: Add support for group-id in the stream-start event
+
+2013-07-22 15:23:11 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/rtpmanager/gstrtpsession.c:
+ rtpsession: Add support for group-id in the stream-start event
+
+2013-07-22 15:22:55 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/matroska/matroska-demux.c:
+ * gst/matroska/matroska-demux.h:
+ matroskademux: Add support for group-id in the stream-start event
+
+2013-07-22 15:22:47 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/isomp4/qtdemux.c:
+ * gst/isomp4/qtdemux.h:
+ qtdemux: Add support for group-id in the stream-start event
+
+2013-07-22 15:22:36 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/flv/gstflvdemux.c:
+ * gst/flv/gstflvdemux.h:
+ flvdemux: Add support for group-id in the stream-start event
+
+2013-07-22 15:22:16 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/avi/gstavidemux.c:
+ * gst/avi/gstavidemux.h:
+ avidemux: Add support for group-id in the stream-start event
+
+2013-07-22 15:21:49 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * ext/dv/gstdvdemux.c:
+ * ext/dv/gstdvdemux.h:
+ dvdemux: Add support for group-id in the stream-start event
+
+2013-07-19 22:59:15 +0200 Mathieu Duponchelle <mathieu.duponchelle@epitech.eu>
+
+ * gst/videomixer/videomixer2.c:
+ videomixer: use gst_util_uint64_scale*_round.
+ There could be a case where:
+ 1) you do a new set_caps after buffers have been processed.
+ 2) ts_offset gets set to a different value, eg 0.033333333
+ 3) your pads get EOS, but the check dor that doesn't work
+ because you use ts_offset + a truncated value < segment.stop
+ 4) so in the next collected, you end up comparing for example:
+ 0.9999999999 > 1., which is false and means you don't send EOS.
+ Also adds scale_round in two other places where it potentially could
+ have caused problems.
+
+2013-07-15 17:55:19 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * gst/isomp4/qtdemux.c:
+ * gst/isomp4/qtdemux_fourcc.h:
+ qtdemux: Add WRLE support
+
+2013-07-19 19:35:26 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+ * gst/isomp4/qtdemux.c:
+ * gst/isomp4/qtdemux_fourcc.h:
+ qtdemux: make files from Vivotek camera play
+ Skip tracks of 'vivo' subtype with empty stsd instead of
+ erroring out saying that the file is broken.
+ https://bugzilla.gnome.org/show_bug.cgi?id=699791
+
+2013-07-19 17:14:06 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+ * gst/isomp4/gstqtmux.c:
+ qtmux: when streaming don't try to seek when stopping
+ It might cause errors in sinks that are not seekable and
+ have reported this (like e.g. fdsink)
+ https://bugzilla.gnome.org/show_bug.cgi?id=696228
+
+2013-07-19 17:26:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: simplify some helpers
+ Some helper functions are not needed anymore or can be simplified.
+
+2013-07-19 17:12:37 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: for non-raw video, move palette in caps
+ We only need to append the palette to raw video buffers, non-raw video has the
+ palette in the caps still.
+ Fixes https://bugzilla.gnome.org/show_bug.cgi?id=704292
+
+2013-07-19 01:49:20 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: nitpicking in esds parsing
+
+2013-07-19 01:49:07 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: set proper caps for mpeg-1 audio
+ Remove AAC specific fields from mpeg-1 audio caps, remove assumption
+ that the mpeg1 audio layer is 3, and set `parsed' field.
+ https://bugzilla.gnome.org/show_bug.cgi?id=704548
+
+2013-06-17 21:27:37 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * ext/vpx/gstvp8dec.h:
+ * ext/vpx/gstvp8enc.h:
+ * ext/vpx/gstvp9dec.h:
+ * ext/vpx/gstvp9enc.h:
+ vpx: fix compilation when encoder or decoder headers are not installed
+ https://bugzilla.gnome.org/show_bug.cgi?id=704547
+
+2013-07-16 20:41:15 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * tests/check/elements/videocrop.c:
+ videocrop: Fix unit for GRAY16 formats
+
+2013-07-16 22:17:17 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: remove chapter stream
+ Remove all streams that are actually table of contents, since we will
+ never need the data after parsing them.
+
+2013-07-16 21:59:37 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: send gap event for sparse streams in push mode
+ This allows to pre-roll at least if the next subtitle buffer
+ is far away.
+
+2013-07-16 21:56:07 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: do not use indexes from sparse stream when seeking in push mode
+ This makes seeking more accurate in push mode, since the previous
+ keyframe on a sparse stream might be far away.
+
+2013-07-16 21:04:07 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: advertise subtitle streams as sparse
+
+2013-07-17 17:11:44 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/matroska/matroska-demux.c:
+ mastrokademux: do not push discont buffers if they aren't discont
+ Unset the discont flag instead of posssibly pushing a buffer with
+ a flag that's still set.
+ https://bugzilla.gnome.org/show_bug.cgi?id=682110
+
+2013-07-17 15:10:00 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: extract the palette from stsd
+ Sometimes a palette is inside the stsd, extract it instead of always using
+ the default one
+
+2013-07-17 14:30:16 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/goom2k1/gstgoom.c:
+ goom2k1: Fix event handling and negotiate as soon as possible
+
+2013-07-17 14:27:57 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * gst/goom/gstgoom.c:
+ goom: Fix event handling and negotiate as soon as possible
+
+2013-07-11 19:45:17 +0200 Andoni Morales Alastruey <ylatuya@gmail.com>
+
+ * sys/osxvideo/osxvideosink.m:
+ osxvideosink: warn about the future deprecation of the "embed" property
+
+2013-07-17 09:56:01 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: add support for WRAW
+ Fixes https://bugzilla.gnome.org/show_bug.cgi?id=704292
+
+2013-07-17 09:54:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: palette is appended to buffers, not in caps
+ Fix the palette handling, in 1.0 we append the palette to the buffer instead of
+ placing it on the caps.
+ See also https://bugzilla.gnome.org/show_bug.cgi?id=704292
+
+2013-07-16 15:37:49 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * gst/rtp/gstrtpgstpay.c:
+ * gst/rtp/gstrtpmp2tpay.c:
+ * gst/rtp/gstrtpmp4gpay.c:
+ * gst/rtp/gstrtpmp4vpay.c:
+ * gst/rtp/gstrtpmpapay.c:
+ * gst/rtp/gstrtpmpvpay.c:
+ rtp: Use gst_adapter_take_buffer_fast() where possible in RTP payloaders
+
+2013-07-15 16:24:07 +0200 Arnaud Vrac <avrac@freebox.fr>
+
+ * gst/isomp4/qtdemux.c:
+ qtdemux: reset segment on flush stop
+ cca2f555d14 introduces a regression, where the demux segment is not
+ reset on flush stop, so the next upstream segment event will calculate
+ an invalid base time on the new segment to be sent downstream.
+ https://bugzilla.gnome.org/show_bug.cgi?id=704255
+
+2013-07-06 17:20:49 +0200 Matej Knopp <matej.knopp@gmail.com>
+
+ * gst/isomp4/qtdemux.c:
+ * gst/isomp4/qtdemux.h:
+ qtdemux: offset samples according to edit list
+ https://bugzilla.gnome.org/show_bug.cgi?id=700264
+
+2013-07-14 12:50:13 +1200 Douglas Bagnall <douglas@halo.gen.nz>
+
+ * tests/examples/spectrum/spectrum-example.c:
+ level: Fix the spectrum example for 1.0
+ The "message" property has been replaced by "post-messages".
+ Pre-patch output:
+ (test_spectrum:23101): GLib-GObject-WARNING **: g_object_set_valist:
+ object class `GstSpectrum' has no property named `message'
+ New spectrum message, endtime 0:00:00.100000000
+ (test_spectrum:23101): GStreamer-CRITICAL **:
+ gst_value_list_get_value: assertion `GST_VALUE_HOLDS_LIST (value)' failed
+ [...]
+ Post-patch:
+ New spectrum message, endtime 0:00:00.100000000
+ band 0 (freq 400): magnitude -65.988777 dB phase 1.533397
+ band 1 (freq 1200): magnitude -65.545563 dB phase -0.780900
+ band 2 (freq 2000): magnitude -64.791946 dB phase -0.799611
+ band 3 (freq 2800): magnitude -64.556175 dB phase -0.063615
+ [...]
+ https://bugzilla.gnome.org/show_bug.cgi?id=704179
+
+2013-07-13 20:56:26 +0200 Matej Knopp <matej.knopp@gmail.com>
+
+ * gst/audioparsers/gstaacparse.c:
+ aacparse: be less verbose when parsing LOAS streams
+ https://bugzilla.gnome.org/show_bug.cgi?id=704162
+
+2013-07-12 12:31:39 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * ext/pulse/pulsesink.h:
+ sink: alaw/mulaw caps don't have a layout property
+
+2013-07-12 12:27:53 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
+
+ * ext/pulse/pulseutil.c:
+ pulse: relax mulaw and alaw format checks
+ The audio library considers them as encoded formats and does not fill in the
+ sample width. The audio ringbuffers identifies the format as alaw/mulaw and that
+ is always 8 bits.
+
+2013-07-11 16:13:05 +0200 Matej Knopp <matej.knopp@gmail.com>
+
+ * gst/isomp4/qtdemux.c:
+ * gst/isomp4/qtdemux.h:
+ * gst/isomp4/qtdemux_fourcc.h:
+ * gst/isomp4/qtdemux_types.c:
+ qtdemux: unselect instead of ignoring disabled track, detect chapter track
+ https://bugzilla.gnome.org/show_bug.cgi?id=704007
+
+2013-07-11 20:41:23 -0300 Thiago Santos <thiago.sousa.santos@collabora.com>
+
+ * ext/soup/gstsouphttpsrc.c:
+ souphttpsrc: ignore errors from HEAD request
+ HEAD requests are used to check the server headers to see if it
+ seekable. Ignore errors from those requests as they shouldn't be
+ critical.
+ https://bugzilla.gnome.org/show_bug.cgi?id=704053
+
+2013-07-12 03:24:08 +0800 Kyosuke Nekomura <supercatexpert@gmail.com>
+
+ * gst/audiofx/audioecho.c:
+ audioecho: Fix handling of delay property in PLAYING/PAUSED state
+ https://bugzilla.gnome.org/show_bug.cgi?id=703901
+
+2013-07-09 17:56:57 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * gst/rtpmanager/gstrtpmux.c:
+ rtpmux: Enable proxy caps on the src pads
+
+2013-07-11 16:57:15 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * configure.ac:
+ Back to development
+
=== release 1.1.2 ===
-2013-07-11 Sebastian Dröge <sebastian.droege@collabora.co.uk>
+2013-07-11 15:58:51 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+ * ChangeLog:
+ * NEWS:
+ * RELEASE:
* configure.ac:
- releasing 1.1.2
+ * docs/plugins/gst-plugins-good-plugins.args:
+ * docs/plugins/gst-plugins-good-plugins.hierarchy:
+ * docs/plugins/gst-plugins-good-plugins.signals:
+ * docs/plugins/inspect/plugin-1394.xml:
+ * docs/plugins/inspect/plugin-aasink.xml:
+ * docs/plugins/inspect/plugin-alaw.xml:
+ * docs/plugins/inspect/plugin-alpha.xml:
+ * docs/plugins/inspect/plugin-alphacolor.xml:
+ * docs/plugins/inspect/plugin-apetag.xml:
+ * docs/plugins/inspect/plugin-audiofx.xml:
+ * docs/plugins/inspect/plugin-audioparsers.xml:
+ * docs/plugins/inspect/plugin-auparse.xml:
+ * docs/plugins/inspect/plugin-autodetect.xml:
+ * docs/plugins/inspect/plugin-avi.xml:
+ * docs/plugins/inspect/plugin-cacasink.xml:
+ * docs/plugins/inspect/plugin-cairo.xml:
+ * docs/plugins/inspect/plugin-cutter.xml:
+ * docs/plugins/inspect/plugin-debug.xml:
+ * docs/plugins/inspect/plugin-deinterlace.xml:
+ * docs/plugins/inspect/plugin-dtmf.xml:
+ * docs/plugins/inspect/plugin-dv.xml:
+ * docs/plugins/inspect/plugin-effectv.xml:
+ * docs/plugins/inspect/plugin-equalizer.xml:
+ * docs/plugins/inspect/plugin-flac.xml:
+ * docs/plugins/inspect/plugin-flv.xml:
+ * docs/plugins/inspect/plugin-flxdec.xml:
+ * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+ * docs/plugins/inspect/plugin-goom.xml:
+ * docs/plugins/inspect/plugin-goom2k1.xml:
+ * docs/plugins/inspect/plugin-icydemux.xml:
+ * docs/plugins/inspect/plugin-id3demux.xml:
+ * docs/plugins/inspect/plugin-imagefreeze.xml:
+ * docs/plugins/inspect/plugin-interleave.xml:
+ * docs/plugins/inspect/plugin-isomp4.xml:
+ * docs/plugins/inspect/plugin-jack.xml:
+ * docs/plugins/inspect/plugin-jpeg.xml:
+ * docs/plugins/inspect/plugin-level.xml:
+ * docs/plugins/inspect/plugin-matroska.xml:
+ * docs/plugins/inspect/plugin-monoscope.xml:
+ * docs/plugins/inspect/plugin-mulaw.xml:
+ * docs/plugins/inspect/plugin-multifile.xml:
+ * docs/plugins/inspect/plugin-multipart.xml:
+ * docs/plugins/inspect/plugin-navigationtest.xml:
+ * docs/plugins/inspect/plugin-oss4.xml:
+ * docs/plugins/inspect/plugin-ossaudio.xml:
+ * docs/plugins/inspect/plugin-png.xml:
+ * docs/plugins/inspect/plugin-pulseaudio.xml:
+ * docs/plugins/inspect/plugin-replaygain.xml:
+ * docs/plugins/inspect/plugin-rtp.xml:
+ * docs/plugins/inspect/plugin-rtpmanager.xml:
+ * docs/plugins/inspect/plugin-rtsp.xml:
+ * docs/plugins/inspect/plugin-shapewipe.xml:
+ * docs/plugins/inspect/plugin-shout2send.xml:
+ * docs/plugins/inspect/plugin-smpte.xml:
+ * docs/plugins/inspect/plugin-soup.xml:
+ * docs/plugins/inspect/plugin-spectrum.xml:
+ * docs/plugins/inspect/plugin-speex.xml:
+ * docs/plugins/inspect/plugin-taglib.xml:
+ * docs/plugins/inspect/plugin-udp.xml:
+ * docs/plugins/inspect/plugin-video4linux2.xml:
+ * docs/plugins/inspect/plugin-videobox.xml:
+ * docs/plugins/inspect/plugin-videocrop.xml:
+ * docs/plugins/inspect/plugin-videofilter.xml:
+ * docs/plugins/inspect/plugin-videomixer.xml:
+ * docs/plugins/inspect/plugin-vpx.xml:
+ * docs/plugins/inspect/plugin-wavenc.xml:
+ * docs/plugins/inspect/plugin-wavpack.xml:
+ * docs/plugins/inspect/plugin-wavparse.xml:
+ * docs/plugins/inspect/plugin-ximagesrc.xml:
+ * docs/plugins/inspect/plugin-y4menc.xml:
+ * gst-plugins-good.doap:
+ * win32/common/config.h:
+ Release 1.1.2
+
+2013-07-11 15:58:29 +0200 Sebastian Dröge <slomo@circular-chaos.org>
+
+ * po/af.po:
+ * po/az.po:
+ * po/bg.po:
+ * po/ca.po:
+ * po/cs.po:
+ * po/da.po:
+ * po/de.po:
+ * po/el.po:
+ * po/en_GB.po:
+ * po/eo.po:
+ * po/es.po:
+ * po/eu.po:
+ * po/fi.po:
+ * po/fr.po:
+ * po/gl.po:
+ * po/hu.po:
+ * po/id.po:
+ * po/it.po:
+ * po/ja.po:
+ * po/lt.po:
+ * po/lv.po:
+ * po/mt.po:
+ * po/nb.po:
+ * po/nl.po:
+ * po/or.po:
+ * po/pl.po:
+ * po/pt_BR.po:
+ * po/ro.po:
+ * po/ru.po:
+ * po/sk.po:
+ * po/sl.po:
+ * po/sq.po:
+ * po/sr.po:
+ * po/sv.po:
+ * po/tr.po:
+ * po/uk.po:
+ * po/vi.po:
+ * po/zh_CN.po:
+ * po/zh_HK.po:
+ * po/zh_TW.po:
+ Update .po files
2013-07-09 15:34:04 +0200 Andoni Morales Alastruey <ylatuya@gmail.com>
diff --git a/NEWS b/NEWS
index e7cb60cb..488ba5af 100644
--- a/NEWS
+++ b/NEWS
@@ -1,2 +1,2 @@
-This is GStreamer Good Plugins 1.1.2
+This is GStreamer Good Plugins 1.1.3
diff --git a/RELEASE b/RELEASE
index b1eabb08..0db0c7db 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,5 +1,5 @@
-Release notes for GStreamer Good Plugins 1.1.2
+Release notes for GStreamer Good Plugins 1.1.3
The GStreamer team is proud to announce a new bug-fix release
@@ -60,31 +60,28 @@ Features of this release
Bugs fixed in this release
- * 612406 : [PATCH] rtspsrc: Race condition
- * 632207 : [rtspsrc] GET_PARAMETER / SET_PARAMETER support
- * 651434 : rtspsrc: don't discard data in interleaved mode
- * 657079 : JPEG RTP Payloader Change to support FaceVsion Webcams
- * 664312 : rtpvorbispay does not handle headers in caps
- * 686459 : pulsesink: playbin uri=x.mp3 audio-sink='identity ! pulsesink' = > not-negotiated flow error
- * 700799 : matroskademux: Got data flow before segment event
- * 701385 : videomixer: Incorrect timestamp calculations for non trivial segments
- * 701519 : videomixer: pushes an incorrect segment event when all its sink pads are EOS
- * 701650 : v4l2: make sure the element is not deleted before the pool
- * 701856 : qtdemux: Does allocation queries before setting caps on all pads
- * 702046 : rtspsrc doesn't produce buffers
- * 702625 : avidemux: duration query returns " zero " for the DV containter format in a AVI file
- * 702638 : v4l2: Optimize negotiation by removing the query filter
- * 702819 : udpsink multicast-iface does not seem to work correctly
- * 702826 : gdkpixbufoverlay: image overlay doesn't work for -ve offset
- * 703114 : deinterleave: deadlock while pushing pending events on all source pads
- * 703182 : multipartmux does not push new segment after flushing seek
- * 703312 : matroskademux: missing profile field in caps for aac audio
- * 703350 : qtdemux: Reports wrong framerate
- * 703399 : v4l2: don't extract data from caps twice
- * 703426 : Fix doc and comment references to gstrtpbin element
- * 703685 : POTFILES.in is out of date
- * 703743 : videomixer: Handling of variable fps streams broken
- * 703764 : v4l2: bufferpool: don't forget to release buffer on error
+ * 672227 : qtdemux: need mapping for video/x-gst-fourcc-xdvc
+ * 674626 : [rtpsession] High CPU usage in rtcp thread when setting RR bandwidth = 0
+ * 696228 : mp4mux: streamable=true seeks on sink at EOS, causing errors with some sinks
+ * 699791 : qtdemux: certain videos from Vivotek camera do not play - " This file is corrupt and cannot be played "
+ * 700264 : qtdemux: ignores first editlist
+ * 700933 : avidemux: Wrong duration in push mode for some clips.
+ * 703560 : [PATCH] rtpbin: new event for informing downstream about synchronization
+ * 703901 : audioecho: Output broken if delay value got changed when playing or paused
+ * 704007 : qtdemux: skips disabled tracks
+ * 704053 : souphttpsrc: Don't treat errors on HEAD request as fatal
+ * 704193 : avidemux: no PTS nor DTS on decoded frame
+ * 704241 : souphttpsrc: Ignore all HEAD errors
+ * 704255 : qtdemux: invalid base time on newsegment in push mode after a seek
+ * 704272 : qtdemux: invalid seek offset used because of chapters
+ * 704292 : qtdemux: does not know WRAW fourcc
+ * 704294 : qtdemux: videos in Windows WRLE format don't work
+ * 704357 : regression: videocrop unit test fail after adding GRAY16_BE format
+ * 704547 : vpx: fix compilation when decoder or encoder package is not build
+ * 704548 : qtdemux: set proper caps for mpeg-1 audio
+ * 704921 : matroskademux: memory leak in check_subtitle_buffer
+ * 704951 : avidemux: memory leak
+ * 704996 : qtdemux: support for H264 fourcc
==== Download ====
@@ -121,28 +118,20 @@ subscribe to the gstreamer-devel list.
Contributors to this release
- * Alban Browaeys
- * Alex Ashley
+ * Alessandro Decina
* Andoni Morales Alastruey
- * Arun Raghavan
- * Brendan Long
- * Bruno Gonzalez
- * David Svensson Fors
- * J. Rick Ramstetter
- * Jens Georg
- * Jonas Holmberg
- * Kishore Arepalli
+ * Arnaud Vrac
+ * Carlos Rafael Giani
+ * Douglas Bagnall
+ * Edward Hervey
+ * Kyosuke Nekomura
* Matej Knopp
* Mathieu Duponchelle
- * Michael Olbrich
- * Ognyan Tonchev
+ * Nicolas Dufresne
* Olivier Crête
- * Piotr Drąg
* Sebastian Dröge
- * Sjoerd Simons
- * Stefan Sauer
* Thiago Santos
* Tim-Philipp Müller
+ * Vincent Penquerc'h
* Wim Taymans
- * Youness Alaoui
  \ No newline at end of file
diff --git a/configure b/configure
index 35ba04f5..a3a9f6cd 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GStreamer Good Plug-ins 1.1.2.
+# Generated by GNU Autoconf 2.69 for GStreamer Good Plug-ins 1.1.3.
#
# Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>.
#
@@ -591,8 +591,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='GStreamer Good Plug-ins'
PACKAGE_TARNAME='gst-plugins-good'
-PACKAGE_VERSION='1.1.2'
-PACKAGE_STRING='GStreamer Good Plug-ins 1.1.2'
+PACKAGE_VERSION='1.1.3'
+PACKAGE_STRING='GStreamer Good Plug-ins 1.1.3'
PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
PACKAGE_URL=''
@@ -1946,7 +1946,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GStreamer Good Plug-ins 1.1.2 to adapt to many kinds of systems.
+\`configure' configures GStreamer Good Plug-ins 1.1.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -2022,7 +2022,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GStreamer Good Plug-ins 1.1.2:";;
+ short | recursive ) echo "Configuration of GStreamer Good Plug-ins 1.1.3:";;
esac
cat <<\_ACEOF
@@ -2382,7 +2382,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GStreamer Good Plug-ins configure 1.1.2
+GStreamer Good Plug-ins configure 1.1.3
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -3193,7 +3193,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by GStreamer Good Plug-ins $as_me 1.1.2, which was
+It was created by GStreamer Good Plug-ins $as_me 1.1.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -4175,7 +4175,7 @@ fi
# Define the identity of the package.
PACKAGE='gst-plugins-good'
- VERSION='1.1.2'
+ VERSION='1.1.3'
cat >>confdefs.h <<_ACEOF
@@ -4344,9 +4344,9 @@ $as_echo "$am_cv_prog_tar_ustar" >&6; }
- PACKAGE_VERSION_MAJOR=$(echo 1.1.2 | cut -d'.' -f1)
- PACKAGE_VERSION_MINOR=$(echo 1.1.2 | cut -d'.' -f2)
- PACKAGE_VERSION_MICRO=$(echo 1.1.2 | cut -d'.' -f3)
+ PACKAGE_VERSION_MAJOR=$(echo 1.1.3 | cut -d'.' -f1)
+ PACKAGE_VERSION_MINOR=$(echo 1.1.3 | cut -d'.' -f2)
+ PACKAGE_VERSION_MICRO=$(echo 1.1.3 | cut -d'.' -f3)
@@ -4357,7 +4357,7 @@ $as_echo "$am_cv_prog_tar_ustar" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
$as_echo_n "checking nano version... " >&6; }
- NANO=$(echo 1.1.2 | cut -d'.' -f4)
+ NANO=$(echo 1.1.3 | cut -d'.' -f4)
if test x"$NANO" = x || test "x$NANO" = "x0" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -8948,10 +8948,10 @@ fi
done
- GST_CURRENT=102
+ GST_CURRENT=103
GST_REVISION=0
- GST_AGE=102
- GST_LIBVERSION=102:0:102
+ GST_AGE=103
+ GST_LIBVERSION=103:0:103
@@ -13276,8 +13276,8 @@ CC="$lt_save_CC"
-GST_REQ=1.1.2
-GSTPB_REQ=1.1.2
+GST_REQ=1.1.3
+GSTPB_REQ=1.1.3
@@ -37782,7 +37782,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GStreamer Good Plug-ins $as_me 1.1.2, which was
+This file was extended by GStreamer Good Plug-ins $as_me 1.1.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -37848,7 +37848,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-GStreamer Good Plug-ins config.status 1.1.2
+GStreamer Good Plug-ins config.status 1.1.3
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/configure.ac b/configure.ac
index 34234df4..3537fda3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file
dnl initialize autoconf
dnl releases only do -Wall, git and prerelease does -Werror too
dnl use a three digit version number for releases, and four for git/pre
-AC_INIT([GStreamer Good Plug-ins],[1.1.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
+AC_INIT([GStreamer Good Plug-ins],[1.1.3],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
AG_GST_INIT
@@ -43,11 +43,11 @@ AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION",
[GStreamer API Version])
AG_GST_LIBTOOL_PREPARE
-AS_LIBTOOL(GST, 102, 0, 102)
+AS_LIBTOOL(GST, 103, 0, 103)
dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.1.2
-GSTPB_REQ=1.1.2
+GST_REQ=1.1.3
+GSTPB_REQ=1.1.3
dnl *** autotools stuff ****
diff --git a/docs/plugins/gst-plugins-good-plugins.args b/docs/plugins/gst-plugins-good-plugins.args
index 48e1b894..8ec2a3c9 100644
--- a/docs/plugins/gst-plugins-good-plugins.args
+++ b/docs/plugins/gst-plugins-good-plugins.args
@@ -20305,7 +20305,7 @@
<FLAGS>rw</FLAGS>
<NICK>Client Name</NICK>
<BLURB>The PulseAudio client name to use.</BLURB>
-<DEFAULT>"gst-plugins-good-plugins-scan"</DEFAULT>
+<DEFAULT>"lt-gst-plugins-good-plugins-scan"</DEFAULT>
</ARG>
<ARG>
@@ -20395,7 +20395,7 @@
<FLAGS>rw</FLAGS>
<NICK>Client Name</NICK>
<BLURB>The PulseAudio client_name_to_use.</BLURB>
-<DEFAULT>"gst-plugins-good-plugins-scan"</DEFAULT>
+<DEFAULT>"lt-gst-plugins-good-plugins-scan"</DEFAULT>
</ARG>
<ARG>
@@ -21179,6 +21179,16 @@
</ARG>
<ARG>
+<NAME>GstRtpBin::do-sync-event</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Do Sync Event</NICK>
+<BLURB>Send event downstream when a stream is synchronized to the sender.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
+<ARG>
<NAME>GstRtpJitterBuffer::do-lost</NAME>
<TYPE>gboolean</TYPE>
<RANGE></RANGE>
diff --git a/docs/plugins/html/ch01.html b/docs/plugins/html/ch01.html
index 6b726b4a..499b426a 100644
--- a/docs/plugins/html/ch01.html
+++ b/docs/plugins/html/ch01.html
@@ -21,7 +21,7 @@
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h1 class="title">
-<a name="idp3810112"></a>gst-plugins-good Elements</h1></div></div></div>
+<a name="idp739168"></a>gst-plugins-good Elements</h1></div></div></div>
<div class="toc"><dl class="toc">
<dt>
<span class="refentrytitle"><a href="gst-plugins-good-plugins-3gppmux.html">3gppmux</a></span><span class="refpurpose"> — Muxer for 3GPP (.3gp) files</span>
diff --git a/docs/plugins/html/ch02.html b/docs/plugins/html/ch02.html
index 8546648b..f11b6082 100644
--- a/docs/plugins/html/ch02.html
+++ b/docs/plugins/html/ch02.html
@@ -21,7 +21,7 @@
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h1 class="title">
-<a name="idp280352"></a>gst-plugins-good Plugins</h1></div></div></div>
+<a name="idp5381216"></a>gst-plugins-good Plugins</h1></div></div></div>
<div class="toc"><dl class="toc">
<dt>
<span class="refentrytitle"><a href="gst-plugins-good-plugins-plugin-1394.html">1394</a></span><span class="refpurpose">Source for video data via IEEE1394 interface</span>
diff --git a/docs/plugins/html/ch03.html b/docs/plugins/html/ch03.html
index a813f39d..a67781cb 100644
--- a/docs/plugins/html/ch03.html
+++ b/docs/plugins/html/ch03.html
@@ -21,7 +21,7 @@
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h1 class="title">
-<a name="idp86112"></a>gst-plugins-good Base Classes</h1></div></div></div>
+<a name="idp5416704"></a>gst-plugins-good Base Classes</h1></div></div></div>
<div class="toc"><dl class="toc">
<dt>
<span class="refentrytitle"><a href="GstIirEqualizer.html">GstIirEqualizer</a></span><span class="refpurpose"></span>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-1.0.devhelp2 b/docs/plugins/html/gst-plugins-good-plugins-1.0.devhelp2
index ae187ac4..d06fb60b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-1.0.devhelp2
+++ b/docs/plugins/html/gst-plugins-good-plugins-1.0.devhelp2
@@ -248,15 +248,15 @@
</sub>
</chapters>
<functions>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-3gppmux.html#idp6113488"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-3gppmux.html#idp9144864"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-3gppmux.html#idp6311024"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-aacparse.html#idp2950000"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-aacparse.html#idp5578864"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-aacparse.html#idp7021072"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-3gppmux.html#idp8057696"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-3gppmux.html#idp8801280"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-3gppmux.html#idp9192928"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-aacparse.html#idp8889072"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-aacparse.html#idp8745216"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-aacparse.html#idp7542176"/>
<keyword type="struct" name="struct GstAacParse" link="gst-plugins-good-plugins-aacparse.html#GstAacParse-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-aasink.html#idp9493872"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-aasink.html#idp8910368"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-aasink.html#idp8114752"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-aasink.html#idp9395168"/>
<keyword type="struct" name="struct GstAASink" link="gst-plugins-good-plugins-aasink.html#GstAASink-struct"/>
<keyword type="property" name="The &quot;brightness&quot; property" link="gst-plugins-good-plugins-aasink.html#GstAASink--brightness"/>
<keyword type="property" name="The &quot;contrast&quot; property" link="gst-plugins-good-plugins-aasink.html#GstAASink--contrast"/>
@@ -271,20 +271,20 @@
<keyword type="property" name="The &quot;width&quot; property" link="gst-plugins-good-plugins-aasink.html#GstAASink--width"/>
<keyword type="signal" name="The &quot;frame-displayed&quot; signal" link="gst-plugins-good-plugins-aasink.html#GstAASink-frame-displayed"/>
<keyword type="signal" name="The &quot;have-size&quot; signal" link="gst-plugins-good-plugins-aasink.html#GstAASink-have-size"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-ac3parse.html#idp9031760"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-ac3parse.html#idp6596512"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-ac3parse.html#idp8013712"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-ac3parse.html#idp6468592"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-ac3parse.html#idp7269600"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-ac3parse.html#idp6976528"/>
<keyword type="struct" name="struct GstAc3Parse" link="gst-plugins-good-plugins-ac3parse.html#GstAc3Parse-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-agingtv.html#idp6143968"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-agingtv.html#idp5767920"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-agingtv.html#idp5807664"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-agingtv.html#idp6572352"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-agingtv.html#idp5737600"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-agingtv.html#idp5582416"/>
<keyword type="struct" name="struct GstAgingTV" link="gst-plugins-good-plugins-agingtv.html#GstAgingTV-struct"/>
<keyword type="property" name="The &quot;color-aging&quot; property" link="gst-plugins-good-plugins-agingtv.html#GstAgingTV--color-aging"/>
<keyword type="property" name="The &quot;dusts&quot; property" link="gst-plugins-good-plugins-agingtv.html#GstAgingTV--dusts"/>
<keyword type="property" name="The &quot;pits&quot; property" link="gst-plugins-good-plugins-agingtv.html#GstAgingTV--pits"/>
<keyword type="property" name="The &quot;scratch-lines&quot; property" link="gst-plugins-good-plugins-agingtv.html#GstAgingTV--scratch-lines"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alpha.html#idp6082352"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alpha.html#idp5463632"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alpha.html#idp6388320"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alpha.html#idp7096864"/>
<keyword type="struct" name="struct GstAlpha" link="gst-plugins-good-plugins-alpha.html#GstAlpha-struct"/>
<keyword type="enum" name="enum GstAlphaMethod" link="gst-plugins-good-plugins-alpha.html#GstAlphaMethod"/>
<keyword type="property" name="The &quot;alpha&quot; property" link="gst-plugins-good-plugins-alpha.html#GstAlpha--alpha"/>
@@ -297,41 +297,41 @@
<keyword type="property" name="The &quot;black-sensitivity&quot; property" link="gst-plugins-good-plugins-alpha.html#GstAlpha--black-sensitivity"/>
<keyword type="property" name="The &quot;white-sensitivity&quot; property" link="gst-plugins-good-plugins-alpha.html#GstAlpha--white-sensitivity"/>
<keyword type="property" name="The &quot;prefer-passthrough&quot; property" link="gst-plugins-good-plugins-alpha.html#GstAlpha--prefer-passthrough"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alphacolor.html#idp9405456"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alphacolor.html#idp7048096"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alphacolor.html#idp9252928"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alphacolor.html#idp6596944"/>
<keyword type="struct" name="struct GstAlphaColor" link="gst-plugins-good-plugins-alphacolor.html#GstAlphaColor-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alawdec.html#idp6826464"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alawdec.html#idp9772352"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alawdec.html#idp7624944"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alawdec.html#idp5552832"/>
<keyword type="struct" name="struct GstALawDec" link="gst-plugins-good-plugins-alawdec.html#GstALawDec-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alawenc.html#idp6619840"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alawenc.html#idp9450112"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-alawenc.html#idp8656128"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-alawenc.html#idp6497680"/>
<keyword type="struct" name="struct GstALawDec" link="gst-plugins-good-plugins-alawenc.html#GstALawDec-struct"/>
<keyword type="struct" name="struct GstALawEnc" link="gst-plugins-good-plugins-alawenc.html#GstALawEnc"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-amrparse.html#idp7779712"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-amrparse.html#idp8942016"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-amrparse.html#idp5623776"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-amrparse.html#idp6371840"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-amrparse.html#idp2702944"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-amrparse.html#idp8161728"/>
<keyword type="struct" name="struct GstAmrParse" link="gst-plugins-good-plugins-amrparse.html#GstAmrParse-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-apedemux.html#idp5795760"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-apedemux.html#idp1531392"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-apedemux.html#idp6644736"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-apedemux.html#idp7070032"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-apedemux.html#idp9183568"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-apedemux.html#idp8629888"/>
<keyword type="struct" name="struct GstApeDemux" link="gst-plugins-good-plugins-apedemux.html#GstApeDemux-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-apev2mux.html#idp6518416"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-apev2mux.html#idp8450720"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-apev2mux.html#idp2696512"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-apev2mux.html#idp8123456"/>
<keyword type="struct" name="struct GstApev2Mux" link="gst-plugins-good-plugins-apev2mux.html#GstApev2Mux-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-aspectratiocrop.html#idp9647744"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-aspectratiocrop.html#idp5724416"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-aspectratiocrop.html#idp8195472"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-aspectratiocrop.html#idp7678320"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-aspectratiocrop.html#idp7615120"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-aspectratiocrop.html#idp10013104"/>
<keyword type="struct" name="struct GstAspectRatioCrop" link="gst-plugins-good-plugins-aspectratiocrop.html#GstAspectRatioCrop-struct"/>
<keyword type="property" name="The &quot;aspect-ratio&quot; property" link="gst-plugins-good-plugins-aspectratiocrop.html#GstAspectRatioCrop--aspect-ratio"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audioamplify.html#idp8526960"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioamplify.html#idp2988576"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioamplify.html#idp7125360"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audioamplify.html#idp5474144"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioamplify.html#idp6190384"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioamplify.html#idp9621504"/>
<keyword type="struct" name="struct GstAudioAmplify" link="gst-plugins-good-plugins-audioamplify.html#GstAudioAmplify-struct"/>
<keyword type="property" name="The &quot;amplification&quot; property" link="gst-plugins-good-plugins-audioamplify.html#GstAudioAmplify--amplification"/>
<keyword type="property" name="The &quot;clipping-method&quot; property" link="gst-plugins-good-plugins-audioamplify.html#GstAudioAmplify--clipping-method"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiochebband.html#idp6140608"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiochebband.html#idp10187200"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiochebband.html#idp8821472"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiochebband.html#idp5586336"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiochebband.html#idp7097184"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiochebband.html#idp8182256"/>
<keyword type="struct" name="struct GstAudioChebBand" link="gst-plugins-good-plugins-audiochebband.html#GstAudioChebBand-struct"/>
<keyword type="property" name="The &quot;lower-frequency&quot; property" link="gst-plugins-good-plugins-audiochebband.html#GstAudioChebBand--lower-frequency"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-audiochebband.html#GstAudioChebBand--mode"/>
@@ -339,155 +339,155 @@
<keyword type="property" name="The &quot;ripple&quot; property" link="gst-plugins-good-plugins-audiochebband.html#GstAudioChebBand--ripple"/>
<keyword type="property" name="The &quot;type&quot; property" link="gst-plugins-good-plugins-audiochebband.html#GstAudioChebBand--type"/>
<keyword type="property" name="The &quot;upper-frequency&quot; property" link="gst-plugins-good-plugins-audiochebband.html#GstAudioChebBand--upper-frequency"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiocheblimit.html#idp8331104"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiocheblimit.html#idp5477056"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiocheblimit.html#idp5606368"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiocheblimit.html#idp5488464"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiocheblimit.html#idp7505856"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiocheblimit.html#idp9048128"/>
<keyword type="struct" name="struct GstAudioChebLimit" link="gst-plugins-good-plugins-audiocheblimit.html#GstAudioChebLimit-struct"/>
<keyword type="property" name="The &quot;cutoff&quot; property" link="gst-plugins-good-plugins-audiocheblimit.html#GstAudioChebLimit--cutoff"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-audiocheblimit.html#GstAudioChebLimit--mode"/>
<keyword type="property" name="The &quot;poles&quot; property" link="gst-plugins-good-plugins-audiocheblimit.html#GstAudioChebLimit--poles"/>
<keyword type="property" name="The &quot;ripple&quot; property" link="gst-plugins-good-plugins-audiocheblimit.html#GstAudioChebLimit--ripple"/>
<keyword type="property" name="The &quot;type&quot; property" link="gst-plugins-good-plugins-audiocheblimit.html#GstAudioChebLimit--type"/>
- <keyword type="" name="Example application" link="gst-plugins-good-plugins-audiofirfilter.html#idp9199184"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiofirfilter.html#idp7991472"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiofirfilter.html#idp10261952"/>
+ <keyword type="" name="Example application" link="gst-plugins-good-plugins-audiofirfilter.html#idp8030608"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiofirfilter.html#idp7974976"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiofirfilter.html#idp8378992"/>
<keyword type="struct" name="struct GstAudioFIRFilter" link="gst-plugins-good-plugins-audiofirfilter.html#GstAudioFIRFilter-struct"/>
<keyword type="property" name="The &quot;kernel&quot; property" link="gst-plugins-good-plugins-audiofirfilter.html#GstAudioFIRFilter--kernel"/>
<keyword type="property" name="The &quot;latency&quot; property" link="gst-plugins-good-plugins-audiofirfilter.html#GstAudioFIRFilter--latency"/>
<keyword type="signal" name="The &quot;rate-changed&quot; signal" link="gst-plugins-good-plugins-audiofirfilter.html#GstAudioFIRFilter-rate-changed"/>
- <keyword type="" name="Example application" link="gst-plugins-good-plugins-audioiirfilter.html#idp6404928"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioiirfilter.html#idp8145488"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioiirfilter.html#idp9189216"/>
+ <keyword type="" name="Example application" link="gst-plugins-good-plugins-audioiirfilter.html#idp11197904"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioiirfilter.html#idp8734928"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioiirfilter.html#idp6230160"/>
<keyword type="struct" name="struct GstAudioIIRFilter" link="gst-plugins-good-plugins-audioiirfilter.html#GstAudioIIRFilter-struct"/>
<keyword type="property" name="The &quot;a&quot; property" link="gst-plugins-good-plugins-audioiirfilter.html#GstAudioIIRFilter--a"/>
<keyword type="property" name="The &quot;b&quot; property" link="gst-plugins-good-plugins-audioiirfilter.html#GstAudioIIRFilter--b"/>
<keyword type="signal" name="The &quot;rate-changed&quot; signal" link="gst-plugins-good-plugins-audioiirfilter.html#GstAudioIIRFilter-rate-changed"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiowsincband.html#idp7302048"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiowsincband.html#idp10726912"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiowsincband.html#idp6534160"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiowsincband.html#idp11194080"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiowsincband.html#idp10037232"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiowsincband.html#idp10548000"/>
<keyword type="struct" name="struct GstAudioWSincBand" link="gst-plugins-good-plugins-audiowsincband.html#GstAudioWSincBand-struct"/>
<keyword type="property" name="The &quot;lower-frequency&quot; property" link="gst-plugins-good-plugins-audiowsincband.html#GstAudioWSincBand--lower-frequency"/>
<keyword type="property" name="The &quot;upper-frequency&quot; property" link="gst-plugins-good-plugins-audiowsincband.html#GstAudioWSincBand--upper-frequency"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-audiowsincband.html#GstAudioWSincBand--mode"/>
<keyword type="property" name="The &quot;window&quot; property" link="gst-plugins-good-plugins-audiowsincband.html#GstAudioWSincBand--window"/>
<keyword type="property" name="The &quot;length&quot; property" link="gst-plugins-good-plugins-audiowsincband.html#GstAudioWSincBand--length"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiowsinclimit.html#idp6291792"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiowsinclimit.html#idp5754672"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiowsinclimit.html#idp7033856"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiowsinclimit.html#idp9699632"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiowsinclimit.html#idp9148848"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiowsinclimit.html#idp8509152"/>
<keyword type="struct" name="struct GstAudioWSincLimit" link="gst-plugins-good-plugins-audiowsinclimit.html#GstAudioWSincLimit-struct"/>
<keyword type="property" name="The &quot;frequency&quot; property" link="gst-plugins-good-plugins-audiowsinclimit.html#GstAudioWSincLimit--frequency"/>
<keyword type="property" name="The &quot;length&quot; property" link="gst-plugins-good-plugins-audiowsinclimit.html#GstAudioWSincLimit--length"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-audiowsinclimit.html#GstAudioWSincLimit--mode"/>
<keyword type="property" name="The &quot;window&quot; property" link="gst-plugins-good-plugins-audiowsinclimit.html#GstAudioWSincLimit--window"/>
<keyword type="property" name="The &quot;cutoff&quot; property" link="gst-plugins-good-plugins-audiowsinclimit.html#GstAudioWSincLimit--cutoff"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audioecho.html#idp6028784"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioecho.html#idp8851296"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioecho.html#idp6008928"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audioecho.html#idp5608896"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioecho.html#idp8651648"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioecho.html#idp10901008"/>
<keyword type="struct" name="struct GstAudioEcho" link="gst-plugins-good-plugins-audioecho.html#GstAudioEcho-struct"/>
<keyword type="property" name="The &quot;delay&quot; property" link="gst-plugins-good-plugins-audioecho.html#GstAudioEcho--delay"/>
<keyword type="property" name="The &quot;feedback&quot; property" link="gst-plugins-good-plugins-audioecho.html#GstAudioEcho--feedback"/>
<keyword type="property" name="The &quot;intensity&quot; property" link="gst-plugins-good-plugins-audioecho.html#GstAudioEcho--intensity"/>
<keyword type="property" name="The &quot;max-delay&quot; property" link="gst-plugins-good-plugins-audioecho.html#GstAudioEcho--max-delay"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiodynamic.html#idp7655024"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiodynamic.html#idp4774688"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiodynamic.html#idp6403648"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiodynamic.html#idp7798912"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiodynamic.html#idp5738720"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiodynamic.html#idp8012000"/>
<keyword type="struct" name="struct GstAudioDynamic" link="gst-plugins-good-plugins-audiodynamic.html#GstAudioDynamic-struct"/>
<keyword type="property" name="The &quot;characteristics&quot; property" link="gst-plugins-good-plugins-audiodynamic.html#GstAudioDynamic--characteristics"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-audiodynamic.html#GstAudioDynamic--mode"/>
<keyword type="property" name="The &quot;ratio&quot; property" link="gst-plugins-good-plugins-audiodynamic.html#GstAudioDynamic--ratio"/>
<keyword type="property" name="The &quot;threshold&quot; property" link="gst-plugins-good-plugins-audiodynamic.html#GstAudioDynamic--threshold"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audioinvert.html#idp5762816"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioinvert.html#idp9076528"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioinvert.html#idp5218224"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audioinvert.html#idp8047216"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audioinvert.html#idp7784336"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audioinvert.html#idp9391264"/>
<keyword type="struct" name="struct GstAudioInvert" link="gst-plugins-good-plugins-audioinvert.html#GstAudioInvert-struct"/>
<keyword type="property" name="The &quot;degree&quot; property" link="gst-plugins-good-plugins-audioinvert.html#GstAudioInvert--degree"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiopanorama.html#idm11888"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiopanorama.html#idp2876928"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiopanorama.html#idp11457312"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiopanorama.html#idp5695312"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiopanorama.html#idp11780640"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiopanorama.html#idp11191856"/>
<keyword type="struct" name="struct GstAudioPanorama" link="gst-plugins-good-plugins-audiopanorama.html#GstAudioPanorama-struct"/>
<keyword type="property" name="The &quot;panorama&quot; property" link="gst-plugins-good-plugins-audiopanorama.html#GstAudioPanorama--panorama"/>
<keyword type="property" name="The &quot;method&quot; property" link="gst-plugins-good-plugins-audiopanorama.html#GstAudioPanorama--method"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiokaraoke.html#idp5419792"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiokaraoke.html#idp9252656"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiokaraoke.html#idp10378896"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-audiokaraoke.html#idp10951296"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-audiokaraoke.html#idp6545728"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-audiokaraoke.html#idp7245760"/>
<keyword type="struct" name="struct GstAudioKaraoke" link="gst-plugins-good-plugins-audiokaraoke.html#GstAudioKaraoke-struct"/>
<keyword type="property" name="The &quot;filter-band&quot; property" link="gst-plugins-good-plugins-audiokaraoke.html#GstAudioKaraoke--filter-band"/>
<keyword type="property" name="The &quot;filter-width&quot; property" link="gst-plugins-good-plugins-audiokaraoke.html#GstAudioKaraoke--filter-width"/>
<keyword type="property" name="The &quot;level&quot; property" link="gst-plugins-good-plugins-audiokaraoke.html#GstAudioKaraoke--level"/>
<keyword type="property" name="The &quot;mono-level&quot; property" link="gst-plugins-good-plugins-audiokaraoke.html#GstAudioKaraoke--mono-level"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-auparse.html#idp8715792"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-auparse.html#idp9070240"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-auparse.html#idp7603344"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-auparse.html#idp5837104"/>
<keyword type="struct" name="struct GstAuParse" link="gst-plugins-good-plugins-auparse.html#GstAuParse-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autoaudiosink.html#idp8750000"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autoaudiosink.html#idp8879536"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autoaudiosink.html#idp9085088"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autoaudiosink.html#idp8036736"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autoaudiosink.html#idp11530368"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autoaudiosink.html#idp6046224"/>
<keyword type="struct" name="GstAutoAudioSink" link="gst-plugins-good-plugins-autoaudiosink.html#GstAutoAudioSink-struct"/>
<keyword type="property" name="The &quot;filter-caps&quot; property" link="gst-plugins-good-plugins-autoaudiosink.html#GstAutoAudioSink--filter-caps"/>
<keyword type="property" name="The &quot;ts-offset&quot; property" link="gst-plugins-good-plugins-autoaudiosink.html#GstAutoAudioSink--ts-offset"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autoaudiosrc.html#idp9138832"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autoaudiosrc.html#idp5345888"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autoaudiosrc.html#idp10553360"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autoaudiosrc.html#idp10829808"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autoaudiosrc.html#idp8190640"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autoaudiosrc.html#idp6660832"/>
<keyword type="struct" name="GstAutoAudioSrc" link="gst-plugins-good-plugins-autoaudiosrc.html#GstAutoAudioSrc-struct"/>
<keyword type="property" name="The &quot;filter-caps&quot; property" link="gst-plugins-good-plugins-autoaudiosrc.html#GstAutoAudioSrc--filter-caps"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autovideosink.html#idp6701440"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autovideosink.html#idp3260992"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autovideosink.html#idp10730080"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autovideosink.html#idp5862752"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autovideosink.html#idp8426576"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autovideosink.html#idp11472448"/>
<keyword type="struct" name="GstAutoVideoSink" link="gst-plugins-good-plugins-autovideosink.html#GstAutoVideoSink-struct"/>
<keyword type="property" name="The &quot;filter-caps&quot; property" link="gst-plugins-good-plugins-autovideosink.html#GstAutoVideoSink--filter-caps"/>
<keyword type="property" name="The &quot;ts-offset&quot; property" link="gst-plugins-good-plugins-autovideosink.html#GstAutoVideoSink--ts-offset"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autovideosrc.html#idp7064416"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autovideosrc.html#idp6356896"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autovideosrc.html#idp8468768"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-autovideosrc.html#idp3202272"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-autovideosrc.html#idp11244048"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-autovideosrc.html#idp8559840"/>
<keyword type="struct" name="GstAutoVideoSrc" link="gst-plugins-good-plugins-autovideosrc.html#GstAutoVideoSrc-struct"/>
<keyword type="property" name="The &quot;filter-caps&quot; property" link="gst-plugins-good-plugins-autovideosrc.html#GstAutoVideoSrc--filter-caps"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-avidemux.html#idp11160144"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-avidemux.html#idp11157712"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-avidemux.html#idp11151040"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-avidemux.html#idp12072800"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-avidemux.html#idp12070368"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-avidemux.html#idp12063696"/>
<keyword type="struct" name="GstAviDemux" link="gst-plugins-good-plugins-avidemux.html#GstAviDemux-struct"/>
- <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-avimux.html#idp5273808"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-avimux.html#idp5375904"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-avimux.html#idp10974672"/>
+ <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-avimux.html#idp11697408"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-avimux.html#idp5839344"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-avimux.html#idp8603504"/>
<keyword type="struct" name="struct GstAviMux" link="gst-plugins-good-plugins-avimux.html#GstAviMux-struct"/>
<keyword type="property" name="The &quot;bigfile&quot; property" link="gst-plugins-good-plugins-avimux.html#GstAviMux--bigfile"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-avisubtitle.html#idp7552048"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-avisubtitle.html#idp5563312"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-avisubtitle.html#idp9055968"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-avisubtitle.html#idp11299536"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-avisubtitle.html#idp9408768"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-avisubtitle.html#idp2714992"/>
<keyword type="struct" name="struct GstAviSubtitle" link="gst-plugins-good-plugins-avisubtitle.html#GstAviSubtitle-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-cacasink.html#idp6840112"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-cacasink.html#idp5432784"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-cacasink.html#idp12293424"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-cacasink.html#idp9506448"/>
<keyword type="struct" name="struct GstCACASink" link="gst-plugins-good-plugins-cacasink.html#GstCACASink-struct"/>
<keyword type="property" name="The &quot;anti-aliasing&quot; property" link="gst-plugins-good-plugins-cacasink.html#GstCACASink--anti-aliasing"/>
<keyword type="property" name="The &quot;dither&quot; property" link="gst-plugins-good-plugins-cacasink.html#GstCACASink--dither"/>
<keyword type="property" name="The &quot;screen-height&quot; property" link="gst-plugins-good-plugins-cacasink.html#GstCACASink--screen-height"/>
<keyword type="property" name="The &quot;screen-width&quot; property" link="gst-plugins-good-plugins-cacasink.html#GstCACASink--screen-width"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-cairooverlay.html#idp12083040"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-cairooverlay.html#idp8612080"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-cairooverlay.html#idp7471792"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-cairooverlay.html#idp6955600"/>
<keyword type="struct" name="struct GstCairoOverlay" link="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay-struct"/>
<keyword type="signal" name="The &quot;caps-changed&quot; signal" link="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay-caps-changed"/>
<keyword type="signal" name="The &quot;draw&quot; signal" link="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay-draw"/>
- <keyword type="" name="" link="gst-plugins-good-plugins-capssetter.html#idp5938384"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-capssetter.html#idp7467344"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-capssetter.html#idp11516288"/>
+ <keyword type="" name="" link="gst-plugins-good-plugins-capssetter.html#idp7318576"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-capssetter.html#idp10347248"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-capssetter.html#idp10169136"/>
<keyword type="struct" name="struct GstCapsSetter" link="gst-plugins-good-plugins-capssetter.html#GstCapsSetter-struct"/>
<keyword type="property" name="The &quot;caps&quot; property" link="gst-plugins-good-plugins-capssetter.html#GstCapsSetter--caps"/>
<keyword type="property" name="The &quot;join&quot; property" link="gst-plugins-good-plugins-capssetter.html#GstCapsSetter--join"/>
<keyword type="property" name="The &quot;replace&quot; property" link="gst-plugins-good-plugins-capssetter.html#GstCapsSetter--replace"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-cutter.html#idp7650192"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-cutter.html#idp5415856"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-cutter.html#idp11312080"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-cutter.html#idp10546544"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-cutter.html#idp11001168"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-cutter.html#idp10380128"/>
<keyword type="struct" name="struct GstCutter" link="gst-plugins-good-plugins-cutter.html#GstCutter-struct"/>
<keyword type="property" name="The &quot;leaky&quot; property" link="gst-plugins-good-plugins-cutter.html#GstCutter--leaky"/>
<keyword type="property" name="The &quot;pre-length&quot; property" link="gst-plugins-good-plugins-cutter.html#GstCutter--pre-length"/>
<keyword type="property" name="The &quot;run-length&quot; property" link="gst-plugins-good-plugins-cutter.html#GstCutter--run-length"/>
<keyword type="property" name="The &quot;threshold&quot; property" link="gst-plugins-good-plugins-cutter.html#GstCutter--threshold"/>
<keyword type="property" name="The &quot;threshold-dB&quot; property" link="gst-plugins-good-plugins-cutter.html#GstCutter--threshold-dB"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-dcaparse.html#idp8826816"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dcaparse.html#idp11910560"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dcaparse.html#idp12608576"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-dcaparse.html#idp8278240"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dcaparse.html#idp7662672"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dcaparse.html#idp6234528"/>
<keyword type="struct" name="struct GstDcaParse" link="gst-plugins-good-plugins-dcaparse.html#GstDcaParse-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-deinterlace.html#idp7050240"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-deinterlace.html#idp7026704"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-deinterlace.html#idp11438208"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-deinterlace.html#idp9409440"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-deinterlace.html#idp8348144"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-deinterlace.html#idp11444016"/>
<keyword type="struct" name="struct GstDeinterlace" link="gst-plugins-good-plugins-deinterlace.html#GstDeinterlace-struct"/>
<keyword type="property" name="The &quot;fields&quot; property" link="gst-plugins-good-plugins-deinterlace.html#GstDeinterlace--fields"/>
<keyword type="property" name="The &quot;method&quot; property" link="gst-plugins-good-plugins-deinterlace.html#GstDeinterlace--method"/>
@@ -496,26 +496,26 @@
<keyword type="property" name="The &quot;drop-orphans&quot; property" link="gst-plugins-good-plugins-deinterlace.html#GstDeinterlace--drop-orphans"/>
<keyword type="property" name="The &quot;ignore-obscure&quot; property" link="gst-plugins-good-plugins-deinterlace.html#GstDeinterlace--ignore-obscure"/>
<keyword type="property" name="The &quot;locking&quot; property" link="gst-plugins-good-plugins-deinterlace.html#GstDeinterlace--locking"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-deinterleave.html#idp9390448"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-deinterleave.html#idp6460992"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-deinterleave.html#idp7416272"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-deinterleave.html#idp6854512"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-deinterleave.html#idp7067536"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-deinterleave.html#idp7453824"/>
<keyword type="struct" name="struct GstDeinterleave" link="gst-plugins-good-plugins-deinterleave.html#GstDeinterleave-struct"/>
<keyword type="property" name="The &quot;keep-positions&quot; property" link="gst-plugins-good-plugins-deinterleave.html#GstDeinterleave--keep-positions"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-dicetv.html#idp11683280"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dicetv.html#idp12679024"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dicetv.html#idp2830736"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-dicetv.html#idp6070192"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dicetv.html#idp7466336"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dicetv.html#idp7968448"/>
<keyword type="struct" name="struct GstDiceTV" link="gst-plugins-good-plugins-dicetv.html#GstDiceTV-struct"/>
<keyword type="property" name="The &quot;square-bits&quot; property" link="gst-plugins-good-plugins-dicetv.html#GstDiceTV--square-bits"/>
<keyword type="signal" name="The &quot;reset&quot; signal" link="gst-plugins-good-plugins-dicetv.html#GstDiceTV-reset"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-directsoundsink.html#idp7641248"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-directsoundsink.html#idp6939312"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-directsoundsink.html#idp6590736"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-directsoundsink.html#idp8356688"/>
<keyword type="struct" name="struct GstDirectSoundSink" link="gst-plugins-good-plugins-directsoundsink.html#GstDirectSoundSink"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dtmfsrc.html#idp8551232"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dtmfsrc.html#idp1524480"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dtmfsrc.html#idp11525840"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dtmfsrc.html#idp12924672"/>
<keyword type="struct" name="struct GstDTMFSrc" link="gst-plugins-good-plugins-dtmfsrc.html#GstDTMFSrc-struct"/>
<keyword type="property" name="The &quot;interval&quot; property" link="gst-plugins-good-plugins-dtmfsrc.html#GstDTMFSrc--interval"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dv1394src.html#idp12835888"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dv1394src.html#idp10187328"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dv1394src.html#idp12285008"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dv1394src.html#idp11640992"/>
<keyword type="struct" name="struct GstDV1394Src" link="gst-plugins-good-plugins-dv1394src.html#GstDV1394Src-struct"/>
<keyword type="property" name="The &quot;channel&quot; property" link="gst-plugins-good-plugins-dv1394src.html#GstDV1394Src--channel"/>
<keyword type="property" name="The &quot;consecutive&quot; property" link="gst-plugins-good-plugins-dv1394src.html#GstDV1394Src--consecutive"/>
@@ -526,23 +526,23 @@
<keyword type="property" name="The &quot;use-avc&quot; property" link="gst-plugins-good-plugins-dv1394src.html#GstDV1394Src--use-avc"/>
<keyword type="property" name="The &quot;device-name&quot; property" link="gst-plugins-good-plugins-dv1394src.html#GstDV1394Src--device-name"/>
<keyword type="signal" name="The &quot;frame-dropped&quot; signal" link="gst-plugins-good-plugins-dv1394src.html#GstDV1394Src-frame-dropped"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dvdec.html#idp7706496"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dvdec.html#idp11012640"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dvdec.html#idp8849840"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dvdec.html#idp12175056"/>
<keyword type="struct" name="struct GstDVDec" link="gst-plugins-good-plugins-dvdec.html#GstDVDec-struct"/>
<keyword type="property" name="The &quot;clamp-chroma&quot; property" link="gst-plugins-good-plugins-dvdec.html#GstDVDec--clamp-chroma"/>
<keyword type="property" name="The &quot;clamp-luma&quot; property" link="gst-plugins-good-plugins-dvdec.html#GstDVDec--clamp-luma"/>
<keyword type="property" name="The &quot;drop-factor&quot; property" link="gst-plugins-good-plugins-dvdec.html#GstDVDec--drop-factor"/>
<keyword type="property" name="The &quot;quality&quot; property" link="gst-plugins-good-plugins-dvdec.html#GstDVDec--quality"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dvdemux.html#idp6693648"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dvdemux.html#idp2905680"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-dvdemux.html#idp7474944"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-dvdemux.html#idp6722896"/>
<keyword type="struct" name="struct GstDVDemux" link="gst-plugins-good-plugins-dvdemux.html#GstDVDemux-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-edgetv.html#idp3237120"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-edgetv.html#idp5831616"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-edgetv.html#idp2972464"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-edgetv.html#idp12439056"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-edgetv.html#idp10275664"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-edgetv.html#idp10316496"/>
<keyword type="struct" name="struct GstEdgeTV" link="gst-plugins-good-plugins-edgetv.html#GstEdgeTV-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-equalizer-10bands.html#idp6001760"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-equalizer-10bands.html#idp12779712"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-equalizer-10bands.html#idp8770448"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-equalizer-10bands.html#idp10222128"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-equalizer-10bands.html#idp8556016"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-equalizer-10bands.html#idp8821984"/>
<keyword type="struct" name="struct GstIirEqualizer10Bands" link="gst-plugins-good-plugins-equalizer-10bands.html#GstIirEqualizer10Bands-struct"/>
<keyword type="property" name="The &quot;band0&quot; property" link="gst-plugins-good-plugins-equalizer-10bands.html#GstIirEqualizer10Bands--band0"/>
<keyword type="property" name="The &quot;band1&quot; property" link="gst-plugins-good-plugins-equalizer-10bands.html#GstIirEqualizer10Bands--band1"/>
@@ -554,24 +554,24 @@
<keyword type="property" name="The &quot;band7&quot; property" link="gst-plugins-good-plugins-equalizer-10bands.html#GstIirEqualizer10Bands--band7"/>
<keyword type="property" name="The &quot;band8&quot; property" link="gst-plugins-good-plugins-equalizer-10bands.html#GstIirEqualizer10Bands--band8"/>
<keyword type="property" name="The &quot;band9&quot; property" link="gst-plugins-good-plugins-equalizer-10bands.html#GstIirEqualizer10Bands--band9"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-equalizer-3bands.html#idp7224000"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-equalizer-3bands.html#idp7630416"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-equalizer-3bands.html#idp13362720"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-equalizer-3bands.html#idp13000832"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-equalizer-3bands.html#idp9000672"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-equalizer-3bands.html#idp9527184"/>
<keyword type="struct" name="struct GstIirEqualizer3Bands" link="gst-plugins-good-plugins-equalizer-3bands.html#GstIirEqualizer3Bands-struct"/>
<keyword type="property" name="The &quot;band0&quot; property" link="gst-plugins-good-plugins-equalizer-3bands.html#GstIirEqualizer3Bands--band0"/>
<keyword type="property" name="The &quot;band1&quot; property" link="gst-plugins-good-plugins-equalizer-3bands.html#GstIirEqualizer3Bands--band1"/>
<keyword type="property" name="The &quot;band2&quot; property" link="gst-plugins-good-plugins-equalizer-3bands.html#GstIirEqualizer3Bands--band2"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-equalizer-nbands.html#idp13123008"/>
- <keyword type="" name="Example code" link="gst-plugins-good-plugins-equalizer-nbands.html#idp6721888"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-equalizer-nbands.html#idp13858176"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-equalizer-nbands.html#idp9036928"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-equalizer-nbands.html#idp9343600"/>
+ <keyword type="" name="Example code" link="gst-plugins-good-plugins-equalizer-nbands.html#idp11344784"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-equalizer-nbands.html#idp13323008"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-equalizer-nbands.html#idp8510016"/>
<keyword type="struct" name="struct GstIirEqualizerNBands" link="gst-plugins-good-plugins-equalizer-nbands.html#GstIirEqualizerNBands-struct"/>
<keyword type="property" name="The &quot;num-bands&quot; property" link="gst-plugins-good-plugins-equalizer-nbands.html#GstIirEqualizerNBands--num-bands"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flacdec.html#idp5857840"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flacdec.html#idp7924768"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flacdec.html#idp9814688"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flacdec.html#idp10445504"/>
<keyword type="struct" name="struct GstFlacDec" link="gst-plugins-good-plugins-flacdec.html#GstFlacDec-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flacenc.html#idp6488240"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flacenc.html#idp12478368"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flacenc.html#idp10074368"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flacenc.html#idp12523600"/>
<keyword type="struct" name="struct GstFlacEnc" link="gst-plugins-good-plugins-flacenc.html#GstFlacEnc-struct"/>
<keyword type="property" name="The &quot;blocksize&quot; property" link="gst-plugins-good-plugins-flacenc.html#GstFlacEnc--blocksize"/>
<keyword type="property" name="The &quot;escape-coding&quot; property" link="gst-plugins-good-plugins-flacenc.html#GstFlacEnc--escape-coding"/>
@@ -588,131 +588,131 @@
<keyword type="property" name="The &quot;streamable-subset&quot; property" link="gst-plugins-good-plugins-flacenc.html#GstFlacEnc--streamable-subset"/>
<keyword type="property" name="The &quot;padding&quot; property" link="gst-plugins-good-plugins-flacenc.html#GstFlacEnc--padding"/>
<keyword type="property" name="The &quot;seekpoints&quot; property" link="gst-plugins-good-plugins-flacenc.html#GstFlacEnc--seekpoints"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-flacparse.html#idp8029600"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flacparse.html#idp10572208"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flacparse.html#idp7222768"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-flacparse.html#idp2764208"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flacparse.html#idp5545744"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flacparse.html#idp7334672"/>
<keyword type="struct" name="struct GstFlacParse" link="gst-plugins-good-plugins-flacparse.html#GstFlacParse-struct"/>
<keyword type="property" name="The &quot;check-frame-checksums&quot; property" link="gst-plugins-good-plugins-flacparse.html#GstFlacParse--check-frame-checksums"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flactag.html#idp10581568"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flactag.html#idp5290368"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flactag.html#idp11736336"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flactag.html#idp6292928"/>
<keyword type="struct" name="struct GstFlacTag" link="gst-plugins-good-plugins-flactag.html#GstFlacTag-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-flvdemux.html#idp8004272"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flvdemux.html#idp10670784"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flvdemux.html#idp11370464"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-flvdemux.html#idp13063792"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flvdemux.html#idp13394000"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flvdemux.html#idp12650912"/>
<keyword type="struct" name="struct GstFlvDemux" link="gst-plugins-good-plugins-flvdemux.html#GstFlvDemux-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-flvmux.html#idp9551008"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flvmux.html#idp9844640"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flvmux.html#idp7407392"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-flvmux.html#idp12809968"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flvmux.html#idp7317872"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flvmux.html#idp11315616"/>
<keyword type="struct" name="GstFlvMux" link="gst-plugins-good-plugins-flvmux.html#GstFlvMux-struct"/>
<keyword type="property" name="The &quot;is-live&quot; property" link="gst-plugins-good-plugins-flvmux.html#GstFlvMux--is-live"/>
<keyword type="property" name="The &quot;streamable&quot; property" link="gst-plugins-good-plugins-flvmux.html#GstFlvMux--streamable"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flxdec.html#idp5747920"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flxdec.html#idp12874384"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-flxdec.html#idp11795104"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-flxdec.html#idp9352112"/>
<keyword type="struct" name="struct GstFlxDec" link="gst-plugins-good-plugins-flxdec.html#GstFlxDec-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-gamma.html#idp8112064"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-gamma.html#idp13238736"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-gamma.html#idp11657680"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-gamma.html#idp14155680"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-gamma.html#idp12153008"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-gamma.html#idp13311216"/>
<keyword type="struct" name="struct GstGamma" link="gst-plugins-good-plugins-gamma.html#GstGamma-struct"/>
<keyword type="property" name="The &quot;gamma&quot; property" link="gst-plugins-good-plugins-gamma.html#GstGamma--gamma"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-gdkpixbufsink.html#idp14327136"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-gdkpixbufsink.html#idp13834800"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-gdkpixbufsink.html#idp5864256"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-gdkpixbufsink.html#idp13695120"/>
<keyword type="struct" name="struct GstGdkPixbufSink" link="gst-plugins-good-plugins-gdkpixbufsink.html#GstGdkPixbufSink-struct"/>
<keyword type="property" name="The &quot;last-pixbuf&quot; property" link="gst-plugins-good-plugins-gdkpixbufsink.html#GstGdkPixbufSink--last-pixbuf"/>
<keyword type="property" name="The &quot;send-messages&quot; property" link="gst-plugins-good-plugins-gdkpixbufsink.html#GstGdkPixbufSink--send-messages"/>
<keyword type="property" name="The &quot;post-messages&quot; property" link="gst-plugins-good-plugins-gdkpixbufsink.html#GstGdkPixbufSink--post-messages"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-goom.html#idp8075696"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-goom.html#idp12777376"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-goom.html#idp10800704"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-goom.html#idp10123200"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-goom.html#idp7175328"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-goom.html#idp9674480"/>
<keyword type="struct" name="struct GstGoom" link="gst-plugins-good-plugins-goom.html#GstGoom-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-goom2k1.html#idp7213136"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-goom2k1.html#idp10733168"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-goom2k1.html#idp7664208"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-goom2k1.html#idp13150016"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-goom2k1.html#idp12118384"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-goom2k1.html#idp11293504"/>
<keyword type="struct" name="struct GstGoom" link="gst-plugins-good-plugins-goom2k1.html#GstGoom-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-hdv1394src.html#idp11067264"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-hdv1394src.html#idp12878352"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-hdv1394src.html#idp13051264"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-hdv1394src.html#idp14934080"/>
<keyword type="struct" name="struct GstHDV1394Src" link="gst-plugins-good-plugins-hdv1394src.html#GstHDV1394Src-struct"/>
<keyword type="property" name="The &quot;channel&quot; property" link="gst-plugins-good-plugins-hdv1394src.html#GstHDV1394Src--channel"/>
<keyword type="property" name="The &quot;device-name&quot; property" link="gst-plugins-good-plugins-hdv1394src.html#GstHDV1394Src--device-name"/>
<keyword type="property" name="The &quot;guid&quot; property" link="gst-plugins-good-plugins-hdv1394src.html#GstHDV1394Src--guid"/>
<keyword type="property" name="The &quot;port&quot; property" link="gst-plugins-good-plugins-hdv1394src.html#GstHDV1394Src--port"/>
<keyword type="property" name="The &quot;use-avc&quot; property" link="gst-plugins-good-plugins-hdv1394src.html#GstHDV1394Src--use-avc"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-icydemux.html#idp6004736"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-icydemux.html#idp12253680"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-icydemux.html#idp10512640"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-icydemux.html#idp8648320"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-icydemux.html#idp8214832"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-icydemux.html#idp8184640"/>
<keyword type="struct" name="struct GstICYDemux" link="gst-plugins-good-plugins-icydemux.html#GstICYDemux-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-id3demux.html#idp13694928"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-id3demux.html#idp8748560"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-id3demux.html#idp8987504"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-id3demux.html#idp6543616"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-id3demux.html#idp11470576"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-id3demux.html#idp11126928"/>
<keyword type="struct" name="struct GstID3Demux" link="gst-plugins-good-plugins-id3demux.html#GstID3Demux-struct"/>
<keyword type="property" name="The &quot;prefer-v1&quot; property" link="gst-plugins-good-plugins-id3demux.html#GstID3Demux--prefer-v1"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-id3v2mux.html#idp10079808"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-id3v2mux.html#idp9127024"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-id3v2mux.html#idp12495264"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-id3v2mux.html#idp11509680"/>
<keyword type="struct" name="struct GstId3v2Mux" link="gst-plugins-good-plugins-id3v2mux.html#GstId3v2Mux-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-imagefreeze.html#idp10208480"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-imagefreeze.html#idp7996512"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-imagefreeze.html#idp10727264"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-imagefreeze.html#idp7252208"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-imagefreeze.html#idp8335312"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-imagefreeze.html#idp11137552"/>
<keyword type="struct" name="struct GstImageFreeze" link="gst-plugins-good-plugins-imagefreeze.html#GstImageFreeze-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-interleave.html#idp13974512"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-interleave.html#idp7736688"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-interleave.html#idp6771600"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-interleave.html#idp10269904"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-interleave.html#idp13049120"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-interleave.html#idp12919808"/>
<keyword type="struct" name="struct GstInterleave" link="gst-plugins-good-plugins-interleave.html#GstInterleave-struct"/>
<keyword type="property" name="The &quot;channel-positions&quot; property" link="gst-plugins-good-plugins-interleave.html#GstInterleave--channel-positions"/>
<keyword type="property" name="The &quot;channel-positions-from-input&quot; property" link="gst-plugins-good-plugins-interleave.html#GstInterleave--channel-positions-from-input"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-ismlmux.html#idp9132352"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-ismlmux.html#idp11817184"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-ismlmux.html#idp9575776"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jackaudiosrc.html#idp11949296"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jackaudiosrc.html#idp13157344"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-ismlmux.html#idp7985504"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-ismlmux.html#idp5834064"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-ismlmux.html#idp11352656"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jackaudiosrc.html#idp15534720"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jackaudiosrc.html#idp6253328"/>
<keyword type="struct" name="struct GstJackAudioSrc" link="gst-plugins-good-plugins-jackaudiosrc.html#GstJackAudioSrc-struct"/>
<keyword type="property" name="The &quot;client&quot; property" link="gst-plugins-good-plugins-jackaudiosrc.html#GstJackAudioSrc--client"/>
<keyword type="property" name="The &quot;connect&quot; property" link="gst-plugins-good-plugins-jackaudiosrc.html#GstJackAudioSrc--connect"/>
<keyword type="property" name="The &quot;server&quot; property" link="gst-plugins-good-plugins-jackaudiosrc.html#GstJackAudioSrc--server"/>
<keyword type="property" name="The &quot;client-name&quot; property" link="gst-plugins-good-plugins-jackaudiosrc.html#GstJackAudioSrc--client-name"/>
<keyword type="property" name="The &quot;transport&quot; property" link="gst-plugins-good-plugins-jackaudiosrc.html#GstJackAudioSrc--transport"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jackaudiosink.html#idp14272624"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jackaudiosink.html#idp10322672"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jackaudiosink.html#idp9308960"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jackaudiosink.html#idp6585248"/>
<keyword type="struct" name="struct GstJackAudioSink" link="gst-plugins-good-plugins-jackaudiosink.html#GstJackAudioSink-struct"/>
<keyword type="property" name="The &quot;client&quot; property" link="gst-plugins-good-plugins-jackaudiosink.html#GstJackAudioSink--client"/>
<keyword type="property" name="The &quot;connect&quot; property" link="gst-plugins-good-plugins-jackaudiosink.html#GstJackAudioSink--connect"/>
<keyword type="property" name="The &quot;server&quot; property" link="gst-plugins-good-plugins-jackaudiosink.html#GstJackAudioSink--server"/>
<keyword type="property" name="The &quot;client-name&quot; property" link="gst-plugins-good-plugins-jackaudiosink.html#GstJackAudioSink--client-name"/>
<keyword type="property" name="The &quot;transport&quot; property" link="gst-plugins-good-plugins-jackaudiosink.html#GstJackAudioSink--transport"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jpegdec.html#idp13242736"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jpegdec.html#idp14384176"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jpegdec.html#idp11873088"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jpegdec.html#idp11533216"/>
<keyword type="struct" name="struct GstJpegDec" link="gst-plugins-good-plugins-jpegdec.html#GstJpegDec-struct"/>
<keyword type="property" name="The &quot;idct-method&quot; property" link="gst-plugins-good-plugins-jpegdec.html#GstJpegDec--idct-method"/>
<keyword type="property" name="The &quot;max-errors&quot; property" link="gst-plugins-good-plugins-jpegdec.html#GstJpegDec--max-errors"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jpegenc.html#idp13076896"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jpegenc.html#idp9981728"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-jpegenc.html#idp13008368"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-jpegenc.html#idp14547232"/>
<keyword type="struct" name="struct GstJpegEnc" link="gst-plugins-good-plugins-jpegenc.html#GstJpegEnc-struct"/>
<keyword type="property" name="The &quot;quality&quot; property" link="gst-plugins-good-plugins-jpegenc.html#GstJpegEnc--quality"/>
<keyword type="property" name="The &quot;idct-method&quot; property" link="gst-plugins-good-plugins-jpegenc.html#GstJpegEnc--idct-method"/>
<keyword type="signal" name="The &quot;frame-encoded&quot; signal" link="gst-plugins-good-plugins-jpegenc.html#GstJpegEnc-frame-encoded"/>
- <keyword type="" name="Example application" link="gst-plugins-good-plugins-level.html#idp12940592"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-level.html#idp15841856"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-level.html#idp14134880"/>
+ <keyword type="" name="Example application" link="gst-plugins-good-plugins-level.html#idp11319328"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-level.html#idp13232352"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-level.html#idp15033408"/>
<keyword type="struct" name="struct GstLevel" link="gst-plugins-good-plugins-level.html#GstLevel-struct"/>
<keyword type="property" name="The &quot;interval&quot; property" link="gst-plugins-good-plugins-level.html#GstLevel--interval"/>
<keyword type="property" name="The &quot;message&quot; property" link="gst-plugins-good-plugins-level.html#GstLevel--message"/>
<keyword type="property" name="The &quot;peak-falloff&quot; property" link="gst-plugins-good-plugins-level.html#GstLevel--peak-falloff"/>
<keyword type="property" name="The &quot;peak-ttl&quot; property" link="gst-plugins-good-plugins-level.html#GstLevel--peak-ttl"/>
<keyword type="property" name="The &quot;post-messages&quot; property" link="gst-plugins-good-plugins-level.html#GstLevel--post-messages"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-matroskamux.html#idp14334992"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-matroskamux.html#idp9168064"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-matroskamux.html#idp12476352"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-matroskamux.html#idp14733856"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-matroskamux.html#idp6240032"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-matroskamux.html#idp11870752"/>
<keyword type="struct" name="GstMatroskaMux" link="gst-plugins-good-plugins-matroskamux.html#GstMatroskaMux-struct"/>
<keyword type="property" name="The &quot;writing-app&quot; property" link="gst-plugins-good-plugins-matroskamux.html#GstMatroskaMux--writing-app"/>
<keyword type="property" name="The &quot;version&quot; property" link="gst-plugins-good-plugins-matroskamux.html#GstMatroskaMux--version"/>
<keyword type="property" name="The &quot;min-index-interval&quot; property" link="gst-plugins-good-plugins-matroskamux.html#GstMatroskaMux--min-index-interval"/>
<keyword type="property" name="The &quot;streamable&quot; property" link="gst-plugins-good-plugins-matroskamux.html#GstMatroskaMux--streamable"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-matroskademux.html#idp14644768"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-matroskademux.html#idp14025808"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-matroskademux.html#idp9089184"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-matroskademux.html#idp7996064"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-matroskademux.html#idp7125360"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-matroskademux.html#idp2820400"/>
<keyword type="struct" name="GstMatroskaDemux" link="gst-plugins-good-plugins-matroskademux.html#GstMatroskaDemux-struct"/>
<keyword type="property" name="The &quot;max-gap-time&quot; property" link="gst-plugins-good-plugins-matroskademux.html#GstMatroskaDemux--max-gap-time"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-mj2mux.html#idp14752432"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mj2mux.html#idp14755488"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mj2mux.html#idp13537184"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-mj2mux.html#idp13433456"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mj2mux.html#idp13436512"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mj2mux.html#idp14586752"/>
<keyword type="struct" name="GstMJ2Mux" link="gst-plugins-good-plugins-mj2mux.html#GstMJ2Mux-struct"/>
<keyword type="property" name="The &quot;dts-method&quot; property" link="gst-plugins-good-plugins-mj2mux.html#GstMJ2Mux--dts-method"/>
<keyword type="property" name="The &quot;faststart&quot; property" link="gst-plugins-good-plugins-mj2mux.html#GstMJ2Mux--faststart"/>
@@ -723,17 +723,17 @@
<keyword type="property" name="The &quot;presentation-time&quot; property" link="gst-plugins-good-plugins-mj2mux.html#GstMJ2Mux--presentation-time"/>
<keyword type="property" name="The &quot;streamable&quot; property" link="gst-plugins-good-plugins-mj2mux.html#GstMJ2Mux--streamable"/>
<keyword type="property" name="The &quot;trak-timescale&quot; property" link="gst-plugins-good-plugins-mj2mux.html#GstMJ2Mux--trak-timescale"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-monoscope.html#idp10969296"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-monoscope.html#idp13230656"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-monoscope.html#idp7571392"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-monoscope.html#idp6989408"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-monoscope.html#idp5566528"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-monoscope.html#idp6803888"/>
<keyword type="struct" name="struct GstMonoscope" link="gst-plugins-good-plugins-monoscope.html#GstMonoscope-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-mpegaudioparse.html#idp16243328"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mpegaudioparse.html#idp7740160"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mpegaudioparse.html#idp12269616"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-mpegaudioparse.html#idp12540400"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mpegaudioparse.html#idp10172784"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mpegaudioparse.html#idp7966880"/>
<keyword type="struct" name="struct GstMpegAudioParse" link="gst-plugins-good-plugins-mpegaudioparse.html#GstMpegAudioParse-struct"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-mp4mux.html#idp10367840"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mp4mux.html#idp13531488"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mp4mux.html#idp14918784"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-mp4mux.html#idp14816112"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mp4mux.html#idp15558096"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mp4mux.html#idp14464224"/>
<keyword type="typedef" name="GstMP4Mux" link="gst-plugins-good-plugins-mp4mux.html#GstMP4Mux"/>
<keyword type="property" name="The &quot;dts-method&quot; property" link="gst-plugins-good-plugins-mp4mux.html#GstMP4Mux--dts-method"/>
<keyword type="property" name="The &quot;faststart&quot; property" link="gst-plugins-good-plugins-mp4mux.html#GstMP4Mux--faststart"/>
@@ -744,16 +744,16 @@
<keyword type="property" name="The &quot;presentation-time&quot; property" link="gst-plugins-good-plugins-mp4mux.html#GstMP4Mux--presentation-time"/>
<keyword type="property" name="The &quot;streamable&quot; property" link="gst-plugins-good-plugins-mp4mux.html#GstMP4Mux--streamable"/>
<keyword type="property" name="The &quot;trak-timescale&quot; property" link="gst-plugins-good-plugins-mp4mux.html#GstMP4Mux--trak-timescale"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mulawdec.html#idp12608960"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mulawdec.html#idp8258704"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mulawdec.html#idp11965072"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mulawdec.html#idp11548400"/>
<keyword type="struct" name="struct GstMuLawDec" link="gst-plugins-good-plugins-mulawdec.html#GstMuLawDec-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mulawenc.html#idp10538176"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mulawenc.html#idp5782128"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-mulawenc.html#idp8305952"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-mulawenc.html#idp9222000"/>
<keyword type="struct" name="struct GstMuLawDec" link="gst-plugins-good-plugins-mulawenc.html#GstMuLawDec-struct"/>
<keyword type="struct" name="struct GstMuLawEnc" link="gst-plugins-good-plugins-mulawenc.html#GstMuLawEnc"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-multifilesink.html#idp15687424"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multifilesink.html#idp15401296"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multifilesink.html#idp15951312"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-multifilesink.html#idp15367184"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multifilesink.html#idp12742496"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multifilesink.html#idp16493536"/>
<keyword type="struct" name="struct GstMultiFileSink" link="gst-plugins-good-plugins-multifilesink.html#GstMultiFileSink-struct"/>
<keyword type="enum" name="enum GstMultiFileSinkNext" link="gst-plugins-good-plugins-multifilesink.html#GstMultiFileSinkNext"/>
<keyword type="property" name="The &quot;location&quot; property" link="gst-plugins-good-plugins-multifilesink.html#GstMultiFileSink--location"/>
@@ -762,9 +762,9 @@
<keyword type="property" name="The &quot;post-messages&quot; property" link="gst-plugins-good-plugins-multifilesink.html#GstMultiFileSink--post-messages"/>
<keyword type="property" name="The &quot;max-files&quot; property" link="gst-plugins-good-plugins-multifilesink.html#GstMultiFileSink--max-files"/>
<keyword type="property" name="The &quot;max-file-size&quot; property" link="gst-plugins-good-plugins-multifilesink.html#GstMultiFileSink--max-file-size"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-multifilesrc.html#idp6917552"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multifilesrc.html#idp14719936"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multifilesrc.html#idp15852592"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-multifilesrc.html#idp12884848"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multifilesrc.html#idp13998288"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multifilesrc.html#idp14398880"/>
<keyword type="struct" name="struct GstMultiFileSrc" link="gst-plugins-good-plugins-multifilesrc.html#GstMultiFileSrc-struct"/>
<keyword type="property" name="The &quot;caps&quot; property" link="gst-plugins-good-plugins-multifilesrc.html#GstMultiFileSrc--caps"/>
<keyword type="property" name="The &quot;index&quot; property" link="gst-plugins-good-plugins-multifilesrc.html#GstMultiFileSrc--index"/>
@@ -772,20 +772,20 @@
<keyword type="property" name="The &quot;loop&quot; property" link="gst-plugins-good-plugins-multifilesrc.html#GstMultiFileSrc--loop"/>
<keyword type="property" name="The &quot;start-index&quot; property" link="gst-plugins-good-plugins-multifilesrc.html#GstMultiFileSrc--start-index"/>
<keyword type="property" name="The &quot;stop-index&quot; property" link="gst-plugins-good-plugins-multifilesrc.html#GstMultiFileSrc--stop-index"/>
- <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-multipartdemux.html#idp7623712"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multipartdemux.html#idp16143408"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multipartdemux.html#idp12469088"/>
+ <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-multipartdemux.html#idp11735264"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multipartdemux.html#idp13669296"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multipartdemux.html#idp15394048"/>
<keyword type="struct" name="struct GstMultipartDemux" link="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux-struct"/>
<keyword type="property" name="The &quot;autoscan&quot; property" link="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux--autoscan"/>
<keyword type="property" name="The &quot;boundary&quot; property" link="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux--boundary"/>
<keyword type="property" name="The &quot;single-stream&quot; property" link="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux--single-stream"/>
- <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-multipartmux.html#idp15404272"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multipartmux.html#idp16080048"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multipartmux.html#idp13513024"/>
+ <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-multipartmux.html#idp10624912"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multipartmux.html#idp6460224"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multipartmux.html#idp11411328"/>
<keyword type="struct" name="struct GstMultipartMux" link="gst-plugins-good-plugins-multipartmux.html#GstMultipartMux-struct"/>
<keyword type="property" name="The &quot;boundary&quot; property" link="gst-plugins-good-plugins-multipartmux.html#GstMultipartMux--boundary"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multiudpsink.html#idp14049856"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multiudpsink.html#idp16449600"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-multiudpsink.html#idp17076944"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-multiudpsink.html#idp16463072"/>
<keyword type="struct" name="struct GstMultiUDPSink" link="gst-plugins-good-plugins-multiudpsink.html#GstMultiUDPSink-struct"/>
<keyword type="property" name="The &quot;bytes-served&quot; property" link="gst-plugins-good-plugins-multiudpsink.html#GstMultiUDPSink--bytes-served"/>
<keyword type="property" name="The &quot;bytes-to-serve&quot; property" link="gst-plugins-good-plugins-multiudpsink.html#GstMultiUDPSink--bytes-to-serve"/>
@@ -815,65 +815,65 @@
<keyword type="signal" name="The &quot;client-removed&quot; signal" link="gst-plugins-good-plugins-multiudpsink.html#GstMultiUDPSink-client-removed"/>
<keyword type="signal" name="The &quot;get-stats&quot; signal" link="gst-plugins-good-plugins-multiudpsink.html#GstMultiUDPSink-get-stats"/>
<keyword type="signal" name="The &quot;remove&quot; signal" link="gst-plugins-good-plugins-multiudpsink.html#GstMultiUDPSink-remove"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-optv.html#idp14597760"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-optv.html#idp10356160"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-optv.html#idp13586944"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-optv.html#idp15304384"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-optv.html#idp10661632"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-optv.html#idp15977456"/>
<keyword type="struct" name="struct GstOpTV" link="gst-plugins-good-plugins-optv.html#GstOpTV-struct"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-optv.html#GstOpTV--mode"/>
<keyword type="property" name="The &quot;speed&quot; property" link="gst-plugins-good-plugins-optv.html#GstOpTV--speed"/>
<keyword type="property" name="The &quot;threshold&quot; property" link="gst-plugins-good-plugins-optv.html#GstOpTV--threshold"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-oss4sink.html#idp13517072"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-oss4sink.html#idp13642496"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-oss4sink.html#idp14458704"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-oss4sink.html#idp14605424"/>
<keyword type="struct" name="struct GstOss4Sink" link="gst-plugins-good-plugins-oss4sink.html#GstOss4Sink-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-oss4sink.html#GstOss4Sink--device"/>
<keyword type="property" name="The &quot;device-name&quot; property" link="gst-plugins-good-plugins-oss4sink.html#GstOss4Sink--device-name"/>
<keyword type="property" name="The &quot;mute&quot; property" link="gst-plugins-good-plugins-oss4sink.html#GstOss4Sink--mute"/>
<keyword type="property" name="The &quot;volume&quot; property" link="gst-plugins-good-plugins-oss4sink.html#GstOss4Sink--volume"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-oss4src.html#idp13323888"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-oss4src.html#idp12021600"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-oss4src.html#idp2782352"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-oss4src.html#idp14070128"/>
<keyword type="struct" name="struct GstOss4Source" link="gst-plugins-good-plugins-oss4src.html#GstOss4Source-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-oss4src.html#GstOss4Source--device"/>
<keyword type="property" name="The &quot;device-name&quot; property" link="gst-plugins-good-plugins-oss4src.html#GstOss4Source--device-name"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osssink.html#idp11615264"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osssink.html#idp15269472"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osssink.html#idp15825840"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osssink.html#idp17663824"/>
<keyword type="struct" name="struct GstOssSink" link="gst-plugins-good-plugins-osssink.html#GstOssSink-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-osssink.html#GstOssSink--device"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osssrc.html#idp13759328"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osssrc.html#idp13546272"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osssrc.html#idp15693712"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osssrc.html#idp13463152"/>
<keyword type="struct" name="struct GstOssSrc" link="gst-plugins-good-plugins-osssrc.html#GstOssSrc-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-osssrc.html#GstOssSrc--device"/>
<keyword type="property" name="The &quot;device-name&quot; property" link="gst-plugins-good-plugins-osssrc.html#GstOssSrc--device-name"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osxaudiosink.html#idp14049248"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osxaudiosink.html#idp13258704"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osxaudiosink.html#idp14715008"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osxaudiosink.html#idp10352784"/>
<keyword type="struct" name="struct GstOsxAudioSink" link="gst-plugins-good-plugins-osxaudiosink.html#GstOsxAudioSink"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-osxaudiosink.html#GstOsxAudioSink--device"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osxaudiosrc.html#idp10918048"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osxaudiosrc.html#idp13610688"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osxaudiosrc.html#idp2899664"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osxaudiosrc.html#idp12659680"/>
<keyword type="struct" name="struct GstOsxAudioSrc" link="gst-plugins-good-plugins-osxaudiosrc.html#GstOsxAudioSrc"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-osxaudiosrc.html#GstOsxAudioSrc--device"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osxvideosink.html#idp14698720"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osxvideosink.html#idp12578672"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-osxvideosink.html#idp10376096"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-osxvideosink.html#idp10126160"/>
<keyword type="struct" name="struct GstOSXVideoSink" link="gst-plugins-good-plugins-osxvideosink.html#GstOSXVideoSink"/>
<keyword type="property" name="The &quot;embed&quot; property" link="gst-plugins-good-plugins-osxvideosink.html#GstOSXVideoSink--embed"/>
<keyword type="property" name="The &quot;fullscreen&quot; property" link="gst-plugins-good-plugins-osxvideosink.html#GstOSXVideoSink--fullscreen"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pngdec.html#idp13556896"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pngdec.html#idp8619616"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pngdec.html#idp13838544"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pngdec.html#idp9671088"/>
<keyword type="struct" name="struct GstPngDec" link="gst-plugins-good-plugins-pngdec.html#GstPngDec-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pngenc.html#idp16530336"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pngenc.html#idp15946880"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pngenc.html#idp13239744"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pngenc.html#idp13830192"/>
<keyword type="struct" name="struct GstPngEnc" link="gst-plugins-good-plugins-pngenc.html#GstPngEnc-struct"/>
<keyword type="property" name="The &quot;compression-level&quot; property" link="gst-plugins-good-plugins-pngenc.html#GstPngEnc--compression-level"/>
<keyword type="property" name="The &quot;snapshot&quot; property" link="gst-plugins-good-plugins-pngenc.html#GstPngEnc--snapshot"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-progressreport.html#idp14892784"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-progressreport.html#idp13902208"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-progressreport.html#idp12412560"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-progressreport.html#idp9840784"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-progressreport.html#idp17357808"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-progressreport.html#idp17995904"/>
<keyword type="struct" name="struct GstProgressReport" link="gst-plugins-good-plugins-progressreport.html#GstProgressReport-struct"/>
<keyword type="property" name="The &quot;silent&quot; property" link="gst-plugins-good-plugins-progressreport.html#GstProgressReport--silent"/>
<keyword type="property" name="The &quot;update-freq&quot; property" link="gst-plugins-good-plugins-progressreport.html#GstProgressReport--update-freq"/>
<keyword type="property" name="The &quot;format&quot; property" link="gst-plugins-good-plugins-progressreport.html#GstProgressReport--format"/>
<keyword type="property" name="The &quot;do-query&quot; property" link="gst-plugins-good-plugins-progressreport.html#GstProgressReport--do-query"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pulsesink.html#idp5958720"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pulsesink.html#idp10975536"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pulsesink.html#idp17560496"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pulsesink.html#idp15414768"/>
<keyword type="struct" name="struct GstPulseSink" link="gst-plugins-good-plugins-pulsesink.html#GstPulseSink-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-pulsesink.html#GstPulseSink--device"/>
<keyword type="property" name="The &quot;server&quot; property" link="gst-plugins-good-plugins-pulsesink.html#GstPulseSink--server"/>
@@ -883,8 +883,8 @@
<keyword type="property" name="The &quot;client&quot; property" link="gst-plugins-good-plugins-pulsesink.html#GstPulseSink--client"/>
<keyword type="property" name="The &quot;stream-properties&quot; property" link="gst-plugins-good-plugins-pulsesink.html#GstPulseSink--stream-properties"/>
<keyword type="property" name="The &quot;client-name&quot; property" link="gst-plugins-good-plugins-pulsesink.html#GstPulseSink--client-name"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pulsesrc.html#idp11232992"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pulsesrc.html#idp15340320"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-pulsesrc.html#idp16265712"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-pulsesrc.html#idp17502160"/>
<keyword type="struct" name="struct GstPulseSrc" link="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--device"/>
<keyword type="property" name="The &quot;server&quot; property" link="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--server"/>
@@ -895,19 +895,19 @@
<keyword type="property" name="The &quot;source-output-index&quot; property" link="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--source-output-index"/>
<keyword type="property" name="The &quot;volume&quot; property" link="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--volume"/>
<keyword type="property" name="The &quot;client-name&quot; property" link="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--client-name"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-quarktv.html#idp15943808"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-quarktv.html#idp2854192"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-quarktv.html#idp14819328"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-quarktv.html#idp15445472"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-quarktv.html#idp8746064"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-quarktv.html#idp15104272"/>
<keyword type="struct" name="struct GstQuarkTV" link="gst-plugins-good-plugins-quarktv.html#GstQuarkTV-struct"/>
<keyword type="property" name="The &quot;planes&quot; property" link="gst-plugins-good-plugins-quarktv.html#GstQuarkTV--planes"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-qtdemux.html#idp13989168"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-qtdemux.html#idp17079568"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-qtdemux.html#idp17967088"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-qtdemux.html#idp11034640"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-qtdemux.html#idp15752528"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-qtdemux.html#idp16393680"/>
<keyword type="struct" name="struct GstQTDemux" link="gst-plugins-good-plugins-qtdemux.html#GstQTDemux-struct"/>
<keyword type="signal" name="The &quot;got-redirect&quot; signal" link="gst-plugins-good-plugins-qtdemux.html#GstQTDemux-got-redirect"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-qtmux.html#idp15206944"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-qtmux.html#idp14124592"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-qtmux.html#idp17541040"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-qtmux.html#idp14707760"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-qtmux.html#idp10706192"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-qtmux.html#idp15020240"/>
<keyword type="struct" name="struct GstQTMux" link="gst-plugins-good-plugins-qtmux.html#GstQTMux-struct"/>
<keyword type="property" name="The &quot;dts-method&quot; property" link="gst-plugins-good-plugins-qtmux.html#GstQTMux--dts-method"/>
<keyword type="property" name="The &quot;faststart&quot; property" link="gst-plugins-good-plugins-qtmux.html#GstQTMux--faststart"/>
@@ -918,9 +918,9 @@
<keyword type="property" name="The &quot;presentation-time&quot; property" link="gst-plugins-good-plugins-qtmux.html#GstQTMux--presentation-time"/>
<keyword type="property" name="The &quot;streamable&quot; property" link="gst-plugins-good-plugins-qtmux.html#GstQTMux--streamable"/>
<keyword type="property" name="The &quot;trak-timescale&quot; property" link="gst-plugins-good-plugins-qtmux.html#GstQTMux--trak-timescale"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-qtmoovrecover.html#idp13633488"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-qtmoovrecover.html#idp16693408"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-qtmoovrecover.html#idp11609568"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-qtmoovrecover.html#idp14630352"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-qtmoovrecover.html#idp14945360"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-qtmoovrecover.html#idp16553664"/>
<keyword type="struct" name="struct GstQTMoovRecover" link="gst-plugins-good-plugins-qtmoovrecover.html#GstQTMoovRecover-struct"/>
<keyword type="struct" name="struct GstQTMoovRecoverClass" link="gst-plugins-good-plugins-qtmoovrecover.html#GstQTMoovRecoverClass"/>
<keyword type="function" name="gst_qt_moov_recover_get_type ()" link="gst-plugins-good-plugins-qtmoovrecover.html#gst-qt-moov-recover-get-type"/>
@@ -929,37 +929,37 @@
<keyword type="property" name="The &quot;faststart-mode&quot; property" link="gst-plugins-good-plugins-qtmoovrecover.html#GstQTMoovRecover--faststart-mode"/>
<keyword type="property" name="The &quot;fixed-output&quot; property" link="gst-plugins-good-plugins-qtmoovrecover.html#GstQTMoovRecover--fixed-output"/>
<keyword type="property" name="The &quot;recovery-input&quot; property" link="gst-plugins-good-plugins-qtmoovrecover.html#GstQTMoovRecover--recovery-input"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-radioactv.html#idp16174128"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-radioactv.html#idp15350720"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-radioactv.html#idp15266832"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-radioactv.html#idp19119904"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-radioactv.html#idp9299584"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-radioactv.html#idp17763520"/>
<keyword type="struct" name="struct GstRadioacTV" link="gst-plugins-good-plugins-radioactv.html#GstRadioacTV-struct"/>
<keyword type="property" name="The &quot;color&quot; property" link="gst-plugins-good-plugins-radioactv.html#GstRadioacTV--color"/>
<keyword type="property" name="The &quot;interval&quot; property" link="gst-plugins-good-plugins-radioactv.html#GstRadioacTV--interval"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-radioactv.html#GstRadioacTV--mode"/>
<keyword type="property" name="The &quot;trigger&quot; property" link="gst-plugins-good-plugins-radioactv.html#GstRadioacTV--trigger"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-revtv.html#idp15351008"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-revtv.html#idp13992896"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-revtv.html#idp17971680"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-revtv.html#idp14027136"/>
<keyword type="struct" name="struct GstRevTV" link="gst-plugins-good-plugins-revtv.html#GstRevTV-struct"/>
<keyword type="property" name="The &quot;delay&quot; property" link="gst-plugins-good-plugins-revtv.html#GstRevTV--delay"/>
<keyword type="property" name="The &quot;gain&quot; property" link="gst-plugins-good-plugins-revtv.html#GstRevTV--gain"/>
<keyword type="property" name="The &quot;linespace&quot; property" link="gst-plugins-good-plugins-revtv.html#GstRevTV--linespace"/>
- <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-rganalysis.html#idp13417664"/>
- <keyword type="" name="Acknowledgements" link="gst-plugins-good-plugins-rganalysis.html#idp17562416"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rganalysis.html#idp17435440"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rganalysis.html#idp16218992"/>
+ <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-rganalysis.html#idp16257424"/>
+ <keyword type="" name="Acknowledgements" link="gst-plugins-good-plugins-rganalysis.html#idp15399744"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rganalysis.html#idp17658128"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rganalysis.html#idp19113808"/>
<keyword type="struct" name="struct GstRgAnalysis" link="gst-plugins-good-plugins-rganalysis.html#GstRgAnalysis-struct"/>
<keyword type="property" name="The &quot;forced&quot; property" link="gst-plugins-good-plugins-rganalysis.html#GstRgAnalysis--forced"/>
<keyword type="property" name="The &quot;num-tracks&quot; property" link="gst-plugins-good-plugins-rganalysis.html#GstRgAnalysis--num-tracks"/>
<keyword type="property" name="The &quot;reference-level&quot; property" link="gst-plugins-good-plugins-rganalysis.html#GstRgAnalysis--reference-level"/>
<keyword type="property" name="The &quot;message&quot; property" link="gst-plugins-good-plugins-rganalysis.html#GstRgAnalysis--message"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rglimiter.html#idp17450096"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rglimiter.html#idp8747936"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rglimiter.html#idp18898784"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rglimiter.html#idp14009856"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rglimiter.html#idp16277152"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rglimiter.html#idp15866256"/>
<keyword type="struct" name="struct GstRgLimiter" link="gst-plugins-good-plugins-rglimiter.html#GstRgLimiter-struct"/>
<keyword type="property" name="The &quot;enabled&quot; property" link="gst-plugins-good-plugins-rglimiter.html#GstRgLimiter--enabled"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rgvolume.html#idp19002800"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rgvolume.html#idp17815248"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rgvolume.html#idp14617808"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rgvolume.html#idp13112720"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rgvolume.html#idp17968576"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rgvolume.html#idp14656864"/>
<keyword type="struct" name="struct GstRgVolume" link="gst-plugins-good-plugins-rgvolume.html#GstRgVolume-struct"/>
<keyword type="property" name="The &quot;album-mode&quot; property" link="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--album-mode"/>
<keyword type="property" name="The &quot;fallback-gain&quot; property" link="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--fallback-gain"/>
@@ -967,14 +967,14 @@
<keyword type="property" name="The &quot;pre-amp&quot; property" link="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--pre-amp"/>
<keyword type="property" name="The &quot;result-gain&quot; property" link="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--result-gain"/>
<keyword type="property" name="The &quot;target-gain&quot; property" link="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--target-gain"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rippletv.html#idp18308720"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rippletv.html#idp14880432"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rippletv.html#idp17911536"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rippletv.html#idp17710736"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rippletv.html#idp6396880"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rippletv.html#idp16630976"/>
<keyword type="struct" name="struct GstRippleTV" link="gst-plugins-good-plugins-rippletv.html#GstRippleTV-struct"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-rippletv.html#GstRippleTV--mode"/>
<keyword type="property" name="The &quot;reset&quot; property" link="gst-plugins-good-plugins-rippletv.html#GstRippleTV--reset"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpdec.html#idp12935072"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpdec.html#idp14688224"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpdec.html#idp18373456"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpdec.html#idp15381312"/>
<keyword type="struct" name="struct GstRTPDec" link="gst-plugins-good-plugins-rtpdec.html#GstRTPDec-struct"/>
<keyword type="property" name="The &quot;skip&quot; property" link="gst-plugins-good-plugins-rtpdec.html#GstRTPDec--skip"/>
<keyword type="property" name="The &quot;latency&quot; property" link="gst-plugins-good-plugins-rtpdec.html#GstRTPDec--latency"/>
@@ -986,51 +986,51 @@
<keyword type="signal" name="The &quot;on-ssrc-collision&quot; signal" link="gst-plugins-good-plugins-rtpdec.html#GstRTPDec-on-ssrc-collision"/>
<keyword type="signal" name="The &quot;on-ssrc-validated&quot; signal" link="gst-plugins-good-plugins-rtpdec.html#GstRTPDec-on-ssrc-validated"/>
<keyword type="signal" name="The &quot;on-timeout&quot; signal" link="gst-plugins-good-plugins-rtpdec.html#GstRTPDec-on-timeout"/>
- <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpac3depay.html#idp12935200"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpac3depay.html#idp17437136"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpac3depay.html#idp16239920"/>
+ <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpac3depay.html#idp19102912"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpac3depay.html#idp16948928"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpac3depay.html#idp14404848"/>
<keyword type="struct" name="struct GstRtpAC3Depay" link="gst-plugins-good-plugins-rtpac3depay.html#GstRtpAC3Depay-struct"/>
- <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpac3pay.html#idp13604224"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpac3pay.html#idp18588384"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpac3pay.html#idp2044304"/>
+ <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpac3pay.html#idp17839296"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpac3pay.html#idp17706992"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpac3pay.html#idp12760128"/>
<keyword type="struct" name="struct GstRtpAC3Pay" link="gst-plugins-good-plugins-rtpac3pay.html#GstRtpAC3Pay-struct"/>
- <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpamrdepay.html#idp15313200"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpamrdepay.html#idp14843760"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpamrdepay.html#idp19151408"/>
+ <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpamrdepay.html#idp17936544"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpamrdepay.html#idp17734032"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpamrdepay.html#idp18103008"/>
<keyword type="struct" name="struct GstRtpAMRDepay" link="gst-plugins-good-plugins-rtpamrdepay.html#GstRtpAMRDepay-struct"/>
- <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpamrpay.html#idp14411824"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpamrpay.html#idp16919760"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpamrpay.html#idp16384240"/>
+ <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpamrpay.html#idp16474080"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpamrpay.html#idp18410512"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpamrpay.html#idp17521424"/>
<keyword type="struct" name="struct GstRtpAMRPay" link="gst-plugins-good-plugins-rtpamrpay.html#GstRtpAMRPay-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpbvdepay.html#idp13216624"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpbvdepay.html#idp18808064"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpbvpay.html#idp18820528"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpbvpay.html#idp13365888"/>
- <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpL16depay.html#idp16065872"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpL16depay.html#idp16529344"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpL16depay.html#idp13216880"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpbvdepay.html#idp17388992"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpbvdepay.html#idp17617728"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpbvpay.html#idp18876032"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpbvpay.html#idp10876752"/>
+ <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpL16depay.html#idp18776976"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpL16depay.html#idp13813792"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpL16depay.html#idp16619072"/>
<keyword type="struct" name="struct GstRtpL16Depay" link="gst-plugins-good-plugins-rtpL16depay.html#GstRtpL16Depay-struct"/>
- <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpL16pay.html#idp17896736"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpL16pay.html#idp17547984"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpL16pay.html#idp13373584"/>
+ <keyword type="" name="Example pipeline" link="gst-plugins-good-plugins-rtpL16pay.html#idp18591584"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpL16pay.html#idp17616512"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpL16pay.html#idp10978000"/>
<keyword type="struct" name="struct GstRtpL16Pay" link="gst-plugins-good-plugins-rtpL16pay.html#GstRtpL16Pay-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpj2kpay.html#idp14631712"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpj2kpay.html#idp20087776"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpj2kpay.html#idp14328288"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpj2kpay.html#idp20176560"/>
<keyword type="struct" name="struct GstRtpJ2KPay" link="gst-plugins-good-plugins-rtpj2kpay.html#GstRtpJ2KPay-struct"/>
<keyword type="property" name="The &quot;buffer-list&quot; property" link="gst-plugins-good-plugins-rtpj2kpay.html#GstRtpJ2KPay--buffer-list"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpjpegpay.html#idp19904880"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpjpegpay.html#idp12353120"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpjpegpay.html#idp14752912"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpjpegpay.html#idp19101808"/>
<keyword type="struct" name="struct GstRtpJPEGPay" link="gst-plugins-good-plugins-rtpjpegpay.html#GstRtpJPEGPay-struct"/>
<keyword type="property" name="The &quot;quality&quot; property" link="gst-plugins-good-plugins-rtpjpegpay.html#GstRtpJPEGPay--quality"/>
<keyword type="property" name="The &quot;type&quot; property" link="gst-plugins-good-plugins-rtpjpegpay.html#GstRtpJPEGPay--type"/>
<keyword type="property" name="The &quot;buffer-list&quot; property" link="gst-plugins-good-plugins-rtpjpegpay.html#GstRtpJPEGPay--buffer-list"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpsbcpay.html#idp20126432"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpsbcpay.html#idp15466496"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpsbcpay.html#idp20237344"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpsbcpay.html#idp16984944"/>
<keyword type="struct" name="struct GstRtpSBCPay" link="gst-plugins-good-plugins-rtpsbcpay.html#GstRtpSBCPay-struct"/>
<keyword type="property" name="The &quot;min-frames&quot; property" link="gst-plugins-good-plugins-rtpsbcpay.html#GstRtpSBCPay--min-frames"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rtspsrc.html#idp20040016"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtspsrc.html#idp20069504"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtspsrc.html#idp20207648"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-rtspsrc.html#idp18139184"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtspsrc.html#idp18142048"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtspsrc.html#idp18682944"/>
<keyword type="struct" name="struct GstRTSPSrc" link="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc-struct"/>
<keyword type="property" name="The &quot;debug&quot; property" link="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--debug"/>
<keyword type="property" name="The &quot;location&quot; property" link="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--location"/>
@@ -1062,9 +1062,9 @@
<keyword type="signal" name="The &quot;handle-request&quot; signal" link="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc-handle-request"/>
<keyword type="signal" name="The &quot;on-sdp&quot; signal" link="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc-on-sdp"/>
<keyword type="signal" name="The &quot;select-stream&quot; signal" link="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc-select-stream"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-rtpbin.html#idp20609360"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpbin.html#idp20616976"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpbin.html#idp20624432"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-rtpbin.html#idp19660352"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpbin.html#idp19667968"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpbin.html#idp19675424"/>
<keyword type="struct" name="struct GstRtpBin" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin-struct"/>
<keyword type="property" name="The &quot;do-lost&quot; property" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--do-lost"/>
<keyword type="property" name="The &quot;latency&quot; property" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--latency"/>
@@ -1077,6 +1077,7 @@
<keyword type="property" name="The &quot;rtcp-sync&quot; property" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--rtcp-sync"/>
<keyword type="property" name="The &quot;rtcp-sync-interval&quot; property" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--rtcp-sync-interval"/>
<keyword type="property" name="The &quot;drop-on-latency&quot; property" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--drop-on-latency"/>
+ <keyword type="property" name="The &quot;do-sync-event&quot; property" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--do-sync-event"/>
<keyword type="signal" name="The &quot;clear-pt-map&quot; signal" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin-clear-pt-map"/>
<keyword type="signal" name="The &quot;get-internal-session&quot; signal" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin-get-internal-session"/>
<keyword type="signal" name="The &quot;on-bye-ssrc&quot; signal" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin-on-bye-ssrc"/>
@@ -1092,11 +1093,11 @@
<keyword type="signal" name="The &quot;request-pt-map&quot; signal" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin-request-pt-map"/>
<keyword type="signal" name="The &quot;reset-sync&quot; signal" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin-reset-sync"/>
<keyword type="signal" name="The &quot;payload-type-change&quot; signal" link="gst-plugins-good-plugins-rtpbin.html#GstRtpBin-payload-type-change"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpdtmfmux.html#idp18793952"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpdtmfmux.html#idp15822704"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpdtmfmux.html#idp18959024"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpdtmfmux.html#idp10355584"/>
<keyword type="struct" name="struct GstRTPDTMFMux" link="gst-plugins-good-plugins-rtpdtmfmux.html#GstRTPDTMFMux-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpdtmfsrc.html#idp18258736"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpdtmfsrc.html#idp15822960"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpdtmfsrc.html#idp19986336"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpdtmfsrc.html#idp20632288"/>
<keyword type="struct" name="struct GstRTPDTMFSrc" link="gst-plugins-good-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc-struct"/>
<keyword type="property" name="The &quot;clock-rate&quot; property" link="gst-plugins-good-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--clock-rate"/>
<keyword type="property" name="The &quot;packet-redundancy&quot; property" link="gst-plugins-good-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--packet-redundancy"/>
@@ -1106,8 +1107,8 @@
<keyword type="property" name="The &quot;ssrc&quot; property" link="gst-plugins-good-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--ssrc"/>
<keyword type="property" name="The &quot;timestamp&quot; property" link="gst-plugins-good-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--timestamp"/>
<keyword type="property" name="The &quot;timestamp-offset&quot; property" link="gst-plugins-good-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--timestamp-offset"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpjitterbuffer.html#idp19576432"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpjitterbuffer.html#idp19638416"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpjitterbuffer.html#idp20400000"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpjitterbuffer.html#idp17976864"/>
<keyword type="struct" name="struct GstRtpJitterBuffer" link="gst-plugins-good-plugins-rtpjitterbuffer.html#GstRtpJitterBuffer-struct"/>
<keyword type="property" name="The &quot;do-lost&quot; property" link="gst-plugins-good-plugins-rtpjitterbuffer.html#GstRtpJitterBuffer--do-lost"/>
<keyword type="property" name="The &quot;drop-on-latency&quot; property" link="gst-plugins-good-plugins-rtpjitterbuffer.html#GstRtpJitterBuffer--drop-on-latency"/>
@@ -1120,23 +1121,23 @@
<keyword type="signal" name="The &quot;on-npt-stop&quot; signal" link="gst-plugins-good-plugins-rtpjitterbuffer.html#GstRtpJitterBuffer-on-npt-stop"/>
<keyword type="signal" name="The &quot;request-pt-map&quot; signal" link="gst-plugins-good-plugins-rtpjitterbuffer.html#GstRtpJitterBuffer-request-pt-map"/>
<keyword type="signal" name="The &quot;set-active&quot; signal" link="gst-plugins-good-plugins-rtpjitterbuffer.html#GstRtpJitterBuffer-set-active"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-rtpmux.html#idp16057568"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpmux.html#idp20164288"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpmux.html#idp14784768"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-rtpmux.html#idp17947456"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpmux.html#idp18114512"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpmux.html#idp18151664"/>
<keyword type="struct" name="struct GstRTPMux" link="gst-plugins-good-plugins-rtpmux.html#GstRTPMux-struct"/>
<keyword type="property" name="The &quot;seqnum&quot; property" link="gst-plugins-good-plugins-rtpmux.html#GstRTPMux--seqnum"/>
<keyword type="property" name="The &quot;seqnum-offset&quot; property" link="gst-plugins-good-plugins-rtpmux.html#GstRTPMux--seqnum-offset"/>
<keyword type="property" name="The &quot;ssrc&quot; property" link="gst-plugins-good-plugins-rtpmux.html#GstRTPMux--ssrc"/>
<keyword type="property" name="The &quot;timestamp-offset&quot; property" link="gst-plugins-good-plugins-rtpmux.html#GstRTPMux--timestamp-offset"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpptdemux.html#idp18704016"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpptdemux.html#idp16942048"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpptdemux.html#idp14180896"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpptdemux.html#idp17901792"/>
<keyword type="struct" name="struct GstRtpPtDemux" link="gst-plugins-good-plugins-rtpptdemux.html#GstRtpPtDemux-struct"/>
<keyword type="signal" name="The &quot;clear-pt-map&quot; signal" link="gst-plugins-good-plugins-rtpptdemux.html#GstRtpPtDemux-clear-pt-map"/>
<keyword type="signal" name="The &quot;new-payload-type&quot; signal" link="gst-plugins-good-plugins-rtpptdemux.html#GstRtpPtDemux-new-payload-type"/>
<keyword type="signal" name="The &quot;payload-type-change&quot; signal" link="gst-plugins-good-plugins-rtpptdemux.html#GstRtpPtDemux-payload-type-change"/>
<keyword type="signal" name="The &quot;request-pt-map&quot; signal" link="gst-plugins-good-plugins-rtpptdemux.html#GstRtpPtDemux-request-pt-map"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpsession.html#idp19928160"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpsession.html#idp17619760"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpsession.html#idp18169504"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpsession.html#idp20688144"/>
<keyword type="struct" name="struct GstRtpSession" link="gst-plugins-good-plugins-rtpsession.html#GstRtpSession-struct"/>
<keyword type="property" name="The &quot;bandwidth&quot; property" link="gst-plugins-good-plugins-rtpsession.html#GstRtpSession--bandwidth"/>
<keyword type="property" name="The &quot;internal-session&quot; property" link="gst-plugins-good-plugins-rtpsession.html#GstRtpSession--internal-session"/>
@@ -1161,36 +1162,36 @@
<keyword type="signal" name="The &quot;on-ssrc-validated&quot; signal" link="gst-plugins-good-plugins-rtpsession.html#GstRtpSession-on-ssrc-validated"/>
<keyword type="signal" name="The &quot;on-timeout&quot; signal" link="gst-plugins-good-plugins-rtpsession.html#GstRtpSession-on-timeout"/>
<keyword type="signal" name="The &quot;request-pt-map&quot; signal" link="gst-plugins-good-plugins-rtpsession.html#GstRtpSession-request-pt-map"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpssrcdemux.html#idp20646592"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpssrcdemux.html#idp5489984"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-rtpssrcdemux.html#idp15449616"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-rtpssrcdemux.html#idp17080976"/>
<keyword type="struct" name="struct GstRtpSsrcDemux" link="gst-plugins-good-plugins-rtpssrcdemux.html#GstRtpSsrcDemux-struct"/>
<keyword type="signal" name="The &quot;clear-ssrc&quot; signal" link="gst-plugins-good-plugins-rtpssrcdemux.html#GstRtpSsrcDemux-clear-ssrc"/>
<keyword type="signal" name="The &quot;new-ssrc-pad&quot; signal" link="gst-plugins-good-plugins-rtpssrcdemux.html#GstRtpSsrcDemux-new-ssrc-pad"/>
<keyword type="signal" name="The &quot;removed-ssrc-pad&quot; signal" link="gst-plugins-good-plugins-rtpssrcdemux.html#GstRtpSsrcDemux-removed-ssrc-pad"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-sbcparse.html#idp21845472"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-sbcparse.html#idp5823488"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-sbcparse.html#idp19158912"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-sbcparse.html#idp19324848"/>
<keyword type="struct" name="struct GstSbcParse" link="gst-plugins-good-plugins-sbcparse.html#GstSbcParse-struct"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-scaletempo.html#idp10147952"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-scaletempo.html#idp18367216"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-scaletempo.html#idp12706064"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-good-plugins-scaletempo.html#idp20732640"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-scaletempo.html#idp19569168"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-scaletempo.html#idp14956896"/>
<keyword type="struct" name="struct GstScaletempo" link="gst-plugins-good-plugins-scaletempo.html#GstScaletempo-struct"/>
<keyword type="property" name="The &quot;overlap&quot; property" link="gst-plugins-good-plugins-scaletempo.html#GstScaletempo--overlap"/>
<keyword type="property" name="The &quot;rate&quot; property" link="gst-plugins-good-plugins-scaletempo.html#GstScaletempo--rate"/>
<keyword type="property" name="The &quot;search&quot; property" link="gst-plugins-good-plugins-scaletempo.html#GstScaletempo--search"/>
<keyword type="property" name="The &quot;stride&quot; property" link="gst-plugins-good-plugins-scaletempo.html#GstScaletempo--stride"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-shagadelictv.html#idp12809520"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-shagadelictv.html#idp15318576"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-shagadelictv.html#idp16711568"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-shagadelictv.html#idp16318832"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-shagadelictv.html#idp19340448"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-shagadelictv.html#idp22237504"/>
<keyword type="struct" name="struct GstShagadelicTV" link="gst-plugins-good-plugins-shagadelictv.html#GstShagadelicTV-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-shapewipe.html#idp19449664"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-shapewipe.html#idp13166800"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-shapewipe.html#idp16658832"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-shapewipe.html#idp20484256"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-shapewipe.html#idp20686336"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-shapewipe.html#idp17798880"/>
<keyword type="struct" name="struct GstShapeWipe" link="gst-plugins-good-plugins-shapewipe.html#GstShapeWipe-struct"/>
<keyword type="property" name="The &quot;border&quot; property" link="gst-plugins-good-plugins-shapewipe.html#GstShapeWipe--border"/>
<keyword type="property" name="The &quot;position&quot; property" link="gst-plugins-good-plugins-shapewipe.html#GstShapeWipe--position"/>
- <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-smpte.html#idp17804352"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-smpte.html#idp20131088"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-smpte.html#idp18767456"/>
+ <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-smpte.html#idp21354144"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-smpte.html#idp17786544"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-smpte.html#idp22004080"/>
<keyword type="struct" name="struct GstSMPTE" link="gst-plugins-good-plugins-smpte.html#GstSMPTE-struct"/>
<keyword type="property" name="The &quot;border&quot; property" link="gst-plugins-good-plugins-smpte.html#GstSMPTE--border"/>
<keyword type="property" name="The &quot;depth&quot; property" link="gst-plugins-good-plugins-smpte.html#GstSMPTE--depth"/>
@@ -1198,17 +1199,17 @@
<keyword type="property" name="The &quot;type&quot; property" link="gst-plugins-good-plugins-smpte.html#GstSMPTE--type"/>
<keyword type="property" name="The &quot;duration&quot; property" link="gst-plugins-good-plugins-smpte.html#GstSMPTE--duration"/>
<keyword type="property" name="The &quot;invert&quot; property" link="gst-plugins-good-plugins-smpte.html#GstSMPTE--invert"/>
- <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-smptealpha.html#idp20486816"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-smptealpha.html#idp21775280"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-smptealpha.html#idp19446880"/>
+ <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-smptealpha.html#idp17713136"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-smptealpha.html#idp15492912"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-smptealpha.html#idp20385664"/>
<keyword type="struct" name="struct GstSMPTEAlpha" link="gst-plugins-good-plugins-smptealpha.html#GstSMPTEAlpha-struct"/>
<keyword type="property" name="The &quot;border&quot; property" link="gst-plugins-good-plugins-smptealpha.html#GstSMPTEAlpha--border"/>
<keyword type="property" name="The &quot;depth&quot; property" link="gst-plugins-good-plugins-smptealpha.html#GstSMPTEAlpha--depth"/>
<keyword type="property" name="The &quot;position&quot; property" link="gst-plugins-good-plugins-smptealpha.html#GstSMPTEAlpha--position"/>
<keyword type="property" name="The &quot;type&quot; property" link="gst-plugins-good-plugins-smptealpha.html#GstSMPTEAlpha--type"/>
<keyword type="property" name="The &quot;invert&quot; property" link="gst-plugins-good-plugins-smptealpha.html#GstSMPTEAlpha--invert"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-souphttpsrc.html#idp22749904"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-souphttpsrc.html#idp22084160"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-souphttpsrc.html#idp21307136"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-souphttpsrc.html#idp17377344"/>
<keyword type="struct" name="struct GstSoupHTTPSrc" link="gst-plugins-good-plugins-souphttpsrc.html#GstSoupHTTPSrc-struct"/>
<keyword type="property" name="The &quot;automatic-redirect&quot; property" link="gst-plugins-good-plugins-souphttpsrc.html#GstSoupHTTPSrc--automatic-redirect"/>
<keyword type="property" name="The &quot;cookies&quot; property" link="gst-plugins-good-plugins-souphttpsrc.html#GstSoupHTTPSrc--cookies"/>
@@ -1227,9 +1228,9 @@
<keyword type="property" name="The &quot;user-pw&quot; property" link="gst-plugins-good-plugins-souphttpsrc.html#GstSoupHTTPSrc--user-pw"/>
<keyword type="property" name="The &quot;extra-headers&quot; property" link="gst-plugins-good-plugins-souphttpsrc.html#GstSoupHTTPSrc--extra-headers"/>
<keyword type="property" name="The &quot;timeout&quot; property" link="gst-plugins-good-plugins-souphttpsrc.html#GstSoupHTTPSrc--timeout"/>
- <keyword type="" name="Example application" link="gst-plugins-good-plugins-spectrum.html#idp19280448"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-spectrum.html#idp18798464"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-spectrum.html#idp16674192"/>
+ <keyword type="" name="Example application" link="gst-plugins-good-plugins-spectrum.html#idp17847744"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-spectrum.html#idp17850720"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-spectrum.html#idp21928288"/>
<keyword type="struct" name="struct GstSpectrum" link="gst-plugins-good-plugins-spectrum.html#GstSpectrum-struct"/>
<keyword type="property" name="The &quot;bands&quot; property" link="gst-plugins-good-plugins-spectrum.html#GstSpectrum--bands"/>
<keyword type="property" name="The &quot;interval&quot; property" link="gst-plugins-good-plugins-spectrum.html#GstSpectrum--interval"/>
@@ -1239,8 +1240,8 @@
<keyword type="property" name="The &quot;message-phase&quot; property" link="gst-plugins-good-plugins-spectrum.html#GstSpectrum--message-phase"/>
<keyword type="property" name="The &quot;post-messages&quot; property" link="gst-plugins-good-plugins-spectrum.html#GstSpectrum--post-messages"/>
<keyword type="property" name="The &quot;multi-channel&quot; property" link="gst-plugins-good-plugins-spectrum.html#GstSpectrum--multi-channel"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-speexenc.html#idp17926832"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-speexenc.html#idp22422992"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-speexenc.html#idp16922048"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-speexenc.html#idp22065408"/>
<keyword type="struct" name="struct GstSpeexEnc" link="gst-plugins-good-plugins-speexenc.html#GstSpeexEnc-struct"/>
<keyword type="property" name="The &quot;abr&quot; property" link="gst-plugins-good-plugins-speexenc.html#GstSpeexEnc--abr"/>
<keyword type="property" name="The &quot;bitrate&quot; property" link="gst-plugins-good-plugins-speexenc.html#GstSpeexEnc--bitrate"/>
@@ -1252,28 +1253,28 @@
<keyword type="property" name="The &quot;vad&quot; property" link="gst-plugins-good-plugins-speexenc.html#GstSpeexEnc--vad"/>
<keyword type="property" name="The &quot;vbr&quot; property" link="gst-plugins-good-plugins-speexenc.html#GstSpeexEnc--vbr"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-speexenc.html#GstSpeexEnc--mode"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-speexdec.html#idp15659776"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-speexdec.html#idp15537584"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-speexdec.html#idp22794304"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-speexdec.html#idp19431280"/>
<keyword type="struct" name="struct GstSpeexDec" link="gst-plugins-good-plugins-speexdec.html#GstSpeexDec-struct"/>
<keyword type="property" name="The &quot;enh&quot; property" link="gst-plugins-good-plugins-speexdec.html#GstSpeexDec--enh"/>
- <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-splitfilesrc.html#idp19158144"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-splitfilesrc.html#idp21955568"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-splitfilesrc.html#idp20463072"/>
+ <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-splitfilesrc.html#idp22766080"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-splitfilesrc.html#idp23240192"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-splitfilesrc.html#idp19964944"/>
<keyword type="struct" name="struct GstSplitFileSrc" link="gst-plugins-good-plugins-splitfilesrc.html#GstSplitFileSrc-struct"/>
<keyword type="property" name="The &quot;location&quot; property" link="gst-plugins-good-plugins-splitfilesrc.html#GstSplitFileSrc--location"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-streaktv.html#idp6328688"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-streaktv.html#idp5730240"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-streaktv.html#idp21689312"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-streaktv.html#idp22939040"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-streaktv.html#idp22195120"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-streaktv.html#idp19252704"/>
<keyword type="struct" name="struct GstStreakTV" link="gst-plugins-good-plugins-streaktv.html#GstStreakTV-struct"/>
<keyword type="property" name="The &quot;feedback&quot; property" link="gst-plugins-good-plugins-streaktv.html#GstStreakTV--feedback"/>
- <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-taginject.html#idp21637472"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-taginject.html#idp18914784"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-taginject.html#idp22777376"/>
+ <keyword type="" name="Example launch lines" link="gst-plugins-good-plugins-taginject.html#idp19261328"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-taginject.html#idp15819856"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-taginject.html#idp13997744"/>
<keyword type="struct" name="struct GstTagInject" link="gst-plugins-good-plugins-taginject.html#GstTagInject-struct"/>
<keyword type="property" name="The &quot;tags&quot; property" link="gst-plugins-good-plugins-taginject.html#GstTagInject--tags"/>
- <keyword type="" name="Examples" link="gst-plugins-good-plugins-udpsrc.html#idp23149408"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-udpsrc.html#idp22406192"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-udpsrc.html#idp21070560"/>
+ <keyword type="" name="Examples" link="gst-plugins-good-plugins-udpsrc.html#idp17954336"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-udpsrc.html#idp22791248"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-udpsrc.html#idp22856800"/>
<keyword type="struct" name="struct GstUDPSrc" link="gst-plugins-good-plugins-udpsrc.html#GstUDPSrc-struct"/>
<keyword type="property" name="The &quot;caps&quot; property" link="gst-plugins-good-plugins-udpsrc.html#GstUDPSrc--caps"/>
<keyword type="property" name="The &quot;multicast-group&quot; property" link="gst-plugins-good-plugins-udpsrc.html#GstUDPSrc--multicast-group"/>
@@ -1292,14 +1293,14 @@
<keyword type="property" name="The &quot;socket&quot; property" link="gst-plugins-good-plugins-udpsrc.html#GstUDPSrc--socket"/>
<keyword type="property" name="The &quot;used-socket&quot; property" link="gst-plugins-good-plugins-udpsrc.html#GstUDPSrc--used-socket"/>
<keyword type="property" name="The &quot;bind-address&quot; property" link="gst-plugins-good-plugins-udpsrc.html#GstUDPSrc--bind-address"/>
- <keyword type="" name="Examples" link="gst-plugins-good-plugins-udpsink.html#idp20366480"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-udpsink.html#idp21894800"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-udpsink.html#idp21567760"/>
+ <keyword type="" name="Examples" link="gst-plugins-good-plugins-udpsink.html#idp14060480"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-udpsink.html#idp18046656"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-udpsink.html#idp13477680"/>
<keyword type="struct" name="struct GstUDPSink" link="gst-plugins-good-plugins-udpsink.html#GstUDPSink-struct"/>
<keyword type="property" name="The &quot;host&quot; property" link="gst-plugins-good-plugins-udpsink.html#GstUDPSink--host"/>
<keyword type="property" name="The &quot;port&quot; property" link="gst-plugins-good-plugins-udpsink.html#GstUDPSink--port"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-v4l2src.html#idp21954384"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-v4l2src.html#idp18838560"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-v4l2src.html#idp22730208"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-v4l2src.html#idp18921328"/>
<keyword type="struct" name="struct GstV4l2Src" link="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--device"/>
<keyword type="property" name="The &quot;device-name&quot; property" link="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--device-name"/>
@@ -1318,8 +1319,8 @@
<keyword type="property" name="The &quot;force-aspect-ratio&quot; property" link="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--force-aspect-ratio"/>
<keyword type="property" name="The &quot;pixel-aspect-ratio&quot; property" link="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--pixel-aspect-ratio"/>
<keyword type="signal" name="The &quot;prepare-format&quot; signal" link="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src-prepare-format"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-v4l2sink.html#idp21954112"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-v4l2sink.html#idp20516960"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-v4l2sink.html#idp22944176"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-v4l2sink.html#idp21911632"/>
<keyword type="struct" name="struct GstV4l2Sink" link="gst-plugins-good-plugins-v4l2sink.html#GstV4l2Sink-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-v4l2sink.html#GstV4l2Sink--device"/>
<keyword type="property" name="The &quot;device-fd&quot; property" link="gst-plugins-good-plugins-v4l2sink.html#GstV4l2Sink--device-fd"/>
@@ -1344,28 +1345,28 @@
<keyword type="property" name="The &quot;extra-controls&quot; property" link="gst-plugins-good-plugins-v4l2sink.html#GstV4l2Sink--extra-controls"/>
<keyword type="property" name="The &quot;force-aspect-ratio&quot; property" link="gst-plugins-good-plugins-v4l2sink.html#GstV4l2Sink--force-aspect-ratio"/>
<keyword type="property" name="The &quot;pixel-aspect-ratio&quot; property" link="gst-plugins-good-plugins-v4l2sink.html#GstV4l2Sink--pixel-aspect-ratio"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-v4l2radio.html#idp22480080"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-v4l2radio.html#idp19050880"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-v4l2radio.html#idp19930352"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-v4l2radio.html#idp22805600"/>
<keyword type="struct" name="struct GstV4l2Radio" link="gst-plugins-good-plugins-v4l2radio.html#GstV4l2Radio-struct"/>
<keyword type="property" name="The &quot;device&quot; property" link="gst-plugins-good-plugins-v4l2radio.html#GstV4l2Radio--device"/>
<keyword type="property" name="The &quot;frequency&quot; property" link="gst-plugins-good-plugins-v4l2radio.html#GstV4l2Radio--frequency"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-vertigotv.html#idp20200016"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-vertigotv.html#idp18595744"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-vertigotv.html#idp21148352"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-vertigotv.html#idp11015664"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-vertigotv.html#idp24293376"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-vertigotv.html#idp21378480"/>
<keyword type="struct" name="struct GstVertigoTV" link="gst-plugins-good-plugins-vertigotv.html#GstVertigoTV-struct"/>
<keyword type="property" name="The &quot;speed&quot; property" link="gst-plugins-good-plugins-vertigotv.html#GstVertigoTV--speed"/>
<keyword type="property" name="The &quot;zoom-speed&quot; property" link="gst-plugins-good-plugins-vertigotv.html#GstVertigoTV--zoom-speed"/>
<keyword type="signal" name="The &quot;reset-parms&quot; signal" link="gst-plugins-good-plugins-vertigotv.html#GstVertigoTV-reset-parms"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-videobalance.html#idp18703072"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videobalance.html#idp20200176"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videobalance.html#idp16867104"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-videobalance.html#idp24844112"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videobalance.html#idp20664272"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videobalance.html#idp23922080"/>
<keyword type="struct" name="struct GstVideoBalance" link="gst-plugins-good-plugins-videobalance.html#GstVideoBalance-struct"/>
<keyword type="property" name="The &quot;brightness&quot; property" link="gst-plugins-good-plugins-videobalance.html#GstVideoBalance--brightness"/>
<keyword type="property" name="The &quot;contrast&quot; property" link="gst-plugins-good-plugins-videobalance.html#GstVideoBalance--contrast"/>
<keyword type="property" name="The &quot;hue&quot; property" link="gst-plugins-good-plugins-videobalance.html#GstVideoBalance--hue"/>
<keyword type="property" name="The &quot;saturation&quot; property" link="gst-plugins-good-plugins-videobalance.html#GstVideoBalance--saturation"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videobox.html#idp23855600"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videobox.html#idp22156112"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videobox.html#idp23831008"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videobox.html#idp22296016"/>
<keyword type="struct" name="struct GstVideoBox" link="gst-plugins-good-plugins-videobox.html#GstVideoBox-struct"/>
<keyword type="property" name="The &quot;alpha&quot; property" link="gst-plugins-good-plugins-videobox.html#GstVideoBox--alpha"/>
<keyword type="property" name="The &quot;border-alpha&quot; property" link="gst-plugins-good-plugins-videobox.html#GstVideoBox--border-alpha"/>
@@ -1375,33 +1376,33 @@
<keyword type="property" name="The &quot;right&quot; property" link="gst-plugins-good-plugins-videobox.html#GstVideoBox--right"/>
<keyword type="property" name="The &quot;top&quot; property" link="gst-plugins-good-plugins-videobox.html#GstVideoBox--top"/>
<keyword type="property" name="The &quot;autocrop&quot; property" link="gst-plugins-good-plugins-videobox.html#GstVideoBox--autocrop"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-videocrop.html#idp20648320"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videocrop.html#idp23616976"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videocrop.html#idp18971696"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-videocrop.html#idp23587120"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videocrop.html#idp21312448"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videocrop.html#idp20397952"/>
<keyword type="struct" name="struct GstVideoCrop" link="gst-plugins-good-plugins-videocrop.html#GstVideoCrop-struct"/>
<keyword type="property" name="The &quot;bottom&quot; property" link="gst-plugins-good-plugins-videocrop.html#GstVideoCrop--bottom"/>
<keyword type="property" name="The &quot;left&quot; property" link="gst-plugins-good-plugins-videocrop.html#GstVideoCrop--left"/>
<keyword type="property" name="The &quot;right&quot; property" link="gst-plugins-good-plugins-videocrop.html#GstVideoCrop--right"/>
<keyword type="property" name="The &quot;top&quot; property" link="gst-plugins-good-plugins-videocrop.html#GstVideoCrop--top"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-videoflip.html#idp23604960"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videoflip.html#idp10678912"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videoflip.html#idp23961728"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-videoflip.html#idp20546512"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videoflip.html#idp23850656"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videoflip.html#idp19541248"/>
<keyword type="struct" name="struct GstVideoFlip" link="gst-plugins-good-plugins-videoflip.html#GstVideoFlip-struct"/>
<keyword type="enum" name="enum GstVideoFlipMethod" link="gst-plugins-good-plugins-videoflip.html#GstVideoFlipMethod"/>
<keyword type="property" name="The &quot;method&quot; property" link="gst-plugins-good-plugins-videoflip.html#GstVideoFlip--method"/>
- <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-videomixer.html#idp19230608"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videomixer.html#idp16547136"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videomixer.html#idp23241472"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-vp8dec.html#idp22516320"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-vp8dec.html#idp21321776"/>
+ <keyword type="" name="Sample pipelines" link="gst-plugins-good-plugins-videomixer.html#idp18939600"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-videomixer.html#idp23594992"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-videomixer.html#idp10161952"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-vp8dec.html#idp10298048"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-vp8dec.html#idp24277024"/>
<keyword type="struct" name="struct GstVP8Dec" link="gst-plugins-good-plugins-vp8dec.html#GstVP8Dec-struct"/>
<keyword type="property" name="The &quot;deblocking-level&quot; property" link="gst-plugins-good-plugins-vp8dec.html#GstVP8Dec--deblocking-level"/>
<keyword type="property" name="The &quot;noise-level&quot; property" link="gst-plugins-good-plugins-vp8dec.html#GstVP8Dec--noise-level"/>
<keyword type="property" name="The &quot;post-processing&quot; property" link="gst-plugins-good-plugins-vp8dec.html#GstVP8Dec--post-processing"/>
<keyword type="property" name="The &quot;post-processing-flags&quot; property" link="gst-plugins-good-plugins-vp8dec.html#GstVP8Dec--post-processing-flags"/>
<keyword type="property" name="The &quot;threads&quot; property" link="gst-plugins-good-plugins-vp8dec.html#GstVP8Dec--threads"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-vp8enc.html#idp25147936"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-vp8enc.html#idp25155344"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-vp8enc.html#idp24900656"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-vp8enc.html#idp24908064"/>
<keyword type="struct" name="struct GstVP8Enc" link="gst-plugins-good-plugins-vp8enc.html#GstVP8Enc-struct"/>
<keyword type="property" name="The &quot;arnr-maxframes&quot; property" link="gst-plugins-good-plugins-vp8enc.html#GstVP8Enc--arnr-maxframes"/>
<keyword type="property" name="The &quot;arnr-strength&quot; property" link="gst-plugins-good-plugins-vp8enc.html#GstVP8Enc--arnr-strength"/>
@@ -1462,22 +1463,22 @@
<keyword type="property" name="The &quot;undershoot&quot; property" link="gst-plugins-good-plugins-vp8enc.html#GstVP8Enc--undershoot"/>
<keyword type="property" name="The &quot;vertical-scaling-mode&quot; property" link="gst-plugins-good-plugins-vp8enc.html#GstVP8Enc--vertical-scaling-mode"/>
<keyword type="property" name="The &quot;timebase&quot; property" link="gst-plugins-good-plugins-vp8enc.html#GstVP8Enc--timebase"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-warptv.html#idp21797648"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-warptv.html#idp23932944"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-warptv.html#idp23695440"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-warptv.html#idp23383952"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-warptv.html#idp18492848"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-warptv.html#idp23459152"/>
<keyword type="struct" name="struct GstWarpTV" link="gst-plugins-good-plugins-warptv.html#GstWarpTV-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-wavenc.html#idp24056928"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavenc.html#idp24974896"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavenc.html#idp7251776"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-wavenc.html#idp25158352"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavenc.html#idp21291136"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavenc.html#idp22338960"/>
<keyword type="struct" name="struct GstWavEnc" link="gst-plugins-good-plugins-wavenc.html#GstWavEnc-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-waveformsink.html#idp25057792"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-waveformsink.html#idp23705008"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-waveformsink.html#idp3411744"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-waveformsink.html#idp19090688"/>
<keyword type="struct" name="struct GstWaveFormSink" link="gst-plugins-good-plugins-waveformsink.html#GstWaveFormSink"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavpackdec.html#idp2869728"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavpackdec.html#idp9508704"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavpackdec.html#idp23378752"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavpackdec.html#idp21267264"/>
<keyword type="struct" name="struct GstWavpackDec" link="gst-plugins-good-plugins-wavpackdec.html#GstWavpackDec-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavpackenc.html#idp20018592"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavpackenc.html#idp24230080"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavpackenc.html#idp23547552"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavpackenc.html#idp26226528"/>
<keyword type="struct" name="struct GstWavpackEnc" link="gst-plugins-good-plugins-wavpackenc.html#GstWavpackEnc-struct"/>
<keyword type="property" name="The &quot;bitrate&quot; property" link="gst-plugins-good-plugins-wavpackenc.html#GstWavpackEnc--bitrate"/>
<keyword type="property" name="The &quot;bits-per-sample&quot; property" link="gst-plugins-good-plugins-wavpackenc.html#GstWavpackEnc--bits-per-sample"/>
@@ -1486,21 +1487,21 @@
<keyword type="property" name="The &quot;joint-stereo-mode&quot; property" link="gst-plugins-good-plugins-wavpackenc.html#GstWavpackEnc--joint-stereo-mode"/>
<keyword type="property" name="The &quot;md5&quot; property" link="gst-plugins-good-plugins-wavpackenc.html#GstWavpackEnc--md5"/>
<keyword type="property" name="The &quot;mode&quot; property" link="gst-plugins-good-plugins-wavpackenc.html#GstWavpackEnc--mode"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-wavpackparse.html#idp24250064"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavpackparse.html#idp24764048"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavpackparse.html#idp6615088"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-wavpackparse.html#idp25857056"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavpackparse.html#idp23702400"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavpackparse.html#idp20487696"/>
<keyword type="struct" name="struct GstWavpackParse" link="gst-plugins-good-plugins-wavpackparse.html#GstWavpackParse-struct"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-wavparse.html#idp21086512"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavparse.html#idp19290016"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavparse.html#idp17485552"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-wavparse.html#idp20994480"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-wavparse.html#idp25316800"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-wavparse.html#idp23539712"/>
<keyword type="struct" name="struct GstWavParse" link="gst-plugins-good-plugins-wavparse.html#GstWavParse-struct"/>
<keyword type="property" name="The &quot;ignore-length&quot; property" link="gst-plugins-good-plugins-wavparse.html#GstWavParse--ignore-length"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-webmmux.html#idp24063968"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-webmmux.html#idp22072640"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-webmmux.html#idp18408928"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-webmmux.html#idp22051280"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-webmmux.html#idp24300784"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-webmmux.html#idp22989984"/>
<keyword type="struct" name="struct GstWebMMux" link="gst-plugins-good-plugins-webmmux.html#GstWebMMux-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-ximagesrc.html#idp23832208"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-ximagesrc.html#idp22572480"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-ximagesrc.html#idp20917760"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-ximagesrc.html#idp24584896"/>
<keyword type="struct" name="struct GstXImageSrc" link="gst-plugins-good-plugins-ximagesrc.html#GstXImageSrc-struct"/>
<keyword type="property" name="The &quot;display-name&quot; property" link="gst-plugins-good-plugins-ximagesrc.html#GstXImageSrc--display-name"/>
<keyword type="property" name="The &quot;screen-num&quot; property" link="gst-plugins-good-plugins-ximagesrc.html#GstXImageSrc--screen-num"/>
@@ -1513,9 +1514,9 @@
<keyword type="property" name="The &quot;remote&quot; property" link="gst-plugins-good-plugins-ximagesrc.html#GstXImageSrc--remote"/>
<keyword type="property" name="The &quot;xid&quot; property" link="gst-plugins-good-plugins-ximagesrc.html#GstXImageSrc--xid"/>
<keyword type="property" name="The &quot;xname&quot; property" link="gst-plugins-good-plugins-ximagesrc.html#GstXImageSrc--xname"/>
- <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-y4menc.html#idp23969600"/>
- <keyword type="" name="Element Information" link="gst-plugins-good-plugins-y4menc.html#idp23091712"/>
- <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-y4menc.html#idp6050048"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-good-plugins-y4menc.html#idp26217616"/>
+ <keyword type="" name="Element Information" link="gst-plugins-good-plugins-y4menc.html#idp26301248"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-good-plugins-y4menc.html#idp23838896"/>
<keyword type="struct" name="struct GstY4mEncode" link="gst-plugins-good-plugins-y4menc.html#GstY4mEncode-struct"/>
<keyword type="struct" name="struct GstIirEqualizer" link="GstIirEqualizer.html#GstIirEqualizer-struct"/>
<keyword type="constant" name="ALPHA_METHOD_SET" link="gst-plugins-good-plugins-alpha.html#ALPHA-METHOD-SET:CAPS"/>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-3gppmux.html b/docs/plugins/html/gst-plugins-good-plugins-3gppmux.html
index 9f434952..ec651dab 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-3gppmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-3gppmux.html
@@ -96,7 +96,7 @@ presentation-timestamp.
<p>
</p>
<div class="refsect2">
-<a name="idp6113488"></a><h3>Example pipelines</h3>
+<a name="idp8057696"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -119,7 +119,7 @@ Documentation last reviewed on 2011-04-21
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp9144864"></a><h3>Element Information</h3>
+<a name="idp8801280"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -145,7 +145,7 @@ Documentation last reviewed on 2011-04-21
</div>
<hr>
<div class="refsect2">
-<a name="idp6311024"></a><h3>Element Pads</h3>
+<a name="idp9192928"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-aacparse.html b/docs/plugins/html/gst-plugins-good-plugins-aacparse.html
index e02dc73a..da34cdf9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-aacparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-aacparse.html
@@ -66,7 +66,7 @@ can also estimate playback position and clip duration.
<p>
</p>
<div class="refsect2">
-<a name="idp2950000"></a><h3>Example launch line</h3>
+<a name="idp8889072"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -84,7 +84,7 @@ can also estimate playback position and clip duration.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5578864"></a><h3>Element Information</h3>
+<a name="idp8745216"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -110,7 +110,7 @@ can also estimate playback position and clip duration.
</div>
<hr>
<div class="refsect2">
-<a name="idp7021072"></a><h3>Element Pads</h3>
+<a name="idp7542176"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-aasink.html b/docs/plugins/html/gst-plugins-good-plugins-aasink.html
index 7b83699a..62b1c07e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-aasink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-aasink.html
@@ -86,7 +86,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp9493872"></a><h3>Element Information</h3>
+<a name="idp8114752"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -112,7 +112,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp8910368"></a><h3>Element Pads</h3>
+<a name="idp9395168"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-ac3parse.html b/docs/plugins/html/gst-plugins-good-plugins-ac3parse.html
index 56144796..9aa1340b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-ac3parse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-ac3parse.html
@@ -61,7 +61,7 @@ This is an AC3 parser.
<p>
</p>
<div class="refsect2">
-<a name="idp9031760"></a><h3>Example launch line</h3>
+<a name="idp6468592"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -79,7 +79,7 @@ This is an AC3 parser.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6596512"></a><h3>Element Information</h3>
+<a name="idp7269600"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ This is an AC3 parser.
</div>
<hr>
<div class="refsect2">
-<a name="idp8013712"></a><h3>Element Pads</h3>
+<a name="idp6976528"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-agingtv.html b/docs/plugins/html/gst-plugins-good-plugins-agingtv.html
index 9260dcef..abb0fdbd 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-agingtv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-agingtv.html
@@ -74,7 +74,7 @@ scratches and dust.
<p>
</p>
<div class="refsect2">
-<a name="idp6143968"></a><h3>Example launch line</h3>
+<a name="idp6572352"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -92,7 +92,7 @@ scratches and dust.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5767920"></a><h3>Element Information</h3>
+<a name="idp5737600"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -118,7 +118,7 @@ scratches and dust.
</div>
<hr>
<div class="refsect2">
-<a name="idp5807664"></a><h3>Element Pads</h3>
+<a name="idp5582416"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-alawdec.html b/docs/plugins/html/gst-plugins-good-plugins-alawdec.html
index 8ce4ef00..aed486d9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-alawdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-alawdec.html
@@ -60,7 +60,7 @@ This element decodes alaw audio. Alaw coding is also known as G.711.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6826464"></a><h3>Element Information</h3>
+<a name="idp7624944"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@ This element decodes alaw audio. Alaw coding is also known as G.711.
</div>
<hr>
<div class="refsect2">
-<a name="idp9772352"></a><h3>Element Pads</h3>
+<a name="idp5552832"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-alawenc.html b/docs/plugins/html/gst-plugins-good-plugins-alawenc.html
index cc0a3d31..c697c77d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-alawenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-alawenc.html
@@ -49,7 +49,7 @@ This element encode alaw audio. Alaw coding is also known as G.711.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6619840"></a><h3>Element Information</h3>
+<a name="idp8656128"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -75,7 +75,7 @@ This element encode alaw audio. Alaw coding is also known as G.711.
</div>
<hr>
<div class="refsect2">
-<a name="idp9450112"></a><h3>Element Pads</h3>
+<a name="idp6497680"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-alpha.html b/docs/plugins/html/gst-plugins-good-plugins-alpha.html
index b7f641b8..c987ed9f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-alpha.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-alpha.html
@@ -105,7 +105,7 @@ a snow video stream.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6082352"></a><h3>Element Information</h3>
+<a name="idp6388320"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -133,7 +133,7 @@ Jan Schmidt &lt;thaytan@noraisin.net&gt;</td>
</div>
<hr>
<div class="refsect2">
-<a name="idp5463632"></a><h3>Element Pads</h3>
+<a name="idp7096864"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-alphacolor.html b/docs/plugins/html/gst-plugins-good-plugins-alphacolor.html
index 6e628387..7f843366 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-alphacolor.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-alphacolor.html
@@ -82,7 +82,7 @@ Sample pipeline:
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp9405456"></a><h3>Element Information</h3>
+<a name="idp9252928"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -108,7 +108,7 @@ Sample pipeline:
</div>
<hr>
<div class="refsect2">
-<a name="idp7048096"></a><h3>Element Pads</h3>
+<a name="idp6596944"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-amrparse.html b/docs/plugins/html/gst-plugins-good-plugins-amrparse.html
index 4a68224b..64e37ee5 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-amrparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-amrparse.html
@@ -62,7 +62,7 @@ formats.
<p>
</p>
<div class="refsect2">
-<a name="idp7779712"></a><h3>Example launch line</h3>
+<a name="idp6371840"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -80,7 +80,7 @@ formats.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8942016"></a><h3>Element Information</h3>
+<a name="idp2702944"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -106,7 +106,7 @@ formats.
</div>
<hr>
<div class="refsect2">
-<a name="idp5623776"></a><h3>Element Pads</h3>
+<a name="idp8161728"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-apedemux.html b/docs/plugins/html/gst-plugins-good-plugins-apedemux.html
index 1110b4fc..08a8b6f2 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-apedemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-apedemux.html
@@ -72,7 +72,7 @@ information.
<p>
</p>
<div class="refsect2">
-<a name="idp5795760"></a><h3>Example launch line</h3>
+<a name="idp7070032"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -92,7 +92,7 @@ the appropriate mime type set on buffers produced from apedemux.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp1531392"></a><h3>Element Information</h3>
+<a name="idp9183568"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -118,7 +118,7 @@ the appropriate mime type set on buffers produced from apedemux.
</div>
<hr>
<div class="refsect2">
-<a name="idp6644736"></a><h3>Element Pads</h3>
+<a name="idp8629888"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-apev2mux.html b/docs/plugins/html/gst-plugins-good-plugins-apev2mux.html
index a967c89d..fd76adde 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-apev2mux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-apev2mux.html
@@ -66,7 +66,7 @@ GstApev2Mux implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6518416"></a><h3>Element Information</h3>
+<a name="idp2696512"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -92,7 +92,7 @@ GstApev2Mux implements
</div>
<hr>
<div class="refsect2">
-<a name="idp8450720"></a><h3>Element Pads</h3>
+<a name="idp8123456"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-aspectratiocrop.html b/docs/plugins/html/gst-plugins-good-plugins-aspectratiocrop.html
index 94dec584..dbd39ce4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-aspectratiocrop.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-aspectratiocrop.html
@@ -81,7 +81,7 @@ in pass-through mode.
<p>
</p>
<div class="refsect2">
-<a name="idp9647744"></a><h3>Example launch line</h3>
+<a name="idp7678320"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -99,7 +99,7 @@ in pass-through mode.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5724416"></a><h3>Element Information</h3>
+<a name="idp7615120"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -125,7 +125,7 @@ in pass-through mode.
</div>
<hr>
<div class="refsect2">
-<a name="idp8195472"></a><h3>Element Pads</h3>
+<a name="idp10013104"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audioamplify.html b/docs/plugins/html/gst-plugins-good-plugins-audioamplify.html
index 7cd4f94c..5e6ef169 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audioamplify.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audioamplify.html
@@ -72,7 +72,7 @@ The difference between the clipping modes is best evaluated by testing.
<p>
</p>
<div class="refsect2">
-<a name="idp8526960"></a><h3>Example launch line</h3>
+<a name="idp5474144"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -94,7 +94,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp2988576"></a><h3>Element Information</h3>
+<a name="idp6190384"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -120,7 +120,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp7125360"></a><h3>Element Pads</h3>
+<a name="idp9621504"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiochebband.html b/docs/plugins/html/gst-plugins-good-plugins-audiochebband.html
index 31fe063d..d17e9981 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiochebband.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiochebband.html
@@ -103,7 +103,7 @@ a cutoff frequency at a quarter of the sampling rate.
<p>
</p>
<div class="refsect2">
-<a name="idp6140608"></a><h3>Example launch line</h3>
+<a name="idp5586336"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -125,7 +125,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10187200"></a><h3>Element Information</h3>
+<a name="idp7097184"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -151,7 +151,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp8821472"></a><h3>Element Pads</h3>
+<a name="idp8182256"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiocheblimit.html b/docs/plugins/html/gst-plugins-good-plugins-audiocheblimit.html
index a4d63c6b..2104e6a1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiocheblimit.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiocheblimit.html
@@ -100,7 +100,7 @@ a cutoff frequency at a quarter of the sampling rate.
<p>
</p>
<div class="refsect2">
-<a name="idp8331104"></a><h3>Example launch line</h3>
+<a name="idp5488464"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -122,7 +122,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5477056"></a><h3>Element Information</h3>
+<a name="idp7505856"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -148,7 +148,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp5606368"></a><h3>Element Pads</h3>
+<a name="idp9048128"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiodynamic.html b/docs/plugins/html/gst-plugins-good-plugins-audiodynamic.html
index 770d8413..feeda911 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiodynamic.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiodynamic.html
@@ -76,7 +76,7 @@ soft-knee mode is selected the ratio is applied smoothly.
<p>
</p>
<div class="refsect2">
-<a name="idp7655024"></a><h3>Example launch line</h3>
+<a name="idp7798912"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -98,7 +98,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp4774688"></a><h3>Element Information</h3>
+<a name="idp5738720"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -124,7 +124,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp6403648"></a><h3>Element Pads</h3>
+<a name="idp8012000"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audioecho.html b/docs/plugins/html/gst-plugins-good-plugins-audioecho.html
index 0d8b8fba..87b5fc51 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audioecho.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audioecho.html
@@ -84,7 +84,7 @@ state and will be set to the current delay by default.
<p>
</p>
<div class="refsect2">
-<a name="idp6028784"></a><h3>Example launch line</h3>
+<a name="idp5608896"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -104,7 +104,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8851296"></a><h3>Element Information</h3>
+<a name="idp8651648"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -130,7 +130,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp6008928"></a><h3>Element Pads</h3>
+<a name="idp10901008"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiofirfilter.html b/docs/plugins/html/gst-plugins-good-plugins-audiofirfilter.html
index e2c089f0..cd44b1fc 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiofirfilter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiofirfilter.html
@@ -95,7 +95,7 @@ FIR filters as they're depending on the sampling rate.
<p>
</p>
<div class="refsect2">
-<a name="idp9199184"></a><h3>Example application</h3>
+<a name="idp8030608"></a><h3>Example application</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -441,7 +441,7 @@ gint
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7991472"></a><h3>Element Information</h3>
+<a name="idp7974976"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -467,7 +467,7 @@ gint
</div>
<hr>
<div class="refsect2">
-<a name="idp10261952"></a><h3>Element Pads</h3>
+<a name="idp8378992"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audioiirfilter.html b/docs/plugins/html/gst-plugins-good-plugins-audioiirfilter.html
index 8f73daea..c53af30a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audioiirfilter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audioiirfilter.html
@@ -91,7 +91,7 @@ IIR filters as they're depending on the sampling rate.
<p>
</p>
<div class="refsect2">
-<a name="idp6404928"></a><h3>Example application</h3>
+<a name="idp11197904"></a><h3>Example application</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -389,7 +389,7 @@ gint
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8145488"></a><h3>Element Information</h3>
+<a name="idp8734928"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -415,7 +415,7 @@ gint
</div>
<hr>
<div class="refsect2">
-<a name="idp9189216"></a><h3>Element Pads</h3>
+<a name="idp6230160"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audioinvert.html b/docs/plugins/html/gst-plugins-good-plugins-audioinvert.html
index 0569b278..c8b41487 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audioinvert.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audioinvert.html
@@ -72,7 +72,7 @@ Creating a stereo sample from a mono source, with one channel inverted produces
<p>
</p>
<div class="refsect2">
-<a name="idp5762816"></a><h3>Example launch line</h3>
+<a name="idp8047216"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -94,7 +94,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp9076528"></a><h3>Element Information</h3>
+<a name="idp7784336"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -120,7 +120,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp5218224"></a><h3>Element Pads</h3>
+<a name="idp9391264"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiokaraoke.html b/docs/plugins/html/gst-plugins-good-plugins-audiokaraoke.html
index 69e5fc0b..2677797f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiokaraoke.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiokaraoke.html
@@ -74,7 +74,7 @@ This plugin is useful for karaoke applications.
<p>
</p>
<div class="refsect2">
-<a name="idp5419792"></a><h3>Example launch line</h3>
+<a name="idp10951296"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -92,7 +92,7 @@ This plugin is useful for karaoke applications.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp9252656"></a><h3>Element Information</h3>
+<a name="idp6545728"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -118,7 +118,7 @@ This plugin is useful for karaoke applications.
</div>
<hr>
<div class="refsect2">
-<a name="idp10378896"></a><h3>Element Pads</h3>
+<a name="idp7245760"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiopanorama.html b/docs/plugins/html/gst-plugins-good-plugins-audiopanorama.html
index a9f38273..c376d887 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiopanorama.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiopanorama.html
@@ -71,7 +71,7 @@ which keeps the same perceived loudness, and a simple panning method that just c
<p>
</p>
<div class="refsect2">
-<a name="idm11888"></a><h3>Example launch line</h3>
+<a name="idp5695312"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -95,7 +95,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp2876928"></a><h3>Element Information</h3>
+<a name="idp11780640"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -121,7 +121,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp11457312"></a><h3>Element Pads</h3>
+<a name="idp11191856"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiowsincband.html b/docs/plugins/html/gst-plugins-good-plugins-audiowsincband.html
index a8a5cfd1..3ffc845c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiowsincband.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiowsincband.html
@@ -83,7 +83,7 @@ disadvantage is the much slower execution time with larger kernels.
<p>
</p>
<div class="refsect2">
-<a name="idp7302048"></a><h3>Example launch line</h3>
+<a name="idp11194080"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -105,7 +105,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10726912"></a><h3>Element Information</h3>
+<a name="idp10037232"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -131,7 +131,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp6534160"></a><h3>Element Pads</h3>
+<a name="idp10548000"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-audiowsinclimit.html b/docs/plugins/html/gst-plugins-good-plugins-audiowsinclimit.html
index bd58ec64..bc45360d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-audiowsinclimit.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-audiowsinclimit.html
@@ -83,7 +83,7 @@ disadvantage is the much slower execution time with larger kernels.
<p>
</p>
<div class="refsect2">
-<a name="idp6291792"></a><h3>Example launch line</h3>
+<a name="idp9699632"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -105,7 +105,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5754672"></a><h3>Element Information</h3>
+<a name="idp9148848"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -131,7 +131,7 @@ gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span
</div>
<hr>
<div class="refsect2">
-<a name="idp7033856"></a><h3>Element Pads</h3>
+<a name="idp8509152"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-auparse.html b/docs/plugins/html/gst-plugins-good-plugins-auparse.html
index 63925407..8a24203d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-auparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-auparse.html
@@ -60,7 +60,7 @@ Parses .au files mostly originating from sun os based computers.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8715792"></a><h3>Element Information</h3>
+<a name="idp7603344"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@ Parses .au files mostly originating from sun os based computers.
</div>
<hr>
<div class="refsect2">
-<a name="idp9070240"></a><h3>Element Pads</h3>
+<a name="idp5837104"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-autoaudiosink.html b/docs/plugins/html/gst-plugins-good-plugins-autoaudiosink.html
index 87da569f..db738125 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-autoaudiosink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-autoaudiosink.html
@@ -81,7 +81,7 @@ of their element information, and also have a non-zero autoplugging rank.
<p>
</p>
<div class="refsect2">
-<a name="idp8750000"></a><h3>Example launch line</h3>
+<a name="idp8036736"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -99,7 +99,7 @@ of their element information, and also have a non-zero autoplugging rank.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8879536"></a><h3>Element Information</h3>
+<a name="idp11530368"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -125,7 +125,7 @@ of their element information, and also have a non-zero autoplugging rank.
</div>
<hr>
<div class="refsect2">
-<a name="idp9085088"></a><h3>Element Pads</h3>
+<a name="idp6046224"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-autoaudiosrc.html b/docs/plugins/html/gst-plugins-good-plugins-autoaudiosrc.html
index e314efc6..7a36217e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-autoaudiosrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-autoaudiosrc.html
@@ -80,7 +80,7 @@ of their element information, and also have a non-zero autoplugging rank.
<p>
</p>
<div class="refsect2">
-<a name="idp9138832"></a><h3>Example launch line</h3>
+<a name="idp10829808"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -98,7 +98,7 @@ of their element information, and also have a non-zero autoplugging rank.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5345888"></a><h3>Element Information</h3>
+<a name="idp8190640"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -124,7 +124,7 @@ of their element information, and also have a non-zero autoplugging rank.
</div>
<hr>
<div class="refsect2">
-<a name="idp10553360"></a><h3>Element Pads</h3>
+<a name="idp6660832"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-autovideosink.html b/docs/plugins/html/gst-plugins-good-plugins-autovideosink.html
index d3b19882..743c02a1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-autovideosink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-autovideosink.html
@@ -81,7 +81,7 @@ of their element information, and also have a non-zero autoplugging rank.
<p>
</p>
<div class="refsect2">
-<a name="idp6701440"></a><h3>Example launch line</h3>
+<a name="idp5862752"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -99,7 +99,7 @@ of their element information, and also have a non-zero autoplugging rank.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp3260992"></a><h3>Element Information</h3>
+<a name="idp8426576"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -125,7 +125,7 @@ of their element information, and also have a non-zero autoplugging rank.
</div>
<hr>
<div class="refsect2">
-<a name="idp10730080"></a><h3>Element Pads</h3>
+<a name="idp11472448"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-autovideosrc.html b/docs/plugins/html/gst-plugins-good-plugins-autovideosrc.html
index cfab3a6d..1e54077f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-autovideosrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-autovideosrc.html
@@ -80,7 +80,7 @@ of their element information, and also have a non-zero autoplugging rank.
<p>
</p>
<div class="refsect2">
-<a name="idp7064416"></a><h3>Example launch line</h3>
+<a name="idp3202272"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -98,7 +98,7 @@ of their element information, and also have a non-zero autoplugging rank.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6356896"></a><h3>Element Information</h3>
+<a name="idp11244048"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -124,7 +124,7 @@ of their element information, and also have a non-zero autoplugging rank.
</div>
<hr>
<div class="refsect2">
-<a name="idp8468768"></a><h3>Element Pads</h3>
+<a name="idp8559840"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-avidemux.html b/docs/plugins/html/gst-plugins-good-plugins-avidemux.html
index 28d74fb0..da36aabc 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-avidemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-avidemux.html
@@ -64,7 +64,7 @@ capabilities of the upstream elements.
<p>
</p>
<div class="refsect2">
-<a name="idp11160144"></a><h3>Example launch line</h3>
+<a name="idp12072800"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -88,7 +88,7 @@ Last reviewed on 2006-12-29 (0.10.6)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp11157712"></a><h3>Element Information</h3>
+<a name="idp12070368"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -114,7 +114,7 @@ Last reviewed on 2006-12-29 (0.10.6)
</div>
<hr>
<div class="refsect2">
-<a name="idp11151040"></a><h3>Element Pads</h3>
+<a name="idp12063696"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-avimux.html b/docs/plugins/html/gst-plugins-good-plugins-avimux.html
index 719a5c64..a7b91e20 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-avimux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-avimux.html
@@ -76,7 +76,7 @@ Muxes raw or compressed audio and/or video streams into an AVI file.
<p>
</p>
<div class="refsect2">
-<a name="idp5273808"></a><h3>Example launch lines</h3>
+<a name="idp11697408"></a><h3>Example launch lines</h3>
<p>(write everything in one line, without the backslash characters)</p>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
@@ -130,7 +130,7 @@ only work if you have the necessary encoder elements installed of course.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5375904"></a><h3>Element Information</h3>
+<a name="idp5839344"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -156,7 +156,7 @@ only work if you have the necessary encoder elements installed of course.
</div>
<hr>
<div class="refsect2">
-<a name="idp10974672"></a><h3>Element Pads</h3>
+<a name="idp8603504"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-avisubtitle.html b/docs/plugins/html/gst-plugins-good-plugins-avisubtitle.html
index decf46c9..e558d68c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-avisubtitle.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-avisubtitle.html
@@ -57,7 +57,7 @@
<p>
</p>
<div class="refsect2">
-<a name="idp7552048"></a><h3>Example launch line</h3>
+<a name="idp11299536"></a><h3>Example launch line</h3>
<p>
Parses the subtitle stream from an avi file.
</p>
@@ -78,7 +78,7 @@ Last reviewed on 2008-02-01
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5563312"></a><h3>Element Information</h3>
+<a name="idp9408768"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -104,7 +104,7 @@ Last reviewed on 2008-02-01
</div>
<hr>
<div class="refsect2">
-<a name="idp9055968"></a><h3>Element Pads</h3>
+<a name="idp2714992"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-cacasink.html b/docs/plugins/html/gst-plugins-good-plugins-cacasink.html
index acd8abe6..70f2d2dc 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-cacasink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-cacasink.html
@@ -69,7 +69,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6840112"></a><h3>Element Information</h3>
+<a name="idp12293424"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -95,7 +95,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp5432784"></a><h3>Element Pads</h3>
+<a name="idp9506448"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-cairooverlay.html b/docs/plugins/html/gst-plugins-good-plugins-cairooverlay.html
index b9de1bf8..1e12ca22 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-cairooverlay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-cairooverlay.html
@@ -68,7 +68,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12083040"></a><h3>Element Information</h3>
+<a name="idp7471792"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -94,7 +94,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp8612080"></a><h3>Element Pads</h3>
+<a name="idp6955600"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-capssetter.html b/docs/plugins/html/gst-plugins-good-plugins-capssetter.html
index bbde8d17..6f9a5f41 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-capssetter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-capssetter.html
@@ -68,7 +68,7 @@
<p>
</p>
<div class="refsect2">
-<a name="idp5938384"></a><p>
+<a name="idp7318576"></a><p>
Sets or merges caps on a stream's buffers.
That is, a buffer's caps are updated using (fields of)
<a class="link" href="gst-plugins-good-plugins-capssetter.html#GstCapsSetter--caps" title='The "caps" property'>caps</a>. Note that this may
@@ -99,7 +99,7 @@ alike.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7467344"></a><h3>Element Information</h3>
+<a name="idp10347248"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -125,7 +125,7 @@ alike.
</div>
<hr>
<div class="refsect2">
-<a name="idp11516288"></a><h3>Element Pads</h3>
+<a name="idp10169136"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-cutter.html b/docs/plugins/html/gst-plugins-good-plugins-cutter.html
index 1515d0ee..29233e83 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-cutter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-cutter.html
@@ -89,7 +89,7 @@ The message's structure contains two fields:
<p>
</p>
<div class="refsect2">
-<a name="idp7650192"></a><h3>Example launch line</h3>
+<a name="idp10546544"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -107,7 +107,7 @@ The message's structure contains two fields:
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5415856"></a><h3>Element Information</h3>
+<a name="idp11001168"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -133,7 +133,7 @@ The message's structure contains two fields:
</div>
<hr>
<div class="refsect2">
-<a name="idp11312080"></a><h3>Element Pads</h3>
+<a name="idp10380128"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-dcaparse.html b/docs/plugins/html/gst-plugins-good-plugins-dcaparse.html
index 1d441cab..e7b848ab 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-dcaparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-dcaparse.html
@@ -61,7 +61,7 @@ This is a DCA (DTS Coherent Acoustics) parser.
<p>
</p>
<div class="refsect2">
-<a name="idp8826816"></a><h3>Example launch line</h3>
+<a name="idp8278240"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -79,7 +79,7 @@ This is a DCA (DTS Coherent Acoustics) parser.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp11910560"></a><h3>Element Information</h3>
+<a name="idp7662672"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ This is a DCA (DTS Coherent Acoustics) parser.
</div>
<hr>
<div class="refsect2">
-<a name="idp12608576"></a><h3>Element Pads</h3>
+<a name="idp6234528"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-deinterlace.html b/docs/plugins/html/gst-plugins-good-plugins-deinterlace.html
index 2cb871c3..668162fd 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-deinterlace.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-deinterlace.html
@@ -83,7 +83,7 @@ For this different algorithms can be selected which will be described later.
<p>
</p>
<div class="refsect2">
-<a name="idp7050240"></a><h3>Example launch line</h3>
+<a name="idp9409440"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -101,7 +101,7 @@ For this different algorithms can be selected which will be described later.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7026704"></a><h3>Element Information</h3>
+<a name="idp8348144"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -127,7 +127,7 @@ For this different algorithms can be selected which will be described later.
</div>
<hr>
<div class="refsect2">
-<a name="idp11438208"></a><h3>Element Pads</h3>
+<a name="idp11444016"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-deinterleave.html b/docs/plugins/html/gst-plugins-good-plugins-deinterleave.html
index 3384cd44..895c0d5c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-deinterleave.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-deinterleave.html
@@ -78,7 +78,7 @@ before further processing of the audio data.
<p>
</p>
<div class="refsect2">
-<a name="idp9390448"></a><h3>Example launch line</h3>
+<a name="idp6854512"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -110,7 +110,7 @@ channels exchanged.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6460992"></a><h3>Element Information</h3>
+<a name="idp7067536"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -136,7 +136,7 @@ channels exchanged.
</div>
<hr>
<div class="refsect2">
-<a name="idp7416272"></a><h3>Element Pads</h3>
+<a name="idp7453824"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-dicetv.html b/docs/plugins/html/gst-plugins-good-plugins-dicetv.html
index 592770b5..9571194b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-dicetv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-dicetv.html
@@ -83,7 +83,7 @@ consistent between each frame.
<p>
</p>
<div class="refsect2">
-<a name="idp11683280"></a><h3>Example launch line</h3>
+<a name="idp6070192"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -101,7 +101,7 @@ consistent between each frame.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12679024"></a><h3>Element Information</h3>
+<a name="idp7466336"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -127,7 +127,7 @@ consistent between each frame.
</div>
<hr>
<div class="refsect2">
-<a name="idp2830736"></a><h3>Element Pads</h3>
+<a name="idp7968448"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-directsoundsink.html b/docs/plugins/html/gst-plugins-good-plugins-directsoundsink.html
index cc3170c8..cfc04924 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-directsoundsink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-directsoundsink.html
@@ -45,7 +45,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7641248"></a><h3>Element Information</h3>
+<a name="idp6590736"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -71,7 +71,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp6939312"></a><h3>Element Pads</h3>
+<a name="idp8356688"></a><h3>Element Pads</h3>
</div>
</div>
<p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-dtmfsrc.html b/docs/plugins/html/gst-plugins-good-plugins-dtmfsrc.html
index f7952279..ca3d4ad1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-dtmfsrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-dtmfsrc.html
@@ -161,7 +161,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8551232"></a><h3>Element Information</h3>
+<a name="idp11525840"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -187,7 +187,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the
</div>
<hr>
<div class="refsect2">
-<a name="idp1524480"></a><h3>Element Pads</h3>
+<a name="idp12924672"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-dv1394src.html b/docs/plugins/html/gst-plugins-good-plugins-dv1394src.html
index 2e22d9d9..0b78d27f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-dv1394src.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-dv1394src.html
@@ -90,7 +90,7 @@ GstDV1394Src implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12835888"></a><h3>Element Information</h3>
+<a name="idp12285008"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -116,7 +116,7 @@ GstDV1394Src implements
</div>
<hr>
<div class="refsect2">
-<a name="idp10187328"></a><h3>Element Pads</h3>
+<a name="idp11640992"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-dvdec.html b/docs/plugins/html/gst-plugins-good-plugins-dvdec.html
index 729166ba..dadae87f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-dvdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-dvdec.html
@@ -68,7 +68,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7706496"></a><h3>Element Information</h3>
+<a name="idp8849840"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -94,7 +94,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp11012640"></a><h3>Element Pads</h3>
+<a name="idp12175056"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-dvdemux.html b/docs/plugins/html/gst-plugins-good-plugins-dvdemux.html
index ba95044d..7b8c2ccc 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-dvdemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-dvdemux.html
@@ -57,7 +57,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6693648"></a><h3>Element Information</h3>
+<a name="idp7474944"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -83,7 +83,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp2905680"></a><h3>Element Pads</h3>
+<a name="idp6722896"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-edgetv.html b/docs/plugins/html/gst-plugins-good-plugins-edgetv.html
index e2b4e533..3950849e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-edgetv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-edgetv.html
@@ -63,7 +63,7 @@ computer way.
<p>
</p>
<div class="refsect2">
-<a name="idp3237120"></a><h3>Example launch line</h3>
+<a name="idp12439056"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -81,7 +81,7 @@ computer way.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5831616"></a><h3>Element Information</h3>
+<a name="idp10275664"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -107,7 +107,7 @@ computer way.
</div>
<hr>
<div class="refsect2">
-<a name="idp2972464"></a><h3>Element Pads</h3>
+<a name="idp10316496"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-equalizer-10bands.html b/docs/plugins/html/gst-plugins-good-plugins-equalizer-10bands.html
index 6364ec9e..1cc7dac8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-equalizer-10bands.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-equalizer-10bands.html
@@ -89,7 +89,7 @@ frequency bands between 30 Hz and 15 kHz.
<p>
</p>
<div class="refsect2">
-<a name="idp6001760"></a><h3>Example launch line</h3>
+<a name="idp10222128"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -107,7 +107,7 @@ frequency bands between 30 Hz and 15 kHz.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12779712"></a><h3>Element Information</h3>
+<a name="idp8556016"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -133,7 +133,7 @@ frequency bands between 30 Hz and 15 kHz.
</div>
<hr>
<div class="refsect2">
-<a name="idp8770448"></a><h3>Element Pads</h3>
+<a name="idp8821984"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-equalizer-3bands.html b/docs/plugins/html/gst-plugins-good-plugins-equalizer-3bands.html
index 8972af90..dc27b6f0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-equalizer-3bands.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-equalizer-3bands.html
@@ -82,7 +82,7 @@ medium frequency and high frequency band.
<p>
</p>
<div class="refsect2">
-<a name="idp7224000"></a><h3>Example launch line</h3>
+<a name="idp13000832"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -100,7 +100,7 @@ medium frequency and high frequency band.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7630416"></a><h3>Element Information</h3>
+<a name="idp9000672"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -126,7 +126,7 @@ medium frequency and high frequency band.
</div>
<hr>
<div class="refsect2">
-<a name="idp13362720"></a><h3>Element Pads</h3>
+<a name="idp9527184"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-equalizer-nbands.html b/docs/plugins/html/gst-plugins-good-plugins-equalizer-nbands.html
index 34c18247..6fa562a1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-equalizer-nbands.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-equalizer-nbands.html
@@ -81,7 +81,7 @@ the center frequency, band width and gain.
<p>
</p>
<div class="refsect2">
-<a name="idp13123008"></a><h3>Example launch line</h3>
+<a name="idp9343600"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -98,7 +98,7 @@ the center frequency, band width and gain.
</p>
<hr>
<div class="refsect2">
-<a name="idp6721888"></a><h3>Example code</h3>
+<a name="idp11344784"></a><h3>Example code</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -190,7 +190,7 @@ the center frequency, band width and gain.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13858176"></a><h3>Element Information</h3>
+<a name="idp13323008"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -216,7 +216,7 @@ the center frequency, band width and gain.
</div>
<hr>
<div class="refsect2">
-<a name="idp9036928"></a><h3>Element Pads</h3>
+<a name="idp8510016"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-flacdec.html b/docs/plugins/html/gst-plugins-good-plugins-flacdec.html
index 4528269b..99b287ed 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-flacdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-flacdec.html
@@ -58,7 +58,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5857840"></a><h3>Element Information</h3>
+<a name="idp9814688"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -84,7 +84,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp7924768"></a><h3>Element Pads</h3>
+<a name="idp10445504"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-flacenc.html b/docs/plugins/html/gst-plugins-good-plugins-flacenc.html
index ba864f8f..ad3192a7 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-flacenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-flacenc.html
@@ -88,7 +88,7 @@ GstFlacEnc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp6488240"></a><h3>Element Information</h3>
+<a name="idp10074368"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -114,7 +114,7 @@ GstFlacEnc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp12478368"></a><h3>Element Pads</h3>
+<a name="idp12523600"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-flacparse.html b/docs/plugins/html/gst-plugins-good-plugins-flacparse.html
index e665cf78..d12fa91d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-flacparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-flacparse.html
@@ -80,7 +80,7 @@ format file to an ogg bitstream.
<p>
</p>
<div class="refsect2">
-<a name="idp8029600"></a><h3>Example pipelines</h3>
+<a name="idp2764208"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -102,7 +102,7 @@ buffer has the timestamp, duration, offset, and offset_end set.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10572208"></a><h3>Element Information</h3>
+<a name="idp5545744"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -128,7 +128,7 @@ buffer has the timestamp, duration, offset, and offset_end set.
</div>
<hr>
<div class="refsect2">
-<a name="idp7222768"></a><h3>Element Pads</h3>
+<a name="idp7334672"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-flactag.html b/docs/plugins/html/gst-plugins-good-plugins-flactag.html
index 15d2e1d8..ac5fb9d9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-flactag.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-flactag.html
@@ -65,7 +65,7 @@ GstFlacTag implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10581568"></a><h3>Element Information</h3>
+<a name="idp11736336"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -91,7 +91,7 @@ GstFlacTag implements
</div>
<hr>
<div class="refsect2">
-<a name="idp5290368"></a><h3>Element Pads</h3>
+<a name="idp6292928"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-flvdemux.html b/docs/plugins/html/gst-plugins-good-plugins-flvdemux.html
index a22bdf63..aec9f581 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-flvdemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-flvdemux.html
@@ -60,7 +60,7 @@ flvdemux demuxes an FLV file into the different contained streams.
<p>
</p>
<div class="refsect2">
-<a name="idp8004272"></a><h3>Example launch line</h3>
+<a name="idp13063792"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -78,7 +78,7 @@ flvdemux demuxes an FLV file into the different contained streams.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10670784"></a><h3>Element Information</h3>
+<a name="idp13394000"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -104,7 +104,7 @@ flvdemux demuxes an FLV file into the different contained streams.
</div>
<hr>
<div class="refsect2">
-<a name="idp11370464"></a><h3>Element Pads</h3>
+<a name="idp12650912"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-flvmux.html b/docs/plugins/html/gst-plugins-good-plugins-flvmux.html
index d75b15a4..018cbc14 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-flvmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-flvmux.html
@@ -77,7 +77,7 @@ flvmux muxes different streams into an FLV file.
<p>
</p>
<div class="refsect2">
-<a name="idp9551008"></a><h3>Example launch line</h3>
+<a name="idp12809968"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -95,7 +95,7 @@ flvmux muxes different streams into an FLV file.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp9844640"></a><h3>Element Information</h3>
+<a name="idp7317872"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -121,7 +121,7 @@ flvmux muxes different streams into an FLV file.
</div>
<hr>
<div class="refsect2">
-<a name="idp7407392"></a><h3>Element Pads</h3>
+<a name="idp11315616"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-flxdec.html b/docs/plugins/html/gst-plugins-good-plugins-flxdec.html
index 3fbc37d5..a9221489 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-flxdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-flxdec.html
@@ -60,7 +60,7 @@ This element decodes fli/flc/flx-video into raw video
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5747920"></a><h3>Element Information</h3>
+<a name="idp11795104"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@ This element decodes fli/flc/flx-video into raw video
</div>
<hr>
<div class="refsect2">
-<a name="idp12874384"></a><h3>Element Pads</h3>
+<a name="idp9352112"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-gamma.html b/docs/plugins/html/gst-plugins-good-plugins-gamma.html
index a5ef4359..c9dcdef4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-gamma.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-gamma.html
@@ -70,7 +70,7 @@ Performs gamma correction on a video stream.
<p>
</p>
<div class="refsect2">
-<a name="idp8112064"></a><h3>Example launch line</h3>
+<a name="idp14155680"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -102,7 +102,7 @@ Last reviewed on 2010-04-18 (0.10.22)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13238736"></a><h3>Element Information</h3>
+<a name="idp12153008"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -128,7 +128,7 @@ Last reviewed on 2010-04-18 (0.10.22)
</div>
<hr>
<div class="refsect2">
-<a name="idp11657680"></a><h3>Element Pads</h3>
+<a name="idp13311216"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-gdkpixbufsink.html b/docs/plugins/html/gst-plugins-good-plugins-gdkpixbufsink.html
index 85720000..7709a166 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-gdkpixbufsink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-gdkpixbufsink.html
@@ -69,7 +69,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14327136"></a><h3>Element Information</h3>
+<a name="idp5864256"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -95,7 +95,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp13834800"></a><h3>Element Pads</h3>
+<a name="idp13695120"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-goom.html b/docs/plugins/html/gst-plugins-good-plugins-goom.html
index 15e3ad36..5a9dd323 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-goom.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-goom.html
@@ -61,7 +61,7 @@ based on the incoming audio signal.
<p>
</p>
<div class="refsect2">
-<a name="idp8075696"></a><h3>Example launch line</h3>
+<a name="idp10123200"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -79,7 +79,7 @@ based on the incoming audio signal.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12777376"></a><h3>Element Information</h3>
+<a name="idp7175328"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ based on the incoming audio signal.
</div>
<hr>
<div class="refsect2">
-<a name="idp10800704"></a><h3>Element Pads</h3>
+<a name="idp9674480"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-goom2k1.html b/docs/plugins/html/gst-plugins-good-plugins-goom2k1.html
index f6ce6ec8..96ff1573 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-goom2k1.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-goom2k1.html
@@ -62,7 +62,7 @@ visualisation. Also available is goom2k4, with a different look.
<p>
</p>
<div class="refsect2">
-<a name="idp7213136"></a><h3>Example launch line</h3>
+<a name="idp13150016"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -80,7 +80,7 @@ visualisation. Also available is goom2k4, with a different look.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10733168"></a><h3>Element Information</h3>
+<a name="idp12118384"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -106,7 +106,7 @@ visualisation. Also available is goom2k4, with a different look.
</div>
<hr>
<div class="refsect2">
-<a name="idp7664208"></a><h3>Element Pads</h3>
+<a name="idp11293504"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-hdv1394src.html b/docs/plugins/html/gst-plugins-good-plugins-hdv1394src.html
index 52e087cf..31a5a23d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-hdv1394src.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-hdv1394src.html
@@ -79,7 +79,7 @@ GstHDV1394Src implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp11067264"></a><h3>Element Information</h3>
+<a name="idp13051264"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ GstHDV1394Src implements
</div>
<hr>
<div class="refsect2">
-<a name="idp12878352"></a><h3>Element Pads</h3>
+<a name="idp14934080"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-icydemux.html b/docs/plugins/html/gst-plugins-good-plugins-icydemux.html
index 2c2e94e5..81436083 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-icydemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-icydemux.html
@@ -64,7 +64,7 @@ on outgoing buffers.
<p>
</p>
<div class="refsect2">
-<a name="idp6004736"></a><h3>Example launch line</h3>
+<a name="idp8648320"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -85,7 +85,7 @@ or giosrc instead of souphttpsrc should also work.)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12253680"></a><h3>Element Information</h3>
+<a name="idp8214832"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -111,7 +111,7 @@ or giosrc instead of souphttpsrc should also work.)
</div>
<hr>
<div class="refsect2">
-<a name="idp10512640"></a><h3>Element Pads</h3>
+<a name="idp8184640"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-id3demux.html b/docs/plugins/html/gst-plugins-good-plugins-id3demux.html
index d2996907..1a4c58f7 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-id3demux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-id3demux.html
@@ -83,7 +83,7 @@ relied on libid3tag from the MAD project.
<p>
</p>
<div class="refsect2">
-<a name="idp13694928"></a><h3>Example launch line</h3>
+<a name="idp6543616"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -103,7 +103,7 @@ the appropriate mime type set on buffers produced from id3demux.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8748560"></a><h3>Element Information</h3>
+<a name="idp11470576"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -129,7 +129,7 @@ the appropriate mime type set on buffers produced from id3demux.
</div>
<hr>
<div class="refsect2">
-<a name="idp8987504"></a><h3>Element Pads</h3>
+<a name="idp11126928"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-id3v2mux.html b/docs/plugins/html/gst-plugins-good-plugins-id3v2mux.html
index c1ddc728..0d69690a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-id3v2mux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-id3v2mux.html
@@ -66,7 +66,7 @@ GstId3v2Mux implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10079808"></a><h3>Element Information</h3>
+<a name="idp12495264"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -92,7 +92,7 @@ GstId3v2Mux implements
</div>
<hr>
<div class="refsect2">
-<a name="idp9127024"></a><h3>Element Pads</h3>
+<a name="idp11509680"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-imagefreeze.html b/docs/plugins/html/gst-plugins-good-plugins-imagefreeze.html
index 51995228..3b0efef9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-imagefreeze.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-imagefreeze.html
@@ -62,7 +62,7 @@ by downstream, allows seeking and answers queries.
<p>
</p>
<div class="refsect2">
-<a name="idp10208480"></a><h3>Example launch line</h3>
+<a name="idp7252208"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -80,7 +80,7 @@ by downstream, allows seeking and answers queries.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7996512"></a><h3>Element Information</h3>
+<a name="idp8335312"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -106,7 +106,7 @@ by downstream, allows seeking and answers queries.
</div>
<hr>
<div class="refsect2">
-<a name="idp10727264"></a><h3>Element Pads</h3>
+<a name="idp11137552"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-interleave.html b/docs/plugins/html/gst-plugins-good-plugins-interleave.html
index b8942c50..954eaecb 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-interleave.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-interleave.html
@@ -82,7 +82,7 @@ The channel number of every sinkpad in the out can be retrieved from the "channe
<p>
</p>
<div class="refsect2">
-<a name="idp13974512"></a><h3>Example launch line</h3>
+<a name="idp10269904"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -113,7 +113,7 @@ channels exchanged.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7736688"></a><h3>Element Information</h3>
+<a name="idp13049120"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -139,7 +139,7 @@ channels exchanged.
</div>
<hr>
<div class="refsect2">
-<a name="idp6771600"></a><h3>Element Pads</h3>
+<a name="idp12919808"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-ismlmux.html b/docs/plugins/html/gst-plugins-good-plugins-ismlmux.html
index acef072f..f2de7d36 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-ismlmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-ismlmux.html
@@ -96,7 +96,7 @@ presentation-timestamp.
<p>
</p>
<div class="refsect2">
-<a name="idp9132352"></a><h3>Example pipelines</h3>
+<a name="idp7985504"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -119,7 +119,7 @@ Documentation last reviewed on 2011-04-21
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp11817184"></a><h3>Element Information</h3>
+<a name="idp5834064"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -145,7 +145,7 @@ Documentation last reviewed on 2011-04-21
</div>
<hr>
<div class="refsect2">
-<a name="idp9575776"></a><h3>Element Pads</h3>
+<a name="idp11352656"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-jackaudiosink.html b/docs/plugins/html/gst-plugins-good-plugins-jackaudiosink.html
index 1db5b6f7..cd14df03 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-jackaudiosink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-jackaudiosink.html
@@ -71,7 +71,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14272624"></a><h3>Element Information</h3>
+<a name="idp9308960"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -97,7 +97,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp10322672"></a><h3>Element Pads</h3>
+<a name="idp6585248"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-jackaudiosrc.html b/docs/plugins/html/gst-plugins-good-plugins-jackaudiosrc.html
index 53cd488c..8bc73c3a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-jackaudiosrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-jackaudiosrc.html
@@ -72,7 +72,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp11949296"></a><h3>Element Information</h3>
+<a name="idp15534720"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -98,7 +98,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp13157344"></a><h3>Element Pads</h3>
+<a name="idp6253328"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-jpegdec.html b/docs/plugins/html/gst-plugins-good-plugins-jpegdec.html
index d7d85f40..00a2e42b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-jpegdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-jpegdec.html
@@ -67,7 +67,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13242736"></a><h3>Element Information</h3>
+<a name="idp11873088"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -93,7 +93,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp14384176"></a><h3>Element Pads</h3>
+<a name="idp11533216"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-jpegenc.html b/docs/plugins/html/gst-plugins-good-plugins-jpegenc.html
index b31d3892..479c187b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-jpegenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-jpegenc.html
@@ -83,7 +83,7 @@ GstJpegEnc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13076896"></a><h3>Element Information</h3>
+<a name="idp13008368"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -109,7 +109,7 @@ GstJpegEnc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp9981728"></a><h3>Element Pads</h3>
+<a name="idp14547232"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-level.html b/docs/plugins/html/gst-plugins-good-plugins-level.html
index e31013a0..d610fdd8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-level.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-level.html
@@ -128,7 +128,7 @@ The message's structure contains these fields:
<p>
</p>
<div class="refsect2">
-<a name="idp12940592"></a><h3>Example application</h3>
+<a name="idp11319328"></a><h3>Example application</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -424,7 +424,7 @@ The message's structure contains these fields:
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp15841856"></a><h3>Element Information</h3>
+<a name="idp13232352"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -450,7 +450,7 @@ The message's structure contains these fields:
</div>
<hr>
<div class="refsect2">
-<a name="idp14134880"></a><h3>Element Pads</h3>
+<a name="idp15033408"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-matroskademux.html b/docs/plugins/html/gst-plugins-good-plugins-matroskademux.html
index c80f713c..a5ded085 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-matroskademux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-matroskademux.html
@@ -68,7 +68,7 @@ matroskademux demuxes a Matroska file into the different contained streams.
<p>
</p>
<div class="refsect2">
-<a name="idp14644768"></a><h3>Example launch line</h3>
+<a name="idp7996064"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -86,7 +86,7 @@ matroskademux demuxes a Matroska file into the different contained streams.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14025808"></a><h3>Element Information</h3>
+<a name="idp7125360"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -112,7 +112,7 @@ matroskademux demuxes a Matroska file into the different contained streams.
</div>
<hr>
<div class="refsect2">
-<a name="idp9089184"></a><h3>Element Pads</h3>
+<a name="idp2820400"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html b/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html
index 90fbc67e..51a4fa9b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html
@@ -80,7 +80,7 @@ matroskamux muxes different input streams into a Matroska file.
<p>
</p>
<div class="refsect2">
-<a name="idp14334992"></a><h3>Example launch line</h3>
+<a name="idp14733856"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -109,7 +109,7 @@ matroskamux muxes different input streams into a Matroska file.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp9168064"></a><h3>Element Information</h3>
+<a name="idp6240032"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -135,7 +135,7 @@ matroskamux muxes different input streams into a Matroska file.
</div>
<hr>
<div class="refsect2">
-<a name="idp12476352"></a><h3>Element Pads</h3>
+<a name="idp11870752"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-mj2mux.html b/docs/plugins/html/gst-plugins-good-plugins-mj2mux.html
index 0650f3f3..97f15621 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-mj2mux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-mj2mux.html
@@ -133,7 +133,7 @@ presentation-timestamp.
<p>
</p>
<div class="refsect2">
-<a name="idp14752432"></a><h3>Example pipelines</h3>
+<a name="idp13433456"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -156,7 +156,7 @@ Documentation last reviewed on 2011-04-21
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14755488"></a><h3>Element Information</h3>
+<a name="idp13436512"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -182,7 +182,7 @@ Documentation last reviewed on 2011-04-21
</div>
<hr>
<div class="refsect2">
-<a name="idp13537184"></a><h3>Element Pads</h3>
+<a name="idp14586752"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-monoscope.html b/docs/plugins/html/gst-plugins-good-plugins-monoscope.html
index 36b0b7aa..1030c5c1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-monoscope.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-monoscope.html
@@ -61,7 +61,7 @@ curve of the audio signal like on an oscilloscope.
<p>
</p>
<div class="refsect2">
-<a name="idp10969296"></a><h3>Example launch line</h3>
+<a name="idp6989408"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -79,7 +79,7 @@ curve of the audio signal like on an oscilloscope.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13230656"></a><h3>Element Information</h3>
+<a name="idp5566528"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ curve of the audio signal like on an oscilloscope.
</div>
<hr>
<div class="refsect2">
-<a name="idp7571392"></a><h3>Element Pads</h3>
+<a name="idp6803888"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-mp4mux.html b/docs/plugins/html/gst-plugins-good-plugins-mp4mux.html
index 79ebceb7..a9b1e4f8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-mp4mux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-mp4mux.html
@@ -133,7 +133,7 @@ presentation-timestamp.
<p>
</p>
<div class="refsect2">
-<a name="idp10367840"></a><h3>Example pipelines</h3>
+<a name="idp14816112"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -156,7 +156,7 @@ Documentation last reviewed on 2011-04-21
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13531488"></a><h3>Element Information</h3>
+<a name="idp15558096"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -182,7 +182,7 @@ Documentation last reviewed on 2011-04-21
</div>
<hr>
<div class="refsect2">
-<a name="idp14918784"></a><h3>Element Pads</h3>
+<a name="idp14464224"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-mpegaudioparse.html b/docs/plugins/html/gst-plugins-good-plugins-mpegaudioparse.html
index d2ea25de..1df279d0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-mpegaudioparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-mpegaudioparse.html
@@ -61,7 +61,7 @@ Parses and frames mpeg1 audio streams. Provides seeking.
<p>
</p>
<div class="refsect2">
-<a name="idp16243328"></a><h3>Example launch line</h3>
+<a name="idp12540400"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -79,7 +79,7 @@ Parses and frames mpeg1 audio streams. Provides seeking.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp7740160"></a><h3>Element Information</h3>
+<a name="idp10172784"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ Parses and frames mpeg1 audio streams. Provides seeking.
</div>
<hr>
<div class="refsect2">
-<a name="idp12269616"></a><h3>Element Pads</h3>
+<a name="idp7966880"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-mulawdec.html b/docs/plugins/html/gst-plugins-good-plugins-mulawdec.html
index 2dfeedb1..400a094f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-mulawdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-mulawdec.html
@@ -61,7 +61,7 @@ This element decodes mulaw audio. Mulaw coding is also known as G.711.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12608960"></a><h3>Element Information</h3>
+<a name="idp11965072"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -87,7 +87,7 @@ This element decodes mulaw audio. Mulaw coding is also known as G.711.
</div>
<hr>
<div class="refsect2">
-<a name="idp8258704"></a><h3>Element Pads</h3>
+<a name="idp11548400"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-mulawenc.html b/docs/plugins/html/gst-plugins-good-plugins-mulawenc.html
index a4a0f768..768334f6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-mulawenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-mulawenc.html
@@ -49,7 +49,7 @@ This element encode mulaw audio. Mulaw coding is also known as G.711.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10538176"></a><h3>Element Information</h3>
+<a name="idp8305952"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -75,7 +75,7 @@ This element encode mulaw audio. Mulaw coding is also known as G.711.
</div>
<hr>
<div class="refsect2">
-<a name="idp5782128"></a><h3>Element Pads</h3>
+<a name="idp9222000"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-multifilesink.html b/docs/plugins/html/gst-plugins-good-plugins-multifilesink.html
index 7832a001..a141433b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-multifilesink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-multifilesink.html
@@ -132,7 +132,7 @@ The message's structure contains these fields:
<p>
</p>
<div class="refsect2">
-<a name="idp15687424"></a><h3>Example launch line</h3>
+<a name="idp15367184"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -155,7 +155,7 @@ Last reviewed on 2009-09-11 (0.10.17)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp15401296"></a><h3>Element Information</h3>
+<a name="idp12742496"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -181,7 +181,7 @@ Last reviewed on 2009-09-11 (0.10.17)
</div>
<hr>
<div class="refsect2">
-<a name="idp15951312"></a><h3>Element Pads</h3>
+<a name="idp16493536"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-multifilesrc.html b/docs/plugins/html/gst-plugins-good-plugins-multifilesrc.html
index 6e2f33b5..ac67c17c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-multifilesrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-multifilesrc.html
@@ -82,7 +82,7 @@ File names are created by replacing "%d" with the index using <code class="funct
<p>
</p>
<div class="refsect2">
-<a name="idp6917552"></a><h3>Example launch line</h3>
+<a name="idp12884848"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -105,7 +105,7 @@ files named img.0000.png, img.0001.png, etc.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14719936"></a><h3>Element Information</h3>
+<a name="idp13998288"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -131,7 +131,7 @@ files named img.0000.png, img.0001.png, etc.
</div>
<hr>
<div class="refsect2">
-<a name="idp15852592"></a><h3>Element Pads</h3>
+<a name="idp14398880"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-multipartdemux.html b/docs/plugins/html/gst-plugins-good-plugins-multipartdemux.html
index 6726f0d6..5c025c57 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-multipartdemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-multipartdemux.html
@@ -83,7 +83,7 @@ otherwise it will be autodetected.
<p>
</p>
<div class="refsect2">
-<a name="idp7623712"></a><h3>Sample pipelines</h3>
+<a name="idp11735264"></a><h3>Sample pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -102,7 +102,7 @@ containing JPEG frames.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp16143408"></a><h3>Element Information</h3>
+<a name="idp13669296"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -128,7 +128,7 @@ containing JPEG frames.
</div>
<hr>
<div class="refsect2">
-<a name="idp12469088"></a><h3>Element Pads</h3>
+<a name="idp15394048"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-multipartmux.html b/docs/plugins/html/gst-plugins-good-plugins-multipartmux.html
index 25100cb0..efd007bf 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-multipartmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-multipartmux.html
@@ -70,7 +70,7 @@ multipart streams are sequential JPEG frames.
<p>
</p>
<div class="refsect2">
-<a name="idp15404272"></a><h3>Sample pipelines</h3>
+<a name="idp10624912"></a><h3>Sample pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -89,7 +89,7 @@ stored to a file.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp16080048"></a><h3>Element Information</h3>
+<a name="idp6460224"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -115,7 +115,7 @@ stored to a file.
</div>
<hr>
<div class="refsect2">
-<a name="idp13513024"></a><h3>Element Pads</h3>
+<a name="idp11411328"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-multiudpsink.html b/docs/plugins/html/gst-plugins-good-plugins-multiudpsink.html
index 69315871..c0a1db6c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-multiudpsink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-multiudpsink.html
@@ -106,7 +106,7 @@ It can be combined with rtp payload encoders to implement RTP streaming.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14049856"></a><h3>Element Information</h3>
+<a name="idp17076944"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -132,7 +132,7 @@ It can be combined with rtp payload encoders to implement RTP streaming.
</div>
<hr>
<div class="refsect2">
-<a name="idp16449600"></a><h3>Element Pads</h3>
+<a name="idp16463072"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-optv.html b/docs/plugins/html/gst-plugins-good-plugins-optv.html
index ef9c1d89..4407e6aa 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-optv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-optv.html
@@ -74,7 +74,7 @@ various optical pattern.
<p>
</p>
<div class="refsect2">
-<a name="idp14597760"></a><h3>Example launch line</h3>
+<a name="idp15304384"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -92,7 +92,7 @@ various optical pattern.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10356160"></a><h3>Element Information</h3>
+<a name="idp10661632"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -118,7 +118,7 @@ various optical pattern.
</div>
<hr>
<div class="refsect2">
-<a name="idp13586944"></a><h3>Element Pads</h3>
+<a name="idp15977456"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-oss4sink.html b/docs/plugins/html/gst-plugins-good-plugins-oss4sink.html
index 91b65af7..7bd2218e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-oss4sink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-oss4sink.html
@@ -79,7 +79,7 @@ GstOss4Sink implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13517072"></a><h3>Element Information</h3>
+<a name="idp14458704"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ GstOss4Sink implements
</div>
<hr>
<div class="refsect2">
-<a name="idp13642496"></a><h3>Element Pads</h3>
+<a name="idp14605424"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-oss4src.html b/docs/plugins/html/gst-plugins-good-plugins-oss4src.html
index 2524967e..6023d2e4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-oss4src.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-oss4src.html
@@ -78,7 +78,7 @@ GstOss4Source implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13323888"></a><h3>Element Information</h3>
+<a name="idp2782352"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -104,7 +104,7 @@ GstOss4Source implements
</div>
<hr>
<div class="refsect2">
-<a name="idp12021600"></a><h3>Element Pads</h3>
+<a name="idp14070128"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-osssink.html b/docs/plugins/html/gst-plugins-good-plugins-osssink.html
index c47d753b..12d1187e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-osssink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-osssink.html
@@ -68,7 +68,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp11615264"></a><h3>Element Information</h3>
+<a name="idp15825840"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -94,7 +94,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp15269472"></a><h3>Element Pads</h3>
+<a name="idp17663824"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-osssrc.html b/docs/plugins/html/gst-plugins-good-plugins-osssrc.html
index 39b4a814..f81fa0c5 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-osssrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-osssrc.html
@@ -78,7 +78,7 @@ GstOssSrc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13759328"></a><h3>Element Information</h3>
+<a name="idp15693712"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -104,7 +104,7 @@ GstOssSrc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp13546272"></a><h3>Element Pads</h3>
+<a name="idp13463152"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-osxaudiosink.html b/docs/plugins/html/gst-plugins-good-plugins-osxaudiosink.html
index 1ace9688..f7268505 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-osxaudiosink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-osxaudiosink.html
@@ -53,7 +53,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14049248"></a><h3>Element Information</h3>
+<a name="idp14715008"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -79,7 +79,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp13258704"></a><h3>Element Pads</h3>
+<a name="idp10352784"></a><h3>Element Pads</h3>
</div>
</div>
<p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-osxaudiosrc.html b/docs/plugins/html/gst-plugins-good-plugins-osxaudiosrc.html
index f84ff921..848bd5a9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-osxaudiosrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-osxaudiosrc.html
@@ -53,7 +53,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10918048"></a><h3>Element Information</h3>
+<a name="idp2899664"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -79,7 +79,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp13610688"></a><h3>Element Pads</h3>
+<a name="idp12659680"></a><h3>Element Pads</h3>
</div>
</div>
<p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-osxvideosink.html b/docs/plugins/html/gst-plugins-good-plugins-osxvideosink.html
index 22eb00b0..dfb62dd0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-osxvideosink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-osxvideosink.html
@@ -54,7 +54,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14698720"></a><h3>Element Information</h3>
+<a name="idp10376096"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -80,7 +80,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp12578672"></a><h3>Element Pads</h3>
+<a name="idp10126160"></a><h3>Element Pads</h3>
</div>
</div>
<p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html
index d09154a5..ddadf186 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26023312"></a><h2>Plugin Information</h2>
+<a name="idp25859984"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp19608480"></a><h2>Elements</h2>
+<a name="idp25447024"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html
index 80cc9e8b..a93c293c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp22584288"></a><h2>Plugin Information</h2>
+<a name="idp24665216"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24522832"></a><h2>Elements</h2>
+<a name="idp23703552"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html
index 8c36b4d6..97ede289 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp22335152"></a><h2>Plugin Information</h2>
+<a name="idp14507424"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26057520"></a><h2>Elements</h2>
+<a name="idp24362816"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html
index c99e1fa7..1689f1b4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25840256"></a><h2>Plugin Information</h2>
+<a name="idp26308704"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp21784080"></a><h2>Elements</h2>
+<a name="idp23238192"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html
index f6a8b78d..53ac4655 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25562720"></a><h2>Plugin Information</h2>
+<a name="idp23191056"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23867264"></a><h2>Elements</h2>
+<a name="idp12246192"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html
index 2c0948d8..bb77c630 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26433872"></a><h2>Plugin Information</h2>
+<a name="idp10144800"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25130240"></a><h2>Elements</h2>
+<a name="idp8649920"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html
index f0d3f278..33c782bc 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp23920128"></a><h2>Plugin Information</h2>
+<a name="idp26233824"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23283712"></a><h2>Elements</h2>
+<a name="idp22604000"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html
index 9a5b0bd2..1d431ee8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25517648"></a><h2>Plugin Information</h2>
+<a name="idp22055248"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26058368"></a><h2>Elements</h2>
+<a name="idp23509104"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html
index df2cee8a..1146c4c4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24414128"></a><h2>Plugin Information</h2>
+<a name="idp6436176"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp20669392"></a><h2>Elements</h2>
+<a name="idp7540016"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html
index b76047fb..b3f77580 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25518288"></a><h2>Plugin Information</h2>
+<a name="idp25202416"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26382656"></a><h2>Elements</h2>
+<a name="idp26217296"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html
index bb7094af..0db5c671 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26346320"></a><h2>Plugin Information</h2>
+<a name="idp23230624"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp20240480"></a><h2>Elements</h2>
+<a name="idp23540288"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html
index eaad4d05..356a7f98 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp23936544"></a><h2>Plugin Information</h2>
+<a name="idp26348672"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24520512"></a><h2>Elements</h2>
+<a name="idp23726176"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html
index 687737df..c677d2e7 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24271488"></a><h2>Plugin Information</h2>
+<a name="idp23125008"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp22744672"></a><h2>Elements</h2>
+<a name="idp18945792"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html
index 8be1d770..def39a8c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp22493040"></a><h2>Plugin Information</h2>
+<a name="idp26441696"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24928944"></a><h2>Elements</h2>
+<a name="idp25924768"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html
index 1c462747..3bf5edd0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24287888"></a><h2>Plugin Information</h2>
+<a name="idp25810224"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23148544"></a><h2>Elements</h2>
+<a name="idp25470224"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-directsound.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-directsound.html
index 4f5ff1d3..be4a39a8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-directsound.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-directsound.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24304288"></a><h2>Plugin Information</h2>
+<a name="idp25772720"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24356896"></a><h2>Elements</h2>
+<a name="idp22049328"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html
index 1e7a1f90..429c6448 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26377456"></a><h2>Plugin Information</h2>
+<a name="idp25760928"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25408368"></a><h2>Elements</h2>
+<a name="idp23141200"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html
index 5f1951dd..2c3b8421 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24530496"></a><h2>Plugin Information</h2>
+<a name="idp25800224"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23842800"></a><h2>Elements</h2>
+<a name="idp22391904"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html
index f1024b39..ce289843 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp21291472"></a><h2>Plugin Information</h2>
+<a name="idp25789088"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24843360"></a><h2>Elements</h2>
+<a name="idp25275760"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html
index 82d01ea9..466cefe8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26342304"></a><h2>Plugin Information</h2>
+<a name="idp26376640"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23828304"></a><h2>Elements</h2>
+<a name="idp26130416"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html
index 86189b61..2e6096f2 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25383312"></a><h2>Plugin Information</h2>
+<a name="idp26259120"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp21285936"></a><h2>Elements</h2>
+<a name="idp20633920"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html
index d41f7cf7..56c9c28d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp21893536"></a><h2>Plugin Information</h2>
+<a name="idp18481856"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24905504"></a><h2>Elements</h2>
+<a name="idp25844160"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html
index ff7692bb..c6f0d47d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp2924272"></a><h2>Plugin Information</h2>
+<a name="idp24176160"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp20412880"></a><h2>Elements</h2>
+<a name="idp25252192"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html
index 42d12849..3a36066a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp23507376"></a><h2>Plugin Information</h2>
+<a name="idp25283184"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp22831072"></a><h2>Elements</h2>
+<a name="idp24770208"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -72,7 +72,7 @@
<td>Decodes images in a video stream using GdkPixbuf</td>
</tr>
<tr>
-<td><p><span class="term"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good/html/gst-plugins-good-plugins-gdkpixbufoverlay.html">gdkpixbufoverlay</a></span></p></td>
+<td><p><span class="term">gdkpixbufoverlay</span></p></td>
<td>Overlay an image onto a video stream</td>
</tr>
<tr>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html
index 6a65dd30..3480fce1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25911520"></a><h2>Plugin Information</h2>
+<a name="idp26197680"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26118640"></a><h2>Elements</h2>
+<a name="idp23340896"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html
index 8912fc50..babb23cd 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25927920"></a><h2>Plugin Information</h2>
+<a name="idp26618496"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24692688"></a><h2>Elements</h2>
+<a name="idp24279584"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html
index e564e92a..505021b0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25865408"></a><h2>Plugin Information</h2>
+<a name="idp26877248"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24474176"></a><h2>Elements</h2>
+<a name="idp23912144"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html
index b871396c..30b8e7a4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26736768"></a><h2>Plugin Information</h2>
+<a name="idp23133152"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23681664"></a><h2>Elements</h2>
+<a name="idp22921056"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html
index 3ced9c33..1870fa65 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26713104"></a><h2>Plugin Information</h2>
+<a name="idp24270096"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24678816"></a><h2>Elements</h2>
+<a name="idp18393120"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html
index f02afde5..5560866d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25041184"></a><h2>Plugin Information</h2>
+<a name="idp26745392"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24638704"></a><h2>Elements</h2>
+<a name="idp26161040"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html
index c7388fa5..d97712e3 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24262240"></a><h2>Plugin Information</h2>
+<a name="idp23090208"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24907600"></a><h2>Elements</h2>
+<a name="idp24577392"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html
index 7be21143..68e150bb 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp22569920"></a><h2>Plugin Information</h2>
+<a name="idp23411232"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25854800"></a><h2>Elements</h2>
+<a name="idp26667072"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html
index c571e70c..ab2441a9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26444768"></a><h2>Plugin Information</h2>
+<a name="idp24816400"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23302352"></a><h2>Elements</h2>
+<a name="idp24221248"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html
index 5f5a92c8..9a582636 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp13204288"></a><h2>Plugin Information</h2>
+<a name="idp26767248"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25993696"></a><h2>Elements</h2>
+<a name="idp24181504"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html
index 268d328f..a356e869 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp9308720"></a><h2>Plugin Information</h2>
+<a name="idp27320880"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp18568672"></a><h2>Elements</h2>
+<a name="idp20554736"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-monoscope.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-monoscope.html
index 22b0a1e4..9f2f978a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-monoscope.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-monoscope.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26233696"></a><h2>Plugin Information</h2>
+<a name="idp26647488"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.1.1</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -50,7 +50,7 @@
</tr>
<tr>
<td><p><span class="term">package</span></p></td>
-<td>GStreamer Good Plug-ins git</td>
+<td>GStreamer Good Plug-ins source release</td>
</tr>
<tr>
<td><p><span class="term">origin</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp22836592"></a><h2>Elements</h2>
+<a name="idp25157392"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html
index e9db6e92..25aebc03 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp17919760"></a><h2>Plugin Information</h2>
+<a name="idp24201424"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23872432"></a><h2>Elements</h2>
+<a name="idp23675792"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html
index b130884e..365ff8b6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp23291264"></a><h2>Plugin Information</h2>
+<a name="idp25224080"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp22486416"></a><h2>Elements</h2>
+<a name="idp26597776"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html
index 2f13f69a..fc0ff698 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26156448"></a><h2>Plugin Information</h2>
+<a name="idp25437728"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23291392"></a><h2>Elements</h2>
+<a name="idp25190288"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html
index 880829f0..629344ee 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24734288"></a><h2>Plugin Information</h2>
+<a name="idp26610208"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24143440"></a><h2>Elements</h2>
+<a name="idp22923536"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html
index d0dd6feb..c2860c6d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24386096"></a><h2>Plugin Information</h2>
+<a name="idp26908096"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp27016592"></a><h2>Elements</h2>
+<a name="idp24316576"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html
index 52f9659b..1d1a2bbc 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp23526368"></a><h2>Plugin Information</h2>
+<a name="idp26161760"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp27043776"></a><h2>Elements</h2>
+<a name="idp26664192"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-osxaudio.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-osxaudio.html
index 03ddf7ab..29738eac 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-osxaudio.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-osxaudio.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp23786304"></a><h2>Plugin Information</h2>
+<a name="idp26261136"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp23285952"></a><h2>Elements</h2>
+<a name="idp23476608"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-osxvideo.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-osxvideo.html
index d7e47962..22aac24b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-osxvideo.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-osxvideo.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp22393728"></a><h2>Plugin Information</h2>
+<a name="idp26512480"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24998992"></a><h2>Elements</h2>
+<a name="idp24735488"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html
index 50721379..50809a21 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26138976"></a><h2>Plugin Information</h2>
+<a name="idp24708720"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25082848"></a><h2>Elements</h2>
+<a name="idp25795808"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html
index 53a393be..6c1d315a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24337728"></a><h2>Plugin Information</h2>
+<a name="idp26548720"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp21613648"></a><h2>Elements</h2>
+<a name="idp27307952"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html
index 335e9443..38b4fa90 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp19282720"></a><h2>Plugin Information</h2>
+<a name="idp26524880"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25417360"></a><h2>Elements</h2>
+<a name="idp25629296"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html
index ffb7ea1c..86196514 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26065696"></a><h2>Plugin Information</h2>
+<a name="idp23598624"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25427008"></a><h2>Elements</h2>
+<a name="idp24186432"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html
index 3fd25d42..f5877dee 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24278448"></a><h2>Plugin Information</h2>
+<a name="idp23483840"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26112192"></a><h2>Elements</h2>
+<a name="idp26421632"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html
index 43e5bf89..93e7c33c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24916816"></a><h2>Plugin Information</h2>
+<a name="idp24860880"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26284752"></a><h2>Elements</h2>
+<a name="idp27471600"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html
index 6e833690..57b56260 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24205424"></a><h2>Plugin Information</h2>
+<a name="idp27469376"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24257840"></a><h2>Elements</h2>
+<a name="idp26103920"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html
index fc83d55e..1659ad13 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27479232"></a><h2>Plugin Information</h2>
+<a name="idp22741328"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25409264"></a><h2>Elements</h2>
+<a name="idp25559520"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html
index 278f9df3..6751573e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp25937392"></a><h2>Plugin Information</h2>
+<a name="idp25497120"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24237088"></a><h2>Elements</h2>
+<a name="idp25813856"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html
index d7ac1247..abea7ab0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27192768"></a><h2>Plugin Information</h2>
+<a name="idp25900768"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24386880"></a><h2>Elements</h2>
+<a name="idp27093472"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html
index 95092f2a..e088a4ec 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp11998176"></a><h2>Plugin Information</h2>
+<a name="idp26800512"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp27075296"></a><h2>Elements</h2>
+<a name="idp25882576"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html
index 4f638ed8..bd13f476 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26276240"></a><h2>Plugin Information</h2>
+<a name="idp10265024"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp27503520"></a><h2>Elements</h2>
+<a name="idp24248816"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html
index 8796bcdb..d889b0d1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp12158144"></a><h2>Plugin Information</h2>
+<a name="idp25547776"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24258992"></a><h2>Elements</h2>
+<a name="idp24245328"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html
index 28b2dd1c..67e672b1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp24441392"></a><h2>Plugin Information</h2>
+<a name="idp27457072"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25453952"></a><h2>Elements</h2>
+<a name="idp26164192"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html
index 9ed51a6b..0c5279ec 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27101824"></a><h2>Plugin Information</h2>
+<a name="idp27454000"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26310432"></a><h2>Elements</h2>
+<a name="idp27437280"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html
index 66b55b46..0dd612d3 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27347488"></a><h2>Plugin Information</h2>
+<a name="idp27843488"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26737856"></a><h2>Elements</h2>
+<a name="idp26229056"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html
index 193ccdc9..a350e5fd 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26208464"></a><h2>Plugin Information</h2>
+<a name="idp24646064"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp22403024"></a><h2>Elements</h2>
+<a name="idp27001648"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html
index f838f597..fe122ef6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27507216"></a><h2>Plugin Information</h2>
+<a name="idp26563472"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp26738368"></a><h2>Elements</h2>
+<a name="idp26158368"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html
index c7d9cbb3..3fbe4e89 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27615024"></a><h2>Plugin Information</h2>
+<a name="idp27901648"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25496656"></a><h2>Elements</h2>
+<a name="idp22088640"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html
index e14f827e..c451652f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26293072"></a><h2>Plugin Information</h2>
+<a name="idp14512032"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25853392"></a><h2>Elements</h2>
+<a name="idp27030608"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-waveform.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-waveform.html
index b11c9e60..b034e687 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-waveform.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-waveform.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27591808"></a><h2>Plugin Information</h2>
+<a name="idp27861744"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24405152"></a><h2>Elements</h2>
+<a name="idp26202848"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html
index 8467a8dc..69096928 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26564576"></a><h2>Plugin Information</h2>
+<a name="idp27497088"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24911008"></a><h2>Elements</h2>
+<a name="idp27096640"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html
index a39a7362..3abb5bda 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27371120"></a><h2>Plugin Information</h2>
+<a name="idp26152896"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25916176"></a><h2>Elements</h2>
+<a name="idp23164752"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html
index a589727d..831a70a5 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27064656"></a><h2>Plugin Information</h2>
+<a name="idp27136784"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp25485872"></a><h2>Elements</h2>
+<a name="idp23567008"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html
index 82d1f0c1..dcae86f1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp26076992"></a><h2>Plugin Information</h2>
+<a name="idp27888624"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp24911136"></a><h2>Elements</h2>
+<a name="idp25910144"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
index ae39fe58..dafe2f5b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
@@ -29,7 +29,7 @@
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
-<a name="idp27037024"></a><h2>Plugin Information</h2>
+<a name="idp25725456"></a><h2>Plugin Information</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.1.2</td>
+<td>1.1.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -60,7 +60,7 @@
</table></div>
</div>
<div class="refsect1">
-<a name="idp27034192"></a><h2>Elements</h2>
+<a name="idp26770704"></a><h2>Elements</h2>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-pngdec.html b/docs/plugins/html/gst-plugins-good-plugins-pngdec.html
index e71b5de3..895a7714 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-pngdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-pngdec.html
@@ -58,7 +58,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13556896"></a><h3>Element Information</h3>
+<a name="idp13838544"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -84,7 +84,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp8619616"></a><h3>Element Pads</h3>
+<a name="idp9671088"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-pngenc.html b/docs/plugins/html/gst-plugins-good-plugins-pngenc.html
index 8657712a..cd95f1ea 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-pngenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-pngenc.html
@@ -75,7 +75,7 @@ GstPngEnc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp16530336"></a><h3>Element Information</h3>
+<a name="idp13239744"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -101,7 +101,7 @@ GstPngEnc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp15946880"></a><h3>Element Pads</h3>
+<a name="idp13830192"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-progressreport.html b/docs/plugins/html/gst-plugins-good-plugins-progressreport.html
index 3eb43c3b..1cd9c0ba 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-progressreport.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-progressreport.html
@@ -104,7 +104,7 @@ a whole).
<p>
</p>
<div class="refsect2">
-<a name="idp14892784"></a><h3>Example launch line</h3>
+<a name="idp9840784"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -133,7 +133,7 @@ a whole).
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13902208"></a><h3>Element Information</h3>
+<a name="idp17357808"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -159,7 +159,7 @@ a whole).
</div>
<hr>
<div class="refsect2">
-<a name="idp12412560"></a><h3>Element Pads</h3>
+<a name="idp17995904"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-pulsesink.html b/docs/plugins/html/gst-plugins-good-plugins-pulsesink.html
index 66aecbcc..8215531a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-pulsesink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-pulsesink.html
@@ -82,7 +82,7 @@ GstPulseSink implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5958720"></a><h3>Element Information</h3>
+<a name="idp17560496"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -108,7 +108,7 @@ GstPulseSink implements
</div>
<hr>
<div class="refsect2">
-<a name="idp10975536"></a><h3>Element Pads</h3>
+<a name="idp15414768"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -133,11 +133,11 @@ GstPulseSink implements
</tr>
<tr>
<td><p><span class="term"></span></p></td>
-<td> audio/x-alaw, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]</td>
+<td> audio/x-alaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
-<td> audio/x-mulaw, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]</td>
+<td> audio/x-mulaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
@@ -226,7 +226,7 @@ GstPulseSink implements
<a name="GstPulseSink--client-name"></a><h3>The <code class="literal">"client-name"</code> property</h3>
<pre class="programlisting"> "client-name" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write</pre>
<p>The PulseAudio client name to use.</p>
-<p>Default value: "gst-plugins-good-plugins-scan"</p>
+<p>Default value: "lt-gst-plugins-good-plugins-scan"</p>
</div>
</div>
</div>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-pulsesrc.html b/docs/plugins/html/gst-plugins-good-plugins-pulsesrc.html
index 3c3897d9..fb18e773 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-pulsesrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-pulsesrc.html
@@ -85,7 +85,7 @@ GstPulseSrc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp11232992"></a><h3>Element Information</h3>
+<a name="idp16265712"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -111,7 +111,7 @@ GstPulseSrc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp15340320"></a><h3>Element Pads</h3>
+<a name="idp17502160"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -220,7 +220,7 @@ GstPulseSrc implements
<a name="GstPulseSrc--client-name"></a><h3>The <code class="literal">"client-name"</code> property</h3>
<pre class="programlisting"> "client-name" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write</pre>
<p>The PulseAudio client_name_to_use.</p>
-<p>Default value: "gst-plugins-good-plugins-scan"</p>
+<p>Default value: "lt-gst-plugins-good-plugins-scan"</p>
</div>
</div>
</div>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-qtdemux.html b/docs/plugins/html/gst-plugins-good-plugins-qtdemux.html
index db285cba..9e875c84 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-qtdemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-qtdemux.html
@@ -72,7 +72,7 @@ capabilities of the upstream elements.
<p>
</p>
<div class="refsect2">
-<a name="idp13989168"></a><h3>Example launch line</h3>
+<a name="idp11034640"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -96,7 +96,7 @@ Last reviewed on 2006-12-29 (0.10.5)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp17079568"></a><h3>Element Information</h3>
+<a name="idp15752528"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -122,7 +122,7 @@ Last reviewed on 2006-12-29 (0.10.5)
</div>
<hr>
<div class="refsect2">
-<a name="idp17967088"></a><h3>Element Pads</h3>
+<a name="idp16393680"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-qtmoovrecover.html b/docs/plugins/html/gst-plugins-good-plugins-qtmoovrecover.html
index 07c5977f..5ad31cb3 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-qtmoovrecover.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-qtmoovrecover.html
@@ -81,7 +81,7 @@ GstQTMoovRecover implements
<p>
</p>
<div class="refsect2">
-<a name="idp13633488"></a><h3>Example pipelines</h3>
+<a name="idp14630352"></a><h3>Example pipelines</h3>
<p>
This element recovers quicktime files created with qtmux using the moov
recovery feature.
@@ -102,7 +102,7 @@ Documentation last reviewed on 2011-04-21
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp16693408"></a><h3>Element Information</h3>
+<a name="idp14945360"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -128,7 +128,7 @@ Documentation last reviewed on 2011-04-21
</div>
<hr>
<div class="refsect2">
-<a name="idp11609568"></a><h3>Element Pads</h3>
+<a name="idp16553664"></a><h3>Element Pads</h3>
</div>
</div>
<p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-qtmux.html b/docs/plugins/html/gst-plugins-good-plugins-qtmux.html
index daa2a4ce..713febc6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-qtmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-qtmux.html
@@ -120,7 +120,7 @@ index metadata (at the end of file).
<p>
</p>
<div class="refsect2">
-<a name="idp15206944"></a><h3>Example pipelines</h3>
+<a name="idp14707760"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -142,7 +142,7 @@ Last reviewed on 2010-12-03
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14124592"></a><h3>Element Information</h3>
+<a name="idp10706192"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -168,7 +168,7 @@ Last reviewed on 2010-12-03
</div>
<hr>
<div class="refsect2">
-<a name="idp17541040"></a><h3>Element Pads</h3>
+<a name="idp15020240"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-quarktv.html b/docs/plugins/html/gst-plugins-good-plugins-quarktv.html
index 16f5554f..820e60ce 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-quarktv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-quarktv.html
@@ -72,7 +72,7 @@ of the video along each line.
<p>
</p>
<div class="refsect2">
-<a name="idp15943808"></a><h3>Example launch line</h3>
+<a name="idp15445472"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -90,7 +90,7 @@ of the video along each line.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp2854192"></a><h3>Element Information</h3>
+<a name="idp8746064"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -116,7 +116,7 @@ of the video along each line.
</div>
<hr>
<div class="refsect2">
-<a name="idp14819328"></a><h3>Element Pads</h3>
+<a name="idp15104272"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-radioactv.html b/docs/plugins/html/gst-plugins-good-plugins-radioactv.html
index 347356bf..0b9d1516 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-radioactv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-radioactv.html
@@ -83,7 +83,7 @@ previous frame displayed. The effect of strobe2 is stronger than strobe1.
<p>
</p>
<div class="refsect2">
-<a name="idp16174128"></a><h3>Example launch line</h3>
+<a name="idp19119904"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -101,7 +101,7 @@ previous frame displayed. The effect of strobe2 is stronger than strobe1.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp15350720"></a><h3>Element Information</h3>
+<a name="idp9299584"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -127,7 +127,7 @@ previous frame displayed. The effect of strobe2 is stronger than strobe1.
</div>
<hr>
<div class="refsect2">
-<a name="idp15266832"></a><h3>Element Pads</h3>
+<a name="idp17763520"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-revtv.html b/docs/plugins/html/gst-plugins-good-plugins-revtv.html
index 81de59c0..74534df0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-revtv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-revtv.html
@@ -69,7 +69,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp15351008"></a><h3>Element Information</h3>
+<a name="idp17971680"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -95,7 +95,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp13992896"></a><h3>Element Pads</h3>
+<a name="idp14027136"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rganalysis.html b/docs/plugins/html/gst-plugins-good-plugins-rganalysis.html
index 88c8debd..8c0a98cf 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rganalysis.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rganalysis.html
@@ -90,7 +90,7 @@ an album, not just the last one.
<p>
</p>
<div class="refsect2">
-<a name="idp13417664"></a><h3>Example launch lines</h3>
+<a name="idp16257424"></a><h3>Example launch lines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -138,7 +138,7 @@ property documentation for more information.
</p>
<hr>
<div class="refsect2">
-<a name="idp17562416"></a><h3>Acknowledgements</h3>
+<a name="idp15399744"></a><h3>Acknowledgements</h3>
<p>
This element is based on code used in the <a class="ulink" href="http://sjeng.org/vorbisgain.html" target="_top">vorbisgain</a> program and many
others. The relevant parts are copyrighted by David Robinson, Glen Sawyer
@@ -150,7 +150,7 @@ and Frank Klemm.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp17435440"></a><h3>Element Information</h3>
+<a name="idp17658128"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -176,7 +176,7 @@ and Frank Klemm.
</div>
<hr>
<div class="refsect2">
-<a name="idp16218992"></a><h3>Element Pads</h3>
+<a name="idp19113808"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rglimiter.html b/docs/plugins/html/gst-plugins-good-plugins-rglimiter.html
index cde19ccb..c58f877a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rglimiter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rglimiter.html
@@ -71,7 +71,7 @@ threshold of -6 dB. This type of filter is mentioned in the proposed <a class="
<p>
</p>
<div class="refsect2">
-<a name="idp17450096"></a><h3>Example launch line</h3>
+<a name="idp14009856"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -93,7 +93,7 @@ Playback of a file
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp8747936"></a><h3>Element Information</h3>
+<a name="idp16277152"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -119,7 +119,7 @@ Playback of a file
</div>
<hr>
<div class="refsect2">
-<a name="idp18898784"></a><h3>Element Pads</h3>
+<a name="idp15866256"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rgvolume.html b/docs/plugins/html/gst-plugins-good-plugins-rgvolume.html
index 599cba87..2af777c1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rgvolume.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rgvolume.html
@@ -104,7 +104,7 @@ element applies -6 dB hard limiting as mentioned in the ReplayGain standard.
<p>
</p>
<div class="refsect2">
-<a name="idp19002800"></a><h3>Example launch line</h3>
+<a name="idp13112720"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -124,7 +124,7 @@ element applies -6 dB hard limiting as mentioned in the ReplayGain standard.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp17815248"></a><h3>Element Information</h3>
+<a name="idp17968576"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -150,7 +150,7 @@ element applies -6 dB hard limiting as mentioned in the ReplayGain standard.
</div>
<hr>
<div class="refsect2">
-<a name="idp14617808"></a><h3>Element Pads</h3>
+<a name="idp14656864"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rippletv.html b/docs/plugins/html/gst-plugins-good-plugins-rippletv.html
index 550e51e5..83cfb64e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rippletv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rippletv.html
@@ -72,7 +72,7 @@ by motion or random rain drops.
<p>
</p>
<div class="refsect2">
-<a name="idp18308720"></a><h3>Example launch line</h3>
+<a name="idp17710736"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -90,7 +90,7 @@ by motion or random rain drops.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14880432"></a><h3>Element Information</h3>
+<a name="idp6396880"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -116,7 +116,7 @@ by motion or random rain drops.
</div>
<hr>
<div class="refsect2">
-<a name="idp17911536"></a><h3>Element Pads</h3>
+<a name="idp16630976"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpL16depay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpL16depay.html
index dde7fbba..d8751666 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpL16depay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpL16depay.html
@@ -62,7 +62,7 @@ For detailed information see: http://www.rfc-editor.org/rfc/rfc3551.txt
<p>
</p>
<div class="refsect2">
-<a name="idp16065872"></a><h3>Example pipeline</h3>
+<a name="idp18776976"></a><h3>Example pipeline</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -84,7 +84,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp16529344"></a><h3>Element Information</h3>
+<a name="idp13813792"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -110,7 +110,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp13216880"></a><h3>Element Pads</h3>
+<a name="idp16619072"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpL16pay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpL16pay.html
index 5dd15c79..fdfd3e20 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpL16pay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpL16pay.html
@@ -63,7 +63,7 @@ For detailed information see: http://www.rfc-editor.org/rfc/rfc3551.txt
<p>
</p>
<div class="refsect2">
-<a name="idp17896736"></a><h3>Example pipeline</h3>
+<a name="idp18591584"></a><h3>Example pipeline</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -85,7 +85,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp17547984"></a><h3>Element Information</h3>
+<a name="idp17616512"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -111,7 +111,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp13373584"></a><h3>Element Pads</h3>
+<a name="idp10978000"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpac3depay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpac3depay.html
index cba4d0e3..c7ba043a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpac3depay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpac3depay.html
@@ -62,7 +62,7 @@ For detailed information see: http://www.rfc-editor.org/rfc/rfc4184.txt
<p>
</p>
<div class="refsect2">
-<a name="idp12935200"></a><h3>Example pipeline</h3>
+<a name="idp19102912"></a><h3>Example pipeline</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -84,7 +84,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp17437136"></a><h3>Element Information</h3>
+<a name="idp16948928"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -110,7 +110,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp16239920"></a><h3>Element Pads</h3>
+<a name="idp14404848"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpac3pay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpac3pay.html
index 0f78cec9..7ee0a588 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpac3pay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpac3pay.html
@@ -62,7 +62,7 @@ For detailed information see: http://www.rfc-editor.org/rfc/rfc4184.txt
<p>
</p>
<div class="refsect2">
-<a name="idp13604224"></a><h3>Example pipeline</h3>
+<a name="idp17839296"></a><h3>Example pipeline</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -84,7 +84,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18588384"></a><h3>Element Information</h3>
+<a name="idp17706992"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -110,7 +110,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp2044304"></a><h3>Element Pads</h3>
+<a name="idp12760128"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpamrdepay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpamrdepay.html
index fb4f9b4a..c84a040f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpamrdepay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpamrdepay.html
@@ -62,7 +62,7 @@ For detailed information see: http://www.rfc-editor.org/rfc/rfc3267.txt
<p>
</p>
<div class="refsect2">
-<a name="idp15313200"></a><h3>Example pipeline</h3>
+<a name="idp17936544"></a><h3>Example pipeline</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -84,7 +84,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14843760"></a><h3>Element Information</h3>
+<a name="idp17734032"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -110,7 +110,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp19151408"></a><h3>Element Pads</h3>
+<a name="idp18103008"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpamrpay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpamrpay.html
index 4878e2ba..45b0cc3c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpamrpay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpamrpay.html
@@ -62,7 +62,7 @@ For detailed information see: http://www.rfc-editor.org/rfc/rfc3267.txt
<p>
</p>
<div class="refsect2">
-<a name="idp14411824"></a><h3>Example pipeline</h3>
+<a name="idp16474080"></a><h3>Example pipeline</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -84,7 +84,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp16919760"></a><h3>Element Information</h3>
+<a name="idp18410512"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -110,7 +110,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp16384240"></a><h3>Element Pads</h3>
+<a name="idp17521424"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html b/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html
index ac1d7ee3..aab5cd11 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html
@@ -79,6 +79,7 @@ GstRtpBin implements
"<a class="link" href="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--rtcp-sync" title='The "rtcp-sync" property'>rtcp-sync</a>" <span class="type">GstRTCPSync</span> : Read / Write
"<a class="link" href="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--rtcp-sync-interval" title='The "rtcp-sync-interval" property'>rtcp-sync-interval</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write
"<a class="link" href="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--drop-on-latency" title='The "drop-on-latency" property'>drop-on-latency</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write
+ "<a class="link" href="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--do-sync-event" title='The "do-sync-event" property'>do-sync-event</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write
</pre>
</div>
<div class="refsect1">
@@ -156,7 +157,7 @@ internal source and other sources.
<p>
</p>
<div class="refsect2">
-<a name="idp20609360"></a><h3>Example pipelines</h3>
+<a name="idp19660352"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -253,7 +254,7 @@ Last reviewed on 2007-08-30 (0.10.6)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20616976"></a><h3>Element Information</h3>
+<a name="idp19667968"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -279,7 +280,7 @@ Last reviewed on 2007-08-30 (0.10.6)
</div>
<hr>
<div class="refsect2">
-<a name="idp20624432"></a><h3>Element Pads</h3>
+<a name="idp19675424"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -515,6 +516,13 @@ Last reviewed on 2007-08-30 (0.10.6)
<p>Tells the jitterbuffer to never exceed the given latency in size.</p>
<p>Default value: FALSE</p>
</div>
+<hr>
+<div class="refsect2">
+<a name="GstRtpBin--do-sync-event"></a><h3>The <code class="literal">"do-sync-event"</code> property</h3>
+<pre class="programlisting"> "do-sync-event" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre>
+<p>Send event downstream when a stream is synchronized to the sender.</p>
+<p>Default value: FALSE</p>
+</div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rtpbin.signal-details"></a><h2>Signal Details</h2>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpbvdepay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpbvdepay.html
index 03e47655..e907f267 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpbvdepay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpbvdepay.html
@@ -51,7 +51,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13216624"></a><h3>Element Information</h3>
+<a name="idp17388992"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -77,7 +77,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp18808064"></a><h3>Element Pads</h3>
+<a name="idp17617728"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpbvpay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpbvpay.html
index 2e5af86e..0eb816a2 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpbvpay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpbvpay.html
@@ -51,7 +51,7 @@ Last reviewed on 2013-04-25 (1.1.0)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18820528"></a><h3>Element Information</h3>
+<a name="idp18876032"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -77,7 +77,7 @@ Last reviewed on 2013-04-25 (1.1.0)
</div>
<hr>
<div class="refsect2">
-<a name="idp13365888"></a><h3>Element Pads</h3>
+<a name="idp10876752"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpdec.html b/docs/plugins/html/gst-plugins-good-plugins-rtpdec.html
index 2271c374..dec9939a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpdec.html
@@ -87,7 +87,7 @@ Last reviewed on 2006-06-20 (0.10.4)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp12935072"></a><h3>Element Information</h3>
+<a name="idp18373456"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -113,7 +113,7 @@ Last reviewed on 2006-06-20 (0.10.4)
</div>
<hr>
<div class="refsect2">
-<a name="idp14688224"></a><h3>Element Pads</h3>
+<a name="idp15381312"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfmux.html b/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfmux.html
index 601e5c54..139ba9f3 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfmux.html
@@ -69,7 +69,7 @@ DTMF signal can replace the recorded audio while the tone is being sent.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18793952"></a><h3>Element Information</h3>
+<a name="idp18959024"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -95,7 +95,7 @@ DTMF signal can replace the recorded audio while the tone is being sent.
</div>
<hr>
<div class="refsect2">
-<a name="idp15822704"></a><h3>Element Pads</h3>
+<a name="idp10355584"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfsrc.html b/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfsrc.html
index 8d19e532..c05e46b0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfsrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpdtmfsrc.html
@@ -168,7 +168,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18258736"></a><h3>Element Information</h3>
+<a name="idp19986336"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -194,7 +194,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the
</div>
<hr>
<div class="refsect2">
-<a name="idp15822960"></a><h3>Element Pads</h3>
+<a name="idp20632288"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpj2kpay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpj2kpay.html
index dd78c6c2..f4f2fd0e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpj2kpay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpj2kpay.html
@@ -75,7 +75,7 @@ codestream.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp14631712"></a><h3>Element Information</h3>
+<a name="idp14328288"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -101,7 +101,7 @@ codestream.
</div>
<hr>
<div class="refsect2">
-<a name="idp20087776"></a><h3>Element Pads</h3>
+<a name="idp20176560"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html b/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html
index 70a39260..d433e9b9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html
@@ -82,7 +82,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp19576432"></a><h3>Element Information</h3>
+<a name="idp20400000"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -108,7 +108,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp19638416"></a><h3>Element Pads</h3>
+<a name="idp17976864"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpjpegpay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpjpegpay.html
index cef8b45f..55341efb 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpjpegpay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpjpegpay.html
@@ -80,7 +80,7 @@ The payloader assumes that correct width and height is found in the caps.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp19904880"></a><h3>Element Information</h3>
+<a name="idp14752912"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -106,7 +106,7 @@ The payloader assumes that correct width and height is found in the caps.
</div>
<hr>
<div class="refsect2">
-<a name="idp12353120"></a><h3>Element Pads</h3>
+<a name="idp19101808"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpmux.html b/docs/plugins/html/gst-plugins-good-plugins-rtpmux.html
index fe176c9c..eb172285 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpmux.html
@@ -73,7 +73,7 @@ muxes into a single stream with a single SSRC.
<p>
</p>
<div class="refsect2">
-<a name="idp16057568"></a><h3>Example pipelines</h3>
+<a name="idp17947456"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -107,7 +107,7 @@ Last reviewed on 2010-09-30 (0.10.21)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20164288"></a><h3>Element Information</h3>
+<a name="idp18114512"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -133,7 +133,7 @@ Last reviewed on 2010-09-30 (0.10.21)
</div>
<hr>
<div class="refsect2">
-<a name="idp14784768"></a><h3>Element Pads</h3>
+<a name="idp18151664"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpptdemux.html b/docs/plugins/html/gst-plugins-good-plugins-rtpptdemux.html
index 04296620..a0939374 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpptdemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpptdemux.html
@@ -68,7 +68,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18704016"></a><h3>Element Information</h3>
+<a name="idp14180896"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -94,7 +94,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp16942048"></a><h3>Element Pads</h3>
+<a name="idp17901792"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpsbcpay.html b/docs/plugins/html/gst-plugins-good-plugins-rtpsbcpay.html
index e5ff1117..160d4d4a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpsbcpay.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpsbcpay.html
@@ -66,7 +66,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20126432"></a><h3>Element Information</h3>
+<a name="idp20237344"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -92,7 +92,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp15466496"></a><h3>Element Pads</h3>
+<a name="idp16984944"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpsession.html b/docs/plugins/html/gst-plugins-good-plugins-rtpsession.html
index e843158f..ce787d8f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpsession.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpsession.html
@@ -94,7 +94,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp19928160"></a><h3>Element Information</h3>
+<a name="idp18169504"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -120,7 +120,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp17619760"></a><h3>Element Pads</h3>
+<a name="idp20688144"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpssrcdemux.html b/docs/plugins/html/gst-plugins-good-plugins-rtpssrcdemux.html
index 78f4a530..48a86748 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpssrcdemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpssrcdemux.html
@@ -67,7 +67,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20646592"></a><h3>Element Information</h3>
+<a name="idp15449616"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -93,7 +93,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp5489984"></a><h3>Element Pads</h3>
+<a name="idp17080976"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html b/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
index cce478cd..3e9f03d8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
@@ -138,7 +138,7 @@ PLAYING state.
<p>
</p>
<div class="refsect2">
-<a name="idp20040016"></a><h3>Example launch line</h3>
+<a name="idp18139184"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -160,7 +160,7 @@ Last reviewed on 2006-08-18 (0.10.5)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20069504"></a><h3>Element Information</h3>
+<a name="idp18142048"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -186,7 +186,7 @@ Last reviewed on 2006-08-18 (0.10.5)
</div>
<hr>
<div class="refsect2">
-<a name="idp20207648"></a><h3>Element Pads</h3>
+<a name="idp18682944"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-sbcparse.html b/docs/plugins/html/gst-plugins-good-plugins-sbcparse.html
index 0c8909f5..cfda3818 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-sbcparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-sbcparse.html
@@ -62,7 +62,7 @@ frames and timestamp them properly.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp21845472"></a><h3>Element Information</h3>
+<a name="idp19158912"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -88,7 +88,7 @@ frames and timestamp them properly.
</div>
<hr>
<div class="refsect2">
-<a name="idp5823488"></a><h3>Element Pads</h3>
+<a name="idp19324848"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-scaletempo.html b/docs/plugins/html/gst-plugins-good-plugins-scaletempo.html
index d46ab802..8c2dfa94 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-scaletempo.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-scaletempo.html
@@ -77,7 +77,7 @@ Use Sceletempo to apply playback rates without the chipmunk effect.
<p>
</p>
<div class="refsect2">
-<a name="idp10147952"></a><h3>Example pipelines</h3>
+<a name="idp20732640"></a><h3>Example pipelines</h3>
<p>
</p>
<div class="informalexample">
@@ -135,7 +135,7 @@ the algoritm looks.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18367216"></a><h3>Element Information</h3>
+<a name="idp19569168"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -161,7 +161,7 @@ the algoritm looks.
</div>
<hr>
<div class="refsect2">
-<a name="idp12706064"></a><h3>Element Pads</h3>
+<a name="idp14956896"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-shagadelictv.html b/docs/plugins/html/gst-plugins-good-plugins-shagadelictv.html
index 3dbc6dbe..92bcdc30 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-shagadelictv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-shagadelictv.html
@@ -62,7 +62,7 @@ Oh behave, ShagedelicTV makes images shagadelic!
<p>
</p>
<div class="refsect2">
-<a name="idp12809520"></a><h3>Example launch line</h3>
+<a name="idp16318832"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -80,7 +80,7 @@ Oh behave, ShagedelicTV makes images shagadelic!
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp15318576"></a><h3>Element Information</h3>
+<a name="idp19340448"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -106,7 +106,7 @@ Oh behave, ShagedelicTV makes images shagadelic!
</div>
<hr>
<div class="refsect2">
-<a name="idp16711568"></a><h3>Element Pads</h3>
+<a name="idp22237504"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-shapewipe.html b/docs/plugins/html/gst-plugins-good-plugins-shapewipe.html
index 49b79e9b..27c94162 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-shapewipe.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-shapewipe.html
@@ -77,7 +77,7 @@ page.
<p>
</p>
<div class="refsect2">
-<a name="idp19449664"></a><h3>Example launch line</h3>
+<a name="idp20484256"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -95,7 +95,7 @@ page.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp13166800"></a><h3>Element Information</h3>
+<a name="idp20686336"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -121,7 +121,7 @@ page.
</div>
<hr>
<div class="refsect2">
-<a name="idp16658832"></a><h3>Element Pads</h3>
+<a name="idp17798880"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-smpte.html b/docs/plugins/html/gst-plugins-good-plugins-smpte.html
index 9772eb7c..aef65475 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-smpte.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-smpte.html
@@ -80,7 +80,7 @@ banding.
<p>
</p>
<div class="refsect2">
-<a name="idp17804352"></a><h3>Sample pipelines</h3>
+<a name="idp21354144"></a><h3>Sample pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -101,7 +101,7 @@ edges of the transition are smoothed with a 20000 big border.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20131088"></a><h3>Element Information</h3>
+<a name="idp17786544"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -127,7 +127,7 @@ edges of the transition are smoothed with a 20000 big border.
</div>
<hr>
<div class="refsect2">
-<a name="idp18767456"></a><h3>Element Pads</h3>
+<a name="idp22004080"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-smptealpha.html b/docs/plugins/html/gst-plugins-good-plugins-smptealpha.html
index c5b8bd20..0898bdc4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-smptealpha.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-smptealpha.html
@@ -87,7 +87,7 @@ avoid banding.
<p>
</p>
<div class="refsect2">
-<a name="idp20486816"></a><h3>Sample pipelines</h3>
+<a name="idp17713136"></a><h3>Sample pipelines</h3>
<p>
Here is a pipeline to demonstrate the smpte transition :
</p>
@@ -106,7 +106,7 @@ transparent image. The edges of the transition are smoothed with a
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp21775280"></a><h3>Element Information</h3>
+<a name="idp15492912"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -132,7 +132,7 @@ transparent image. The edges of the transition are smoothed with a
</div>
<hr>
<div class="refsect2">
-<a name="idp19446880"></a><h3>Element Pads</h3>
+<a name="idp20385664"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-souphttpsrc.html b/docs/plugins/html/gst-plugins-good-plugins-souphttpsrc.html
index bee9acbf..1a86869b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-souphttpsrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-souphttpsrc.html
@@ -91,7 +91,7 @@ GstSoupHTTPSrc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp22749904"></a><h3>Element Information</h3>
+<a name="idp21307136"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -117,7 +117,7 @@ GstSoupHTTPSrc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp22084160"></a><h3>Element Pads</h3>
+<a name="idp17377344"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-spectrum.html b/docs/plugins/html/gst-plugins-good-plugins-spectrum.html
index b80775e5..a4adc017 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-spectrum.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-spectrum.html
@@ -132,7 +132,7 @@ channels and the second dimension are the values.
<p>
</p>
<div class="refsect2">
-<a name="idp19280448"></a><h3>Example application</h3>
+<a name="idp17847744"></a><h3>Example application</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -351,7 +351,7 @@ channels and the second dimension are the values.
spectrum <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html#gst-element-factory-make">gst_element_factory_make</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;spectrum&quot;</span><span class="gtkdoc opt">,</span> <span class="string">&quot;spectrum&quot;</span><span class="gtkdoc opt">);</span>
<span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-set">g_object_set</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a></span> <span class="gtkdoc opt">(</span>spectrum<span class="gtkdoc opt">),</span> <span class="string">&quot;bands&quot;</span><span class="gtkdoc opt">,</span> spect_bands<span class="gtkdoc opt">,</span> <span class="string">&quot;threshold&quot;</span><span class="gtkdoc opt">, -</span><span class="number">80</span><span class="gtkdoc opt">,</span>
- <span class="string">&quot;message&quot;</span><span class="gtkdoc opt">,</span> TRUE<span class="gtkdoc opt">,</span> <span class="string">&quot;message-phase&quot;</span><span class="gtkdoc opt">,</span> TRUE<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
+ <span class="string">&quot;post-messages&quot;</span><span class="gtkdoc opt">,</span> TRUE<span class="gtkdoc opt">,</span> <span class="string">&quot;message-phase&quot;</span><span class="gtkdoc opt">,</span> TRUE<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
sink <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html#gst-element-factory-make">gst_element_factory_make</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;fakesink&quot;</span><span class="gtkdoc opt">,</span> <span class="string">&quot;sink&quot;</span><span class="gtkdoc opt">);</span>
<span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-set">g_object_set</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a></span> <span class="gtkdoc opt">(</span>sink<span class="gtkdoc opt">),</span> <span class="string">&quot;sync&quot;</span><span class="gtkdoc opt">,</span> TRUE<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
@@ -399,7 +399,7 @@ Last reviewed on 2011-03-10 (0.10.29)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18798464"></a><h3>Element Information</h3>
+<a name="idp17850720"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -425,7 +425,7 @@ Last reviewed on 2011-03-10 (0.10.29)
</div>
<hr>
<div class="refsect2">
-<a name="idp16674192"></a><h3>Element Pads</h3>
+<a name="idp21928288"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-speexdec.html b/docs/plugins/html/gst-plugins-good-plugins-speexdec.html
index b897bd7c..91dec4f5 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-speexdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-speexdec.html
@@ -66,7 +66,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp15659776"></a><h3>Element Information</h3>
+<a name="idp22794304"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -92,7 +92,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp15537584"></a><h3>Element Pads</h3>
+<a name="idp19431280"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-speexenc.html b/docs/plugins/html/gst-plugins-good-plugins-speexenc.html
index bf858521..dfcc8d36 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-speexenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-speexenc.html
@@ -83,7 +83,7 @@ GstSpeexEnc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp17926832"></a><h3>Element Information</h3>
+<a name="idp16922048"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -109,7 +109,7 @@ GstSpeexEnc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp22422992"></a><h3>Element Pads</h3>
+<a name="idp22065408"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-splitfilesrc.html b/docs/plugins/html/gst-plugins-good-plugins-splitfilesrc.html
index 444adeed..432597e8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-splitfilesrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-splitfilesrc.html
@@ -85,7 +85,7 @@ directories). The results will be sorted.
<p>
</p>
<div class="refsect2">
-<a name="idp19158144"></a><h3>Example launch lines</h3>
+<a name="idp22766080"></a><h3>Example launch lines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -114,7 +114,7 @@ directories). The results will be sorted.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp21955568"></a><h3>Element Information</h3>
+<a name="idp23240192"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -140,7 +140,7 @@ directories). The results will be sorted.
</div>
<hr>
<div class="refsect2">
-<a name="idp20463072"></a><h3>Element Pads</h3>
+<a name="idp19964944"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-streaktv.html b/docs/plugins/html/gst-plugins-good-plugins-streaktv.html
index 27960532..d1b54afb 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-streaktv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-streaktv.html
@@ -70,7 +70,7 @@ StreakTV makes after images of moving objects.
<p>
</p>
<div class="refsect2">
-<a name="idp6328688"></a><h3>Example launch line</h3>
+<a name="idp22939040"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -88,7 +88,7 @@ StreakTV makes after images of moving objects.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp5730240"></a><h3>Element Information</h3>
+<a name="idp22195120"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -114,7 +114,7 @@ StreakTV makes after images of moving objects.
</div>
<hr>
<div class="refsect2">
-<a name="idp21689312"></a><h3>Element Pads</h3>
+<a name="idp19252704"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-taginject.html b/docs/plugins/html/gst-plugins-good-plugins-taginject.html
index 4c7ca9c8..76517ce6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-taginject.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-taginject.html
@@ -70,7 +70,7 @@ unmodified.
<p>
</p>
<div class="refsect2">
-<a name="idp21637472"></a><h3>Example launch lines</h3>
+<a name="idp19261328"></a><h3>Example launch lines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -99,7 +99,7 @@ unmodified.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18914784"></a><h3>Element Information</h3>
+<a name="idp15819856"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -125,7 +125,7 @@ unmodified.
</div>
<hr>
<div class="refsect2">
-<a name="idp22777376"></a><h3>Element Pads</h3>
+<a name="idp13997744"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-udpsink.html b/docs/plugins/html/gst-plugins-good-plugins-udpsink.html
index e72eb94c..cd267c0c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-udpsink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-udpsink.html
@@ -80,7 +80,7 @@ It can be combined with RTP payloaders to implement RTP streaming.
<p>
</p>
<div class="refsect2">
-<a name="idp20366480"></a><h3>Examples</h3>
+<a name="idp14060480"></a><h3>Examples</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -98,7 +98,7 @@ It can be combined with RTP payloaders to implement RTP streaming.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp21894800"></a><h3>Element Information</h3>
+<a name="idp18046656"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -124,7 +124,7 @@ It can be combined with RTP payloaders to implement RTP streaming.
</div>
<hr>
<div class="refsect2">
-<a name="idp21567760"></a><h3>Element Pads</h3>
+<a name="idp13477680"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-udpsrc.html b/docs/plugins/html/gst-plugins-good-plugins-udpsrc.html
index 1da6d372..29dadace 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-udpsrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-udpsrc.html
@@ -161,7 +161,7 @@ is responsible for closing the file descriptor.
<p>
</p>
<div class="refsect2">
-<a name="idp23149408"></a><h3>Examples</h3>
+<a name="idp17954336"></a><h3>Examples</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -207,7 +207,7 @@ Last reviewed on 2007-09-20 (0.10.7)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp22406192"></a><h3>Element Information</h3>
+<a name="idp22791248"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -233,7 +233,7 @@ Last reviewed on 2007-09-20 (0.10.7)
</div>
<hr>
<div class="refsect2">
-<a name="idp21070560"></a><h3>Element Pads</h3>
+<a name="idp22856800"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-v4l2radio.html b/docs/plugins/html/gst-plugins-good-plugins-v4l2radio.html
index 424ae3ab..75b1fe9b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-v4l2radio.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-v4l2radio.html
@@ -74,7 +74,7 @@ GstV4l2Radio implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp22480080"></a><h3>Element Information</h3>
+<a name="idp19930352"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -100,7 +100,7 @@ GstV4l2Radio implements
</div>
<hr>
<div class="refsect2">
-<a name="idp19050880"></a><h3>Element Pads</h3>
+<a name="idp22805600"></a><h3>Element Pads</h3>
</div>
</div>
<p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-v4l2sink.html b/docs/plugins/html/gst-plugins-good-plugins-v4l2sink.html
index 00fae9fd..69260ba5 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-v4l2sink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-v4l2sink.html
@@ -97,7 +97,7 @@ GstV4l2Sink implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp21954112"></a><h3>Element Information</h3>
+<a name="idp22944176"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -123,7 +123,7 @@ GstV4l2Sink implements
</div>
<hr>
<div class="refsect2">
-<a name="idp20516960"></a><h3>Element Pads</h3>
+<a name="idp21911632"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-v4l2src.html b/docs/plugins/html/gst-plugins-good-plugins-v4l2src.html
index 6c3696d3..20fda240 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-v4l2src.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-v4l2src.html
@@ -98,7 +98,7 @@ GstV4l2Src implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp21954384"></a><h3>Element Information</h3>
+<a name="idp22730208"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -124,7 +124,7 @@ GstV4l2Src implements
</div>
<hr>
<div class="refsect2">
-<a name="idp18838560"></a><h3>Element Pads</h3>
+<a name="idp18921328"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-vertigotv.html b/docs/plugins/html/gst-plugins-good-plugins-vertigotv.html
index acb48635..d96b4574 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-vertigotv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-vertigotv.html
@@ -79,7 +79,7 @@ VertigoTV is a loopback alpha blending effector with rotating and scaling.
<p>
</p>
<div class="refsect2">
-<a name="idp20200016"></a><h3>Example launch line</h3>
+<a name="idp11015664"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -97,7 +97,7 @@ VertigoTV is a loopback alpha blending effector with rotating and scaling.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp18595744"></a><h3>Element Information</h3>
+<a name="idp24293376"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -123,7 +123,7 @@ VertigoTV is a loopback alpha blending effector with rotating and scaling.
</div>
<hr>
<div class="refsect2">
-<a name="idp21148352"></a><h3>Element Pads</h3>
+<a name="idp21378480"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-videobalance.html b/docs/plugins/html/gst-plugins-good-plugins-videobalance.html
index 3958d325..f0f51787 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-videobalance.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-videobalance.html
@@ -81,7 +81,7 @@ Adjusts brightness, contrast, hue, saturation on a video stream.
<p>
</p>
<div class="refsect2">
-<a name="idp18703072"></a><h3>Example launch line</h3>
+<a name="idp24844112"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -103,7 +103,7 @@ Last reviewed on 2010-04-18 (0.10.22)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20200176"></a><h3>Element Information</h3>
+<a name="idp20664272"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -129,7 +129,7 @@ Last reviewed on 2010-04-18 (0.10.22)
</div>
<hr>
<div class="refsect2">
-<a name="idp16867104"></a><h3>Element Pads</h3>
+<a name="idp23922080"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-videobox.html b/docs/plugins/html/gst-plugins-good-plugins-videobox.html
index bbb3d7c6..b2cb7547 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-videobox.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-videobox.html
@@ -122,7 +122,7 @@ Sample pipeline:
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp23855600"></a><h3>Element Information</h3>
+<a name="idp23831008"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -148,7 +148,7 @@ Sample pipeline:
</div>
<hr>
<div class="refsect2">
-<a name="idp22156112"></a><h3>Element Pads</h3>
+<a name="idp22296016"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-videocrop.html b/docs/plugins/html/gst-plugins-good-plugins-videocrop.html
index bd59b8f9..3a69f885 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-videocrop.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-videocrop.html
@@ -92,7 +92,7 @@ most use cases, but it might matter for yours.
<p>
</p>
<div class="refsect2">
-<a name="idp20648320"></a><h3>Example launch line</h3>
+<a name="idp23587120"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -110,7 +110,7 @@ most use cases, but it might matter for yours.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp23616976"></a><h3>Element Information</h3>
+<a name="idp21312448"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -136,7 +136,7 @@ most use cases, but it might matter for yours.
</div>
<hr>
<div class="refsect2">
-<a name="idp18971696"></a><h3>Element Pads</h3>
+<a name="idp20397952"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-videoflip.html b/docs/plugins/html/gst-plugins-good-plugins-videoflip.html
index 238a1a0c..28ddcf86 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-videoflip.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-videoflip.html
@@ -71,7 +71,7 @@ Flips and rotates video.
<p>
</p>
<div class="refsect2">
-<a name="idp23604960"></a><h3>Example launch line</h3>
+<a name="idp20546512"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -92,7 +92,7 @@ Last reviewed on 2010-04-18 (0.10.22)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp10678912"></a><h3>Element Information</h3>
+<a name="idp23850656"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -118,7 +118,7 @@ Last reviewed on 2010-04-18 (0.10.22)
</div>
<hr>
<div class="refsect2">
-<a name="idp23961728"></a><h3>Element Pads</h3>
+<a name="idp19541248"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-videomixer.html b/docs/plugins/html/gst-plugins-good-plugins-videomixer.html
index 9d9a0497..19a696d0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-videomixer.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-videomixer.html
@@ -59,7 +59,7 @@ Individual parameters for each input stream can be configured on the
<p>
</p>
<div class="refsect2">
-<a name="idp19230608"></a><h3>Sample pipelines</h3>
+<a name="idp18939600"></a><h3>Sample pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -160,7 +160,7 @@ framerate of the output video is 10 frames per second.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp16547136"></a><h3>Element Information</h3>
+<a name="idp23594992"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -186,7 +186,7 @@ framerate of the output video is 10 frames per second.
</div>
<hr>
<div class="refsect2">
-<a name="idp23241472"></a><h3>Element Pads</h3>
+<a name="idp10161952"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-vp8dec.html b/docs/plugins/html/gst-plugins-good-plugins-vp8dec.html
index 317abe41..ab130f9d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-vp8dec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-vp8dec.html
@@ -70,7 +70,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp22516320"></a><h3>Element Information</h3>
+<a name="idp10298048"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -96,7 +96,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp21321776"></a><h3>Element Pads</h3>
+<a name="idp24277024"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-vp8enc.html b/docs/plugins/html/gst-plugins-good-plugins-vp8enc.html
index c8a87fb1..20401288 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-vp8enc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-vp8enc.html
@@ -132,7 +132,7 @@ GstVP8Enc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp25147936"></a><h3>Element Information</h3>
+<a name="idp24900656"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -158,7 +158,7 @@ GstVP8Enc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp25155344"></a><h3>Element Pads</h3>
+<a name="idp24908064"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-warptv.html b/docs/plugins/html/gst-plugins-good-plugins-warptv.html
index 3c45109e..cbb81331 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-warptv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-warptv.html
@@ -62,7 +62,7 @@ WarpTV does realtime goo'ing of the video input.
<p>
</p>
<div class="refsect2">
-<a name="idp21797648"></a><h3>Example launch line</h3>
+<a name="idp23383952"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -80,7 +80,7 @@ WarpTV does realtime goo'ing of the video input.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp23932944"></a><h3>Element Information</h3>
+<a name="idp18492848"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -106,7 +106,7 @@ WarpTV does realtime goo'ing of the video input.
</div>
<hr>
<div class="refsect2">
-<a name="idp23695440"></a><h3>Element Pads</h3>
+<a name="idp23459152"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-waveformsink.html b/docs/plugins/html/gst-plugins-good-plugins-waveformsink.html
index 22893962..0ab448de 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-waveformsink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-waveformsink.html
@@ -45,7 +45,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp25057792"></a><h3>Element Information</h3>
+<a name="idp3411744"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -71,7 +71,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp23705008"></a><h3>Element Pads</h3>
+<a name="idp19090688"></a><h3>Element Pads</h3>
</div>
</div>
<p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-wavenc.html b/docs/plugins/html/gst-plugins-good-plugins-wavenc.html
index 5f5a1b7b..d8dbf685 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-wavenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-wavenc.html
@@ -68,7 +68,7 @@ Format an audio stream into the wav format.
<p>
</p>
<div class="refsect2">
-<a name="idp24056928"></a><h3>Example launch line</h3>
+<a name="idp25158352"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -97,7 +97,7 @@ Format an audio stream into the wav format.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp24974896"></a><h3>Element Information</h3>
+<a name="idp21291136"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -123,7 +123,7 @@ Format an audio stream into the wav format.
</div>
<hr>
<div class="refsect2">
-<a name="idp7251776"></a><h3>Element Pads</h3>
+<a name="idp22338960"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-wavpackdec.html b/docs/plugins/html/gst-plugins-good-plugins-wavpackdec.html
index a63c571c..773704c6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-wavpackdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-wavpackdec.html
@@ -58,7 +58,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp2869728"></a><h3>Element Information</h3>
+<a name="idp23378752"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -84,7 +84,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp9508704"></a><h3>Element Pads</h3>
+<a name="idp21267264"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-wavpackenc.html b/docs/plugins/html/gst-plugins-good-plugins-wavpackenc.html
index b09404b0..340e099f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-wavpackenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-wavpackenc.html
@@ -80,7 +80,7 @@ GstWavpackEnc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp20018592"></a><h3>Element Information</h3>
+<a name="idp23547552"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -106,7 +106,7 @@ GstWavpackEnc implements
</div>
<hr>
<div class="refsect2">
-<a name="idp24230080"></a><h3>Element Pads</h3>
+<a name="idp26226528"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-wavpackparse.html b/docs/plugins/html/gst-plugins-good-plugins-wavpackparse.html
index 30314fe7..379619c1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-wavpackparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-wavpackparse.html
@@ -61,7 +61,7 @@ This is an Wavpack parser.
<p>
</p>
<div class="refsect2">
-<a name="idp24250064"></a><h3>Example launch line</h3>
+<a name="idp25857056"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -79,7 +79,7 @@ This is an Wavpack parser.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp24764048"></a><h3>Element Information</h3>
+<a name="idp23702400"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -105,7 +105,7 @@ This is an Wavpack parser.
</div>
<hr>
<div class="refsect2">
-<a name="idp6615088"></a><h3>Element Pads</h3>
+<a name="idp20487696"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-wavparse.html b/docs/plugins/html/gst-plugins-good-plugins-wavparse.html
index e054cb78..aa194b65 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-wavparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-wavparse.html
@@ -72,7 +72,7 @@ stream from a network source.
<p>
</p>
<div class="refsect2">
-<a name="idp21086512"></a><h3>Example launch line</h3>
+<a name="idp20994480"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -105,7 +105,7 @@ Last reviewed on 2007-02-14 (0.10.6)
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp19290016"></a><h3>Element Information</h3>
+<a name="idp25316800"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -131,7 +131,7 @@ Last reviewed on 2007-02-14 (0.10.6)
</div>
<hr>
<div class="refsect2">
-<a name="idp17485552"></a><h3>Element Pads</h3>
+<a name="idp23539712"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-webmmux.html b/docs/plugins/html/gst-plugins-good-plugins-webmmux.html
index bced4454..973abf83 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-webmmux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-webmmux.html
@@ -69,7 +69,7 @@ webmmux muxes VP8 video and Vorbis audio streams into a WebM file.
<p>
</p>
<div class="refsect2">
-<a name="idp24063968"></a><h3>Example launch line</h3>
+<a name="idp22051280"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -108,7 +108,7 @@ webmmux muxes VP8 video and Vorbis audio streams into a WebM file.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp22072640"></a><h3>Element Information</h3>
+<a name="idp24300784"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -134,7 +134,7 @@ webmmux muxes VP8 video and Vorbis audio streams into a WebM file.
</div>
<hr>
<div class="refsect2">
-<a name="idp18408928"></a><h3>Element Pads</h3>
+<a name="idp22989984"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-ximagesrc.html b/docs/plugins/html/gst-plugins-good-plugins-ximagesrc.html
index c4a7cc60..c8b63243 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-ximagesrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-ximagesrc.html
@@ -77,7 +77,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp23832208"></a><h3>Element Information</h3>
+<a name="idp20917760"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -103,7 +103,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="idp22572480"></a><h3>Element Pads</h3>
+<a name="idp24584896"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-y4menc.html b/docs/plugins/html/gst-plugins-good-plugins-y4menc.html
index 9e74de28..fd167b57 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-y4menc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-y4menc.html
@@ -57,7 +57,7 @@
<p>
</p>
<div class="refsect2">
-<a name="idp23969600"></a><h3>Example launch line</h3>
+<a name="idp26217616"></a><h3>Example launch line</h3>
<p>
Creates a YU4MPEG2 raw video stream as defined by the mjpegtools project.
</p>
@@ -77,7 +77,7 @@ gst-launch-0.10 videotestsrc num-buffers=250 \
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="idp23091712"></a><h3>Element Information</h3>
+<a name="idp26301248"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -103,7 +103,7 @@ gst-launch-0.10 videotestsrc num-buffers=250 \
</div>
<hr>
<div class="refsect2">
-<a name="idp6050048"></a><h3>Element Pads</h3>
+<a name="idp23838896"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html
index 3be048f6..8d8e7bb8 100644
--- a/docs/plugins/html/index.html
+++ b/docs/plugins/html/index.html
@@ -15,7 +15,7 @@
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Good Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div>
<div><p class="releaseinfo">
- for GStreamer Good Plugins 1.0 (1.1.2)
+ for GStreamer Good Plugins 1.0 (1.1.3)
The latest version of this documentation can be found on-line at
<a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good/html/</a>.
</p></div>
diff --git a/docs/plugins/html/index.sgml b/docs/plugins/html/index.sgml
index 270b80f0..317c186f 100644
--- a/docs/plugins/html/index.sgml
+++ b/docs/plugins/html/index.sgml
@@ -1483,6 +1483,7 @@
<ANCHOR id="GstRtpBin--rtcp-sync" href="gst-plugins-good-plugins-1.0/gst-plugins-good-plugins-rtpbin.html#GstRtpBin--rtcp-sync">
<ANCHOR id="GstRtpBin--rtcp-sync-interval" href="gst-plugins-good-plugins-1.0/gst-plugins-good-plugins-rtpbin.html#GstRtpBin--rtcp-sync-interval">
<ANCHOR id="GstRtpBin--drop-on-latency" href="gst-plugins-good-plugins-1.0/gst-plugins-good-plugins-rtpbin.html#GstRtpBin--drop-on-latency">
+<ANCHOR id="GstRtpBin--do-sync-event" href="gst-plugins-good-plugins-1.0/gst-plugins-good-plugins-rtpbin.html#GstRtpBin--do-sync-event">
<ANCHOR id="gst-plugins-good-plugins-rtpbin.signal-details" href="gst-plugins-good-plugins-1.0/gst-plugins-good-plugins-rtpbin.html#gst-plugins-good-plugins-rtpbin.signal-details">
<ANCHOR id="GstRtpBin-clear-pt-map" href="gst-plugins-good-plugins-1.0/gst-plugins-good-plugins-rtpbin.html#GstRtpBin-clear-pt-map">
<ANCHOR id="GstRtpBin-get-internal-session" href="gst-plugins-good-plugins-1.0/gst-plugins-good-plugins-rtpbin.html#GstRtpBin-get-internal-session">
diff --git a/docs/plugins/inspect/plugin-1394.xml b/docs/plugins/inspect/plugin-1394.xml
index 7d1dcc84..6e32b9ad 100644
--- a/docs/plugins/inspect/plugin-1394.xml
+++ b/docs/plugins/inspect/plugin-1394.xml
@@ -3,7 +3,7 @@
<description>Source for video data via IEEE1394 interface</description>
<filename>../../ext/raw1394/.libs/libgst1394.so</filename>
<basename>libgst1394.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-aasink.xml b/docs/plugins/inspect/plugin-aasink.xml
index cf16c514..3ecc51c0 100644
--- a/docs/plugins/inspect/plugin-aasink.xml
+++ b/docs/plugins/inspect/plugin-aasink.xml
@@ -3,7 +3,7 @@
<description>ASCII Art video sink</description>
<filename>../../ext/aalib/.libs/libgstaasink.so</filename>
<basename>libgstaasink.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alaw.xml b/docs/plugins/inspect/plugin-alaw.xml
index 8829efc3..c950a1dd 100644
--- a/docs/plugins/inspect/plugin-alaw.xml
+++ b/docs/plugins/inspect/plugin-alaw.xml
@@ -3,7 +3,7 @@
<description>ALaw audio conversion routines</description>
<filename>../../gst/law/.libs/libgstalaw.so</filename>
<basename>libgstalaw.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alpha.xml b/docs/plugins/inspect/plugin-alpha.xml
index 93c33e05..298b7b6b 100644
--- a/docs/plugins/inspect/plugin-alpha.xml
+++ b/docs/plugins/inspect/plugin-alpha.xml
@@ -3,7 +3,7 @@
<description>adds an alpha channel to video - constant or via chroma-keying</description>
<filename>../../gst/alpha/.libs/libgstalpha.so</filename>
<basename>libgstalpha.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alphacolor.xml b/docs/plugins/inspect/plugin-alphacolor.xml
index d942200e..87e59d67 100644
--- a/docs/plugins/inspect/plugin-alphacolor.xml
+++ b/docs/plugins/inspect/plugin-alphacolor.xml
@@ -3,7 +3,7 @@
<description>RGBA from/to AYUV colorspace conversion preserving the alpha channel</description>
<filename>../../gst/alpha/.libs/libgstalphacolor.so</filename>
<basename>libgstalphacolor.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-apetag.xml b/docs/plugins/inspect/plugin-apetag.xml
index 73125f5d..2bb8865f 100644
--- a/docs/plugins/inspect/plugin-apetag.xml
+++ b/docs/plugins/inspect/plugin-apetag.xml
@@ -3,7 +3,7 @@
<description>APEv1/2 tag reader</description>
<filename>../../gst/apetag/.libs/libgstapetag.so</filename>
<basename>libgstapetag.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiofx.xml b/docs/plugins/inspect/plugin-audiofx.xml
index 5559b191..a7989bdb 100644
--- a/docs/plugins/inspect/plugin-audiofx.xml
+++ b/docs/plugins/inspect/plugin-audiofx.xml
@@ -3,7 +3,7 @@
<description>Audio effects plugin</description>
<filename>../../gst/audiofx/.libs/libgstaudiofx.so</filename>
<basename>libgstaudiofx.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audioparsers.xml b/docs/plugins/inspect/plugin-audioparsers.xml
index 58141b94..5341b4c6 100644
--- a/docs/plugins/inspect/plugin-audioparsers.xml
+++ b/docs/plugins/inspect/plugin-audioparsers.xml
@@ -3,7 +3,7 @@
<description>Parsers for various audio formats</description>
<filename>../../gst/audioparsers/.libs/libgstaudioparsers.so</filename>
<basename>libgstaudioparsers.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-auparse.xml b/docs/plugins/inspect/plugin-auparse.xml
index 1f42b6de..96dac7f8 100644
--- a/docs/plugins/inspect/plugin-auparse.xml
+++ b/docs/plugins/inspect/plugin-auparse.xml
@@ -3,7 +3,7 @@
<description>parses au streams</description>
<filename>../../gst/auparse/.libs/libgstauparse.so</filename>
<basename>libgstauparse.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-autodetect.xml b/docs/plugins/inspect/plugin-autodetect.xml
index 82c48714..540732b2 100644
--- a/docs/plugins/inspect/plugin-autodetect.xml
+++ b/docs/plugins/inspect/plugin-autodetect.xml
@@ -3,7 +3,7 @@
<description>Plugin contains auto-detection plugins for video/audio in- and outputs</description>
<filename>../../gst/autodetect/.libs/libgstautodetect.so</filename>
<basename>libgstautodetect.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-avi.xml b/docs/plugins/inspect/plugin-avi.xml
index 974dcc9b..a8b6d386 100644
--- a/docs/plugins/inspect/plugin-avi.xml
+++ b/docs/plugins/inspect/plugin-avi.xml
@@ -3,7 +3,7 @@
<description>AVI stream handling</description>
<filename>../../gst/avi/.libs/libgstavi.so</filename>
<basename>libgstavi.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cacasink.xml b/docs/plugins/inspect/plugin-cacasink.xml
index 1ae93e07..172f56a8 100644
--- a/docs/plugins/inspect/plugin-cacasink.xml
+++ b/docs/plugins/inspect/plugin-cacasink.xml
@@ -3,7 +3,7 @@
<description>Colored ASCII Art video sink</description>
<filename>../../ext/libcaca/.libs/libgstcacasink.so</filename>
<basename>libgstcacasink.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cairo.xml b/docs/plugins/inspect/plugin-cairo.xml
index d1bdc2dd..175cfe59 100644
--- a/docs/plugins/inspect/plugin-cairo.xml
+++ b/docs/plugins/inspect/plugin-cairo.xml
@@ -3,7 +3,7 @@
<description>Cairo-based elements</description>
<filename>../../ext/cairo/.libs/libgstcairo.so</filename>
<basename>libgstcairo.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cutter.xml b/docs/plugins/inspect/plugin-cutter.xml
index 910ba86d..351f5400 100644
--- a/docs/plugins/inspect/plugin-cutter.xml
+++ b/docs/plugins/inspect/plugin-cutter.xml
@@ -3,7 +3,7 @@
<description>Audio Cutter to split audio into non-silent bits</description>
<filename>../../gst/cutter/.libs/libgstcutter.so</filename>
<basename>libgstcutter.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-debug.xml b/docs/plugins/inspect/plugin-debug.xml
index 4133edbd..cc12158b 100644
--- a/docs/plugins/inspect/plugin-debug.xml
+++ b/docs/plugins/inspect/plugin-debug.xml
@@ -3,7 +3,7 @@
<description>elements for testing and debugging</description>
<filename>../../gst/debugutils/.libs/libgstdebug.so</filename>
<basename>libgstdebug.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-deinterlace.xml b/docs/plugins/inspect/plugin-deinterlace.xml
index 43e50e1f..e145865b 100644
--- a/docs/plugins/inspect/plugin-deinterlace.xml
+++ b/docs/plugins/inspect/plugin-deinterlace.xml
@@ -3,7 +3,7 @@
<description>Deinterlacer</description>
<filename>../../gst/deinterlace/.libs/libgstdeinterlace.so</filename>
<basename>libgstdeinterlace.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dtmf.xml b/docs/plugins/inspect/plugin-dtmf.xml
index 10def88d..9abdb7d3 100644
--- a/docs/plugins/inspect/plugin-dtmf.xml
+++ b/docs/plugins/inspect/plugin-dtmf.xml
@@ -3,7 +3,7 @@
<description>DTMF plugins</description>
<filename>../../gst/dtmf/.libs/libgstdtmf.so</filename>
<basename>libgstdtmf.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dv.xml b/docs/plugins/inspect/plugin-dv.xml
index 0a50664d..7ea196da 100644
--- a/docs/plugins/inspect/plugin-dv.xml
+++ b/docs/plugins/inspect/plugin-dv.xml
@@ -3,7 +3,7 @@
<description>DV demuxer and decoder based on libdv (libdv.sf.net)</description>
<filename>../../ext/dv/.libs/libgstdv.so</filename>
<basename>libgstdv.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-effectv.xml b/docs/plugins/inspect/plugin-effectv.xml
index 1a87448f..567d19e2 100644
--- a/docs/plugins/inspect/plugin-effectv.xml
+++ b/docs/plugins/inspect/plugin-effectv.xml
@@ -3,7 +3,7 @@
<description>effect plugins from the effectv project</description>
<filename>../../gst/effectv/.libs/libgsteffectv.so</filename>
<basename>libgsteffectv.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-equalizer.xml b/docs/plugins/inspect/plugin-equalizer.xml
index 5b614acb..1512b91b 100644
--- a/docs/plugins/inspect/plugin-equalizer.xml
+++ b/docs/plugins/inspect/plugin-equalizer.xml
@@ -3,7 +3,7 @@
<description>GStreamer audio equalizers</description>
<filename>../../gst/equalizer/.libs/libgstequalizer.so</filename>
<basename>libgstequalizer.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-flac.xml b/docs/plugins/inspect/plugin-flac.xml
index 781296ec..68e8dd68 100644
--- a/docs/plugins/inspect/plugin-flac.xml
+++ b/docs/plugins/inspect/plugin-flac.xml
@@ -3,7 +3,7 @@
<description>The FLAC Lossless compressor Codec</description>
<filename>../../ext/flac/.libs/libgstflac.so</filename>
<basename>libgstflac.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-flv.xml b/docs/plugins/inspect/plugin-flv.xml
index d9dd2dc7..82a982a2 100644
--- a/docs/plugins/inspect/plugin-flv.xml
+++ b/docs/plugins/inspect/plugin-flv.xml
@@ -3,7 +3,7 @@
<description>FLV muxing and demuxing plugin</description>
<filename>../../gst/flv/.libs/libgstflv.so</filename>
<basename>libgstflv.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-flxdec.xml b/docs/plugins/inspect/plugin-flxdec.xml
index 4a257ed5..648262fc 100644
--- a/docs/plugins/inspect/plugin-flxdec.xml
+++ b/docs/plugins/inspect/plugin-flxdec.xml
@@ -3,7 +3,7 @@
<description>FLC/FLI/FLX video decoder</description>
<filename>../../gst/flx/.libs/libgstflxdec.so</filename>
<basename>libgstflxdec.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gdkpixbuf.xml b/docs/plugins/inspect/plugin-gdkpixbuf.xml
index 50943716..206053dd 100644
--- a/docs/plugins/inspect/plugin-gdkpixbuf.xml
+++ b/docs/plugins/inspect/plugin-gdkpixbuf.xml
@@ -3,7 +3,7 @@
<description>GdkPixbuf-based image decoder, overlay and sink</description>
<filename>../../ext/gdk_pixbuf/.libs/libgstgdkpixbuf.so</filename>
<basename>libgstgdkpixbuf.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-goom.xml b/docs/plugins/inspect/plugin-goom.xml
index e35c54b1..7314b336 100644
--- a/docs/plugins/inspect/plugin-goom.xml
+++ b/docs/plugins/inspect/plugin-goom.xml
@@ -3,7 +3,7 @@
<description>GOOM visualization filter</description>
<filename>../../gst/goom/.libs/libgstgoom.so</filename>
<basename>libgstgoom.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-goom2k1.xml b/docs/plugins/inspect/plugin-goom2k1.xml
index 3719d97a..2ae2fc91 100644
--- a/docs/plugins/inspect/plugin-goom2k1.xml
+++ b/docs/plugins/inspect/plugin-goom2k1.xml
@@ -3,7 +3,7 @@
<description>GOOM 2k1 visualization filter</description>
<filename>../../gst/goom2k1/.libs/libgstgoom2k1.so</filename>
<basename>libgstgoom2k1.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-icydemux.xml b/docs/plugins/inspect/plugin-icydemux.xml
index 64218e33..f98e7927 100644
--- a/docs/plugins/inspect/plugin-icydemux.xml
+++ b/docs/plugins/inspect/plugin-icydemux.xml
@@ -3,7 +3,7 @@
<description>Demux ICY tags from a stream</description>
<filename>../../gst/icydemux/.libs/libgsticydemux.so</filename>
<basename>libgsticydemux.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-id3demux.xml b/docs/plugins/inspect/plugin-id3demux.xml
index 171b04e5..8ce7e968 100644
--- a/docs/plugins/inspect/plugin-id3demux.xml
+++ b/docs/plugins/inspect/plugin-id3demux.xml
@@ -3,7 +3,7 @@
<description>Demux ID3v1 and ID3v2 tags from a file</description>
<filename>../../gst/id3demux/.libs/libgstid3demux.so</filename>
<basename>libgstid3demux.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-imagefreeze.xml b/docs/plugins/inspect/plugin-imagefreeze.xml
index 8e14b1cd..a11a296d 100644
--- a/docs/plugins/inspect/plugin-imagefreeze.xml
+++ b/docs/plugins/inspect/plugin-imagefreeze.xml
@@ -3,7 +3,7 @@
<description>Still frame stream generator</description>
<filename>../../gst/imagefreeze/.libs/libgstimagefreeze.so</filename>
<basename>libgstimagefreeze.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-interleave.xml b/docs/plugins/inspect/plugin-interleave.xml
index 00620c74..e46b71fa 100644
--- a/docs/plugins/inspect/plugin-interleave.xml
+++ b/docs/plugins/inspect/plugin-interleave.xml
@@ -3,7 +3,7 @@
<description>Audio interleaver/deinterleaver</description>
<filename>../../gst/interleave/.libs/libgstinterleave.so</filename>
<basename>libgstinterleave.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-isomp4.xml b/docs/plugins/inspect/plugin-isomp4.xml
index 5baaf107..33b71396 100644
--- a/docs/plugins/inspect/plugin-isomp4.xml
+++ b/docs/plugins/inspect/plugin-isomp4.xml
@@ -3,7 +3,7 @@
<description>ISO base media file format support (mp4, 3gpp, qt, mj2)</description>
<filename>../../gst/isomp4/.libs/libgstisomp4.so</filename>
<basename>libgstisomp4.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-jack.xml b/docs/plugins/inspect/plugin-jack.xml
index 526c7a0f..7dc27e97 100644
--- a/docs/plugins/inspect/plugin-jack.xml
+++ b/docs/plugins/inspect/plugin-jack.xml
@@ -3,7 +3,7 @@
<description>JACK audio elements</description>
<filename>../../ext/jack/.libs/libgstjack.so</filename>
<basename>libgstjack.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-jpeg.xml b/docs/plugins/inspect/plugin-jpeg.xml
index 94374ace..84b1f352 100644
--- a/docs/plugins/inspect/plugin-jpeg.xml
+++ b/docs/plugins/inspect/plugin-jpeg.xml
@@ -3,7 +3,7 @@
<description>JPeg plugin library</description>
<filename>../../ext/jpeg/.libs/libgstjpeg.so</filename>
<basename>libgstjpeg.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-level.xml b/docs/plugins/inspect/plugin-level.xml
index 3541af03..07df5831 100644
--- a/docs/plugins/inspect/plugin-level.xml
+++ b/docs/plugins/inspect/plugin-level.xml
@@ -3,7 +3,7 @@
<description>Audio level plugin</description>
<filename>../../gst/level/.libs/libgstlevel.so</filename>
<basename>libgstlevel.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-matroska.xml b/docs/plugins/inspect/plugin-matroska.xml
index 0a551d3b..8488e190 100644
--- a/docs/plugins/inspect/plugin-matroska.xml
+++ b/docs/plugins/inspect/plugin-matroska.xml
@@ -3,7 +3,7 @@
<description>Matroska and WebM stream handling</description>
<filename>../../gst/matroska/.libs/libgstmatroska.so</filename>
<basename>libgstmatroska.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-monoscope.xml b/docs/plugins/inspect/plugin-monoscope.xml
index 49178c1f..5a116356 100644
--- a/docs/plugins/inspect/plugin-monoscope.xml
+++ b/docs/plugins/inspect/plugin-monoscope.xml
@@ -3,10 +3,10 @@
<description>Monoscope visualization</description>
<filename>../../gst/monoscope/.libs/libgstmonoscope.so</filename>
<basename>libgstmonoscope.so</basename>
- <version>1.1.1.1</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
- <package>GStreamer Good Plug-ins git</package>
+ <package>GStreamer Good Plug-ins source release</package>
<origin>Unknown package origin</origin>
<elements>
<element>
diff --git a/docs/plugins/inspect/plugin-mulaw.xml b/docs/plugins/inspect/plugin-mulaw.xml
index 049789e7..2755e296 100644
--- a/docs/plugins/inspect/plugin-mulaw.xml
+++ b/docs/plugins/inspect/plugin-mulaw.xml
@@ -3,7 +3,7 @@
<description>MuLaw audio conversion routines</description>
<filename>../../gst/law/.libs/libgstmulaw.so</filename>
<basename>libgstmulaw.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-multifile.xml b/docs/plugins/inspect/plugin-multifile.xml
index 7660cc10..e52104ef 100644
--- a/docs/plugins/inspect/plugin-multifile.xml
+++ b/docs/plugins/inspect/plugin-multifile.xml
@@ -3,7 +3,7 @@
<description>Reads/Writes buffers from/to sequentially named files</description>
<filename>../../gst/multifile/.libs/libgstmultifile.so</filename>
<basename>libgstmultifile.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-multipart.xml b/docs/plugins/inspect/plugin-multipart.xml
index 8e3141cc..e52a1d2d 100644
--- a/docs/plugins/inspect/plugin-multipart.xml
+++ b/docs/plugins/inspect/plugin-multipart.xml
@@ -3,7 +3,7 @@
<description>multipart stream manipulation</description>
<filename>../../gst/multipart/.libs/libgstmultipart.so</filename>
<basename>libgstmultipart.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-navigationtest.xml b/docs/plugins/inspect/plugin-navigationtest.xml
index 1f2e99af..cec9dd71 100644
--- a/docs/plugins/inspect/plugin-navigationtest.xml
+++ b/docs/plugins/inspect/plugin-navigationtest.xml
@@ -3,7 +3,7 @@
<description>Template for a video filter</description>
<filename>../../gst/debugutils/.libs/libgstnavigationtest.so</filename>
<basename>libgstnavigationtest.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-oss4.xml b/docs/plugins/inspect/plugin-oss4.xml
index 6c6598da..7148e797 100644
--- a/docs/plugins/inspect/plugin-oss4.xml
+++ b/docs/plugins/inspect/plugin-oss4.xml
@@ -3,7 +3,7 @@
<description>Open Sound System (OSS) version 4 support for GStreamer</description>
<filename>../../sys/oss4/.libs/libgstoss4audio.so</filename>
<basename>libgstoss4audio.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ossaudio.xml b/docs/plugins/inspect/plugin-ossaudio.xml
index 42061e19..c4abb217 100644
--- a/docs/plugins/inspect/plugin-ossaudio.xml
+++ b/docs/plugins/inspect/plugin-ossaudio.xml
@@ -3,7 +3,7 @@
<description>OSS (Open Sound System) support for GStreamer</description>
<filename>../../sys/oss/.libs/libgstossaudio.so</filename>
<basename>libgstossaudio.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-png.xml b/docs/plugins/inspect/plugin-png.xml
index 9d81954b..cbf9b184 100644
--- a/docs/plugins/inspect/plugin-png.xml
+++ b/docs/plugins/inspect/plugin-png.xml
@@ -3,7 +3,7 @@
<description>PNG plugin library</description>
<filename>../../ext/libpng/.libs/libgstpng.so</filename>
<basename>libgstpng.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-pulseaudio.xml b/docs/plugins/inspect/plugin-pulseaudio.xml
index cd670312..e3acf15c 100644
--- a/docs/plugins/inspect/plugin-pulseaudio.xml
+++ b/docs/plugins/inspect/plugin-pulseaudio.xml
@@ -3,7 +3,7 @@
<description>PulseAudio plugin library</description>
<filename>../../ext/pulse/.libs/libgstpulse.so</filename>
<basename>libgstpulse.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
@@ -20,7 +20,7 @@
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
- <details>audio/x-raw, format=(string){ S16LE, S16BE, F32LE, F32BE, S32LE, S32BE, S24LE, S24BE, S24_32LE, S24_32BE, U8 }, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-alaw, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-mulaw, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-ac3, framed=(boolean)true; audio/x-eac3, framed=(boolean)true; audio/x-dts, framed=(boolean)true, block-size=(int){ 512, 1024, 2048 }; audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)[ 1, 2 ], parsed=(boolean)true</details>
+ <details>audio/x-raw, format=(string){ S16LE, S16BE, F32LE, F32BE, S32LE, S32BE, S24LE, S24BE, S24_32LE, S24_32BE, U8 }, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-alaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-mulaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-ac3, framed=(boolean)true; audio/x-eac3, framed=(boolean)true; audio/x-dts, framed=(boolean)true, block-size=(int){ 512, 1024, 2048 }; audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)[ 1, 2 ], parsed=(boolean)true</details>
</caps>
</pads>
</element>
diff --git a/docs/plugins/inspect/plugin-replaygain.xml b/docs/plugins/inspect/plugin-replaygain.xml
index f7210baa..e7545217 100644
--- a/docs/plugins/inspect/plugin-replaygain.xml
+++ b/docs/plugins/inspect/plugin-replaygain.xml
@@ -3,7 +3,7 @@
<description>ReplayGain volume normalization</description>
<filename>../../gst/replaygain/.libs/libgstreplaygain.so</filename>
<basename>libgstreplaygain.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-rtp.xml b/docs/plugins/inspect/plugin-rtp.xml
index 0c80d722..d9171dca 100644
--- a/docs/plugins/inspect/plugin-rtp.xml
+++ b/docs/plugins/inspect/plugin-rtp.xml
@@ -3,7 +3,7 @@
<description>Real-time protocol plugins</description>
<filename>../../gst/rtp/.libs/libgstrtp.so</filename>
<basename>libgstrtp.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
@@ -1511,7 +1511,7 @@
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
- <details>video/x-raw, format=(string){ RGB, RGBA, BGR, BGRA, AYUYV, UYVY, I420, Y41B, UYVP, I420, Y42B, Y444 }, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ]</details>
+ <details>video/x-raw, format=(string){ RGB, RGBA, BGR, BGRA, AYUV, UYVY, I420, Y41B, UYVP }, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ]</details>
</caps>
<caps>
<name>src</name>
diff --git a/docs/plugins/inspect/plugin-rtpmanager.xml b/docs/plugins/inspect/plugin-rtpmanager.xml
index 4310ae44..19d4ca89 100644
--- a/docs/plugins/inspect/plugin-rtpmanager.xml
+++ b/docs/plugins/inspect/plugin-rtpmanager.xml
@@ -3,7 +3,7 @@
<description>RTP session management plugin library</description>
<filename>../../gst/rtpmanager/.libs/libgstrtpmanager.so</filename>
<basename>libgstrtpmanager.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-rtsp.xml b/docs/plugins/inspect/plugin-rtsp.xml
index 7c9ad709..81f167fc 100644
--- a/docs/plugins/inspect/plugin-rtsp.xml
+++ b/docs/plugins/inspect/plugin-rtsp.xml
@@ -3,7 +3,7 @@
<description>transfer data via RTSP</description>
<filename>../../gst/rtsp/.libs/libgstrtsp.so</filename>
<basename>libgstrtsp.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-shapewipe.xml b/docs/plugins/inspect/plugin-shapewipe.xml
index c5b7d6ca..4bc604c4 100644
--- a/docs/plugins/inspect/plugin-shapewipe.xml
+++ b/docs/plugins/inspect/plugin-shapewipe.xml
@@ -3,7 +3,7 @@
<description>Shape Wipe transition filter</description>
<filename>../../gst/shapewipe/.libs/libgstshapewipe.so</filename>
<basename>libgstshapewipe.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-shout2send.xml b/docs/plugins/inspect/plugin-shout2send.xml
index 2fae63d4..3039a99c 100644
--- a/docs/plugins/inspect/plugin-shout2send.xml
+++ b/docs/plugins/inspect/plugin-shout2send.xml
@@ -3,7 +3,7 @@
<description>Sends data to an icecast server using libshout2</description>
<filename>../../ext/shout2/.libs/libgstshout2.so</filename>
<basename>libgstshout2.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>libshout2</package>
diff --git a/docs/plugins/inspect/plugin-smpte.xml b/docs/plugins/inspect/plugin-smpte.xml
index bf2e3a7e..b096e9ed 100644
--- a/docs/plugins/inspect/plugin-smpte.xml
+++ b/docs/plugins/inspect/plugin-smpte.xml
@@ -3,7 +3,7 @@
<description>Apply the standard SMPTE transitions on video images</description>
<filename>../../gst/smpte/.libs/libgstsmpte.so</filename>
<basename>libgstsmpte.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-soup.xml b/docs/plugins/inspect/plugin-soup.xml
index d0aefd3d..d641df54 100644
--- a/docs/plugins/inspect/plugin-soup.xml
+++ b/docs/plugins/inspect/plugin-soup.xml
@@ -3,7 +3,7 @@
<description>libsoup HTTP client src/sink</description>
<filename>../../ext/soup/.libs/libgstsouphttpsrc.so</filename>
<basename>libgstsouphttpsrc.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-spectrum.xml b/docs/plugins/inspect/plugin-spectrum.xml
index e20124c3..31a69f9e 100644
--- a/docs/plugins/inspect/plugin-spectrum.xml
+++ b/docs/plugins/inspect/plugin-spectrum.xml
@@ -3,7 +3,7 @@
<description>Run an FFT on the audio signal, output spectrum data</description>
<filename>../../gst/spectrum/.libs/libgstspectrum.so</filename>
<basename>libgstspectrum.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-speex.xml b/docs/plugins/inspect/plugin-speex.xml
index d64b4a26..4215b095 100644
--- a/docs/plugins/inspect/plugin-speex.xml
+++ b/docs/plugins/inspect/plugin-speex.xml
@@ -3,7 +3,7 @@
<description>Speex plugin library</description>
<filename>../../ext/speex/.libs/libgstspeex.so</filename>
<basename>libgstspeex.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-taglib.xml b/docs/plugins/inspect/plugin-taglib.xml
index 2a434e6d..36462776 100644
--- a/docs/plugins/inspect/plugin-taglib.xml
+++ b/docs/plugins/inspect/plugin-taglib.xml
@@ -3,7 +3,7 @@
<description>Tag writing plug-in based on taglib</description>
<filename>../../ext/taglib/.libs/libgsttaglib.so</filename>
<basename>libgsttaglib.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-udp.xml b/docs/plugins/inspect/plugin-udp.xml
index 36276214..fd9eed94 100644
--- a/docs/plugins/inspect/plugin-udp.xml
+++ b/docs/plugins/inspect/plugin-udp.xml
@@ -3,7 +3,7 @@
<description>transfer data via UDP</description>
<filename>../../gst/udp/.libs/libgstudp.so</filename>
<basename>libgstudp.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-video4linux2.xml b/docs/plugins/inspect/plugin-video4linux2.xml
index 0e4dabfd..754d357f 100644
--- a/docs/plugins/inspect/plugin-video4linux2.xml
+++ b/docs/plugins/inspect/plugin-video4linux2.xml
@@ -3,7 +3,7 @@
<description>elements for Video 4 Linux</description>
<filename>../../sys/v4l2/.libs/libgstvideo4linux2.so</filename>
<basename>libgstvideo4linux2.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videobox.xml b/docs/plugins/inspect/plugin-videobox.xml
index 77f0f31b..2ca520e2 100644
--- a/docs/plugins/inspect/plugin-videobox.xml
+++ b/docs/plugins/inspect/plugin-videobox.xml
@@ -3,7 +3,7 @@
<description>resizes a video by adding borders or cropping</description>
<filename>../../gst/videobox/.libs/libgstvideobox.so</filename>
<basename>libgstvideobox.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videocrop.xml b/docs/plugins/inspect/plugin-videocrop.xml
index d1245588..ae55f6cf 100644
--- a/docs/plugins/inspect/plugin-videocrop.xml
+++ b/docs/plugins/inspect/plugin-videocrop.xml
@@ -3,7 +3,7 @@
<description>Crops video into a user-defined region</description>
<filename>../../gst/videocrop/.libs/libgstvideocrop.so</filename>
<basename>libgstvideocrop.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videofilter.xml b/docs/plugins/inspect/plugin-videofilter.xml
index 63cf7dd0..f7372bb7 100644
--- a/docs/plugins/inspect/plugin-videofilter.xml
+++ b/docs/plugins/inspect/plugin-videofilter.xml
@@ -3,7 +3,7 @@
<description>Video filters plugin</description>
<filename>../../gst/videofilter/.libs/libgstvideofilter.so</filename>
<basename>libgstvideofilter.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videomixer.xml b/docs/plugins/inspect/plugin-videomixer.xml
index 36a8e25a..fba18e5a 100644
--- a/docs/plugins/inspect/plugin-videomixer.xml
+++ b/docs/plugins/inspect/plugin-videomixer.xml
@@ -3,7 +3,7 @@
<description>Video mixer</description>
<filename>../../gst/videomixer/.libs/libgstvideomixer.so</filename>
<basename>libgstvideomixer.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-vpx.xml b/docs/plugins/inspect/plugin-vpx.xml
index 81427279..7eb8c26d 100644
--- a/docs/plugins/inspect/plugin-vpx.xml
+++ b/docs/plugins/inspect/plugin-vpx.xml
@@ -3,7 +3,7 @@
<description>VP8 plugin</description>
<filename>../../ext/vpx/.libs/libgstvpx.so</filename>
<basename>libgstvpx.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-wavenc.xml b/docs/plugins/inspect/plugin-wavenc.xml
index a6df9081..96531d63 100644
--- a/docs/plugins/inspect/plugin-wavenc.xml
+++ b/docs/plugins/inspect/plugin-wavenc.xml
@@ -3,7 +3,7 @@
<description>Encode raw audio into WAV</description>
<filename>../../gst/wavenc/.libs/libgstwavenc.so</filename>
<basename>libgstwavenc.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-wavpack.xml b/docs/plugins/inspect/plugin-wavpack.xml
index 4b297893..9f2bd9a8 100644
--- a/docs/plugins/inspect/plugin-wavpack.xml
+++ b/docs/plugins/inspect/plugin-wavpack.xml
@@ -3,7 +3,7 @@
<description>Wavpack lossless/lossy audio format handling</description>
<filename>../../ext/wavpack/.libs/libgstwavpack.so</filename>
<basename>libgstwavpack.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-wavparse.xml b/docs/plugins/inspect/plugin-wavparse.xml
index 3b03d195..68c8d410 100644
--- a/docs/plugins/inspect/plugin-wavparse.xml
+++ b/docs/plugins/inspect/plugin-wavparse.xml
@@ -3,7 +3,7 @@
<description>Parse a .wav file into raw audio</description>
<filename>../../gst/wavparse/.libs/libgstwavparse.so</filename>
<basename>libgstwavparse.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ximagesrc.xml b/docs/plugins/inspect/plugin-ximagesrc.xml
index d8f9caa9..d688ffd0 100644
--- a/docs/plugins/inspect/plugin-ximagesrc.xml
+++ b/docs/plugins/inspect/plugin-ximagesrc.xml
@@ -3,7 +3,7 @@
<description>X11 video input plugin using standard Xlib calls</description>
<filename>../../sys/ximage/.libs/libgstximagesrc.so</filename>
<basename>libgstximagesrc.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-y4menc.xml b/docs/plugins/inspect/plugin-y4menc.xml
index facd1b7b..5e595fba 100644
--- a/docs/plugins/inspect/plugin-y4menc.xml
+++ b/docs/plugins/inspect/plugin-y4menc.xml
@@ -3,7 +3,7 @@
<description>Encodes a YUV frame into the yuv4mpeg format (mjpegtools)</description>
<filename>../../gst/y4m/.libs/libgsty4menc.so</filename>
<basename>libgsty4menc.so</basename>
- <version>1.1.2</version>
+ <version>1.1.3</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package>
diff --git a/ext/dv/gstdvdemux.c b/ext/dv/gstdvdemux.c
index a2b89f48..94649881 100644
--- a/ext/dv/gstdvdemux.c
+++ b/ext/dv/gstdvdemux.c
@@ -273,6 +273,8 @@ gst_dvdemux_reset (GstDVDemux * dvdemux)
dvdemux->wide = FALSE;
gst_segment_init (&dvdemux->byte_segment, GST_FORMAT_BYTES);
gst_segment_init (&dvdemux->time_segment, GST_FORMAT_TIME);
+ dvdemux->have_group_id = FALSE;
+ dvdemux->group_id = G_MAXUINT;
}
static GstPad *
@@ -1124,6 +1126,26 @@ gst_dvdemux_handle_src_event (GstPad * pad, GstObject * parent,
return res;
}
+static gboolean
+have_group_id (GstDVDemux * demux)
+{
+ GstEvent *event;
+
+ event = gst_pad_get_sticky_event (demux->sinkpad, GST_EVENT_STREAM_START, 0);
+ if (event) {
+ if (gst_event_parse_group_id (event, &demux->group_id))
+ demux->have_group_id = TRUE;
+ else
+ demux->have_group_id = FALSE;
+ gst_event_unref (event);
+ } else if (!demux->have_group_id) {
+ demux->have_group_id = TRUE;
+ demux->group_id = gst_util_group_id_next ();
+ }
+
+ return demux->have_group_id;
+}
+
/* does not take ownership of buffer */
static GstFlowReturn
gst_dvdemux_demux_audio (GstDVDemux * dvdemux, GstBuffer * buffer,
@@ -1154,13 +1176,16 @@ gst_dvdemux_demux_audio (GstDVDemux * dvdemux, GstBuffer * buffer,
|| (channels != dvdemux->channels))) {
GstCaps *caps;
GstAudioInfo info;
+ GstEvent *event;
gchar *stream_id;
stream_id =
gst_pad_create_stream_id (dvdemux->audiosrcpad,
GST_ELEMENT_CAST (dvdemux), "audio");
- gst_pad_push_event (dvdemux->audiosrcpad,
- gst_event_new_stream_start (stream_id));
+ event = gst_event_new_stream_start (stream_id);
+ if (have_group_id (dvdemux))
+ gst_event_set_group_id (event, dvdemux->group_id);
+ gst_pad_push_event (dvdemux->audiosrcpad, event);
g_free (stream_id);
dvdemux->frequency = frequency;
@@ -1230,13 +1255,16 @@ gst_dvdemux_demux_video (GstDVDemux * dvdemux, GstBuffer * buffer,
if (G_UNLIKELY ((dvdemux->height != height) || dvdemux->wide != wide)) {
GstCaps *caps;
gint par_x, par_y;
+ GstEvent *event;
gchar *stream_id;
stream_id =
gst_pad_create_stream_id (dvdemux->videosrcpad,
GST_ELEMENT_CAST (dvdemux), "video");
- gst_pad_push_event (dvdemux->videosrcpad,
- gst_event_new_stream_start (stream_id));
+ event = gst_event_new_stream_start (stream_id);
+ if (have_group_id (dvdemux))
+ gst_event_set_group_id (event, dvdemux->group_id);
+ gst_pad_push_event (dvdemux->videosrcpad, event);
g_free (stream_id);
dvdemux->height = height;
diff --git a/ext/dv/gstdvdemux.h b/ext/dv/gstdvdemux.h
index 7a821004..98c127d0 100644
--- a/ext/dv/gstdvdemux.h
+++ b/ext/dv/gstdvdemux.h
@@ -52,6 +52,9 @@ struct _GstDVDemux {
GstPad *videosrcpad;
GstPad *audiosrcpad;
+ gboolean have_group_id;
+ guint group_id;
+
dv_decoder_t *decoder;
GstAdapter *adapter;
diff --git a/ext/flac/gstflacenc.c b/ext/flac/gstflacenc.c
index 3e6cd8a2..311b5dc4 100644
--- a/ext/flac/gstflacenc.c
+++ b/ext/flac/gstflacenc.c
@@ -615,6 +615,7 @@ gst_flac_enc_set_metadata (GstFlacEnc * flacenc, GstAudioInfo * info,
if (n_images + n_preview_images > 0) {
GstSample *sample;
GstBuffer *buffer;
+ GstCaps *caps;
const GstStructure *structure;
GstTagImageType image_type = GST_TAG_IMAGE_TYPE_NONE;
gint i;
@@ -630,13 +631,23 @@ gst_flac_enc_set_metadata (GstFlacEnc * flacenc, GstAudioInfo * info,
continue;
}
+ structure = gst_sample_get_info (sample);
+ caps = gst_sample_get_caps (sample);
+ if (!caps) {
+ GST_FIXME_OBJECT (flacenc, "Image tag without caps");
+ gst_sample_unref (sample);
+ continue;
+ }
+
flacenc->meta[entries] =
FLAC__metadata_object_new (FLAC__METADATA_TYPE_PICTURE);
- structure = gst_sample_get_info (sample);
+ if (structure)
+ gst_structure_get (structure, "image-type", GST_TYPE_TAG_IMAGE_TYPE,
+ &image_type, NULL);
+ else
+ image_type = GST_TAG_IMAGE_TYPE_NONE;
- gst_structure_get (structure, "image-type", GST_TYPE_TAG_IMAGE_TYPE,
- &image_type, NULL);
/* Convert to ID3v2 APIC image type */
if (image_type == GST_TAG_IMAGE_TYPE_NONE)
image_type = (i < n_images) ? 0x00 : 0x01;
@@ -651,6 +662,9 @@ gst_flac_enc_set_metadata (GstFlacEnc * flacenc, GstAudioInfo * info,
/* FIXME: There's no way to set the picture type in libFLAC */
flacenc->meta[entries]->data.picture.type = image_type;
+
+ structure = gst_caps_get_structure (caps, 0);
+
FLAC__metadata_object_picture_set_mime_type (flacenc->meta[entries],
(char *) gst_structure_get_name (structure), TRUE);
diff --git a/ext/jpeg/gstjpegdec.c b/ext/jpeg/gstjpegdec.c
index b96ef946..a8c0bfd9 100644
--- a/ext/jpeg/gstjpegdec.c
+++ b/ext/jpeg/gstjpegdec.c
@@ -98,7 +98,6 @@ static void gst_jpeg_dec_get_property (GObject * object, guint prop_id,
static gboolean gst_jpeg_dec_set_format (GstVideoDecoder * dec,
GstVideoCodecState * state);
-static gboolean gst_jpeg_dec_start (GstVideoDecoder * bdec);
static gboolean gst_jpeg_dec_stop (GstVideoDecoder * bdec);
static gboolean gst_jpeg_dec_reset (GstVideoDecoder * bdec, gboolean hard);
static GstFlowReturn gst_jpeg_dec_parse (GstVideoDecoder * bdec,
@@ -169,7 +168,6 @@ gst_jpeg_dec_class_init (GstJpegDecClass * klass)
"Codec/Decoder/Image",
"Decode images from JPEG format", "Wim Taymans <wim@fluendo.com>");
- vdec_class->start = gst_jpeg_dec_start;
vdec_class->stop = gst_jpeg_dec_stop;
vdec_class->reset = gst_jpeg_dec_reset;
vdec_class->parse = gst_jpeg_dec_parse;
@@ -181,81 +179,6 @@ gst_jpeg_dec_class_init (GstJpegDecClass * klass)
GST_DEBUG_CATEGORY_GET (GST_CAT_PERFORMANCE, "GST_PERFORMANCE");
}
-static void
-gst_jpeg_dec_clear_error (GstJpegDec * dec)
-{
- g_free (dec->error_msg);
- dec->error_msg = NULL;
- dec->error_line = 0;
- dec->error_func = NULL;
-}
-
-static void
-gst_jpeg_dec_set_error_va (GstJpegDec * dec, const gchar * func, gint line,
- const gchar * debug_msg_format, va_list args)
-{
-#ifndef GST_DISABLE_GST_DEBUG
- gst_debug_log_valist (GST_CAT_DEFAULT, GST_LEVEL_WARNING, __FILE__, func,
- line, (GObject *) dec, debug_msg_format, args);
-#endif
-
- g_free (dec->error_msg);
- if (debug_msg_format)
- dec->error_msg = g_strdup_vprintf (debug_msg_format, args);
- else
- dec->error_msg = NULL;
-
- dec->error_line = line;
- dec->error_func = func;
-}
-
-static void
-gst_jpeg_dec_set_error (GstJpegDec * dec, const gchar * func, gint line,
- const gchar * debug_msg_format, ...)
-{
- va_list va;
-
- va_start (va, debug_msg_format);
- gst_jpeg_dec_set_error_va (dec, func, line, debug_msg_format, va);
- va_end (va);
-}
-
-static GstFlowReturn
-gst_jpeg_dec_post_error_or_warning (GstJpegDec * dec)
-{
- GstFlowReturn ret;
- int max_errors;
-
- ++dec->error_count;
- max_errors = g_atomic_int_get (&dec->max_errors);
-
- if (max_errors < 0) {
- ret = GST_FLOW_OK;
- } else if (max_errors == 0) {
- /* FIXME: do something more clever in "automatic mode" */
- if (gst_video_decoder_get_packetized (GST_VIDEO_DECODER (dec))) {
- ret = (dec->error_count < 3) ? GST_FLOW_OK : GST_FLOW_ERROR;
- } else {
- ret = GST_FLOW_ERROR;
- }
- } else {
- ret = (dec->error_count < max_errors) ? GST_FLOW_OK : GST_FLOW_ERROR;
- }
-
- GST_INFO_OBJECT (dec, "decoding error %d/%d (%s)", dec->error_count,
- max_errors, (ret == GST_FLOW_OK) ? "ignoring error" : "erroring out");
-
- gst_element_message_full (GST_ELEMENT (dec),
- (ret == GST_FLOW_OK) ? GST_MESSAGE_WARNING : GST_MESSAGE_ERROR,
- GST_STREAM_ERROR, GST_STREAM_ERROR_DECODE,
- g_strdup (_("Failed to decode JPEG image")), dec->error_msg,
- __FILE__, dec->error_func, dec->error_line);
-
- dec->error_msg = NULL;
- gst_jpeg_dec_clear_error (dec);
- return ret;
-}
-
static boolean
gst_jpeg_dec_fill_input_buffer (j_decompress_ptr cinfo)
{
@@ -993,10 +916,14 @@ gst_jpeg_dec_decode_direct (GstJpegDec * dec, GstVideoFrame * frame)
format_not_supported:
{
- gst_jpeg_dec_set_error (dec, GST_FUNCTION, __LINE__,
- "Unsupported subsampling schema: v_samp factors: %u %u %u",
- v_samp[0], v_samp[1], v_samp[2]);
- return GST_FLOW_ERROR;
+ gboolean ret = GST_FLOW_OK;
+
+ GST_VIDEO_DECODER_ERROR (dec, 1, STREAM, DECODE,
+ (_("Failed to decode JPEG image")),
+ ("Unsupported subsampling schema: v_samp factors: %u %u %u", v_samp[0],
+ v_samp[1], v_samp[2]), ret);
+
+ return ret;
}
}
@@ -1213,9 +1140,6 @@ gst_jpeg_dec_handle_frame (GstVideoDecoder * bdec, GstVideoCodecFrame * frame)
GST_LOG_OBJECT (dec, "decompressing finished");
jpeg_finish_decompress (&dec->cinfo);
- /* reset error count on successful decode */
- dec->error_count = 0;
-
gst_buffer_unmap (frame->input_buffer, &dec->current_frame_map);
ret = gst_video_decoder_finish_frame (bdec, frame);
need_unmap = FALSE;
@@ -1224,11 +1148,6 @@ done:
exit:
- if (G_UNLIKELY (ret == GST_FLOW_ERROR)) {
- jpeg_abort_decompress (&dec->cinfo);
- ret = gst_jpeg_dec_post_error_or_warning (dec);
- }
-
if (need_unmap)
gst_buffer_unmap (frame->input_buffer, &dec->current_frame_map);
@@ -1247,8 +1166,9 @@ need_more_data:
/* ERRORS */
wrong_size:
{
- gst_jpeg_dec_set_error (dec, GST_FUNCTION, __LINE__,
- "Picture is too small or too big (%ux%u)", width, height);
+ GST_VIDEO_DECODER_ERROR (dec, 1, STREAM, DECODE,
+ (_("Failed to decode JPEG image")),
+ ("Picture is too small or too big (%ux%u)", width, height), ret);
ret = GST_FLOW_ERROR;
goto done;
}
@@ -1258,12 +1178,14 @@ decode_error:
dec->jerr.pub.format_message ((j_common_ptr) (&dec->cinfo), err_msg);
- gst_jpeg_dec_set_error (dec, GST_FUNCTION, __LINE__,
- "Decode error #%u: %s", code, err_msg);
+ GST_VIDEO_DECODER_ERROR (dec, 1, STREAM, DECODE,
+ (_("Failed to decode JPEG image")), ("Decode error #%u: %s", code,
+ err_msg), ret);
gst_buffer_unmap (frame->input_buffer, &dec->current_frame_map);
gst_video_decoder_drop_frame (bdec, frame);
need_unmap = FALSE;
+ jpeg_abort_decompress (&dec->cinfo);
ret = GST_FLOW_ERROR;
goto done;
@@ -1285,31 +1207,36 @@ alloc_failed:
jpeg_abort_decompress (&dec->cinfo);
if (ret != GST_FLOW_EOS && ret != GST_FLOW_FLUSHING &&
ret != GST_FLOW_NOT_LINKED) {
- gst_jpeg_dec_set_error (dec, GST_FUNCTION, __LINE__,
- "Buffer allocation failed, reason: %s", reason);
+ GST_VIDEO_DECODER_ERROR (dec, 1, STREAM, DECODE,
+ (_("Failed to decode JPEG image")),
+ ("Buffer allocation failed, reason: %s", reason), ret);
+ jpeg_abort_decompress (&dec->cinfo);
}
goto exit;
}
components_not_supported:
{
- gst_jpeg_dec_set_error (dec, GST_FUNCTION, __LINE__,
- "number of components not supported: %d (max 3)",
- dec->cinfo.num_components);
- ret = GST_FLOW_ERROR;
+ GST_VIDEO_DECODER_ERROR (dec, 1, STREAM, DECODE,
+ (_("Failed to decode JPEG image")),
+ ("number of components not supported: %d (max 3)",
+ dec->cinfo.num_components), ret);
+ jpeg_abort_decompress (&dec->cinfo);
goto done;
}
unsupported_colorspace:
{
- gst_jpeg_dec_set_error (dec, GST_FUNCTION, __LINE__,
- "Picture has unknown or unsupported colourspace");
- ret = GST_FLOW_ERROR;
+ GST_VIDEO_DECODER_ERROR (dec, 1, STREAM, DECODE,
+ (_("Failed to decode JPEG image")),
+ ("Picture has unknown or unsupported colourspace"), ret);
+ jpeg_abort_decompress (&dec->cinfo);
goto done;
}
invalid_yuvrgbgrayscale:
{
- gst_jpeg_dec_set_error (dec, GST_FUNCTION, __LINE__,
- "Picture is corrupt or unhandled YUV/RGB/grayscale layout");
- ret = GST_FLOW_ERROR;
+ GST_VIDEO_DECODER_ERROR (dec, 1, STREAM, DECODE,
+ (_("Failed to decode JPEG image")),
+ ("Picture is corrupt or unhandled YUV/RGB/grayscale layout"), ret);
+ jpeg_abort_decompress (&dec->cinfo);
goto done;
}
}
@@ -1350,6 +1277,13 @@ gst_jpeg_dec_reset (GstVideoDecoder * bdec, gboolean hard)
dec->parse_resync = FALSE;
dec->saw_header = FALSE;
+ if (hard) {
+ dec->parse_entropy_len = 0;
+ dec->parse_resync = FALSE;
+
+ gst_video_decoder_set_packetized (bdec, FALSE);
+ }
+
return TRUE;
}
@@ -1398,20 +1332,6 @@ gst_jpeg_dec_get_property (GObject * object, guint prop_id, GValue * value,
}
static gboolean
-gst_jpeg_dec_start (GstVideoDecoder * bdec)
-{
- GstJpegDec *dec = (GstJpegDec *) bdec;
-
- dec->error_count = 0;
- dec->parse_entropy_len = 0;
- dec->parse_resync = FALSE;
-
- gst_video_decoder_set_packetized (bdec, FALSE);
-
- return TRUE;
-}
-
-static gboolean
gst_jpeg_dec_stop (GstVideoDecoder * bdec)
{
GstJpegDec *dec = (GstJpegDec *) bdec;
diff --git a/ext/jpeg/gstjpegdec.h b/ext/jpeg/gstjpegdec.h
index d2425e58..e8fa2fcb 100644
--- a/ext/jpeg/gstjpegdec.h
+++ b/ext/jpeg/gstjpegdec.h
@@ -83,14 +83,6 @@ struct _GstJpegDec {
gint idct_method;
gint max_errors; /* ATOMIC */
- /* current error (the message is the debug message) */
- gchar *error_msg;
- int error_line;
- const gchar *error_func;
-
- /* number of errors since start or last successfully decoded image */
- guint error_count;
-
struct jpeg_decompress_struct cinfo;
struct GstJpegDecErrorMgr jerr;
struct GstJpegDecSourceMgr jsrc;
diff --git a/ext/jpeg/gstjpegenc.c b/ext/jpeg/gstjpegenc.c
index 15d01e71..d3dfbaf3 100644
--- a/ext/jpeg/gstjpegenc.c
+++ b/ext/jpeg/gstjpegenc.c
@@ -70,7 +70,6 @@ enum
PROP_IDCT_METHOD
};
-static void gst_jpegenc_reset (GstJpegEnc * enc);
static void gst_jpegenc_finalize (GObject * object);
static void gst_jpegenc_resync (GstJpegEnc * jpegenc);
@@ -81,6 +80,7 @@ static void gst_jpegenc_get_property (GObject * object, guint prop_id,
static gboolean gst_jpegenc_start (GstVideoEncoder * benc);
static gboolean gst_jpegenc_stop (GstVideoEncoder * benc);
+static gboolean gst_jpegenc_reset (GstVideoEncoder * benc, gboolean hard);
static gboolean gst_jpegenc_set_format (GstVideoEncoder * encoder,
GstVideoCodecState * state);
static GstFlowReturn gst_jpegenc_handle_frame (GstVideoEncoder * encoder,
@@ -161,6 +161,7 @@ gst_jpegenc_class_init (GstJpegEncClass * klass)
venc_class->start = gst_jpegenc_start;
venc_class->stop = gst_jpegenc_stop;
+ venc_class->reset = gst_jpegenc_reset;
venc_class->set_format = gst_jpegenc_set_format;
venc_class->handle_frame = gst_jpegenc_handle_frame;
venc_class->propose_allocation = gst_jpegenc_propose_allocation;
@@ -300,28 +301,16 @@ gst_jpegenc_init (GstJpegEnc * jpegenc)
jpegenc->quality = JPEG_DEFAULT_QUALITY;
jpegenc->smoothing = JPEG_DEFAULT_SMOOTHING;
jpegenc->idct_method = JPEG_DEFAULT_IDCT_METHOD;
-
- gst_jpegenc_reset (jpegenc);
}
-static void
-gst_jpegenc_reset (GstJpegEnc * enc)
+static gboolean
+gst_jpegenc_reset (GstVideoEncoder * benc, gboolean hard)
{
- gint i, j;
+ GstJpegEnc *enc = (GstJpegEnc *) benc;
- g_free (enc->line[0]);
- g_free (enc->line[1]);
- g_free (enc->line[2]);
- enc->line[0] = NULL;
- enc->line[1] = NULL;
- enc->line[2] = NULL;
- for (i = 0; i < 3; i++) {
- for (j = 0; j < 4 * DCTSIZE; j++) {
- g_free (enc->row[i][j]);
- enc->row[i][j] = NULL;
- }
- }
enc->sof_marker = -1;
+
+ return TRUE;
}
static void
@@ -633,8 +622,20 @@ static gboolean
gst_jpegenc_stop (GstVideoEncoder * benc)
{
GstJpegEnc *enc = (GstJpegEnc *) benc;
+ gint i, j;
- gst_jpegenc_reset (enc);
+ g_free (enc->line[0]);
+ g_free (enc->line[1]);
+ g_free (enc->line[2]);
+ enc->line[0] = NULL;
+ enc->line[1] = NULL;
+ enc->line[2] = NULL;
+ for (i = 0; i < 3; i++) {
+ for (j = 0; j < 4 * DCTSIZE; j++) {
+ g_free (enc->row[i][j]);
+ enc->row[i][j] = NULL;
+ }
+ }
return TRUE;
}
diff --git a/ext/pulse/pulsesink.h b/ext/pulse/pulsesink.h
index 9b718406..26e99979 100644
--- a/ext/pulse/pulsesink.h
+++ b/ext/pulse/pulsesink.h
@@ -110,12 +110,10 @@ GType gst_pulsesink_get_type (void);
"channels = (int) [ 1, 32 ]; "
#define _PULSE_SINK_CAPS_ALAW \
"audio/x-alaw, " \
- "layout = (string) interleaved, " \
"rate = (int) [ 1, MAX], " \
"channels = (int) [ 1, 32 ]; "
#define _PULSE_SINK_CAPS_MULAW \
"audio/x-mulaw, " \
- "layout = (string) interleaved, " \
"rate = (int) [ 1, MAX], " \
"channels = (int) [ 1, 32 ]; "
diff --git a/ext/pulse/pulseutil.c b/ext/pulse/pulseutil.c
index a232c6ea..9febb250 100644
--- a/ext/pulse/pulseutil.c
+++ b/ext/pulse/pulseutil.c
@@ -146,12 +146,10 @@ gst_pulse_fill_format_info (GstAudioRingBufferSpec * spec, pa_format_info ** f,
format = pa_format_info_new ();
- if (spec->type == GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MU_LAW
- && GST_AUDIO_INFO_WIDTH (ainfo) == 8) {
+ if (spec->type == GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MU_LAW) {
format->encoding = PA_ENCODING_PCM;
sf = PA_SAMPLE_ULAW;
- } else if (spec->type == GST_AUDIO_RING_BUFFER_FORMAT_TYPE_A_LAW
- && GST_AUDIO_INFO_WIDTH (ainfo) == 8) {
+ } else if (spec->type == GST_AUDIO_RING_BUFFER_FORMAT_TYPE_A_LAW) {
format->encoding = PA_ENCODING_PCM;
sf = PA_SAMPLE_ALAW;
} else if (spec->type == GST_AUDIO_RING_BUFFER_FORMAT_TYPE_RAW) {
diff --git a/ext/soup/gstsouphttpsrc.c b/ext/soup/gstsouphttpsrc.c
index 79f6109d..fb922624 100644
--- a/ext/soup/gstsouphttpsrc.c
+++ b/ext/soup/gstsouphttpsrc.c
@@ -937,10 +937,15 @@ gst_soup_http_src_finished_cb (SoupMessage * msg, GstSoupHTTPSrc * src)
src->ret = GST_FLOW_CUSTOM_ERROR;
} else if (G_UNLIKELY (src->session_io_status !=
GST_SOUP_HTTP_SRC_SESSION_IO_STATUS_RUNNING)) {
- /* FIXME: reason_phrase is not translated, add proper error message */
- GST_ELEMENT_ERROR (src, RESOURCE, NOT_FOUND,
- ("%s", msg->reason_phrase),
- ("libsoup status code %d", msg->status_code));
+ if (msg->method == SOUP_METHOD_HEAD) {
+ GST_DEBUG_OBJECT (src, "Ignoring error %d:%s during HEAD request",
+ msg->status_code, msg->reason_phrase);
+ } else {
+ /* FIXME: reason_phrase is not translated, add proper error message */
+ GST_ELEMENT_ERROR (src, RESOURCE, NOT_FOUND,
+ ("%s", msg->reason_phrase),
+ ("libsoup status code %d", msg->status_code));
+ }
}
if (src->loop)
g_main_loop_quit (src->loop);
@@ -1111,7 +1116,11 @@ gst_soup_http_src_response_cb (SoupSession * session, SoupMessage * msg,
static void
gst_soup_http_src_parse_status (SoupMessage * msg, GstSoupHTTPSrc * src)
{
- if (SOUP_STATUS_IS_TRANSPORT_ERROR (msg->status_code)) {
+ if (msg->method == SOUP_METHOD_HEAD) {
+ if (!SOUP_STATUS_IS_SUCCESSFUL (msg->status_code))
+ GST_DEBUG_OBJECT (src, "Ignoring error %d during HEAD request",
+ msg->status_code);
+ } else if (SOUP_STATUS_IS_TRANSPORT_ERROR (msg->status_code)) {
switch (msg->status_code) {
case SOUP_STATUS_CANT_RESOLVE:
case SOUP_STATUS_CANT_RESOLVE_PROXY:
diff --git a/ext/vpx/gstvp8dec.h b/ext/vpx/gstvp8dec.h
index aff38593..8692f013 100644
--- a/ext/vpx/gstvp8dec.h
+++ b/ext/vpx/gstvp8dec.h
@@ -23,6 +23,12 @@
#ifndef __GST_VP8_DEC_H__
#define __GST_VP8_DEC_H__
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef HAVE_VP8_DECODER
+
#include <gst/gst.h>
#include <gst/video/gstvideodecoder.h>
@@ -81,4 +87,6 @@ GType gst_vp8_dec_get_type (void);
G_END_DECLS
+#endif
+
#endif /* __GST_VP8_DEC_H__ */
diff --git a/ext/vpx/gstvp8enc.h b/ext/vpx/gstvp8enc.h
index b2351124..206ac02a 100644
--- a/ext/vpx/gstvp8enc.h
+++ b/ext/vpx/gstvp8enc.h
@@ -22,6 +22,12 @@
#ifndef __GST_VP8_ENC_H__
#define __GST_VP8_ENC_H__
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef HAVE_VP8_ENCODER
+
#include <gst/gst.h>
#include <gst/video/gstvideoencoder.h>
@@ -111,4 +117,6 @@ GType gst_vp8_enc_get_type (void);
G_END_DECLS
+#endif
+
#endif /* __GST_VP8_ENC_H__ */
diff --git a/ext/vpx/gstvp9dec.h b/ext/vpx/gstvp9dec.h
index ae27f7e0..8cd69ba0 100644
--- a/ext/vpx/gstvp9dec.h
+++ b/ext/vpx/gstvp9dec.h
@@ -23,6 +23,12 @@
#ifndef __GST_VP9_DEC_H__
#define __GST_VP9_DEC_H__
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef HAVE_VP9_DECODER
+
#include <gst/gst.h>
#include <gst/video/gstvideodecoder.h>
@@ -81,4 +87,6 @@ GType gst_vp9_dec_get_type (void);
G_END_DECLS
+#endif
+
#endif /* __GST_VP9_DEC_H__ */
diff --git a/ext/vpx/gstvp9enc.h b/ext/vpx/gstvp9enc.h
index 8026d580..b9919057 100644
--- a/ext/vpx/gstvp9enc.h
+++ b/ext/vpx/gstvp9enc.h
@@ -22,6 +22,12 @@
#ifndef __GST_VP9_ENC_H__
#define __GST_VP9_ENC_H__
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef HAVE_VP9_ENCODER
+
#include <gst/gst.h>
#include <gst/video/gstvideoencoder.h>
@@ -110,4 +116,6 @@ GType gst_vp9_enc_get_type (void);
G_END_DECLS
+#endif
+
#endif /* __GST_VP9_ENC_H__ */
diff --git a/gst-plugins-good.doap b/gst-plugins-good.doap
index 7fa664d9..3044a467 100644
--- a/gst-plugins-good.doap
+++ b/gst-plugins-good.doap
@@ -34,6 +34,16 @@ the plug-in code, LGPL or LGPL-compatible for the supporting library).
<release>
<Version>
+ <revision>1.1.3</revision>
+ <branch>1.1</branch>
+ <name></name>
+ <created>2013-07-29</created>
+ <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.1.3.tar.xz" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.1.2</revision>
<branch>1.1</branch>
<name></name>
diff --git a/gst-plugins-good.spec b/gst-plugins-good.spec
index 398e6856..918da744 100644
--- a/gst-plugins-good.spec
+++ b/gst-plugins-good.spec
@@ -4,7 +4,7 @@
%define gst_minver 0.11.0
Name: %{gstreamer}-plugins-good
-Version: 1.1.2
+Version: 1.1.3
Release: 1.gst
Summary: GStreamer plug-ins with good code and licensing
diff --git a/gst/audiofx/audioecho.c b/gst/audiofx/audioecho.c
index 2c09c886..60220f02 100644
--- a/gst/audiofx/audioecho.c
+++ b/gst/audiofx/audioecho.c
@@ -187,6 +187,7 @@ gst_audio_echo_set_property (GObject * object, guint prop_id,
switch (prop_id) {
case PROP_DELAY:{
guint64 max_delay, delay;
+ guint rate;
g_mutex_lock (&self->lock);
delay = g_value_get_uint64 (value);
@@ -201,6 +202,11 @@ gst_audio_echo_set_property (GObject * object, guint prop_id,
self->delay = delay;
self->max_delay = MAX (delay, max_delay);
}
+ rate = GST_AUDIO_FILTER_RATE (self);
+ if (rate > 0)
+ self->delay_frames =
+ MAX (gst_util_uint64_scale (self->delay, rate, GST_SECOND), 1);
+
g_mutex_unlock (&self->lock);
break;
}
diff --git a/gst/audioparsers/Makefile.am b/gst/audioparsers/Makefile.am
index 1263c937..b2b2a4d1 100644
--- a/gst/audioparsers/Makefile.am
+++ b/gst/audioparsers/Makefile.am
@@ -8,6 +8,7 @@ libgstaudioparsers_la_SOURCES = \
libgstaudioparsers_la_CFLAGS = \
$(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS)
libgstaudioparsers_la_LIBADD = \
+ -lgstpbutils-$(GST_API_VERSION) \
$(GST_PLUGINS_BASE_LIBS) -lgsttag-$(GST_API_VERSION) \
-lgstaudio-$(GST_API_VERSION) \
$(GST_BASE_LIBS) $(GST_LIBS)
diff --git a/gst/audioparsers/Makefile.in b/gst/audioparsers/Makefile.in
index 607f980a..3a6a3955 100644
--- a/gst/audioparsers/Makefile.in
+++ b/gst/audioparsers/Makefile.in
@@ -573,6 +573,7 @@ libgstaudioparsers_la_CFLAGS = \
$(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS)
libgstaudioparsers_la_LIBADD = \
+ -lgstpbutils-$(GST_API_VERSION) \
$(GST_PLUGINS_BASE_LIBS) -lgsttag-$(GST_API_VERSION) \
-lgstaudio-$(GST_API_VERSION) \
$(GST_BASE_LIBS) $(GST_LIBS)
diff --git a/gst/audioparsers/gstaacparse.c b/gst/audioparsers/gstaacparse.c
index 8f63b116..784a2faa 100644
--- a/gst/audioparsers/gstaacparse.c
+++ b/gst/audioparsers/gstaacparse.c
@@ -45,6 +45,7 @@
#include <string.h>
#include <gst/base/gstbitreader.h>
+#include <gst/pbutils/codec-utils.h>
#include "gstaacparse.h"
@@ -91,22 +92,11 @@ static GstCaps *gst_aac_parse_sink_getcaps (GstBaseParse * parse,
static GstFlowReturn gst_aac_parse_handle_frame (GstBaseParse * parse,
GstBaseParseFrame * frame, gint * skipsize);
+static GstFlowReturn gst_aac_parse_pre_push_frame (GstBaseParse * parse,
+ GstBaseParseFrame * frame);
G_DEFINE_TYPE (GstAacParse, gst_aac_parse, GST_TYPE_BASE_PARSE);
-static inline gint
-gst_aac_parse_get_sample_rate_from_index (guint sr_idx)
-{
- static const guint aac_sample_rates[] = { 96000, 88200, 64000, 48000, 44100,
- 32000, 24000, 22050, 16000, 12000, 11025, 8000
- };
-
- if (sr_idx < G_N_ELEMENTS (aac_sample_rates))
- return aac_sample_rates[sr_idx];
- GST_WARNING ("Invalid sample rate index %u", sr_idx);
- return 0;
-}
-
/**
* gst_aac_parse_class_init:
* @klass: #GstAacParseClass.
@@ -135,6 +125,8 @@ gst_aac_parse_class_init (GstAacParseClass * klass)
parse_class->set_sink_caps = GST_DEBUG_FUNCPTR (gst_aac_parse_sink_setcaps);
parse_class->get_sink_caps = GST_DEBUG_FUNCPTR (gst_aac_parse_sink_getcaps);
parse_class->handle_frame = GST_DEBUG_FUNCPTR (gst_aac_parse_handle_frame);
+ parse_class->pre_push_frame =
+ GST_DEBUG_FUNCPTR (gst_aac_parse_pre_push_frame);
}
@@ -165,9 +157,11 @@ static gboolean
gst_aac_parse_set_src_caps (GstAacParse * aacparse, GstCaps * sink_caps)
{
GstStructure *s;
- GstCaps *src_caps = NULL;
+ GstCaps *src_caps = NULL, *allowed;
gboolean res = FALSE;
const gchar *stream_format;
+ GstBuffer *codec_data;
+ guint16 codec_data_data;
GST_DEBUG_OBJECT (aacparse, "sink caps: %" GST_PTR_FORMAT, sink_caps);
if (sink_caps)
@@ -178,6 +172,7 @@ gst_aac_parse_set_src_caps (GstAacParse * aacparse, GstCaps * sink_caps)
gst_caps_set_simple (src_caps, "framed", G_TYPE_BOOLEAN, TRUE,
"mpegversion", G_TYPE_INT, aacparse->mpegversion, NULL);
+ aacparse->output_header_type = aacparse->header_type;
switch (aacparse->header_type) {
case DSPAAC_HEADER_NONE:
stream_format = "raw";
@@ -203,11 +198,55 @@ gst_aac_parse_set_src_caps (GstAacParse * aacparse, GstCaps * sink_caps)
if (stream_format)
gst_structure_set (s, "stream-format", G_TYPE_STRING, stream_format, NULL);
+ allowed = gst_pad_get_allowed_caps (GST_BASE_PARSE (aacparse)->srcpad);
+ if (!gst_caps_can_intersect (src_caps, allowed)) {
+ GST_DEBUG_OBJECT (GST_BASE_PARSE (aacparse)->srcpad,
+ "Caps can not intersect");
+ if (aacparse->header_type == DSPAAC_HEADER_ADTS) {
+ GST_DEBUG_OBJECT (GST_BASE_PARSE (aacparse)->srcpad,
+ "Input is ADTS, trying raw");
+ gst_caps_set_simple (src_caps, "stream-format", G_TYPE_STRING, "raw",
+ NULL);
+ if (gst_caps_can_intersect (src_caps, allowed)) {
+ GstMapInfo map;
+ int idx;
+
+ idx =
+ gst_codec_utils_aac_get_index_from_sample_rate
+ (aacparse->sample_rate);
+ if (idx < 0)
+ goto not_a_known_rate;
+
+ GST_DEBUG_OBJECT (GST_BASE_PARSE (aacparse)->srcpad,
+ "Caps can intersect, we will drop the ADTS layer");
+ aacparse->output_header_type = DSPAAC_HEADER_NONE;
+
+ /* The codec_data data is according to AudioSpecificConfig,
+ ISO/IEC 14496-3, 1.6.2.1 */
+ codec_data = gst_buffer_new_and_alloc (2);
+ gst_buffer_map (codec_data, &map, GST_MAP_WRITE);
+ codec_data_data =
+ (aacparse->object_type << 11) |
+ (idx << 7) | (aacparse->channels << 3);
+ GST_WRITE_UINT16_BE (map.data, codec_data_data);
+ gst_buffer_unmap (codec_data, &map);
+ gst_caps_set_simple (src_caps, "codec_data", GST_TYPE_BUFFER,
+ codec_data, NULL);
+ }
+ }
+ }
+ gst_caps_unref (allowed);
+
GST_DEBUG_OBJECT (aacparse, "setting src caps: %" GST_PTR_FORMAT, src_caps);
res = gst_pad_set_caps (GST_BASE_PARSE (aacparse)->srcpad, src_caps);
gst_caps_unref (src_caps);
return res;
+
+not_a_known_rate:
+ gst_caps_unref (allowed);
+ gst_caps_unref (src_caps);
+ return FALSE;
}
@@ -250,7 +289,8 @@ gst_aac_parse_sink_setcaps (GstBaseParse * parse, GstCaps * caps)
sr_idx = ((map.data[0] & 0x07) << 1) | ((map.data[1] & 0x80) >> 7);
aacparse->object_type = (map.data[0] & 0xf8) >> 3;
- aacparse->sample_rate = gst_aac_parse_get_sample_rate_from_index (sr_idx);
+ aacparse->sample_rate =
+ gst_codec_utils_aac_get_sample_rate_from_index (sr_idx);
aacparse->channels = (map.data[1] & 0x78) >> 3;
aacparse->header_type = DSPAAC_HEADER_NONE;
aacparse->mpegversion = 4;
@@ -557,7 +597,7 @@ gst_aac_parse_read_loas_config (GstAacParse * aacparse, const guint8 * data,
}
}
}
- GST_WARNING_OBJECT (aacparse, "More data ignored");
+ GST_LOG_OBJECT (aacparse, "More data ignored");
} else {
GST_WARNING_OBJECT (aacparse, "Spec says \"TBD\"...");
}
@@ -669,7 +709,7 @@ gst_aac_parse_parse_adts_header (GstAacParse * aacparse, const guint8 * data,
if (rate) {
gint sr_idx = (data[2] & 0x3c) >> 2;
- *rate = gst_aac_parse_get_sample_rate_from_index (sr_idx);
+ *rate = gst_codec_utils_aac_get_sample_rate_from_index (sr_idx);
}
if (channels)
*channels = ((data[2] & 0x01) << 2) | ((data[3] & 0xc0) >> 6);
@@ -677,7 +717,7 @@ gst_aac_parse_parse_adts_header (GstAacParse * aacparse, const guint8 * data,
if (version)
*version = (data[1] & 0x08) ? 2 : 4;
if (object)
- *object = (data[2] & 0xc0) >> 6;
+ *object = ((data[2] & 0xc0) >> 6) + 1;
}
/**
@@ -860,7 +900,8 @@ gst_aac_parse_detect_stream (GstAacParse * aacparse,
/* FIXME: This gives totally wrong results. Duration calculation cannot
be based on this */
- aacparse->sample_rate = gst_aac_parse_get_sample_rate_from_index (sr_idx);
+ aacparse->sample_rate =
+ gst_codec_utils_aac_get_sample_rate_from_index (sr_idx);
/* baseparse is not given any fps,
* so it will give up on timestamps, seeking, etc */
@@ -1056,6 +1097,26 @@ exit:
return GST_FLOW_OK;
}
+static GstFlowReturn
+gst_aac_parse_pre_push_frame (GstBaseParse * parse, GstBaseParseFrame * frame)
+{
+ GstAacParse *aacparse = GST_AAC_PARSE (parse);
+
+ /* As a special case, we can remove the ADTS framing and output raw AAC. */
+ if (aacparse->header_type == DSPAAC_HEADER_ADTS
+ && aacparse->output_header_type == DSPAAC_HEADER_NONE) {
+ guint header_size;
+ GstMapInfo map;
+ gst_buffer_map (frame->buffer, &map, GST_MAP_READ);
+ header_size = (map.data[1] & 1) ? 7 : 9; /* optional CRC */
+ gst_buffer_unmap (frame->buffer, &map);
+ gst_buffer_resize (frame->buffer, header_size,
+ gst_buffer_get_size (frame->buffer) - header_size);
+ }
+
+ return GST_FLOW_OK;
+}
+
/**
* gst_aac_parse_start:
diff --git a/gst/audioparsers/gstaacparse.h b/gst/audioparsers/gstaacparse.h
index 8eca9aa4..51a2ed15 100644
--- a/gst/audioparsers/gstaacparse.h
+++ b/gst/audioparsers/gstaacparse.h
@@ -80,6 +80,7 @@ struct _GstAacParse {
gint frame_samples;
GstAacHeaderType header_type;
+ GstAacHeaderType output_header_type;
};
/**
diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c
index e9f7ad1c..11674cf2 100644
--- a/gst/avi/gstavidemux.c
+++ b/gst/avi/gstavidemux.c
@@ -256,6 +256,9 @@ gst_avi_demux_reset (GstAviDemux * avi)
avi->num_t_streams = 0;
avi->main_stream = -1;
+ avi->have_group_id = FALSE;
+ avi->group_id = G_MAXUINT;
+
avi->state = GST_AVI_DEMUX_START;
avi->offset = 0;
avi->building_index = FALSE;
@@ -518,7 +521,8 @@ gst_avi_demux_handle_src_query (GstPad * pad, GstObject * parent,
/* take stream duration, fall back to avih duration */
if ((duration = stream->duration) == -1)
- duration = avi->duration;
+ if ((duration = stream->hdr_duration) == -1)
+ duration = avi->duration;
gst_query_parse_duration (query, &fmt, NULL);
@@ -574,6 +578,25 @@ gst_avi_demux_handle_src_query (GstPad * pad, GstObject * parent,
res = gst_pad_query_default (pad, parent, query);
break;
}
+ case GST_QUERY_SEGMENT:
+ {
+ GstFormat format;
+ gint64 start, stop;
+
+ format = avi->segment.format;
+
+ start =
+ gst_segment_to_stream_time (&avi->segment, format,
+ avi->segment.start);
+ if ((stop = avi->segment.stop) == -1)
+ stop = avi->segment.duration;
+ else
+ stop = gst_segment_to_stream_time (&avi->segment, format, stop);
+
+ gst_query_set_segment (query, avi->segment.rate, format, start, stop);
+ res = TRUE;
+ break;
+ }
default:
res = gst_pad_query_default (pad, parent, query);
break;
@@ -725,6 +748,7 @@ gst_avi_demux_handle_sink_event (GstPad * pad, GstObject * parent,
{
gint64 boffset, offset = 0;
GstSegment segment;
+ GstEvent *segment_event;
/* some debug output */
gst_event_copy_segment (event, &segment);
@@ -822,7 +846,9 @@ gst_avi_demux_handle_sink_event (GstPad * pad, GstObject * parent,
gst_segment_copy_into (&segment, &avi->segment);
GST_DEBUG_OBJECT (avi, "Pushing newseg %" GST_SEGMENT_FORMAT, &segment);
- gst_avi_demux_push_event (avi, gst_event_new_segment (&segment));
+ segment_event = gst_event_new_segment (&segment);
+ gst_event_set_seqnum (segment_event, gst_event_get_seqnum (event));
+ gst_avi_demux_push_event (avi, segment_event);
GST_DEBUG_OBJECT (avi, "next chunk expected at %" G_GINT64_FORMAT,
boffset);
@@ -1983,6 +2009,7 @@ gst_avi_demux_parse_stream (GstAviDemux * avi, GstBuffer * buf)
GstElement *element;
gboolean got_strh = FALSE, got_strf = FALSE, got_vprp = FALSE;
gst_riff_vprp *vprp = NULL;
+ GstEvent *event;
gchar *stream_id;
element = GST_ELEMENT_CAST (avi);
@@ -2362,6 +2389,23 @@ gst_avi_demux_parse_stream (GstAviDemux * avi, GstBuffer * buf)
stream_id =
gst_pad_create_stream_id_printf (pad, GST_ELEMENT_CAST (avi), "%03u",
avi->num_streams);
+
+ event = gst_pad_get_sticky_event (avi->sinkpad, GST_EVENT_STREAM_START, 0);
+ if (event) {
+ if (gst_event_parse_group_id (event, &avi->group_id))
+ avi->have_group_id = TRUE;
+ else
+ avi->have_group_id = FALSE;
+ gst_event_unref (event);
+ } else if (!avi->have_group_id) {
+ avi->have_group_id = TRUE;
+ avi->group_id = gst_util_group_id_next ();
+ }
+
+ event = gst_event_new_stream_start (stream_id);
+ if (avi->have_group_id)
+ gst_event_set_group_id (event, avi->group_id);
+
gst_pad_push_event (pad, gst_event_new_stream_start (stream_id));
g_free (stream_id);
gst_pad_set_caps (pad, caps);
@@ -3720,6 +3764,7 @@ gst_avi_demux_stream_header_pull (GstAviDemux * avi)
switch (GST_READ_UINT32_LE (map.data)) {
case GST_RIFF_LIST_strl:
+ gst_buffer_unmap (sub, &map);
if (!(gst_avi_demux_parse_stream (avi, sub))) {
GST_ELEMENT_WARNING (avi, STREAM, DEMUX, (NULL),
("failed to parse stream, ignoring"));
@@ -3728,10 +3773,12 @@ gst_avi_demux_stream_header_pull (GstAviDemux * avi)
sub = NULL;
goto next;
case GST_RIFF_LIST_odml:
+ gst_buffer_unmap (sub, &map);
gst_avi_demux_parse_odml (avi, sub);
sub = NULL;
break;
case GST_RIFF_LIST_INFO:
+ gst_buffer_unmap (sub, &map);
gst_buffer_resize (sub, 4, -1);
gst_riff_parse_info (element, sub, &tags);
if (tags) {
@@ -3743,6 +3790,8 @@ gst_avi_demux_stream_header_pull (GstAviDemux * avi)
}
}
tags = NULL;
+ gst_buffer_unref (sub);
+ sub = NULL;
break;
default:
GST_WARNING_OBJECT (avi,
@@ -4154,12 +4203,14 @@ gst_avi_demux_handle_seek (GstAviDemux * avi, GstPad * pad, GstEvent * event)
gboolean update;
GstSegment seeksegment = { 0, };
gint i;
+ guint32 seqnum = 0;
if (event) {
GST_DEBUG_OBJECT (avi, "doing seek with event");
gst_event_parse_seek (event, &rate, &format, &flags,
&cur_type, &cur, &stop_type, &stop);
+ seqnum = gst_event_get_seqnum (event);
/* we have to have a format as the segment format. Try to convert
* if not. */
@@ -4191,6 +4242,8 @@ gst_avi_demux_handle_seek (GstAviDemux * avi, GstPad * pad, GstEvent * event)
if (flush) {
GstEvent *fevent = gst_event_new_flush_start ();
+ if (seqnum)
+ gst_event_set_seqnum (fevent, seqnum);
/* for a flushing seek, we send a flush_start on all pads. This will
* eventually stop streaming with a WRONG_STATE. We can thus eventually
* take the STREAM_LOCK. */
@@ -4224,6 +4277,9 @@ gst_avi_demux_handle_seek (GstAviDemux * avi, GstPad * pad, GstEvent * event)
if (flush) {
GstEvent *fevent = gst_event_new_flush_stop (TRUE);
+ if (seqnum)
+ gst_event_set_seqnum (fevent, seqnum);
+
GST_DEBUG_OBJECT (avi, "sending flush stop");
gst_avi_demux_push_event (avi, gst_event_ref (fevent));
gst_pad_push_event (avi->sinkpad, fevent);
@@ -4234,15 +4290,20 @@ gst_avi_demux_handle_seek (GstAviDemux * avi, GstPad * pad, GstEvent * event)
/* post the SEGMENT_START message when we do segmented playback */
if (avi->segment.flags & GST_SEEK_FLAG_SEGMENT) {
- gst_element_post_message (GST_ELEMENT_CAST (avi),
+ GstMessage *segment_start_msg =
gst_message_new_segment_start (GST_OBJECT_CAST (avi),
- avi->segment.format, avi->segment.position));
+ avi->segment.format, avi->segment.position);
+ if (seqnum)
+ gst_message_set_seqnum (segment_start_msg, seqnum);
+ gst_element_post_message (GST_ELEMENT_CAST (avi), segment_start_msg);
}
/* queue the segment event for the streaming thread. */
if (avi->seg_event)
gst_event_unref (avi->seg_event);
avi->seg_event = gst_event_new_segment (&avi->segment);
+ if (seqnum)
+ gst_event_set_seqnum (avi->seg_event, seqnum);
if (!avi->streaming) {
gst_pad_start_task (avi->sinkpad, (GstTaskFunction) gst_avi_demux_loop,
diff --git a/gst/avi/gstavidemux.h b/gst/avi/gstavidemux.h
index 9d8b2a1f..a7cefba4 100644
--- a/gst/avi/gstavidemux.h
+++ b/gst/avi/gstavidemux.h
@@ -163,6 +163,9 @@ typedef struct _GstAviDemux {
guint main_stream; /* used for seeking */
+ gboolean have_group_id;
+ guint group_id;
+
/* for streaming mode */
gboolean streaming;
gboolean have_eos;
diff --git a/gst/deinterlace/gstdeinterlace.c b/gst/deinterlace/gstdeinterlace.c
index 32109900..b9b687c8 100644
--- a/gst/deinterlace/gstdeinterlace.c
+++ b/gst/deinterlace/gstdeinterlace.c
@@ -1518,6 +1518,8 @@ restart:
field1 = &self->field_history[self->history_count - 1];
if (locking != GST_DEINTERLACE_LOCKING_NONE) {
+ GstCaps *sinkcaps;
+
if (!self->state_count) {
GST_ERROR_OBJECT (self,
"BROKEN! Fields in history + no states should not happen!");
@@ -1564,7 +1566,9 @@ restart:
}
/* setcaps on sink and src pads */
- gst_deinterlace_setcaps (self, self->sinkpad, gst_pad_get_current_caps (self->sinkpad)); // FIXME
+ sinkcaps = gst_pad_get_current_caps (self->sinkpad);
+ gst_deinterlace_setcaps (self, self->sinkpad, sinkcaps); // FIXME
+ gst_caps_unref (sinkcaps);
if (flush_one && self->drop_orphans) {
GST_DEBUG_OBJECT (self, "Dropping orphan first field");
@@ -2040,7 +2044,7 @@ gst_deinterlace_chain (GstPad * pad, GstObject * parent, GstBuffer * buf)
self->reconfigure = FALSE;
GST_OBJECT_UNLOCK (self);
- caps = gst_pad_get_current_caps (self->srcpad);
+ caps = gst_pad_get_current_caps (self->sinkpad);
if (caps != NULL) {
gst_deinterlace_setcaps (self, self->sinkpad, caps); // FIXME
gst_caps_unref (caps);
diff --git a/gst/flv/gstflvdemux.c b/gst/flv/gstflvdemux.c
index 0e166bc7..6723e801 100644
--- a/gst/flv/gstflvdemux.c
+++ b/gst/flv/gstflvdemux.c
@@ -636,6 +636,26 @@ cleanup:
}
static gboolean
+have_group_id (GstFlvDemux * demux)
+{
+ GstEvent *event;
+
+ event = gst_pad_get_sticky_event (demux->sinkpad, GST_EVENT_STREAM_START, 0);
+ if (event) {
+ if (gst_event_parse_group_id (event, &demux->group_id))
+ demux->have_group_id = TRUE;
+ else
+ demux->have_group_id = FALSE;
+ gst_event_unref (event);
+ } else if (!demux->have_group_id) {
+ demux->have_group_id = TRUE;
+ demux->group_id = gst_util_group_id_next ();
+ }
+
+ return demux->have_group_id;
+}
+
+static gboolean
gst_flv_demux_audio_negotiate (GstFlvDemux * demux, guint32 codec_tag,
guint32 rate, guint32 channels, guint32 width)
{
@@ -643,6 +663,7 @@ gst_flv_demux_audio_negotiate (GstFlvDemux * demux, guint32 codec_tag,
gchar *codec_name = NULL;
gboolean ret = FALSE;
guint adjusted_rate = rate;
+ GstEvent *event;
gchar *stream_id;
switch (codec_tag) {
@@ -786,7 +807,11 @@ gst_flv_demux_audio_negotiate (GstFlvDemux * demux, guint32 codec_tag,
stream_id =
gst_pad_create_stream_id (demux->audio_pad, GST_ELEMENT_CAST (demux),
"audio");
- gst_pad_push_event (demux->audio_pad, gst_event_new_stream_start (stream_id));
+
+ event = gst_event_new_stream_start (stream_id);
+ if (have_group_id (demux))
+ gst_event_set_group_id (event, demux->group_id);
+ gst_pad_push_event (demux->audio_pad, event);
g_free (stream_id);
ret = gst_pad_set_caps (demux->audio_pad, caps);
@@ -1178,6 +1203,7 @@ gst_flv_demux_video_negotiate (GstFlvDemux * demux, guint32 codec_tag)
gboolean ret = FALSE;
GstCaps *caps = NULL;
gchar *codec_name = NULL;
+ GstEvent *event;
gchar *stream_id;
/* Generate caps for that pad */
@@ -1240,7 +1266,10 @@ gst_flv_demux_video_negotiate (GstFlvDemux * demux, guint32 codec_tag)
stream_id =
gst_pad_create_stream_id (demux->video_pad, GST_ELEMENT_CAST (demux),
"video");
- gst_pad_push_event (demux->video_pad, gst_event_new_stream_start (stream_id));
+ event = gst_event_new_stream_start (stream_id);
+ if (have_group_id (demux))
+ gst_event_set_group_id (event, demux->group_id);
+ gst_pad_push_event (demux->video_pad, event);
ret = gst_pad_set_caps (demux->video_pad, caps);
if (G_LIKELY (ret)) {
@@ -1768,6 +1797,9 @@ gst_flv_demux_cleanup (GstFlvDemux * demux)
demux->state = FLV_STATE_HEADER;
+ demux->have_group_id = FALSE;
+ demux->group_id = G_MAXUINT;
+
demux->flushing = FALSE;
demux->need_header = TRUE;
demux->audio_need_segment = TRUE;
@@ -3190,6 +3222,25 @@ gst_flv_demux_query (GstPad * pad, GstObject * parent, GstQuery * query)
}
break;
}
+ case GST_QUERY_SEGMENT:
+ {
+ GstFormat format;
+ gint64 start, stop;
+
+ format = demux->segment.format;
+
+ start =
+ gst_segment_to_stream_time (&demux->segment, format,
+ demux->segment.start);
+ if ((stop = demux->segment.stop) == -1)
+ stop = demux->segment.duration;
+ else
+ stop = gst_segment_to_stream_time (&demux->segment, format, stop);
+
+ gst_query_set_segment (query, demux->segment.rate, format, start, stop);
+ res = TRUE;
+ break;
+ }
case GST_QUERY_LATENCY:
default:
res = gst_pad_query_default (pad, parent, query);
diff --git a/gst/flv/gstflvdemux.h b/gst/flv/gstflvdemux.h
index 78a82ae7..90953b4a 100644
--- a/gst/flv/gstflvdemux.h
+++ b/gst/flv/gstflvdemux.h
@@ -59,6 +59,9 @@ struct _GstFlvDemux
GstPad *audio_pad;
GstPad *video_pad;
+ gboolean have_group_id;
+ guint group_id;
+
/* <private> */
GstIndex *index;
diff --git a/gst/goom/gstgoom.c b/gst/goom/gstgoom.c
index 48864c77..02ca396b 100644
--- a/gst/goom/gstgoom.c
+++ b/gst/goom/gstgoom.c
@@ -111,6 +111,8 @@ static gboolean gst_goom_sink_event (GstPad * pad, GstObject * parent,
static gboolean gst_goom_src_query (GstPad * pad, GstObject * parent,
GstQuery * query);
+static gboolean gst_goom_src_negotiate (GstGoom * goom);
+
#define gst_goom_parent_class parent_class
G_DEFINE_TYPE (GstGoom, gst_goom, GST_TYPE_ELEMENT);
@@ -207,7 +209,7 @@ gst_goom_sink_setcaps (GstGoom * goom, GstCaps * caps)
goom->bps = goom->channels * sizeof (gint16);
- return TRUE;
+ return gst_goom_src_negotiate (goom);
}
static gboolean
@@ -360,11 +362,11 @@ gst_goom_src_event (GstPad * pad, GstObject * parent, GstEvent * event)
goom->earliest_time = timestamp + diff;
GST_OBJECT_UNLOCK (goom);
- res = gst_pad_push_event (goom->sinkpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
default:
- res = gst_pad_push_event (goom->sinkpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
@@ -389,12 +391,9 @@ gst_goom_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
gst_event_unref (event);
break;
}
- case GST_EVENT_FLUSH_START:
- res = gst_pad_push_event (goom->srcpad, event);
- break;
case GST_EVENT_FLUSH_STOP:
gst_goom_reset (goom);
- res = gst_pad_push_event (goom->srcpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
case GST_EVENT_SEGMENT:
{
@@ -403,11 +402,11 @@ gst_goom_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
* we can do QoS */
gst_event_copy_segment (event, &goom->segment);
- res = gst_pad_push_event (goom->srcpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
default:
- res = gst_pad_push_event (goom->srcpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
@@ -476,12 +475,7 @@ gst_goom_src_query (GstPad * pad, GstObject * parent, GstQuery * query)
static GstFlowReturn
ensure_negotiated (GstGoom * goom)
{
- gboolean reconfigure;
-
- reconfigure = gst_pad_check_reconfigure (goom->srcpad);
-
- /* we don't know an output format yet, pick one */
- if (reconfigure || !gst_pad_has_current_caps (goom->srcpad)) {
+ if (gst_pad_check_reconfigure (goom->srcpad)) {
if (!gst_goom_src_negotiate (goom))
return GST_FLOW_NOT_NEGOTIATED;
}
diff --git a/gst/goom2k1/gstgoom.c b/gst/goom2k1/gstgoom.c
index e124edcd..6376d35b 100644
--- a/gst/goom2k1/gstgoom.c
+++ b/gst/goom2k1/gstgoom.c
@@ -106,6 +106,8 @@ static gboolean gst_goom_sink_event (GstPad * pad, GstObject * parent,
static gboolean gst_goom_src_query (GstPad * pad, GstObject * parent,
GstQuery * query);
+static gboolean gst_goom_src_negotiate (GstGoom * goom);
+
#define gst_goom_parent_class parent_class
typedef GstGoom GstGoom2k1;
typedef GstGoomClass GstGoom2k1Class;
@@ -203,10 +205,12 @@ gst_goom_sink_setcaps (GstGoom * goom, GstCaps * caps)
res = gst_structure_get_int (structure, "channels", &goom->channels);
res &= gst_structure_get_int (structure, "rate", &goom->rate);
+ if (!res)
+ return FALSE;
goom->bps = goom->channels * sizeof (gint16);
- return res;
+ return gst_goom_src_negotiate (goom);
}
static gboolean
@@ -356,11 +360,11 @@ gst_goom_src_event (GstPad * pad, GstObject * parent, GstEvent * event)
goom->earliest_time = timestamp + diff;
GST_OBJECT_UNLOCK (goom);
- res = gst_pad_push_event (goom->sinkpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
default:
- res = gst_pad_push_event (goom->sinkpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
@@ -385,12 +389,9 @@ gst_goom_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
gst_event_unref (event);
break;
}
- case GST_EVENT_FLUSH_START:
- res = gst_pad_push_event (goom->srcpad, event);
- break;
case GST_EVENT_FLUSH_STOP:
gst_goom_reset (goom);
- res = gst_pad_push_event (goom->srcpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
case GST_EVENT_SEGMENT:
{
@@ -399,11 +400,11 @@ gst_goom_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
* we can do QoS */
gst_event_copy_segment (event, &goom->segment);
- res = gst_pad_push_event (goom->srcpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
default:
- res = gst_pad_push_event (goom->srcpad, event);
+ res = gst_pad_event_default (pad, parent, event);
break;
}
@@ -469,12 +470,7 @@ gst_goom_src_query (GstPad * pad, GstObject * parent, GstQuery * query)
static GstFlowReturn
ensure_negotiated (GstGoom * goom)
{
- gboolean reconfigure;
-
- reconfigure = gst_pad_check_reconfigure (goom->srcpad);
-
- /* we don't know an output format yet, pick one */
- if (reconfigure || !gst_pad_has_current_caps (goom->srcpad)) {
+ if (gst_pad_check_reconfigure (goom->srcpad)) {
if (!gst_goom_src_negotiate (goom))
return GST_FLOW_NOT_NEGOTIATED;
}
diff --git a/gst/isomp4/gstqtmux.c b/gst/isomp4/gstqtmux.c
index fa9ac9ed..7207a00b 100644
--- a/gst/isomp4/gstqtmux.c
+++ b/gst/isomp4/gstqtmux.c
@@ -1963,7 +1963,7 @@ gst_qt_mux_stop_file (GstQTMux * qtmux)
ret = gst_qt_mux_send_buffered_data (qtmux, NULL);
if (ret != GST_FLOW_OK)
return ret;
- } else {
+ } else if (!qtmux->streamable) {
/* mdat needs update iff not using faststart */
GST_DEBUG_OBJECT (qtmux, "updating mdat size");
ret = gst_qt_mux_update_mdat_size (qtmux, qtmux->mdat_pos,
diff --git a/gst/isomp4/qtdemux.c b/gst/isomp4/qtdemux.c
index ca5f9d5a..cc8e9194 100644
--- a/gst/isomp4/qtdemux.c
+++ b/gst/isomp4/qtdemux.c
@@ -202,6 +202,7 @@ struct _QtDemuxStream
guint32 subtype;
GstCaps *caps;
guint32 fourcc;
+ gboolean sparse;
gboolean new_caps;
gboolean new_stream; /* signals that a stream_start is required */
@@ -245,6 +246,7 @@ struct _QtDemuxStream
gint fps_d;
guint16 bits_per_sample;
guint16 color_table_id;
+ GstMemory *rgb8_palette;
/* audio info */
gdouble rate;
@@ -281,6 +283,7 @@ struct _QtDemuxStream
/* the Gst segment we are processing out, used for clipping */
GstSegment segment;
+ guint32 segment_seqnum; /* segment event seqnum obtained from seek */
/* last GstFlowReturn */
GstFlowReturn last_ret;
@@ -351,6 +354,10 @@ struct _QtDemuxStream
guint32 def_sample_duration;
guint32 def_sample_size;
guint32 def_sample_flags;
+
+ gboolean disabled;
+
+ GstClockTime elst_offset; /* sample offset from edit list */
};
enum QtDemuxState
@@ -452,6 +459,7 @@ static GstFlowReturn qtdemux_expose_streams (GstQTDemux * qtdemux);
static void gst_qtdemux_stream_free (GstQTDemux * qtdemux,
QtDemuxStream * stream);
static void gst_qtdemux_stream_clear (QtDemuxStream * stream);
+static void gst_qtdemux_remove_stream (GstQTDemux * qtdemux, int index);
static GstFlowReturn qtdemux_prepare_streams (GstQTDemux * qtdemux);
static void qtdemux_do_allocation (GstQTDemux * qtdemux,
QtDemuxStream * stream);
@@ -523,6 +531,8 @@ gst_qtdemux_init (GstQTDemux * qtdemux)
qtdemux->mss_mode = FALSE;
qtdemux->pending_newsegment = NULL;
qtdemux->upstream_newsegment = FALSE;
+ qtdemux->have_group_id = FALSE;
+ qtdemux->group_id = G_MAXUINT;
gst_segment_init (&qtdemux->segment, GST_FORMAT_TIME);
GST_OBJECT_FLAG_SET (qtdemux, GST_ELEMENT_FLAG_INDEXABLE);
@@ -555,31 +565,11 @@ gst_qtdemux_post_no_playable_stream_error (GstQTDemux * qtdemux)
}
}
-static void
-_gst_buffer_copy_into_mem (GstBuffer * dest, gsize offset, const guint8 * src,
- gsize size)
-{
- gsize bsize;
-
- g_return_if_fail (gst_buffer_is_writable (dest));
-
- bsize = gst_buffer_get_size (dest);
- g_return_if_fail (bsize >= offset + size);
-
- gst_buffer_fill (dest, offset, src, size);
-}
-
static GstBuffer *
_gst_buffer_new_wrapped (gpointer mem, gsize size, GFreeFunc free_func)
{
- GstBuffer *buf;
-
- buf = gst_buffer_new ();
- gst_buffer_append_memory (buf,
- gst_memory_new_wrapped (free_func ? 0 : GST_MEMORY_FLAG_READONLY,
- mem, size, 0, size, mem, free_func));
-
- return buf;
+ return gst_buffer_new_wrapped_full (free_func ? 0 : GST_MEMORY_FLAG_READONLY,
+ mem, size, 0, size, mem, free_func);
}
static GstFlowReturn
@@ -719,7 +709,7 @@ gst_qtdemux_get_duration (GstQTDemux * qtdemux, gint64 * duration)
if (qtdemux->duration != 0) {
if (qtdemux->duration != G_MAXINT64 && qtdemux->timescale != 0) {
*duration = gst_util_uint64_scale (qtdemux->duration,
- GST_SECOND, qtdemux->timescale);
+ GST_SECOND, qtdemux->timescale) - qtdemux->min_elst_offset;
}
}
return res;
@@ -825,13 +815,6 @@ gst_qtdemux_handle_src_query (GstPad * pad, GstObject * parent,
else
stop = gst_segment_to_stream_time (&qtdemux->segment, format, stop);
- if (qtdemux->segment.rate < 0.0) {
- gint64 tmp;
- tmp = stop;
- stop = start;
- start = tmp;
- }
-
gst_query_set_segment (query, qtdemux->segment.rate, format, start, stop);
res = TRUE;
break;
@@ -1355,7 +1338,8 @@ no_format:
* Called with STREAM_LOCK
*/
static gboolean
-gst_qtdemux_perform_seek (GstQTDemux * qtdemux, GstSegment * segment)
+gst_qtdemux_perform_seek (GstQTDemux * qtdemux, GstSegment * segment,
+ guint32 seqnum)
{
gint64 desired_offset;
gint n;
@@ -1387,6 +1371,7 @@ gst_qtdemux_perform_seek (GstQTDemux * qtdemux, GstSegment * segment)
stream->segment_index = -1;
stream->last_ret = GST_FLOW_OK;
stream->sent_eos = FALSE;
+ stream->segment_seqnum = seqnum;
if (segment->flags & GST_SEEK_FLAG_FLUSH)
gst_segment_init (&stream->segment, GST_FORMAT_TIME);
@@ -1414,12 +1399,15 @@ gst_qtdemux_do_seek (GstQTDemux * qtdemux, GstPad * pad, GstEvent * event)
gboolean update;
GstSegment seeksegment;
int i;
+ guint32 seqnum = 0;
+ GstEvent *flush_event;
if (event) {
GST_DEBUG_OBJECT (qtdemux, "doing seek with event");
gst_event_parse_seek (event, &rate, &format, &flags,
&cur_type, &cur, &stop_type, &stop);
+ seqnum = gst_event_get_seqnum (event);
/* we have to have a format as the segment format. Try to convert
* if not. */
@@ -1437,10 +1425,13 @@ gst_qtdemux_do_seek (GstQTDemux * qtdemux, GstPad * pad, GstEvent * event)
/* stop streaming, either by flushing or by pausing the task */
if (flush) {
+ flush_event = gst_event_new_flush_start ();
+ if (seqnum)
+ gst_event_set_seqnum (flush_event, seqnum);
/* unlock upstream pull_range */
- gst_pad_push_event (qtdemux->sinkpad, gst_event_new_flush_start ());
+ gst_pad_push_event (qtdemux->sinkpad, gst_event_ref (flush_event));
/* make sure out loop function exits */
- gst_qtdemux_push_event (qtdemux, gst_event_new_flush_start ());
+ gst_qtdemux_push_event (qtdemux, flush_event);
} else {
/* non flushing seek, pause the task */
gst_pad_pause_task (qtdemux->sinkpad);
@@ -1461,21 +1452,27 @@ gst_qtdemux_do_seek (GstQTDemux * qtdemux, GstPad * pad, GstEvent * event)
}
/* now do the seek, this actually never returns FALSE */
- gst_qtdemux_perform_seek (qtdemux, &seeksegment);
+ gst_qtdemux_perform_seek (qtdemux, &seeksegment, seqnum);
/* prepare for streaming again */
if (flush) {
- gst_pad_push_event (qtdemux->sinkpad, gst_event_new_flush_stop (TRUE));
- gst_qtdemux_push_event (qtdemux, gst_event_new_flush_stop (TRUE));
+ flush_event = gst_event_new_flush_stop (TRUE);
+ if (seqnum)
+ gst_event_set_seqnum (flush_event, seqnum);
+
+ gst_pad_push_event (qtdemux->sinkpad, gst_event_ref (flush_event));
+ gst_qtdemux_push_event (qtdemux, flush_event);
}
/* commit the new segment */
memcpy (&qtdemux->segment, &seeksegment, sizeof (GstSegment));
if (qtdemux->segment.flags & GST_SEEK_FLAG_SEGMENT) {
- gst_element_post_message (GST_ELEMENT_CAST (qtdemux),
- gst_message_new_segment_start (GST_OBJECT_CAST (qtdemux),
- qtdemux->segment.format, qtdemux->segment.position));
+ GstMessage *msg = gst_message_new_segment_start (GST_OBJECT_CAST (qtdemux),
+ qtdemux->segment.format, qtdemux->segment.position);
+ if (seqnum)
+ gst_message_set_seqnum (msg, seqnum);
+ gst_element_post_message (GST_ELEMENT_CAST (qtdemux), msg);
}
/* restart streaming, NEWSEGMENT will be sent from the streaming thread. */
@@ -1623,17 +1620,25 @@ gst_qtdemux_find_sample (GstQTDemux * qtdemux, gint64 byte_pos, gboolean fw,
i = str->n_samples - 1;
inc = -1;
}
+
for (; (i >= 0) && (i < str->n_samples); i += inc) {
- if (str->samples[i].size &&
- ((fw && (str->samples[i].offset >= byte_pos)) ||
- (!fw &&
- (str->samples[i].offset + str->samples[i].size <=
- byte_pos)))) {
- /* move stream to first available sample */
- if (set) {
- gst_qtdemux_move_stream (qtdemux, str, i);
- set_sample = TRUE;
- }
+ if (str->samples[i].size == 0)
+ continue;
+
+ if (fw && (str->samples[i].offset < byte_pos))
+ continue;
+
+ if (!fw && (str->samples[i].offset + str->samples[i].size > byte_pos))
+ continue;
+
+ /* move stream to first available sample */
+ if (set) {
+ gst_qtdemux_move_stream (qtdemux, str, i);
+ set_sample = TRUE;
+ }
+
+ /* avoid index from sparse streams since they might be far away */
+ if (!str->sparse) {
/* determine min/max time */
time = str->samples[i].timestamp + str->samples[i].pts_offset;
time = gst_util_uint64_scale (time, GST_SECOND, str->timescale);
@@ -1641,17 +1646,18 @@ gst_qtdemux_find_sample (GstQTDemux * qtdemux, gint64 byte_pos, gboolean fw,
(fw && time < min_time)) {
min_time = time;
}
+
/* determine stream with leading sample, to get its position */
- if (!stream || (fw
- && (str->samples[i].offset < stream->samples[index].offset))
- || (!fw
- && (str->samples[i].offset > stream->samples[index].offset))) {
+ if (!stream ||
+ (fw && (str->samples[i].offset < stream->samples[index].offset)) ||
+ (!fw && (str->samples[i].offset > stream->samples[index].offset))) {
stream = str;
index = i;
}
- break;
}
+ break;
}
+
/* no sample for this stream, mark eos */
if (!set_sample)
gst_qtdemux_move_stream (qtdemux, str, str->n_samples);
@@ -1799,7 +1805,6 @@ gst_qtdemux_reset (GstQTDemux * qtdemux, gboolean hard)
qtdemux->element_index = NULL;
#endif
qtdemux->major_brand = 0;
- gst_segment_init (&qtdemux->segment, GST_FORMAT_TIME);
if (qtdemux->pending_newsegment)
gst_object_unref (qtdemux->pending_newsegment);
qtdemux->pending_newsegment = NULL;
@@ -1813,9 +1818,13 @@ gst_qtdemux_reset (GstQTDemux * qtdemux, gboolean hard)
qtdemux->duration = 0;
qtdemux->mfra_offset = 0;
qtdemux->moof_offset = 0;
+ qtdemux->chapters_track_id = 0;
+ qtdemux->have_group_id = FALSE;
+ qtdemux->group_id = G_MAXUINT;
}
qtdemux->offset = 0;
gst_adapter_clear (qtdemux->adapter);
+ gst_segment_init (&qtdemux->segment, GST_FORMAT_TIME);
if (hard) {
for (n = 0; n < qtdemux->n_streams; n++) {
@@ -1839,6 +1848,7 @@ gst_qtdemux_reset (GstQTDemux * qtdemux, gboolean hard)
for (n = 0; n < qtdemux->n_streams; n++) {
qtdemux->streams[n]->last_ret = GST_FLOW_OK;
qtdemux->streams[n]->sent_eos = FALSE;
+ qtdemux->streams[n]->segment_seqnum = 0;
}
}
}
@@ -1859,6 +1869,7 @@ gst_qtdemux_handle_sink_event (GstPad * sinkpad, GstObject * parent,
QtDemuxStream *stream;
gint idx;
GstSegment segment;
+ GstEvent *segment_event;
/* some debug output */
gst_event_copy_segment (event, &segment);
@@ -1938,7 +1949,9 @@ gst_qtdemux_handle_sink_event (GstPad * sinkpad, GstObject * parent,
gst_segment_copy_into (&segment, &demux->segment);
GST_DEBUG_OBJECT (demux, "Pushing newseg %" GST_SEGMENT_FORMAT, &segment);
- gst_qtdemux_push_event (demux, gst_event_new_segment (&segment));
+ segment_event = gst_event_new_segment (&segment);
+ gst_event_set_seqnum (segment_event, gst_event_get_seqnum (event));
+ gst_qtdemux_push_event (demux, segment_event);
/* clear leftover in current segment, if any */
gst_adapter_clear (demux->adapter);
@@ -1965,7 +1978,11 @@ gst_qtdemux_handle_sink_event (GstPad * sinkpad, GstObject * parent,
}
case GST_EVENT_FLUSH_STOP:
{
+ guint64 dur;
+
+ dur = demux->segment.duration;
gst_qtdemux_reset (demux, FALSE);
+ demux->segment.duration = dur;
break;
}
case GST_EVENT_EOS:
@@ -2071,6 +2088,10 @@ gst_qtdemux_stream_clear (QtDemuxStream * stream)
gst_buffer_unref (GST_BUFFER_CAST (stream->buffers->data));
stream->buffers = g_slist_delete_link (stream->buffers, stream->buffers);
}
+ if (stream->rgb8_palette) {
+ gst_memory_unref (stream->rgb8_palette);
+ stream->rgb8_palette = NULL;
+ }
g_free (stream->samples);
stream->samples = NULL;
g_free (stream->segments);
@@ -2090,6 +2111,7 @@ gst_qtdemux_stream_clear (QtDemuxStream * stream)
stream->sample_index = -1;
stream->stbl_index = -1;
stream->n_samples = 0;
+ stream->sparse = FALSE;
}
static void
@@ -2104,6 +2126,17 @@ gst_qtdemux_stream_free (GstQTDemux * qtdemux, QtDemuxStream * stream)
g_free (stream);
}
+static void
+gst_qtdemux_remove_stream (GstQTDemux * qtdemux, int i)
+{
+ g_assert (i >= 0 && i < qtdemux->n_streams && qtdemux->streams[i] != NULL);
+
+ gst_qtdemux_stream_free (qtdemux, qtdemux->streams[i]);
+ qtdemux->streams[i] = qtdemux->streams[qtdemux->n_streams - 1];
+ qtdemux->streams[qtdemux->n_streams - 1] = NULL;
+ qtdemux->n_streams--;
+}
+
static GstStateChangeReturn
gst_qtdemux_change_state (GstElement * element, GstStateChange transition)
{
@@ -2145,7 +2178,7 @@ qtdemux_parse_ftyp (GstQTDemux * qtdemux, const guint8 * buffer, gint length)
GST_DEBUG_OBJECT (qtdemux, "major brand: %" GST_FOURCC_FORMAT,
GST_FOURCC_ARGS (qtdemux->major_brand));
buf = qtdemux->comp_brands = gst_buffer_new_and_alloc (length - 16);
- _gst_buffer_copy_into_mem (buf, 0, buffer + 16, length - 16);
+ gst_buffer_fill (buf, 0, buffer + 16, length - 16);
}
}
@@ -3417,6 +3450,10 @@ gst_qtdemux_activate_segment (GstQTDemux * qtdemux, QtDemuxStream * stream,
/* now prepare and send the segment */
if (stream->pad) {
event = gst_event_new_segment (&stream->segment);
+ if (stream->segment_seqnum) {
+ gst_event_set_seqnum (event, stream->segment_seqnum);
+ stream->segment_seqnum = 0;
+ }
gst_pad_push_event (stream->pad, event);
/* assume we can send more data now */
stream->last_ret = GST_FLOW_OK;
@@ -3920,6 +3957,13 @@ gst_qtdemux_decorate_and_push_buffer (GstQTDemux * qtdemux,
{
GstFlowReturn ret = GST_FLOW_OK;
+ /* offset the timestamps according to the edit list */
+ if (GST_CLOCK_TIME_IS_VALID (pts))
+ pts += stream->elst_offset;
+ if (GST_CLOCK_TIME_IS_VALID (dts))
+ dts += stream->elst_offset;
+ position += stream->elst_offset;
+
if (G_UNLIKELY (stream->fourcc == FOURCC_rtsp)) {
gchar *url;
GstMapInfo map;
@@ -3986,6 +4030,9 @@ gst_qtdemux_decorate_and_push_buffer (GstQTDemux * qtdemux,
GST_BUFFER_OFFSET (buf) = -1;
GST_BUFFER_OFFSET_END (buf) = -1;
+ if (G_UNLIKELY (stream->rgb8_palette))
+ gst_buffer_append_memory (buf, gst_memory_ref (stream->rgb8_palette));
+
if (G_UNLIKELY (stream->padding)) {
gst_buffer_resize (buf, stream->padding, -1);
}
@@ -4094,8 +4141,9 @@ gst_qtdemux_loop_state_movie (GstQTDemux * qtdemux)
/* gap events for subtitle streams */
for (i = 0; i < qtdemux->n_streams; i++) {
stream = qtdemux->streams[i];
- if (stream->subtype == FOURCC_subp || stream->subtype == FOURCC_text
- || stream->subtype == FOURCC_sbtl) {
+ if (stream->pad && (stream->subtype == FOURCC_subp
+ || stream->subtype == FOURCC_text
+ || stream->subtype == FOURCC_sbtl)) {
/* send one second gap events until the stream catches up */
/* gaps can only be sent after segment is activated (segment.stop is no longer -1) */
while (GST_CLOCK_TIME_IS_VALID (stream->segment.stop) &&
@@ -4800,7 +4848,14 @@ gst_qtdemux_chain (GstPad * sinkpad, GstObject * parent, GstBuffer * inbuf)
gst_qtdemux_push_pending_newsegment (demux);
/* clear to send tags on all streams */
for (i = 0; i < demux->n_streams; i++) {
- gst_qtdemux_push_tags (demux, demux->streams[i]);
+ stream = demux->streams[i];
+ gst_qtdemux_push_tags (demux, stream);
+ if (stream->sparse) {
+ GST_INFO_OBJECT (demux, "Sending gap event on stream %d", i);
+ gst_pad_push_event (stream->pad,
+ gst_event_new_gap (stream->segment.position,
+ GST_CLOCK_TIME_NONE));
+ }
}
}
@@ -5155,19 +5210,19 @@ qtdemux_parse_theora_extension (GstQTDemux * qtdemux, QtDemuxStream * stream,
switch (type) {
case FOURCC_tCtH:
buffer = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buffer, 0, buf, size);
+ gst_buffer_fill (buffer, 0, buf, size);
stream->buffers = g_slist_append (stream->buffers, buffer);
GST_LOG_OBJECT (qtdemux, "parsing theora header");
break;
case FOURCC_tCt_:
buffer = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buffer, 0, buf, size);
+ gst_buffer_fill (buffer, 0, buf, size);
stream->buffers = g_slist_append (stream->buffers, buffer);
GST_LOG_OBJECT (qtdemux, "parsing theora comment");
break;
case FOURCC_tCtC:
buffer = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buffer, 0, buf, size);
+ gst_buffer_fill (buffer, 0, buf, size);
stream->buffers = g_slist_append (stream->buffers, buffer);
GST_LOG_OBJECT (qtdemux, "parsing theora codebook");
break;
@@ -5326,6 +5381,12 @@ qtdemux_parse_node (GstQTDemux * qtdemux, GNode * node, const guint8 * buffer,
}
break;
}
+ case FOURCC_H264:
+ {
+ GST_MEMDUMP_OBJECT (qtdemux, "H264", buffer, end - buffer);
+ qtdemux_parse_container (qtdemux, node, buffer + 0x56, end);
+ break;
+ }
case FOURCC_avc1:
{
GST_MEMDUMP_OBJECT (qtdemux, "avc1", buffer, end - buffer);
@@ -5547,10 +5608,6 @@ gst_qtdemux_configure_stream (GstQTDemux * qtdemux, QtDemuxStream * stream)
}
if (stream->caps) {
- gboolean gray;
- gint depth, palette_count;
- const guint32 *palette_data = NULL;
-
stream->caps = gst_caps_make_writable (stream->caps);
gst_caps_set_simple (stream->caps,
@@ -5583,64 +5640,6 @@ gst_qtdemux_configure_stream (GstQTDemux * qtdemux, QtDemuxStream * stream)
gst_caps_set_simple (stream->caps, "pixel-aspect-ratio",
GST_TYPE_FRACTION, stream->par_w, stream->par_h, NULL);
}
-
- depth = stream->bits_per_sample;
-
- /* more than 32 bits means grayscale */
- gray = (depth > 32);
- /* low 32 bits specify the depth */
- depth &= 0x1F;
-
- /* different number of palette entries is determined by depth. */
- palette_count = 0;
- if ((depth == 1) || (depth == 2) || (depth == 4) || (depth == 8))
- palette_count = (1 << depth);
-
- switch (palette_count) {
- case 0:
- break;
- case 2:
- palette_data = ff_qt_default_palette_2;
- break;
- case 4:
- palette_data = ff_qt_default_palette_4;
- break;
- case 16:
- if (gray)
- palette_data = ff_qt_grayscale_palette_16;
- else
- palette_data = ff_qt_default_palette_16;
- break;
- case 256:
- if (gray)
- palette_data = ff_qt_grayscale_palette_256;
- else
- palette_data = ff_qt_default_palette_256;
- break;
- default:
- GST_ELEMENT_WARNING (qtdemux, STREAM, DEMUX,
- (_("The video in this file might not play correctly.")),
- ("unsupported palette depth %d", depth));
- break;
- }
- if (palette_data) {
- GstBuffer *palette;
-
- /* make sure it's not writable. We leave MALLOCDATA to NULL so that we
- * don't free any of the buffer data. */
- palette = _gst_buffer_new_wrapped ((gpointer) palette_data,
- palette_count * 4, NULL);
-
- gst_caps_set_simple (stream->caps, "palette_data",
- GST_TYPE_BUFFER, palette, NULL);
- gst_buffer_unref (palette);
- } else if (palette_count != 0) {
- GST_ELEMENT_WARNING (qtdemux, STREAM, NOT_IMPLEMENTED,
- (NULL), ("Unsupported palette depth %d. Ignoring stream.", depth));
-
- gst_object_unref (stream->pad);
- stream->pad = NULL;
- }
}
} else if (stream->subtype == FOURCC_soun) {
if (stream->caps) {
@@ -5672,12 +5671,37 @@ gst_qtdemux_configure_stream (GstQTDemux * qtdemux, QtDemuxStream * stream)
GST_DEBUG_OBJECT (qtdemux, "setting caps %" GST_PTR_FORMAT, stream->caps);
if (stream->new_stream) {
gchar *stream_id;
+ GstEvent *event;
+ GstStreamFlags stream_flags;
+
+ event =
+ gst_pad_get_sticky_event (qtdemux->sinkpad, GST_EVENT_STREAM_START,
+ 0);
+ if (event) {
+ if (gst_event_parse_group_id (event, &qtdemux->group_id))
+ qtdemux->have_group_id = TRUE;
+ else
+ qtdemux->have_group_id = FALSE;
+ gst_event_unref (event);
+ } else if (!qtdemux->have_group_id) {
+ qtdemux->have_group_id = TRUE;
+ qtdemux->group_id = gst_util_group_id_next ();
+ }
stream->new_stream = FALSE;
stream_id =
gst_pad_create_stream_id_printf (stream->pad,
GST_ELEMENT_CAST (qtdemux), "%03u", stream->track_id);
- gst_pad_push_event (stream->pad, gst_event_new_stream_start (stream_id));
+ event = gst_event_new_stream_start (stream_id);
+ if (qtdemux->have_group_id)
+ gst_event_set_group_id (event, qtdemux->group_id);
+ stream_flags = GST_STREAM_FLAG_NONE;
+ if (stream->disabled)
+ stream_flags |= GST_STREAM_FLAG_UNSELECT;
+ if (stream->sparse)
+ stream_flags |= GST_STREAM_FLAG_SPARSE;
+ gst_event_set_stream_flags (event, stream_flags);
+ gst_pad_push_event (stream->pad, event);
g_free (stream_id);
}
gst_pad_set_caps (stream->pad, stream->caps);
@@ -6556,12 +6580,17 @@ qtdemux_parse_segments (GstQTDemux * qtdemux, QtDemuxStream * stream,
guint32 rate_int;
media_time = QT_UINT32 (buffer + 20 + i * 12);
+ duration = QT_UINT32 (buffer + 16 + i * 12);
/* -1 media time is an empty segment, just ignore it */
- if (media_time == G_MAXUINT32)
+ if (media_time == G_MAXUINT32) {
+ if (i == 0) {
+ /* first empty segment specifies sample offset (if movie timescale) */
+ stream->elst_offset =
+ gst_util_uint64_scale (duration, GST_SECOND, qtdemux->timescale);
+ }
continue;
-
- duration = QT_UINT32 (buffer + 16 + i * 12);
+ }
segment = &stream->segments[count++];
@@ -6690,7 +6719,7 @@ qtdemux_parse_svq3_stsd_data (GstQTDemux * qtdemux, GNode * stsd,
seqh_size = QT_UINT32 (data + 4);
if (seqh_size > 0) {
_seqh = gst_buffer_new_and_alloc (seqh_size);
- _gst_buffer_copy_into_mem (_seqh, 0, data + 8, seqh_size);
+ gst_buffer_fill (_seqh, 0, data + 8, seqh_size);
}
}
}
@@ -6909,6 +6938,8 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
GNode *wave;
GNode *esds;
GNode *pasp;
+ GNode *tref;
+
QtDemuxStream *stream = NULL;
GstTagList *list = NULL;
gchar *codec = NULL;
@@ -6918,7 +6949,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
guint32 tkhd_flags = 0;
guint8 tkhd_version = 0;
guint32 fourcc;
- guint value_size, len;
+ guint value_size, stsd_len, len;
guint32 track_id;
GST_DEBUG_OBJECT (qtdemux, "parse_trak");
@@ -6928,9 +6959,6 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
|| !gst_byte_reader_get_uint24_be (&tkhd, &tkhd_flags))
goto corrupt_file;
- if ((tkhd_flags & 1) == 0)
- goto track_disabled;
-
/* pick between 64 or 32 bits */
value_size = tkhd_version == 1 ? 8 : 4;
if (!gst_byte_reader_skip (&tkhd, value_size * 2) ||
@@ -6950,6 +6978,9 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
}
}
+ if ((tkhd_flags & 1) == 0)
+ stream->disabled = TRUE;
+
GST_LOG_OBJECT (qtdemux, "track[tkhd] version/flags/id: 0x%02x/%06x/%u",
tkhd_version, tkhd_flags, stream->track_id);
@@ -6999,6 +7030,21 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
if (G_UNLIKELY (stream->timescale == 0 || qtdemux->timescale == 0))
goto corrupt_file;
+ if ((tref = qtdemux_tree_get_child_by_type (trak, FOURCC_tref))) {
+ /* chapters track reference */
+ GNode *chap = qtdemux_tree_get_child_by_type (tref, FOURCC_chap);
+ if (chap) {
+ gsize length = GST_READ_UINT32_BE (chap->data);
+ if (qtdemux->chapters_track_id)
+ GST_FIXME_OBJECT (qtdemux, "Multiple CHAP tracks");
+
+ if (length >= 12) {
+ qtdemux->chapters_track_id =
+ GST_READ_UINT32_BE ((gint8 *) chap->data + 8);
+ }
+ }
+ }
+
/* fragmented files may have bogus duration in moov */
if (!qtdemux->fragmented &&
qtdemux->duration != G_MAXINT64 && stream->duration != G_MAXINT32) {
@@ -7048,19 +7094,28 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
stsd_data = (const guint8 *) stsd->data;
/* stsd should at least have one entry */
- len = QT_UINT32 (stsd_data);
- if (len < 24)
- goto corrupt_file;
+ stsd_len = QT_UINT32 (stsd_data);
+ if (stsd_len < 24) {
+ /* .. but skip stream with empty stsd produced by some Vivotek cameras */
+ if (stream->subtype == FOURCC_vivo) {
+ g_free (stream);
+ return TRUE;
+ } else {
+ goto corrupt_file;
+ }
+ }
+
+ GST_LOG_OBJECT (qtdemux, "stsd len: %d", stsd_len);
/* and that entry should fit within stsd */
len = QT_UINT32 (stsd_data + 16);
- if (len > QT_UINT32 (stsd_data) + 16)
+ if (len > stsd_len + 16)
goto corrupt_file;
- GST_LOG_OBJECT (qtdemux, "stsd len: %d", len);
stream->fourcc = fourcc = QT_FOURCC (stsd_data + 16 + 4);
GST_LOG_OBJECT (qtdemux, "stsd type: %" GST_FOURCC_FORMAT,
GST_FOURCC_ARGS (stream->fourcc));
+ GST_LOG_OBJECT (qtdemux, "stsd type len: %d", len);
if ((fourcc == FOURCC_drms) || (fourcc == FOURCC_drmi) ||
((fourcc & 0xFFFFFF00) == GST_MAKE_FOURCC ('e', 'n', 'c', 0)))
@@ -7068,6 +7123,9 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
if (stream->subtype == FOURCC_vide) {
guint32 w = 0, h = 0;
+ gboolean gray;
+ gint depth, palette_size, palette_count;
+ guint32 *palette_data = NULL;
stream->sampled = TRUE;
@@ -7091,8 +7149,89 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
stream->bits_per_sample = QT_UINT16 (stsd_data + offset + 82);
stream->color_table_id = QT_UINT16 (stsd_data + offset + 84);
- GST_LOG_OBJECT (qtdemux, "frame count: %u",
- QT_UINT16 (stsd_data + offset + 48));
+ GST_LOG_OBJECT (qtdemux, "width %d, height %d, bps %d, color table id %d",
+ stream->width, stream->height, stream->bits_per_sample,
+ stream->color_table_id);
+
+ depth = stream->bits_per_sample;
+
+ /* more than 32 bits means grayscale */
+ gray = (depth > 32);
+ /* low 32 bits specify the depth */
+ depth &= 0x1F;
+
+ /* different number of palette entries is determined by depth. */
+ palette_count = 0;
+ if ((depth == 1) || (depth == 2) || (depth == 4) || (depth == 8))
+ palette_count = (1 << depth);
+ palette_size = palette_count * 4;
+
+ if (stream->color_table_id) {
+ switch (palette_count) {
+ case 0:
+ break;
+ case 2:
+ palette_data = g_memdup (ff_qt_default_palette_2, palette_size);
+ break;
+ case 4:
+ palette_data = g_memdup (ff_qt_default_palette_4, palette_size);
+ break;
+ case 16:
+ if (gray)
+ palette_data = g_memdup (ff_qt_grayscale_palette_16, palette_size);
+ else
+ palette_data = g_memdup (ff_qt_default_palette_16, palette_size);
+ break;
+ case 256:
+ if (gray)
+ palette_data = g_memdup (ff_qt_grayscale_palette_256, palette_size);
+ else
+ palette_data = g_memdup (ff_qt_default_palette_256, palette_size);
+ break;
+ default:
+ GST_ELEMENT_WARNING (qtdemux, STREAM, DEMUX,
+ (_("The video in this file might not play correctly.")),
+ ("unsupported palette depth %d", depth));
+ break;
+ }
+ } else {
+ gint i, j, start, end;
+
+ if (len < 94)
+ goto corrupt_file;
+
+ /* read table */
+ start = QT_UINT32 (stsd_data + offset + 86);
+ palette_count = QT_UINT16 (stsd_data + offset + 90);
+ end = QT_UINT16 (stsd_data + offset + 92);
+
+ GST_LOG_OBJECT (qtdemux, "start %d, end %d, palette_count %d",
+ start, end, palette_count);
+
+ if (end > 255)
+ end = 255;
+ if (start > end)
+ start = end;
+
+ if (len < 94 + (end - start) * 8)
+ goto corrupt_file;
+
+ /* palette is always the same size */
+ palette_data = g_malloc0 (256 * 4);
+ palette_size = 256 * 4;
+
+ for (j = 0, i = start; i <= end; j++, i++) {
+ guint32 a, r, g, b;
+
+ a = QT_UINT16 (stsd_data + offset + 94 + (j * 8));
+ r = QT_UINT16 (stsd_data + offset + 96 + (j * 8));
+ g = QT_UINT16 (stsd_data + offset + 98 + (j * 8));
+ b = QT_UINT16 (stsd_data + offset + 100 + (j * 8));
+
+ palette_data[i] = ((a & 0xff00) << 16) | ((r & 0xff00) << 8) |
+ (g & 0xff00) | (b >> 8);
+ }
+ }
stream->caps =
qtdemux_video_caps (qtdemux, stream, fourcc, stsd_data, &codec);
@@ -7104,6 +7243,39 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
codec = NULL;
}
+
+ if (palette_data) {
+ GstStructure *s;
+
+ if (stream->rgb8_palette)
+ gst_memory_unref (stream->rgb8_palette);
+ stream->rgb8_palette = gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY,
+ palette_data, palette_size, 0, palette_size, palette_data, g_free);
+
+ s = gst_caps_get_structure (stream->caps, 0);
+
+ /* non-raw video has a palette_data property. raw video has the palette as
+ * an extra plane that we append to the output buffers before we push
+ * them*/
+ if (!gst_structure_has_name (s, "video/x-raw")) {
+ GstBuffer *palette;
+
+ palette = gst_buffer_new ();
+ gst_buffer_append_memory (palette, stream->rgb8_palette);
+ stream->rgb8_palette = NULL;
+
+ gst_caps_set_simple (stream->caps, "palette_data",
+ GST_TYPE_BUFFER, palette, NULL);
+ gst_buffer_unref (palette);
+ }
+ } else if (palette_count != 0) {
+ GST_ELEMENT_WARNING (qtdemux, STREAM, NOT_IMPLEMENTED,
+ (NULL), ("Unsupported palette depth %d", depth));
+ }
+
+ GST_LOG_OBJECT (qtdemux, "frame count: %u",
+ QT_UINT16 (stsd_data + offset + 48));
+
esds = NULL;
pasp = NULL;
/* pick 'the' stsd child */
@@ -7127,6 +7299,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
gst_qtdemux_handle_esds (qtdemux, stream, esds, list);
} else {
switch (fourcc) {
+ case FOURCC_H264:
case FOURCC_avc1:
{
gint len = QT_UINT32 (stsd_data) - 0x66;
@@ -7160,13 +7333,37 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
avc_data + 8 + 1, size - 1);
buf = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buf, 0, avc_data + 0x8, size);
+ gst_buffer_fill (buf, 0, avc_data + 0x8, size);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
break;
}
+ case FOURCC_strf:
+ {
+ GstBuffer *buf;
+
+ GST_DEBUG_OBJECT (qtdemux, "found strf codec_data in stsd");
+
+ /* First 4 bytes are the length of the atom, the next 4 bytes
+ * are the fourcc, next 40 bytes are BITMAPINFOHEADER,
+ * next 1 byte is the version, and the
+ * subsequent bytes are sequence parameter set like data. */
+
+ size -= 40; /* we'll be skipping BITMAPINFOHEADER */
+ if (size > 1) {
+ gst_codec_utils_h264_caps_set_level_and_profile (stream->caps,
+ avc_data + 8 + 40 + 1, size - 1);
+
+ buf = gst_buffer_new_and_alloc (size);
+ gst_buffer_fill (buf, 0, avc_data + 8 + 40, size);
+ gst_caps_set_simple (stream->caps,
+ "codec_data", GST_TYPE_BUFFER, buf, NULL);
+ gst_buffer_unref (buf);
+ }
+ break;
+ }
case FOURCC_btrt:
{
guint avg_bitrate, max_bitrate;
@@ -7239,7 +7436,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
if (len > 0x8) {
len -= 0x8;
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, data + 8, len);
+ gst_buffer_fill (buf, 0, data + 8, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
@@ -7423,7 +7620,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
if (len > 0x8) {
len -= 0x8;
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, data + 8, len);
+ gst_buffer_fill (buf, 0, data + 8, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
@@ -7453,13 +7650,14 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
GST_DEBUG_OBJECT (qtdemux, "found codec_data in stsd");
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, stsd_data, len);
+ gst_buffer_fill (buf, 0, stsd_data, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
break;
}
case FOURCC_rle_:
+ case FOURCC_WRLE:
{
gst_caps_set_simple (stream->caps,
"depth", G_TYPE_INT, QT_UINT16 (stsd_data + offset + 82), NULL);
@@ -7502,7 +7700,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
break;
}
buf = gst_buffer_new_and_alloc (ovc1_len - 198);
- _gst_buffer_copy_into_mem (buf, 0, ovc1_data + 198, ovc1_len - 198);
+ gst_buffer_fill (buf, 0, ovc1_data + 198, ovc1_len - 198);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
@@ -7731,7 +7929,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
}
wfex = (WAVEFORMATEX *) (owma_data + 36);
buf = gst_buffer_new_and_alloc (owma_len - 54);
- _gst_buffer_copy_into_mem (buf, 0, owma_data + 54, owma_len - 54);
+ gst_buffer_fill (buf, 0, owma_data + 54, owma_len - 54);
if (wfex->wFormatTag == 0x0161) {
codec_name = "Windows Media Audio";
version = 2;
@@ -7830,7 +8028,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
headerlen -= 8;
headerbuf = gst_buffer_new_and_alloc (headerlen);
- _gst_buffer_copy_into_mem (headerbuf, 0, waveheader, headerlen);
+ gst_buffer_fill (headerbuf, 0, waveheader, headerlen);
if (gst_riff_parse_strf_auds (GST_ELEMENT_CAST (qtdemux),
headerbuf, &header, &extra)) {
@@ -7870,7 +8068,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
if (len > 0x4C) {
GstBuffer *buf = gst_buffer_new_and_alloc (len - 0x4C);
- _gst_buffer_copy_into_mem (buf, 0, stsd_data + 0x4C, len - 0x4C);
+ gst_buffer_fill (buf, 0, stsd_data + 0x4C, len - 0x4C);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
@@ -7906,7 +8104,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
/* codec-data contains alac atom size and prefix,
* ffmpeg likes it that way, not quite gst-ish though ...*/
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, alac->data, len);
+ gst_buffer_fill (buf, 0, alac->data, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
@@ -7931,7 +8129,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
GstBuffer *buf = gst_buffer_new_and_alloc (len - 0x34);
guint bitrate;
- _gst_buffer_copy_into_mem (buf, 0, stsd_data + 0x34, len - 0x34);
+ gst_buffer_fill (buf, 0, stsd_data + 0x34, len - 0x34);
/* If we have enough data, let's try to get the 'damr' atom. See
* the 3GPP container spec (26.244) for more details. */
@@ -7970,6 +8168,7 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
|| stream->subtype == FOURCC_sbtl) {
stream->sampled = TRUE;
+ stream->sparse = TRUE;
offset = 16;
@@ -8032,6 +8231,10 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
default:
break;
}
+ GST_INFO_OBJECT (qtdemux,
+ "type %" GST_FOURCC_FORMAT " caps %" GST_PTR_FORMAT,
+ GST_FOURCC_ARGS (fourcc), stream->caps);
+
} else {
/* everything in 1 sample */
stream->sampled = TRUE;
@@ -8126,7 +8329,6 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
/* ERRORS */
skip_track:
-track_disabled:
{
GST_INFO_OBJECT (qtdemux, "skip disabled track");
g_free (stream);
@@ -8311,11 +8513,7 @@ qtdemux_prepare_streams (GstQTDemux * qtdemux)
* in push mode, we'll just have to deal with it */
if (G_UNLIKELY (qtdemux->pullbased && !stream->n_samples)) {
GST_DEBUG_OBJECT (qtdemux, "no samples for stream; discarding");
- gst_qtdemux_stream_free (qtdemux, stream);
- memmove (&(qtdemux->streams[i]), &(qtdemux->streams[i + 1]),
- sizeof (QtDemuxStream *) * (GST_QTDEMUX_MAX_STREAMS - i - 1));
- qtdemux->streams[GST_QTDEMUX_MAX_STREAMS - 1] = NULL;
- qtdemux->n_streams--;
+ gst_qtdemux_remove_stream (qtdemux, i);
i--;
continue;
}
@@ -8363,6 +8561,15 @@ qtdemux_expose_streams (GstQTDemux * qtdemux)
GST_DEBUG_OBJECT (qtdemux, "stream %d, id %d, fourcc %" GST_FOURCC_FORMAT,
i, stream->track_id, GST_FOURCC_ARGS (stream->fourcc));
+ if ((stream->subtype == FOURCC_text || stream->subtype == FOURCC_sbtl) &&
+ stream->track_id == qtdemux->chapters_track_id) {
+ /* TODO - parse chapters track and expose it as GstToc; For now just ignore it
+ so that it doesn't look like a subtitle track */
+ gst_qtdemux_remove_stream (qtdemux, i);
+ i--;
+ continue;
+ }
+
/* now we have all info and can expose */
list = stream->pending_tags;
stream->pending_tags = NULL;
@@ -9211,7 +9418,7 @@ qtdemux_tag_add_blob (GNode * node, GstQTDemux * demux)
data = node->data;
len = QT_UINT32 (data);
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, data, len);
+ gst_buffer_fill (buf, 0, data, len);
/* heuristic to determine style of tag */
if (QT_FOURCC (data + 4) == FOURCC_____ ||
@@ -9534,6 +9741,7 @@ qtdemux_parse_tree (GstQTDemux * qtdemux)
guint64 creation_time;
GstDateTime *datetime = NULL;
gint version;
+ int i;
/* make sure we have a usable taglist */
if (!qtdemux->tag_list) {
@@ -9606,6 +9814,31 @@ qtdemux_parse_tree (GstQTDemux * qtdemux)
qtdemux_parse_mehd (qtdemux, &mehd_data);
}
+ /* parse all traks */
+ trak = qtdemux_tree_get_child_by_type (qtdemux->moov_node, FOURCC_trak);
+ while (trak) {
+ qtdemux_parse_trak (qtdemux, trak);
+ /* iterate all siblings */
+ trak = qtdemux_tree_get_sibling_by_type (trak, FOURCC_trak);
+ }
+
+ /* make sure we don't offset samples more than we have to */
+ qtdemux->min_elst_offset = GST_CLOCK_TIME_NONE;
+ for (i = 0; i < qtdemux->n_streams; ++i) {
+ QtDemuxStream *stream = qtdemux->streams[i];
+ if (!GST_CLOCK_TIME_IS_VALID (qtdemux->min_elst_offset)
+ || stream->elst_offset < qtdemux->min_elst_offset) {
+ qtdemux->min_elst_offset = stream->elst_offset;
+ }
+ }
+ if (!GST_CLOCK_TIME_IS_VALID (qtdemux->min_elst_offset)) {
+ qtdemux->min_elst_offset = 0;
+ }
+ for (i = 0; i < qtdemux->n_streams; ++i) {
+ QtDemuxStream *stream = qtdemux->streams[i];
+ stream->elst_offset -= qtdemux->min_elst_offset;
+ }
+
/* set duration in the segment info */
gst_qtdemux_get_duration (qtdemux, &duration);
if (duration) {
@@ -9616,14 +9849,6 @@ qtdemux_parse_tree (GstQTDemux * qtdemux)
qtdemux->segment.stop = duration;
}
- /* parse all traks */
- trak = qtdemux_tree_get_child_by_type (qtdemux->moov_node, FOURCC_trak);
- while (trak) {
- qtdemux_parse_trak (qtdemux, trak);
- /* iterate all siblings */
- trak = qtdemux_tree_get_sibling_by_type (trak, FOURCC_trak);
- }
-
/* find tags */
udta = qtdemux_tree_get_child_by_type (qtdemux->moov_node, FOURCC_udta);
if (udta) {
@@ -9792,24 +10017,19 @@ gst_qtdemux_handle_esds (GstQTDemux * qtdemux, QtDemuxStream * stream,
case 0x64:
case 0x65:
codec_name = "MPEG-2 video";
-
- gst_caps_unref (stream->caps);
- stream->caps = gst_caps_new_simple ("video/mpeg",
+ caps = gst_caps_new_simple ("video/mpeg",
"mpegversion", G_TYPE_INT, 2,
"systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
break;
- case 0x69: /* MP3 has two different values, accept either */
- case 0x6B:
- /* change to mpeg1 layer 3 audio */
- gst_caps_set_simple (stream->caps, "layer", G_TYPE_INT, 3,
- "mpegversion", G_TYPE_INT, 1, NULL);
- codec_name = "MPEG-1 layer 3";
+ case 0x69: /* MPEG-2 BC audio */
+ case 0x6B: /* MPEG-1 audio */
+ caps = gst_caps_new_simple ("audio/mpeg",
+ "mpegversion", G_TYPE_INT, 1, "parsed", G_TYPE_BOOLEAN, TRUE, NULL);
+ codec_name = "MPEG-1 audio";
break;
case 0x6A: /* MPEG-1 */
codec_name = "MPEG-1 video";
-
- gst_caps_unref (stream->caps);
- stream->caps = gst_caps_new_simple ("video/mpeg",
+ caps = gst_caps_new_simple ("video/mpeg",
"mpegversion", G_TYPE_INT, 1,
"systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
break;
@@ -9859,7 +10079,7 @@ gst_qtdemux_handle_esds (GstQTDemux * qtdemux, QtDemuxStream * stream,
GstBuffer *buffer;
buffer = gst_buffer_new_and_alloc (data_len);
- _gst_buffer_copy_into_mem (buffer, 0, data_ptr, data_len);
+ gst_buffer_fill (buffer, 0, data_ptr, data_len);
GST_DEBUG_OBJECT (qtdemux, "setting codec_data from esds");
GST_MEMDUMP_OBJECT (qtdemux, "codec_data from esds", data_ptr, data_len);
@@ -9923,6 +10143,11 @@ qtdemux_video_caps (GstQTDemux * qtdemux, QtDemuxStream * stream,
caps = gst_caps_new_simple ("video/x-svq",
"svqversion", G_TYPE_INT, 1, NULL);
break;
+ case GST_MAKE_FOURCC ('W', 'R', 'A', 'W'):
+ caps = gst_caps_new_empty_simple ("video/x-raw");
+ gst_caps_set_simple (caps, "format", G_TYPE_STRING, "RGB8P", NULL);
+ _codec ("Windows Raw RGB");
+ break;
case GST_MAKE_FOURCC ('r', 'a', 'w', ' '):
{
guint16 bps;
@@ -9987,15 +10212,46 @@ qtdemux_video_caps (GstQTDemux * qtdemux, QtDemuxStream * stream,
case GST_MAKE_FOURCC ('h', 'd', 'v', '1'): /* HDV 720p30 */
case GST_MAKE_FOURCC ('h', 'd', 'v', '2'): /* HDV 1080i60 */
case GST_MAKE_FOURCC ('h', 'd', 'v', '3'): /* HDV 1080i50 */
+ case GST_MAKE_FOURCC ('h', 'd', 'v', '4'): /* HDV 720p24 */
case GST_MAKE_FOURCC ('h', 'd', 'v', '5'): /* HDV 720p25 */
- case GST_MAKE_FOURCC ('h', 'd', 'v', '6'): /* HDV 1080i60 */
+ case GST_MAKE_FOURCC ('h', 'd', 'v', '6'): /* HDV 1080p24 */
+ case GST_MAKE_FOURCC ('h', 'd', 'v', '7'): /* HDV 1080p25 */
+ case GST_MAKE_FOURCC ('h', 'd', 'v', '8'): /* HDV 1080p30 */
+ case GST_MAKE_FOURCC ('h', 'd', 'v', '9'): /* HDV 720p60 */
+ case GST_MAKE_FOURCC ('h', 'd', 'v', 'a'): /* HDV 720p50 */
case GST_MAKE_FOURCC ('m', 'x', '5', 'n'): /* MPEG2 IMX NTSC 525/60 50mb/s produced by FCP */
case GST_MAKE_FOURCC ('m', 'x', '5', 'p'): /* MPEG2 IMX PAL 625/60 50mb/s produced by FCP */
case GST_MAKE_FOURCC ('m', 'x', '4', 'n'): /* MPEG2 IMX NTSC 525/60 40mb/s produced by FCP */
case GST_MAKE_FOURCC ('m', 'x', '4', 'p'): /* MPEG2 IMX PAL 625/60 40mb/s produced by FCP */
case GST_MAKE_FOURCC ('m', 'x', '3', 'n'): /* MPEG2 IMX NTSC 525/60 30mb/s produced by FCP */
case GST_MAKE_FOURCC ('m', 'x', '3', 'p'): /* MPEG2 IMX PAL 625/50 30mb/s produced by FCP */
- case GST_MAKE_FOURCC ('x', 'd', 'v', '2'): /* XDCAM HD 1080i60 */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '1'): /* XDCAM HD 720p30 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '2'): /* XDCAM HD 1080i60 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '3'): /* XDCAM HD 1080i50 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '4'): /* XDCAM HD 720p24 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '5'): /* XDCAM HD 720p25 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '6'): /* XDCAM HD 1080p24 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '7'): /* XDCAM HD 1080p25 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '8'): /* XDCAM HD 1080p30 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', '9'): /* XDCAM HD 720p60 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', 'a'): /* XDCAM HD 720p50 35Mb/s */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', 'b'): /* XDCAM EX 1080i60 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', 'c'): /* XDCAM EX 1080i50 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', 'd'): /* XDCAM HD 1080p24 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', 'e'): /* XDCAM HD 1080p25 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', 'v', 'f'): /* XDCAM HD 1080p30 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', '1'): /* XDCAM HD422 720p30 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', '4'): /* XDCAM HD422 720p24 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', '5'): /* XDCAM HD422 720p25 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', '9'): /* XDCAM HD422 720p60 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', 'a'): /* XDCAM HD422 720p50 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', 'b'): /* XDCAM HD422 1080i50 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', 'c'): /* XDCAM HD422 1080i50 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', 'd'): /* XDCAM HD422 1080p24 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', 'e'): /* XDCAM HD422 1080p25 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', '5', 'f'): /* XDCAM HD422 1080p30 50Mb/s CBR */
+ case GST_MAKE_FOURCC ('x', 'd', 'h', 'd'): /* XDCAM HD 540p */
+ case GST_MAKE_FOURCC ('x', 'd', 'h', '2'): /* XDCAM HD422 540p */
case GST_MAKE_FOURCC ('A', 'V', 'm', 'p'): /* AVID IMX PAL */
case GST_MAKE_FOURCC ('m', 'p', 'g', '2'): /* AVID IMX PAL */
_codec ("MPEG-2 video");
@@ -10068,6 +10324,7 @@ qtdemux_video_caps (GstQTDemux * qtdemux, QtDemuxStream * stream,
_codec ("Apple video");
caps = gst_caps_new_empty_simple ("video/x-apple-video");
break;
+ case GST_MAKE_FOURCC ('H', '2', '6', '4'):
case GST_MAKE_FOURCC ('a', 'v', 'c', '1'):
_codec ("H.264 / AVC");
caps = gst_caps_new_simple ("video/x-h264",
@@ -10079,6 +10336,11 @@ qtdemux_video_caps (GstQTDemux * qtdemux, QtDemuxStream * stream,
caps = gst_caps_new_simple ("video/x-rle",
"layout", G_TYPE_STRING, "quicktime", NULL);
break;
+ case GST_MAKE_FOURCC ('W', 'R', 'L', 'E'):
+ _codec ("Run-length encoding");
+ caps = gst_caps_new_simple ("video/x-rle",
+ "layout", G_TYPE_STRING, "microsoft", NULL);
+ break;
case GST_MAKE_FOURCC ('I', 'V', '3', '2'):
case GST_MAKE_FOURCC ('i', 'v', '3', '2'):
_codec ("Indeo Video 3");
diff --git a/gst/isomp4/qtdemux.h b/gst/isomp4/qtdemux.h
index efc6ffa9..5e3035fa 100644
--- a/gst/isomp4/qtdemux.h
+++ b/gst/isomp4/qtdemux.h
@@ -64,6 +64,9 @@ struct _GstQTDemux {
gint n_audio_streams;
gint n_sub_streams;
+ gboolean have_group_id;
+ guint group_id;
+
guint major_brand;
GstBuffer *comp_brands;
GNode *moov_node;
@@ -121,6 +124,10 @@ struct _GstQTDemux {
gboolean exposed;
gboolean mss_mode; /* flag to indicate that we're working with a smoothstreaming fragment */
guint64 fragment_start;
+
+ gint64 chapters_track_id;
+
+ GstClockTime min_elst_offset;
};
struct _GstQTDemuxClass {
diff --git a/gst/isomp4/qtdemux_fourcc.h b/gst/isomp4/qtdemux_fourcc.h
index 077b54b1..d3a972bb 100644
--- a/gst/isomp4/qtdemux_fourcc.h
+++ b/gst/isomp4/qtdemux_fourcc.h
@@ -139,11 +139,14 @@ G_BEGIN_DECLS
#define FOURCC_qtim GST_MAKE_FOURCC('q','t','i','m')
#define FOURCC_drms GST_MAKE_FOURCC('d','r','m','s')
#define FOURCC_drmi GST_MAKE_FOURCC('d','r','m','i')
+#define FOURCC_H264 GST_MAKE_FOURCC('H','2','6','4')
+#define FOURCC_strf GST_MAKE_FOURCC('s','t','r','f')
#define FOURCC_avc1 GST_MAKE_FOURCC('a','v','c','1')
#define FOURCC_avcC GST_MAKE_FOURCC('a','v','c','C')
#define FOURCC_btrt GST_MAKE_FOURCC('b','t','r','t')
#define FOURCC_VP31 GST_MAKE_FOURCC('V','P','3','1')
#define FOURCC_rle_ GST_MAKE_FOURCC('r','l','e',' ')
+#define FOURCC_WRLE GST_MAKE_FOURCC('W','R','L','E')
#define FOURCC_MAC6 GST_MAKE_FOURCC('M','A','C','6')
#define FOURCC_MAC3 GST_MAKE_FOURCC('M','A','C','3')
#define FOURCC_ima4 GST_MAKE_FOURCC('i','m','a','4')
@@ -180,6 +183,7 @@ G_BEGIN_DECLS
#define FOURCC_apco GST_MAKE_FOURCC('a','p','c','o')
#define FOURCC_ap4h GST_MAKE_FOURCC('a','p','4','h')
#define FOURCC_m1v GST_MAKE_FOURCC('m','1','v',' ')
+#define FOURCC_vivo GST_MAKE_FOURCC('v','i','v','o')
/* SVQ3 fourcc */
#define FOURCC_SEQH GST_MAKE_FOURCC('S','E','Q','H')
@@ -240,6 +244,9 @@ G_BEGIN_DECLS
/* MPEG DASH */
#define FOURCC_tfdt GST_MAKE_FOURCC('t','f','d','t')
+/* Chapters reference */
+#define FOURCC_chap GST_MAKE_FOURCC('c','h','a','p')
+
G_END_DECLS
#endif /* __GST_QTDEMUX_FOURCC_H__ */
diff --git a/gst/isomp4/qtdemux_types.c b/gst/isomp4/qtdemux_types.c
index c6767341..92e1814e 100644
--- a/gst/isomp4/qtdemux_types.c
+++ b/gst/isomp4/qtdemux_types.c
@@ -172,6 +172,7 @@ static const QtNodeType qt_node_types[] = {
{FOURCC_ovc1, "ovc1", 0},
{FOURCC_owma, "owma", 0},
{FOURCC_tfdt, "Track fragment decode time", 0, qtdemux_dump_tfdt},
+ {FOURCC_chap, "Chapter Reference"},
{0, "unknown", 0,},
};
diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c
index 33453376..e25f6769 100644
--- a/gst/matroska/matroska-demux.c
+++ b/gst/matroska/matroska-demux.c
@@ -397,6 +397,9 @@ gst_matroska_demux_reset (GstElement * element)
demux->num_t_streams = 0;
demux->num_v_streams = 0;
+ demux->have_group_id = FALSE;
+ demux->group_id = G_MAXUINT;
+
/* reset media info */
g_free (demux->common.writing_app);
demux->common.writing_app = NULL;
@@ -448,6 +451,7 @@ gst_matroska_demux_reset (GstElement * element)
demux->index_offset = 0;
demux->seekable = FALSE;
demux->need_segment = FALSE;
+ demux->segment_seqnum = 0;
demux->requested_seek_time = GST_CLOCK_TIME_NONE;
demux->seek_offset = -1;
demux->building_index = FALSE;
@@ -1373,8 +1377,24 @@ gst_matroska_demux_add_stream (GstMatroskaDemux * demux, GstEbmlRead * ebml)
stream_id =
gst_pad_create_stream_id_printf (context->pad, GST_ELEMENT_CAST (demux),
"%03u", context->uid);
+ stream_start =
+ gst_pad_get_sticky_event (demux->common.sinkpad, GST_EVENT_STREAM_START,
+ 0);
+ if (stream_start) {
+ if (gst_event_parse_group_id (stream_start, &demux->group_id))
+ demux->have_group_id = TRUE;
+ else
+ demux->have_group_id = FALSE;
+ gst_event_unref (stream_start);
+ } else if (!demux->have_group_id) {
+ demux->have_group_id = TRUE;
+ demux->group_id = gst_util_group_id_next ();
+ }
+
stream_start = gst_event_new_stream_start (stream_id);
g_free (stream_id);
+ if (demux->have_group_id)
+ gst_event_set_group_id (stream_start, demux->group_id);
stream_flags = GST_STREAM_FLAG_NONE;
if (context->type == GST_MATROSKA_TRACK_TYPE_SUBTITLE)
stream_flags |= GST_STREAM_FLAG_SPARSE;
@@ -1485,6 +1505,27 @@ gst_matroska_demux_query (GstMatroskaDemux * demux, GstPad * pad,
GST_OBJECT_UNLOCK (demux);
break;
}
+ case GST_QUERY_SEGMENT:
+ {
+ GstFormat format;
+ gint64 start, stop;
+
+ format = demux->common.segment.format;
+
+ start =
+ gst_segment_to_stream_time (&demux->common.segment, format,
+ demux->common.segment.start);
+ if ((stop = demux->common.segment.stop) == -1)
+ stop = demux->common.segment.duration;
+ else
+ stop =
+ gst_segment_to_stream_time (&demux->common.segment, format, stop);
+
+ gst_query_set_segment (query, demux->common.segment.rate, format, start,
+ stop);
+ res = TRUE;
+ break;
+ }
default:
if (pad)
res = gst_pad_query_default (pad, (GstObject *) demux, query);
@@ -1980,12 +2021,14 @@ gst_matroska_demux_handle_seek_event (GstMatroskaDemux * demux,
GstSegment seeksegment = { 0, };
gboolean update = TRUE;
gboolean pad_locked = FALSE;
+ guint32 seqnum;
if (pad)
track = gst_pad_get_element_private (pad);
gst_event_parse_seek (event, &rate, &format, &flags, &cur_type, &cur,
&stop_type, &stop);
+ seqnum = gst_event_get_seqnum (event);
/* we can only seek on time */
if (format != GST_FORMAT_TIME) {
@@ -2082,9 +2125,11 @@ gst_matroska_demux_handle_seek_event (GstMatroskaDemux * demux,
next:
if (flush) {
+ GstEvent *flush_event = gst_event_new_flush_start ();
+ gst_event_set_seqnum (flush_event, seqnum);
GST_DEBUG_OBJECT (demux, "Starting flush");
- gst_pad_push_event (demux->common.sinkpad, gst_event_new_flush_start ());
- gst_matroska_demux_send_event (demux, gst_event_new_flush_start ());
+ gst_pad_push_event (demux->common.sinkpad, gst_event_ref (flush_event));
+ gst_matroska_demux_send_event (demux, flush_event);
} else {
GST_DEBUG_OBJECT (demux, "Non-flushing seek, pausing task");
gst_pad_pause_task (demux->common.sinkpad);
@@ -2105,10 +2150,14 @@ next:
/* pull mode without index can do some scanning */
if (!demux->streaming && !entry) {
+ GstEvent *flush_event;
+
/* need to stop flushing upstream as we need it next */
- if (flush)
- gst_pad_push_event (demux->common.sinkpad,
- gst_event_new_flush_stop (TRUE));
+ if (flush) {
+ flush_event = gst_event_new_flush_stop (TRUE);
+ gst_event_set_seqnum (flush_event, seqnum);
+ gst_pad_push_event (demux->common.sinkpad, flush_event);
+ }
entry = gst_matroska_demux_search_pos (demux, seeksegment.position);
/* keep local copy */
if (entry) {
@@ -2117,8 +2166,11 @@ next:
entry = &scan_entry;
} else {
GST_DEBUG_OBJECT (demux, "Scan failed to find matching position");
- if (flush)
- gst_matroska_demux_send_event (demux, gst_event_new_flush_stop (TRUE));
+ if (flush) {
+ flush_event = gst_event_new_flush_stop (TRUE);
+ gst_event_set_seqnum (flush_event, seqnum);
+ gst_matroska_demux_send_event (demux, flush_event);
+ }
goto seek_error;
}
}
@@ -2149,9 +2201,11 @@ finish:
exit:
if (flush) {
+ GstEvent *flush_event = gst_event_new_flush_stop (TRUE);
+ gst_event_set_seqnum (flush_event, seqnum);
GST_DEBUG_OBJECT (demux, "Stopping flush");
- gst_pad_push_event (demux->common.sinkpad, gst_event_new_flush_stop (TRUE));
- gst_matroska_demux_send_event (demux, gst_event_new_flush_stop (TRUE));
+ gst_pad_push_event (demux->common.sinkpad, gst_event_ref (flush_event));
+ gst_matroska_demux_send_event (demux, flush_event);
}
GST_OBJECT_LOCK (demux);
@@ -2170,6 +2224,7 @@ exit:
msg = gst_message_new_segment_start (GST_OBJECT (demux),
GST_FORMAT_TIME, demux->common.segment.start);
+ gst_message_set_seqnum (msg, seqnum);
gst_element_post_message (GST_ELEMENT (demux), msg);
}
@@ -2179,6 +2234,7 @@ exit:
/* On port from 0.10, discarded !update (for segment.update) here, FIXME? */
demux->new_segment = gst_event_new_segment (&demux->common.segment);
+ gst_event_set_seqnum (demux->new_segment, seqnum);
if (demux->common.segment.rate < 0 && demux->common.segment.stop == -1)
demux->to_time = demux->common.segment.position;
else
@@ -2614,6 +2670,8 @@ gst_matroska_demux_push_stream_headers (GstMatroskaDemux * demux,
if (stream->set_discont) {
GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_DISCONT);
stream->set_discont = FALSE;
+ } else {
+ GST_BUFFER_FLAG_UNSET (buf, GST_BUFFER_FLAG_DISCONT);
}
/* push out all headers in one go and use last flow return */
@@ -2940,6 +2998,7 @@ gst_matroska_demux_check_subtitle_buffer (GstElement * element,
GstBuffer *newbuf;
gchar *utf8;
GstMapInfo map;
+ gboolean needs_unmap = TRUE;
sub_stream = (GstMatroskaTrackSubtitleContext *) stream;
@@ -2990,10 +3049,10 @@ gst_matroska_demux_check_subtitle_buffer (GstElement * element,
utf8 = g_strdup ("invalid subtitle");
newbuf = gst_buffer_new_wrapped (utf8, strlen (utf8));
+ gst_buffer_unmap (*buf, &map);
gst_buffer_copy_into (newbuf, *buf,
GST_BUFFER_COPY_TIMESTAMPS | GST_BUFFER_COPY_FLAGS | GST_BUFFER_COPY_META,
0, -1);
- gst_buffer_unmap (*buf, &map);
gst_buffer_unref (*buf);
*buf = newbuf;
@@ -3010,16 +3069,20 @@ next:
utf8 = g_markup_escape_text ((gchar *) map.data, map.size);
newbuf = gst_buffer_new_wrapped (utf8, strlen (utf8));
+ gst_buffer_unmap (*buf, &map);
gst_buffer_copy_into (newbuf, *buf,
GST_BUFFER_COPY_TIMESTAMPS | GST_BUFFER_COPY_FLAGS |
GST_BUFFER_COPY_META, 0, -1);
- gst_buffer_unmap (*buf, &map);
gst_buffer_unref (*buf);
*buf = newbuf;
+ needs_unmap = FALSE;
}
}
+ if (needs_unmap)
+ gst_buffer_unmap (*buf, &map);
+
return GST_FLOW_OK;
}
@@ -3358,6 +3421,7 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
if (GST_CLOCK_TIME_IS_VALID (lace_time) && demux->need_segment) {
GstSegment *segment = &demux->common.segment;
guint64 clace_time;
+ GstEvent *segment_event;
if (!GST_CLOCK_TIME_IS_VALID (demux->stream_start_time)) {
demux->stream_start_time = lace_time;
@@ -3382,8 +3446,12 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
"generated segment starting at %" GST_TIME_FORMAT ": %"
GST_SEGMENT_FORMAT, GST_TIME_ARGS (lace_time), segment);
/* now convey our segment notion downstream */
+ segment_event = gst_event_new_segment (segment);
+ if (demux->segment_seqnum)
+ gst_event_set_seqnum (segment_event, demux->segment_seqnum);
gst_matroska_demux_send_event (demux, gst_event_new_segment (segment));
demux->need_segment = FALSE;
+ demux->segment_seqnum = 0;
}
if (stream->send_stream_headers) {
@@ -3617,6 +3685,8 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
GST_DEBUG_OBJECT (demux, "marking DISCONT");
GST_BUFFER_FLAG_SET (sub, GST_BUFFER_FLAG_DISCONT);
stream->set_discont = FALSE;
+ } else {
+ GST_BUFFER_FLAG_UNSET (sub, GST_BUFFER_FLAG_DISCONT);
}
/* reverse playback book-keeping */
@@ -4707,6 +4777,7 @@ gst_matroska_demux_handle_sink_event (GstPad * pad, GstObject * parent,
demux->cluster_time = GST_CLOCK_TIME_NONE;
demux->cluster_offset = 0;
demux->need_segment = TRUE;
+ demux->segment_seqnum = gst_event_get_seqnum (event);
/* but keep some of the upstream segment */
demux->common.segment.rate = segment->rate;
/* also check if need to keep some of the requested seek position */
diff --git a/gst/matroska/matroska-demux.h b/gst/matroska/matroska-demux.h
index 787a8197..4453fe8f 100644
--- a/gst/matroska/matroska-demux.h
+++ b/gst/matroska/matroska-demux.h
@@ -55,6 +55,9 @@ typedef struct _GstMatroskaDemux {
guint num_a_streams;
guint num_t_streams;
+ guint group_id;
+ gboolean have_group_id;
+
/* state */
gboolean streaming;
guint level_up;
@@ -90,6 +93,7 @@ typedef struct _GstMatroskaDemux {
guint64 index_offset;
GstEvent *seek_event;
gboolean need_segment;
+ guint32 segment_seqnum;
/* reverse playback */
GArray *seek_index;
diff --git a/gst/rtp/gstrtpgstpay.c b/gst/rtp/gstrtpgstpay.c
index 9b53ab7e..9912bc81 100644
--- a/gst/rtp/gstrtpgstpay.c
+++ b/gst/rtp/gstrtpgstpay.c
@@ -208,7 +208,7 @@ gst_rtp_gst_pay_flush (GstRtpGSTPay * rtpgstpay, GstClockTime timestamp)
/* create a new buf to hold the payload */
GST_DEBUG_OBJECT (rtpgstpay, "take %u bytes from adapter", payload_len);
- paybuf = gst_adapter_take_buffer (rtpgstpay->adapter, payload_len);
+ paybuf = gst_adapter_take_buffer_fast (rtpgstpay->adapter, payload_len);
/* create a new group to hold the rtp header and the payload */
gst_buffer_append (outbuf, paybuf);
diff --git a/gst/rtp/gstrtpmp2tpay.c b/gst/rtp/gstrtpmp2tpay.c
index f3851675..b64aaa68 100644
--- a/gst/rtp/gstrtpmp2tpay.c
+++ b/gst/rtp/gstrtpmp2tpay.c
@@ -127,10 +127,9 @@ gst_rtp_mp2t_pay_flush (GstRTPMP2TPay * rtpmp2tpay)
while (avail > 0 && (ret == GST_FLOW_OK)) {
guint towrite;
- guint8 *payload;
guint payload_len;
guint packet_len;
- GstRTPBuffer rtp = { NULL };
+ GstBuffer *paybuf;
/* this will be the total length of the packet */
packet_len = gst_rtp_buffer_calc_packet_len (avail, 0, 0);
@@ -147,16 +146,11 @@ gst_rtp_mp2t_pay_flush (GstRTPMP2TPay * rtpmp2tpay)
break;
/* create buffer to hold the payload */
- outbuf = gst_rtp_buffer_new_allocate (payload_len, 0, 0);
+ outbuf = gst_rtp_buffer_new_allocate (0, 0, 0);
/* get payload */
- gst_rtp_buffer_map (outbuf, GST_MAP_WRITE, &rtp);
- payload = gst_rtp_buffer_get_payload (&rtp);
-
- /* copy stuff from adapter to payload */
- gst_adapter_copy (rtpmp2tpay->adapter, payload, 0, payload_len);
- gst_rtp_buffer_unmap (&rtp);
- gst_adapter_flush (rtpmp2tpay->adapter, payload_len);
+ paybuf = gst_adapter_take_buffer_fast (rtpmp2tpay->adapter, payload_len);
+ outbuf = gst_buffer_append (outbuf, paybuf);
avail -= payload_len;
GST_BUFFER_TIMESTAMP (outbuf) = rtpmp2tpay->first_ts;
diff --git a/gst/rtp/gstrtpmp4gpay.c b/gst/rtp/gstrtpmp4gpay.c
index 690e6350..7913d9ab 100644
--- a/gst/rtp/gstrtpmp4gpay.c
+++ b/gst/rtp/gstrtpmp4gpay.c
@@ -469,6 +469,7 @@ gst_rtp_mp4g_pay_flush (GstRtpMP4GPay * rtpmp4gpay)
guint payload_len;
guint packet_len;
GstRTPBuffer rtp = { NULL };
+ GstBuffer *paybuf;
/* this will be the total lenght of the packet */
packet_len = gst_rtp_buffer_calc_packet_len (avail, 0, 0);
@@ -485,7 +486,7 @@ gst_rtp_mp4g_pay_flush (GstRtpMP4GPay * rtpmp4gpay)
packet_len, payload_len);
/* create buffer to hold the payload, also make room for the 4 header bytes. */
- outbuf = gst_rtp_buffer_new_allocate (payload_len + 4, 0, 0);
+ outbuf = gst_rtp_buffer_new_allocate (4, 0, 0);
gst_rtp_buffer_map (outbuf, GST_MAP_WRITE, &rtp);
@@ -526,15 +527,14 @@ gst_rtp_mp4g_pay_flush (GstRtpMP4GPay * rtpmp4gpay)
payload[2] = (total & 0x1fe0) >> 5;
payload[3] = (total & 0x1f) << 3; /* we use 13 bits for the size, 3 bits index */
- /* copy stuff from adapter to payload */
- gst_adapter_copy (rtpmp4gpay->adapter, &payload[4], 0, payload_len);
- gst_adapter_flush (rtpmp4gpay->adapter, payload_len);
-
/* marker only if the packet is complete */
gst_rtp_buffer_set_marker (&rtp, avail <= payload_len);
gst_rtp_buffer_unmap (&rtp);
+ paybuf = gst_adapter_take_buffer_fast (rtpmp4gpay->adapter, payload_len);
+ outbuf = gst_buffer_append (outbuf, paybuf);
+
GST_BUFFER_TIMESTAMP (outbuf) = rtpmp4gpay->first_timestamp;
GST_BUFFER_DURATION (outbuf) = rtpmp4gpay->first_duration;
diff --git a/gst/rtp/gstrtpmp4vpay.c b/gst/rtp/gstrtpmp4vpay.c
index 5185d036..8ac6d061 100644
--- a/gst/rtp/gstrtpmp4vpay.c
+++ b/gst/rtp/gstrtpmp4vpay.c
@@ -275,7 +275,8 @@ gst_rtp_mp4v_pay_flush (GstRtpMP4VPay * rtpmp4vpay)
outbuf = gst_rtp_buffer_new_allocate (0, 0, 0);
/* Take buffer with the payload from the adapter */
- outbuf_data = gst_adapter_take_buffer (rtpmp4vpay->adapter, payload_len);
+ outbuf_data = gst_adapter_take_buffer_fast (rtpmp4vpay->adapter,
+ payload_len);
avail -= payload_len;
diff --git a/gst/rtp/gstrtpmpapay.c b/gst/rtp/gstrtpmpapay.c
index 0c7402d3..2a7061c2 100644
--- a/gst/rtp/gstrtpmpapay.c
+++ b/gst/rtp/gstrtpmpapay.c
@@ -189,6 +189,7 @@ gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay)
guint payload_len;
guint packet_len;
GstRTPBuffer rtp = { NULL };
+ GstBuffer *paybuf;
/* this will be the total length of the packet */
packet_len = gst_rtp_buffer_calc_packet_len (4 + avail, 0, 0);
@@ -200,7 +201,7 @@ gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay)
payload_len = gst_rtp_buffer_calc_payload_len (towrite, 0, 0);
/* create buffer to hold the payload */
- outbuf = gst_rtp_buffer_new_allocate (payload_len, 0, 0);
+ outbuf = gst_rtp_buffer_new_allocate (4, 0, 0);
gst_rtp_buffer_map (outbuf, GST_MAP_WRITE, &rtp);
@@ -221,9 +222,6 @@ gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay)
payload[2] = frag_offset >> 8;
payload[3] = frag_offset & 0xff;
- gst_adapter_copy (rtpmpapay->adapter, &payload[4], 0, payload_len);
- gst_adapter_flush (rtpmpapay->adapter, payload_len);
-
avail -= payload_len;
frag_offset += payload_len;
@@ -232,6 +230,9 @@ gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay)
gst_rtp_buffer_unmap (&rtp);
+ paybuf = gst_adapter_take_buffer_fast (rtpmpapay->adapter, payload_len);
+ outbuf = gst_buffer_append (outbuf, paybuf);
+
GST_BUFFER_TIMESTAMP (outbuf) = rtpmpapay->first_ts;
GST_BUFFER_DURATION (outbuf) = rtpmpapay->duration;
diff --git a/gst/rtp/gstrtpmpvpay.c b/gst/rtp/gstrtpmpvpay.c
index 9e9b65d2..87c511db 100644
--- a/gst/rtp/gstrtpmpvpay.c
+++ b/gst/rtp/gstrtpmpvpay.c
@@ -178,6 +178,7 @@ gst_rtp_mpv_pay_flush (GstRTPMPVPay * rtpmpvpay)
guint packet_len;
guint payload_len;
GstRTPBuffer rtp = { NULL };
+ GstBuffer *paybuf;
packet_len = gst_rtp_buffer_calc_packet_len (avail, 4, 0);
@@ -185,7 +186,7 @@ gst_rtp_mpv_pay_flush (GstRTPMPVPay * rtpmpvpay)
payload_len = gst_rtp_buffer_calc_payload_len (towrite, 4, 0);
- outbuf = gst_rtp_buffer_new_allocate (payload_len, 4, 0);
+ outbuf = gst_rtp_buffer_new_allocate (4, 0, 0);
gst_rtp_buffer_map (outbuf, GST_MAP_WRITE, &rtp);
@@ -205,14 +206,14 @@ gst_rtp_mpv_pay_flush (GstRTPMPVPay * rtpmpvpay)
*/
memset (payload, 0x0, 4);
- gst_adapter_copy (rtpmpvpay->adapter, payload + 4, 0, payload_len);
- gst_adapter_flush (rtpmpvpay->adapter, payload_len);
-
avail -= payload_len;
gst_rtp_buffer_set_marker (&rtp, avail == 0);
gst_rtp_buffer_unmap (&rtp);
+ paybuf = gst_adapter_take_buffer_fast (rtpmpvpay->adapter, payload_len);
+ outbuf = gst_buffer_append (outbuf, paybuf);
+
GST_BUFFER_TIMESTAMP (outbuf) = rtpmpvpay->first_ts;
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpmpvpay), outbuf);
diff --git a/gst/rtp/gstrtpvrawdepay.c b/gst/rtp/gstrtpvrawdepay.c
index c2fca1b0..7674122e 100644
--- a/gst/rtp/gstrtpvrawdepay.c
+++ b/gst/rtp/gstrtpvrawdepay.c
@@ -171,7 +171,7 @@ gst_rtp_vraw_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
GstRtpVRawDepay *rtpvrawdepay;
gint clock_rate;
const gchar *str;
- gint format, width, height, pgroup, xinc, yinc;
+ gint format, width, height, depth, pgroup, xinc, yinc;
GstCaps *srccaps;
gboolean res;
GstFlowReturn ret;
@@ -194,6 +194,10 @@ gst_rtp_vraw_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
goto no_height;
height = atoi (str);
+ if (!(str = gst_structure_get_string (structure, "depth")))
+ goto no_depth;
+ depth = atoi (str);
+
/* optional interlace value but we don't handle interlaced
* formats yet */
if (gst_structure_get_string (structure, "interlace"))
@@ -218,8 +222,14 @@ gst_rtp_vraw_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
format = GST_VIDEO_FORMAT_AYUV;
pgroup = 3;
} else if (!strcmp (str, "YCbCr-4:2:2")) {
- format = GST_VIDEO_FORMAT_UYVY;
- pgroup = 4;
+ if (depth == 8) {
+ format = GST_VIDEO_FORMAT_UYVY;
+ pgroup = 4;
+ } else if (depth == 10) {
+ format = GST_VIDEO_FORMAT_UYVP;
+ pgroup = 5;
+ } else
+ goto unknown_format;
xinc = 2;
} else if (!strcmp (str, "YCbCr-4:2:0")) {
format = GST_VIDEO_FORMAT_I420;
@@ -268,6 +278,11 @@ no_height:
GST_ERROR_OBJECT (depayload, "no height specified");
return FALSE;
}
+no_depth:
+ {
+ GST_ERROR_OBJECT (depayload, "no depth specified");
+ return FALSE;
+ }
interlaced:
{
GST_ERROR_OBJECT (depayload, "interlaced formats not supported yet");
@@ -434,6 +449,7 @@ gst_rtp_vraw_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
case GST_VIDEO_FORMAT_BGR:
case GST_VIDEO_FORMAT_BGRA:
case GST_VIDEO_FORMAT_UYVY:
+ case GST_VIDEO_FORMAT_UYVP:
/* samples are packed just like gstreamer packs them */
offs /= xinc;
datap = yp + (line * ystride) + (offs * pgroup);
diff --git a/gst/rtp/gstrtpvrawpay.c b/gst/rtp/gstrtpvrawpay.c
index d95a62eb..f5b7b0da 100644
--- a/gst/rtp/gstrtpvrawpay.c
+++ b/gst/rtp/gstrtpvrawpay.c
@@ -35,7 +35,7 @@ static GstStaticPadTemplate gst_rtp_vraw_pay_sink_template =
GST_PAD_SINK,
GST_PAD_ALWAYS,
GST_STATIC_CAPS ("video/x-raw, "
- "format = (string) { RGB, RGBA, BGR, BGRA, AYUYV, UYVY, I420, Y41B, UYVP, I420, Y42B, Y444 }, "
+ "format = (string) { RGB, RGBA, BGR, BGRA, AYUV, UYVY, I420, Y41B, UYVP }, "
"width = (int) [ 1, 32767 ], " "height = (int) [ 1, 32767 ]; ")
);
@@ -177,7 +177,7 @@ gst_rtp_vraw_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
break;
case GST_VIDEO_FORMAT_UYVP:
samplingstr = "YCbCr-4:2:2";
- pgroup = 4;
+ pgroup = 5;
xinc = 2;
depth = 10;
depthstr = "10";
@@ -409,6 +409,7 @@ gst_rtp_vraw_pay_handle_buffer (GstRTPBasePayload * payload, GstBuffer * buffer)
case GST_VIDEO_FORMAT_BGR:
case GST_VIDEO_FORMAT_BGRA:
case GST_VIDEO_FORMAT_UYVY:
+ case GST_VIDEO_FORMAT_UYVP:
offs /= rtpvrawpay->xinc;
memcpy (outdata, yp + (lin * ystride) + (offs * pgroup), length);
outdata += length;
diff --git a/gst/rtpmanager/gstrtpbin.c b/gst/rtpmanager/gstrtpbin.c
index 0364880b..aa1ae114 100644
--- a/gst/rtpmanager/gstrtpbin.c
+++ b/gst/rtpmanager/gstrtpbin.c
@@ -253,6 +253,7 @@ enum
#define DEFAULT_USE_PIPELINE_CLOCK FALSE
#define DEFAULT_RTCP_SYNC GST_RTP_BIN_RTCP_SYNC_ALWAYS
#define DEFAULT_RTCP_SYNC_INTERVAL 0
+#define DEFAULT_DO_SYNC_EVENT FALSE
enum
{
@@ -268,6 +269,7 @@ enum
PROP_AUTOREMOVE,
PROP_BUFFER_MODE,
PROP_USE_PIPELINE_CLOCK,
+ PROP_DO_SYNC_EVENT,
PROP_LAST
};
@@ -975,6 +977,25 @@ stream_set_ts_offset (GstRtpBin * bin, GstRtpBinStream * stream,
stream->ssrc, ts_offset);
}
+static void
+gst_rtp_bin_send_sync_event (GstRtpBinStream * stream)
+{
+ if (stream->bin->send_sync_event) {
+ GstEvent *event;
+ GstPad *srcpad;
+
+ GST_DEBUG_OBJECT (stream->bin,
+ "sending GstRTCPSRReceived event downstream");
+
+ event = gst_event_new_custom (GST_EVENT_CUSTOM_DOWNSTREAM,
+ gst_structure_new_empty ("GstRTCPSRReceived"));
+
+ srcpad = gst_element_get_static_pad (stream->buffer, "src");
+ gst_pad_push_event (srcpad, event);
+ gst_object_unref (srcpad);
+ }
+}
+
/* associate a stream to the given CNAME. This will make sure all streams for
* that CNAME are synchronized together.
* Must be called with GST_RTP_BIN_LOCK */
@@ -1241,6 +1262,8 @@ gst_rtp_bin_associate (GstRtpBin * bin, GstRtpBinStream * stream, guint8 len,
stream_set_ts_offset (bin, ostream, ts_offset, TRUE);
}
}
+ gst_rtp_bin_send_sync_event (stream);
+
return;
}
@@ -1840,6 +1863,11 @@ gst_rtp_bin_class_init (GstRtpBinClass * klass)
0, G_MAXUINT, DEFAULT_RTCP_SYNC_INTERVAL,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+ g_object_class_install_property (gobject_class, PROP_DO_SYNC_EVENT,
+ g_param_spec_boolean ("do-sync-event", "Do Sync Event",
+ "Send event downstream when a stream is synchronized to the sender",
+ DEFAULT_DO_SYNC_EVENT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_rtp_bin_change_state);
gstelement_class->request_new_pad =
GST_DEBUG_FUNCPTR (gst_rtp_bin_request_new_pad);
@@ -1896,6 +1924,7 @@ gst_rtp_bin_init (GstRtpBin * rtpbin)
rtpbin->priv->autoremove = DEFAULT_AUTOREMOVE;
rtpbin->buffer_mode = DEFAULT_BUFFER_MODE;
rtpbin->use_pipeline_clock = DEFAULT_USE_PIPELINE_CLOCK;
+ rtpbin->send_sync_event = DEFAULT_DO_SYNC_EVENT;
/* some default SDES entries */
cname = g_strdup_printf ("user%u@host-%x", g_random_int (), g_random_int ());
@@ -2039,6 +2068,9 @@ gst_rtp_bin_set_property (GObject * object, guint prop_id,
GST_RTP_BIN_UNLOCK (rtpbin);
}
break;
+ case PROP_DO_SYNC_EVENT:
+ rtpbin->send_sync_event = g_value_get_boolean (value);
+ break;
case PROP_BUFFER_MODE:
GST_RTP_BIN_LOCK (rtpbin);
rtpbin->buffer_mode = g_value_get_enum (value);
@@ -2100,6 +2132,9 @@ gst_rtp_bin_get_property (GObject * object, guint prop_id,
case PROP_USE_PIPELINE_CLOCK:
g_value_set_boolean (value, rtpbin->use_pipeline_clock);
break;
+ case PROP_DO_SYNC_EVENT:
+ g_value_set_boolean (value, rtpbin->send_sync_event);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
diff --git a/gst/rtpmanager/gstrtpbin.h b/gst/rtpmanager/gstrtpbin.h
index fd0a7cc9..22d95f79 100644
--- a/gst/rtpmanager/gstrtpbin.h
+++ b/gst/rtpmanager/gstrtpbin.h
@@ -56,6 +56,7 @@ struct _GstRtpBin {
RTPJitterBufferMode buffer_mode;
gboolean buffering;
gboolean use_pipeline_clock;
+ gboolean send_sync_event;
GstClockTime buffer_start;
/* a list of session */
GSList *sessions;
diff --git a/gst/rtpmanager/gstrtpjitterbuffer.c b/gst/rtpmanager/gstrtpjitterbuffer.c
index fd8814f5..aa784d99 100644
--- a/gst/rtpmanager/gstrtpjitterbuffer.c
+++ b/gst/rtpmanager/gstrtpjitterbuffer.c
@@ -1011,6 +1011,9 @@ gst_rtp_jitter_buffer_src_event (GstPad * pad, GstObject * parent,
gst_event_parse_latency (event, &latency);
+ GST_DEBUG_OBJECT (jitterbuffer,
+ "configuring latency of %" GST_TIME_FORMAT, GST_TIME_ARGS (latency));
+
JBUF_LOCK (priv);
/* adjust the overall buffer delay to the total pipeline latency in
* buffering mode because if downstream consumes too fast (because of
@@ -1788,6 +1791,12 @@ again:
ret = gst_clock_id_wait (id, &clock_jitter);
+ JBUF_LOCK (priv);
+ GST_DEBUG_OBJECT (jitterbuffer, "sync done");
+ /* and free the entry */
+ gst_clock_id_unref (id);
+ priv->clock_id = NULL;
+
if (ret == GST_CLOCK_EARLY && gap > 0
&& clock_jitter > (priv->latency_ns + priv->peer_latency)) {
GstClockTimeDiff total_duration;
@@ -1812,11 +1821,6 @@ again:
lost_packets_late = TRUE;
}
- JBUF_LOCK (priv);
- /* and free the entry */
- gst_clock_id_unref (id);
- priv->clock_id = NULL;
-
/* at this point, the clock could have been unlocked by a timeout, a new
* tail element was added to the queue or because we are shutting down. Check
* for shutdown first. */
diff --git a/gst/rtpmanager/gstrtpmux.c b/gst/rtpmanager/gstrtpmux.c
index db3bb701..a4b4f39f 100644
--- a/gst/rtpmanager/gstrtpmux.c
+++ b/gst/rtpmanager/gstrtpmux.c
@@ -247,6 +247,7 @@ gst_rtp_mux_init (GstRTPMux * rtp_mux)
"src"), "src");
gst_pad_set_event_function (rtp_mux->srcpad,
GST_DEBUG_FUNCPTR (gst_rtp_mux_src_event));
+ GST_PAD_SET_PROXY_CAPS (rtp_mux->srcpad);
gst_element_add_pad (GST_ELEMENT (rtp_mux), rtp_mux->srcpad);
rtp_mux->ssrc = DEFAULT_SSRC;
diff --git a/gst/rtpmanager/gstrtpsession.c b/gst/rtpmanager/gstrtpsession.c
index 1bc2b528..1648e2d2 100644
--- a/gst/rtpmanager/gstrtpsession.c
+++ b/gst/rtpmanager/gstrtpsession.c
@@ -260,7 +260,7 @@ static GstFlowReturn gst_rtp_session_send_rtp (RTPSession * sess,
static GstFlowReturn gst_rtp_session_send_rtcp (RTPSession * sess,
RTPSource * src, GstBuffer * buffer, gboolean eos, gpointer user_data);
static GstFlowReturn gst_rtp_session_sync_rtcp (RTPSession * sess,
- RTPSource * src, GstBuffer * buffer, gpointer user_data);
+ GstBuffer * buffer, gpointer user_data);
static gint gst_rtp_session_clock_rate (RTPSession * sess, guint8 payload,
gpointer user_data);
static void gst_rtp_session_reconsider (RTPSession * sess, gpointer user_data);
@@ -313,8 +313,20 @@ on_new_ssrc (RTPSession * session, RTPSource * src, GstRtpSession * sess)
static void
on_ssrc_collision (RTPSession * session, RTPSource * src, GstRtpSession * sess)
{
+ GstPad *recv_rtp_sink;
+
g_signal_emit (sess, gst_rtp_session_signals[SIGNAL_ON_SSRC_COLLISION], 0,
src->ssrc);
+
+ GST_RTP_SESSION_LOCK (sess);
+ if ((recv_rtp_sink = sess->recv_rtp_sink))
+ gst_object_ref (recv_rtp_sink);
+ GST_RTP_SESSION_UNLOCK (sess);
+
+ if (recv_rtp_sink) {
+ gst_pad_push_event (recv_rtp_sink, gst_event_new_reconfigure ());
+ gst_object_unref (recv_rtp_sink);
+ }
}
static void
@@ -1108,12 +1120,37 @@ do_rtcp_events (GstRtpSession * rtpsession, GstPad * srcpad)
GstSegment seg;
GstEvent *event;
gchar *stream_id;
+ gboolean have_group_id;
+ guint group_id;
stream_id =
g_strdup_printf ("%08x%08x%08x%08x", g_random_int (), g_random_int (),
g_random_int (), g_random_int ());
+ GST_RTP_SESSION_LOCK (rtpsession);
+ if (rtpsession->recv_rtp_sink) {
+ event =
+ gst_pad_get_sticky_event (rtpsession->recv_rtp_sink,
+ GST_EVENT_STREAM_START, 0);
+ if (event) {
+ if (gst_event_parse_group_id (event, &group_id))
+ have_group_id = TRUE;
+ else
+ have_group_id = FALSE;
+ gst_event_unref (event);
+ } else {
+ have_group_id = TRUE;
+ group_id = gst_util_group_id_next ();
+ }
+ } else {
+ have_group_id = TRUE;
+ group_id = gst_util_group_id_next ();
+ }
+ GST_RTP_SESSION_UNLOCK (rtpsession);
+
event = gst_event_new_stream_start (stream_id);
+ if (have_group_id)
+ gst_event_set_group_id (event, group_id);
gst_pad_push_event (srcpad, event);
g_free (stream_id);
@@ -1182,7 +1219,7 @@ stopping:
/* called when the session manager has an SR RTCP packet ready for handling
* inter stream synchronisation */
static GstFlowReturn
-gst_rtp_session_sync_rtcp (RTPSession * sess, RTPSource * src,
+gst_rtp_session_sync_rtcp (RTPSession * sess,
GstBuffer * buffer, gpointer user_data)
{
GstFlowReturn result;
@@ -1737,9 +1774,10 @@ gst_rtp_session_event_send_rtp_sink (GstPad * pad, GstObject * parent,
* because we stop sending. */
ret = gst_pad_push_event (rtpsession->send_rtp_src, event);
current_time = gst_clock_get_time (rtpsession->priv->sysclock);
+
GST_DEBUG_OBJECT (rtpsession, "scheduling BYE message");
- rtp_session_schedule_bye (rtpsession->priv->session, "End of stream",
- current_time);
+ rtp_session_mark_all_bye (rtpsession->priv->session, "End Of Stream");
+ rtp_session_schedule_bye (rtpsession->priv->session, current_time);
break;
}
default:{
@@ -1801,7 +1839,7 @@ gst_rtp_session_getcaps_send_rtp (GstPad * pad, GstRtpSession * rtpsession,
priv = rtpsession->priv;
- ssrc = rtp_session_get_internal_ssrc (priv->session);
+ ssrc = rtp_session_suggest_ssrc (priv->session);
/* we can basically accept anything but we prefer to receive packets with our
* internal SSRC so that we don't have to patch it. Create a structure with
@@ -1857,15 +1895,9 @@ gst_rtp_session_setcaps_send_rtp (GstPad * pad, GstRtpSession * rtpsession,
GstCaps * caps)
{
GstRtpSessionPrivate *priv;
- GstStructure *s = gst_caps_get_structure (caps, 0);
- guint ssrc;
priv = rtpsession->priv;
- if (gst_structure_get_uint (s, "ssrc", &ssrc)) {
- GST_DEBUG_OBJECT (rtpsession, "setting internal SSRC to %08x", ssrc);
- rtp_session_set_internal_ssrc (priv->session, ssrc);
- }
rtp_session_update_send_caps (priv->session, caps);
return TRUE;
diff --git a/gst/rtpmanager/rtpsession.c b/gst/rtpmanager/rtpsession.c
index 9f45c668..1ab81859 100644
--- a/gst/rtpmanager/rtpsession.c
+++ b/gst/rtpmanager/rtpsession.c
@@ -122,10 +122,13 @@ static guint rtp_session_signals[LAST_SIGNAL] = { 0 };
G_DEFINE_TYPE (RTPSession, rtp_session, G_TYPE_OBJECT);
+static guint32 rtp_session_create_new_ssrc (RTPSession * sess);
static RTPSource *obtain_source (RTPSession * sess, guint32 ssrc,
gboolean * created, RTPArrivalStats * arrival, gboolean rtp);
+static RTPSource *obtain_internal_source (RTPSession * sess,
+ guint32 ssrc, gboolean * created);
static GstFlowReturn rtp_session_schedule_bye_locked (RTPSession * sess,
- const gchar * reason, GstClockTime current_time);
+ GstClockTime current_time);
static GstClockTime calculate_rtcp_interval (RTPSession * sess,
gboolean deterministic, gboolean first);
@@ -320,7 +323,6 @@ rtp_session_class_init (RTPSessionClass * klass)
* Requests that the #RTPSession initiate a new RTCP packet as soon as
* possible within the requested delay.
*/
-
rtp_session_signals[SIGNAL_SEND_RTCP] =
g_signal_new ("send-rtcp", G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
@@ -329,12 +331,12 @@ rtp_session_class_init (RTPSessionClass * klass)
g_object_class_install_property (gobject_class, PROP_INTERNAL_SSRC,
g_param_spec_uint ("internal-ssrc", "Internal SSRC",
- "The internal SSRC used for the session",
+ "The internal SSRC used for the session (deprecated)",
0, G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
g_object_class_install_property (gobject_class, PROP_INTERNAL_SOURCE,
g_param_spec_object ("internal-source", "Internal Source",
- "The internal source element of the session",
+ "The internal source element of the session (deprecated)",
RTP_TYPE_SOURCE, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
g_object_class_install_property (gobject_class, PROP_BANDWIDTH,
@@ -473,6 +475,9 @@ rtp_session_init (RTPSession * sess)
}
rtp_stats_init_defaults (&sess->stats);
+ INIT_AVG (sess->stats.avg_rtcp_packet_size, 100);
+ rtp_stats_set_min_interval (&sess->stats,
+ (gdouble) DEFAULT_RTCP_MIN_INTERVAL / GST_SECOND);
sess->recalc_bandwidth = TRUE;
sess->bandwidth = DEFAULT_BANDWIDTH;
@@ -480,18 +485,6 @@ rtp_session_init (RTPSession * sess)
sess->rtcp_rr_bandwidth = DEFAULT_RTCP_RR_BANDWIDTH;
sess->rtcp_rs_bandwidth = DEFAULT_RTCP_RS_BANDWIDTH;
- /* create an active SSRC for this session manager */
- sess->source = rtp_session_create_source (sess);
- sess->source->validated = TRUE;
- sess->source->internal = TRUE;
- sess->stats.active_sources++;
- INIT_AVG (sess->stats.avg_rtcp_packet_size, 100);
- sess->source->stats.prev_rtcptime = 0;
- sess->source->stats.last_rtcptime = 1;
-
- rtp_stats_set_min_interval (&sess->stats,
- (gdouble) DEFAULT_RTCP_MIN_INTERVAL / GST_SECOND);
-
/* default UDP header length */
sess->header_len = 28;
sess->mtu = DEFAULT_RTCP_MTU;
@@ -499,30 +492,35 @@ rtp_session_init (RTPSession * sess)
sess->probation = DEFAULT_PROBATION;
/* some default SDES entries */
+ sess->sdes = gst_structure_new_empty ("application/x-rtp-source-sdes");
/* we do not want to leak details like the username or hostname here */
str = g_strdup_printf ("user%u@host-%x", g_random_int (), g_random_int ());
- rtp_source_set_sdes_string (sess->source, GST_RTCP_SDES_CNAME, str);
+ gst_structure_set (sess->sdes, "cname", G_TYPE_STRING, str, NULL);
g_free (str);
#if 0
/* we do not want to leak the user's real name here */
str = g_strdup_printf ("Anon%u", g_random_int ());
- rtp_source_set_sdes_string (sess->source, GST_RTCP_SDES_NAME, str);
+ gst_structure_set (sdes, "name", G_TYPE_STRING, str, NULL);
g_free (str);
#endif
- rtp_source_set_sdes_string (sess->source, GST_RTCP_SDES_TOOL, "GStreamer");
+ gst_structure_set (sess->sdes, "tool", G_TYPE_STRING, "GStreamer", NULL);
+
+ /* this is the SSRC we suggest */
+ sess->suggested_ssrc = rtp_session_create_new_ssrc (sess);
sess->first_rtcp = TRUE;
+ sess->next_rtcp_check_time = GST_CLOCK_TIME_NONE;
+
sess->allow_early = TRUE;
+ sess->next_early_rtcp_time = GST_CLOCK_TIME_NONE;
sess->rtcp_feedback_retention_window = DEFAULT_RTCP_FEEDBACK_RETENTION_WINDOW;
sess->rtcp_immediate_feedback_threshold =
DEFAULT_RTCP_IMMEDIATE_FEEDBACK_THRESHOLD;
sess->last_keyframe_request = GST_CLOCK_TIME_NONE;
-
- GST_DEBUG ("%p: session using SSRC: %08x", sess, sess->source->ssrc);
}
static void
@@ -533,13 +531,12 @@ rtp_session_finalize (GObject * object)
sess = RTP_SESSION_CAST (object);
- g_mutex_clear (&sess->lock);
+ gst_structure_free (sess->sdes);
+
for (i = 0; i < 32; i++)
g_hash_table_destroy (sess->ssrcs[i]);
- g_free (sess->bye_reason);
-
- g_object_unref (sess->source);
+ g_mutex_clear (&sess->lock);
G_OBJECT_CLASS (rtp_session_parent_class)->finalize (object);
}
@@ -584,23 +581,30 @@ rtp_session_set_property (GObject * object, guint prop_id,
switch (prop_id) {
case PROP_INTERNAL_SSRC:
- rtp_session_set_internal_ssrc (sess, g_value_get_uint (value));
break;
case PROP_BANDWIDTH:
+ RTP_SESSION_LOCK (sess);
sess->bandwidth = g_value_get_double (value);
sess->recalc_bandwidth = TRUE;
+ RTP_SESSION_UNLOCK (sess);
break;
case PROP_RTCP_FRACTION:
+ RTP_SESSION_LOCK (sess);
sess->rtcp_bandwidth = g_value_get_double (value);
sess->recalc_bandwidth = TRUE;
+ RTP_SESSION_UNLOCK (sess);
break;
case PROP_RTCP_RR_BANDWIDTH:
+ RTP_SESSION_LOCK (sess);
sess->rtcp_rr_bandwidth = g_value_get_int (value);
sess->recalc_bandwidth = TRUE;
+ RTP_SESSION_UNLOCK (sess);
break;
case PROP_RTCP_RS_BANDWIDTH:
+ RTP_SESSION_LOCK (sess);
sess->rtcp_rs_bandwidth = g_value_get_int (value);
sess->recalc_bandwidth = TRUE;
+ RTP_SESSION_UNLOCK (sess);
break;
case PROP_RTCP_MTU:
sess->mtu = g_value_get_uint (value);
@@ -626,7 +630,6 @@ rtp_session_set_property (GObject * object, guint prop_id,
break;
case PROP_PROBATION:
sess->probation = g_value_get_uint (value);
- g_object_set_property (G_OBJECT (sess->source), "probation", value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -644,10 +647,11 @@ rtp_session_get_property (GObject * object, guint prop_id,
switch (prop_id) {
case PROP_INTERNAL_SSRC:
- g_value_set_uint (value, rtp_session_get_internal_ssrc (sess));
+ g_value_set_uint (value, rtp_session_suggest_ssrc (sess));
break;
case PROP_INTERNAL_SOURCE:
- g_value_take_object (value, rtp_session_get_internal_source (sess));
+ /* FIXME, return a random source */
+ g_value_set_object (value, NULL);
break;
case PROP_BANDWIDTH:
g_value_set_double (value, sess->bandwidth);
@@ -687,7 +691,6 @@ rtp_session_get_property (GObject * object, guint prop_id,
break;
case PROP_PROBATION:
g_value_set_uint (value, sess->probation);
- g_object_get_property (G_OBJECT (sess->source), "probation", value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -1060,55 +1063,6 @@ rtp_session_get_rtcp_fraction (RTPSession * sess)
}
/**
- * rtp_session_set_sdes_string:
- * @sess: an #RTPSession
- * @type: the type of the SDES item
- * @item: a null-terminated string to set.
- *
- * Store an SDES item of @type in @sess.
- *
- * Returns: %FALSE if the data was unchanged @type is invalid.
- */
-gboolean
-rtp_session_set_sdes_string (RTPSession * sess, GstRTCPSDESType type,
- const gchar * item)
-{
- gboolean result;
-
- g_return_val_if_fail (RTP_IS_SESSION (sess), FALSE);
-
- RTP_SESSION_LOCK (sess);
- result = rtp_source_set_sdes_string (sess->source, type, item);
- RTP_SESSION_UNLOCK (sess);
-
- return result;
-}
-
-/**
- * rtp_session_get_sdes_string:
- * @sess: an #RTPSession
- * @type: the type of the SDES item
- *
- * Get the SDES item of @type from @sess.
- *
- * Returns: a null-terminated copy of the SDES item or NULL when @type was not
- * valid. g_free() after usage.
- */
-gchar *
-rtp_session_get_sdes_string (RTPSession * sess, GstRTCPSDESType type)
-{
- gchar *result;
-
- g_return_val_if_fail (RTP_IS_SESSION (sess), NULL);
-
- RTP_SESSION_LOCK (sess);
- result = rtp_source_get_sdes_string (sess->source, type);
- RTP_SESSION_UNLOCK (sess);
-
- return result;
-}
-
-/**
* rtp_session_get_sdes_struct:
* @sess: an #RTSPSession
*
@@ -1120,15 +1074,13 @@ rtp_session_get_sdes_string (RTPSession * sess, GstRTCPSDESType type)
GstStructure *
rtp_session_get_sdes_struct (RTPSession * sess)
{
- const GstStructure *sdes;
GstStructure *result = NULL;
g_return_val_if_fail (RTP_IS_SESSION (sess), NULL);
RTP_SESSION_LOCK (sess);
- sdes = rtp_source_get_sdes_struct (sess->source);
- if (sdes)
- result = gst_structure_copy (sdes);
+ if (sess->sdes)
+ result = gst_structure_copy (sess->sdes);
RTP_SESSION_UNLOCK (sess);
return result;
@@ -1148,7 +1100,9 @@ rtp_session_set_sdes_struct (RTPSession * sess, const GstStructure * sdes)
g_return_if_fail (RTP_IS_SESSION (sess));
RTP_SESSION_LOCK (sess);
- rtp_source_set_sdes_struct (sess->source, gst_structure_copy (sdes));
+ if (sess->sdes)
+ gst_structure_free (sess->sdes);
+ sess->sdes = gst_structure_copy (sdes);
RTP_SESSION_UNLOCK (sess);
}
@@ -1157,7 +1111,7 @@ source_push_rtp (RTPSource * source, gpointer data, RTPSession * session)
{
GstFlowReturn result = GST_FLOW_OK;
- if (source == session->source) {
+ if (source->internal) {
GST_LOG ("source %08x pushed sender RTP packet", source->ssrc);
RTP_SESSION_UNLOCK (session);
@@ -1215,11 +1169,15 @@ static gboolean
check_collision (RTPSession * sess, RTPSource * source,
RTPArrivalStats * arrival, gboolean rtp)
{
+ guint32 ssrc;
+
/* If we have no arrival address, we can't do collision checking */
if (!arrival->address)
return FALSE;
- if (sess->source != source) {
+ ssrc = rtp_source_get_ssrc (source);
+
+ if (!source->internal) {
GSocketAddress *from;
/* This is not our local source, but lets check if two remote
@@ -1235,16 +1193,15 @@ check_collision (RTPSession * sess, RTPSource * source,
/* Address is the same */
return FALSE;
} else {
- GST_LOG ("we have a third-party collision or loop ssrc:%x",
- rtp_source_get_ssrc (source));
+ GST_LOG ("we have a third-party collision or loop ssrc:%x", ssrc);
if (sess->favor_new) {
if (rtp_source_find_conflicting_address (source,
arrival->address, arrival->current_time)) {
gchar *buf1;
buf1 = __g_socket_address_to_string (arrival->address);
- GST_LOG ("Known conflict on %x for %s, dropping packet",
- rtp_source_get_ssrc (source), buf1);
+ GST_LOG ("Known conflict on %x for %s, dropping packet", ssrc,
+ buf1);
g_free (buf1);
return TRUE;
@@ -1261,8 +1218,7 @@ check_collision (RTPSession * sess, RTPSource * source,
buf2 = __g_socket_address_to_string (arrival->address);
GST_DEBUG ("New conflict for ssrc %x, replacing %s with %s,"
- " saving old as known conflict",
- rtp_source_get_ssrc (source), buf1, buf2);
+ " saving old as known conflict", ssrc, buf1, buf2);
if (rtp)
rtp_source_set_rtp_from (source, arrival->address);
@@ -1294,7 +1250,6 @@ check_collision (RTPSession * sess, RTPSource * source,
*/
} else {
/* This is sending with our ssrc, is it an address we already know */
-
if (rtp_source_find_conflicting_address (source, arrival->address,
arrival->current_time)) {
/* Its a known conflict, its probably a loop, not a collision
@@ -1303,23 +1258,49 @@ check_collision (RTPSession * sess, RTPSource * source,
GST_DEBUG ("Our packets are being looped back to us, dropping");
} else {
/* Its a new collision, lets change our SSRC */
-
rtp_source_add_conflicting_address (source, arrival->address,
arrival->current_time);
- GST_DEBUG ("Collision for SSRC %x", rtp_source_get_ssrc (source));
- on_ssrc_collision (sess, source);
+ GST_DEBUG ("Collision for SSRC %x", ssrc);
+ /* mark the source BYE */
+ rtp_source_mark_bye (source, "SSRC Collision");
+ /* if we were suggesting this SSRC, change to something else */
+ if (sess->suggested_ssrc == ssrc)
+ sess->suggested_ssrc = rtp_session_create_new_ssrc (sess);
- sess->change_ssrc = TRUE;
+ on_ssrc_collision (sess, source);
- rtp_session_schedule_bye_locked (sess, "SSRC Collision",
- arrival->current_time);
+ rtp_session_schedule_bye_locked (sess, arrival->current_time);
}
}
return TRUE;
}
+static RTPSource *
+find_source (RTPSession * sess, guint32 ssrc)
+{
+ return g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
+ GINT_TO_POINTER (ssrc));
+}
+
+static void
+add_source (RTPSession * sess, RTPSource * src)
+{
+ g_hash_table_insert (sess->ssrcs[sess->mask_idx],
+ GINT_TO_POINTER (src->ssrc), src);
+ /* report the new source ASAP */
+ src->generation = sess->generation;
+ /* we have one more source now */
+ sess->total_sources++;
+ if (RTP_SOURCE_IS_ACTIVE (src))
+ sess->stats.active_sources++;
+ if (src->internal) {
+ sess->stats.internal_sources++;
+ if (sess->suggested_ssrc != src->ssrc)
+ sess->suggested_ssrc = src->ssrc;
+ }
+}
/* must be called with the session lock, the returned source needs to be
* unreffed after usage. */
@@ -1329,12 +1310,13 @@ obtain_source (RTPSession * sess, guint32 ssrc, gboolean * created,
{
RTPSource *source;
- source =
- g_hash_table_lookup (sess->ssrcs[sess->mask_idx], GINT_TO_POINTER (ssrc));
+ source = find_source (sess, ssrc);
if (source == NULL) {
/* make new Source in probation and insert */
source = rtp_source_new (ssrc);
+ GST_DEBUG ("creating new source %08x %p", ssrc, source);
+
/* for RTP packets we need to set the source in probation. Receiving RTCP
* packets of an SSRC, on the other hand, is a strong indication that we
* are dealing with a valid source. */
@@ -1354,11 +1336,7 @@ obtain_source (RTPSession * sess, guint32 ssrc, gboolean * created,
/* configure a callback on the source */
rtp_source_set_callbacks (source, &callbacks, sess);
- g_hash_table_insert (sess->ssrcs[sess->mask_idx], GINT_TO_POINTER (ssrc),
- source);
-
- /* we have one more source now */
- sess->total_sources++;
+ add_source (sess, source);
*created = TRUE;
} else {
*created = FALSE;
@@ -1380,75 +1358,55 @@ obtain_source (RTPSession * sess, guint32 ssrc, gboolean * created,
return source;
}
-/**
- * rtp_session_get_internal_source:
- * @sess: a #RTPSession
- *
- * Get the internal #RTPSource of @sess.
- *
- * Returns: The internal #RTPSource. g_object_unref() after usage.
- */
-RTPSource *
-rtp_session_get_internal_source (RTPSession * sess)
+/* must be called with the session lock, the returned source needs to be
+ * unreffed after usage. */
+static RTPSource *
+obtain_internal_source (RTPSession * sess, guint32 ssrc, gboolean * created)
{
- RTPSource *result;
-
- g_return_val_if_fail (RTP_IS_SESSION (sess), NULL);
-
- result = g_object_ref (sess->source);
+ RTPSource *source;
- return result;
-}
+ source = find_source (sess, ssrc);
+ if (source == NULL) {
+ /* make new internal Source and insert */
+ source = rtp_source_new (ssrc);
-/**
- * rtp_session_set_internal_ssrc:
- * @sess: a #RTPSession
- * @ssrc: an SSRC
- *
- * Set the SSRC of @sess to @ssrc.
- */
-void
-rtp_session_set_internal_ssrc (RTPSession * sess, guint32 ssrc)
-{
- RTP_SESSION_LOCK (sess);
- if (ssrc != sess->source->ssrc) {
- g_hash_table_steal (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (sess->source->ssrc));
+ GST_DEBUG ("creating new internal source %08x %p", ssrc, source);
- GST_DEBUG ("setting internal SSRC to %08x", ssrc);
- /* After this call, any receiver of the old SSRC either in RTP or RTCP
- * packets will timeout on the old SSRC, we could potentially schedule a
- * BYE RTCP for the old SSRC... */
- sess->source->ssrc = ssrc;
- rtp_source_reset (sess->source);
+ source->validated = TRUE;
+ source->internal = TRUE;
+ rtp_source_set_sdes_struct (source, gst_structure_copy (sess->sdes));
+ rtp_source_set_callbacks (source, &callbacks, sess);
- /* rehash with the new SSRC */
- g_hash_table_insert (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (sess->source->ssrc), sess->source);
+ add_source (sess, source);
+ *created = TRUE;
+ } else {
+ *created = FALSE;
}
- RTP_SESSION_UNLOCK (sess);
+ g_object_ref (source);
- g_object_notify (G_OBJECT (sess), "internal-ssrc");
+ return source;
}
/**
- * rtp_session_get_internal_ssrc:
+ * rtp_session_suggest_ssrc:
* @sess: a #RTPSession
*
- * Get the internal SSRC of @sess.
+ * Suggest an unused SSRC in @sess.
*
- * Returns: The SSRC of the session.
+ * Returns: a free unused SSRC
*/
guint32
-rtp_session_get_internal_ssrc (RTPSession * sess)
+rtp_session_suggest_ssrc (RTPSession * sess)
{
- guint32 ssrc;
+ guint32 result;
+
+ g_return_val_if_fail (RTP_IS_SESSION (sess), 0);
RTP_SESSION_LOCK (sess);
- ssrc = sess->source->ssrc;
+ result = sess->suggested_ssrc;
RTP_SESSION_UNLOCK (sess);
- return ssrc;
+ return result;
}
/**
@@ -1471,14 +1429,9 @@ rtp_session_add_source (RTPSession * sess, RTPSource * src)
g_return_val_if_fail (src != NULL, FALSE);
RTP_SESSION_LOCK (sess);
- find =
- g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (src->ssrc));
+ find = find_source (sess, src->ssrc);
if (find == NULL) {
- g_hash_table_insert (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (src->ssrc), src);
- /* we have one more source now */
- sess->total_sources++;
+ add_source (sess, src);
result = TRUE;
}
RTP_SESSION_UNLOCK (sess);
@@ -1549,8 +1502,7 @@ rtp_session_get_source_by_ssrc (RTPSession * sess, guint32 ssrc)
g_return_val_if_fail (RTP_IS_SESSION (sess), NULL);
RTP_SESSION_LOCK (sess);
- result =
- g_hash_table_lookup (sess->ssrcs[sess->mask_idx], GINT_TO_POINTER (ssrc));
+ result = find_source (sess, ssrc);
if (result)
g_object_ref (result);
RTP_SESSION_UNLOCK (sess);
@@ -1568,8 +1520,7 @@ rtp_session_create_new_ssrc (RTPSession * sess)
ssrc = g_random_int ();
/* see if it exists in the session, we're done if it doesn't */
- if (g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (ssrc)) == NULL)
+ if (find_source (sess, ssrc) == NULL)
break;
}
return ssrc;
@@ -1597,10 +1548,7 @@ rtp_session_create_source (RTPSession * sess)
rtp_source_set_callbacks (source, &callbacks, sess);
/* we need an additional ref for the source in the hashtable */
g_object_ref (source);
- g_hash_table_insert (sess->ssrcs[sess->mask_idx], GINT_TO_POINTER (ssrc),
- source);
- /* we have one more source now */
- sess->total_sources++;
+ add_source (sess, source);
RTP_SESSION_UNLOCK (sess);
return source;
@@ -1653,6 +1601,54 @@ clean_arrival_stats (RTPArrivalStats * arrival)
g_object_unref (arrival->address);
}
+static gboolean
+source_update_active (RTPSession * sess, RTPSource * source,
+ gboolean prevactive)
+{
+ gboolean active = RTP_SOURCE_IS_ACTIVE (source);
+ guint32 ssrc = source->ssrc;
+
+ if (prevactive == active)
+ return FALSE;
+
+ if (active) {
+ sess->stats.active_sources++;
+ GST_DEBUG ("source: %08x became active, %d active sources", ssrc,
+ sess->stats.active_sources);
+ } else {
+ sess->stats.active_sources--;
+ GST_DEBUG ("source: %08x became inactive, %d active sources", ssrc,
+ sess->stats.active_sources);
+ }
+ return TRUE;
+}
+
+static gboolean
+source_update_sender (RTPSession * sess, RTPSource * source,
+ gboolean prevsender)
+{
+ gboolean sender = RTP_SOURCE_IS_SENDER (source);
+ guint32 ssrc = source->ssrc;
+
+ if (prevsender == sender)
+ return FALSE;
+
+ if (sender) {
+ sess->stats.sender_sources++;
+ if (source->internal)
+ sess->stats.internal_sender_sources++;
+ GST_DEBUG ("source: %08x became sender, %d sender sources", ssrc,
+ sess->stats.sender_sources);
+ } else {
+ sess->stats.sender_sources--;
+ if (source->internal)
+ sess->stats.internal_sender_sources--;
+ GST_DEBUG ("source: %08x became non sender, %d sender sources", ssrc,
+ sess->stats.sender_sources);
+ }
+ return TRUE;
+}
+
/**
* rtp_session_process_rtp:
* @sess: and #RTPSession
@@ -1686,21 +1682,8 @@ rtp_session_process_rtp (RTPSession * sess, GstBuffer * buffer,
if (!gst_rtp_buffer_map (buffer, GST_MAP_READ, &rtp))
goto invalid_packet;
- RTP_SESSION_LOCK (sess);
- /* ignore more RTP packets when we left the session */
- if (sess->source->received_bye)
- goto ignore;
-
- /* update arrival stats */
- update_arrival_stats (sess, &arrival, TRUE, buffer, current_time,
- running_time, -1);
-
- /* get SSRC and look up in session database */
+ /* get SSRC to look up in session database */
ssrc = gst_rtp_buffer_get_ssrc (&rtp);
- source = obtain_source (sess, ssrc, &created, &arrival, TRUE);
- if (!source)
- goto collision;
-
/* copy available csrc for later */
count = gst_rtp_buffer_get_csrc_count (&rtp);
/* make sure to not overflow our array. An RTP buffer can maximally contain
@@ -1712,6 +1695,16 @@ rtp_session_process_rtp (RTPSession * sess, GstBuffer * buffer,
gst_rtp_buffer_unmap (&rtp);
+ RTP_SESSION_LOCK (sess);
+
+ /* update arrival stats */
+ update_arrival_stats (sess, &arrival, TRUE, buffer, current_time,
+ running_time, -1);
+
+ source = obtain_source (sess, ssrc, &created, &arrival, TRUE);
+ if (!source)
+ goto collision;
+
prevsender = RTP_SOURCE_IS_SENDER (source);
prevactive = RTP_SOURCE_IS_ACTIVE (source);
oldrate = source->bitrate;
@@ -1720,17 +1713,11 @@ rtp_session_process_rtp (RTPSession * sess, GstBuffer * buffer,
result = rtp_source_process_rtp (source, buffer, &arrival);
/* source became active */
- if (prevactive != RTP_SOURCE_IS_ACTIVE (source)) {
- sess->stats.active_sources++;
- GST_DEBUG ("source: %08x became active, %d active sources", ssrc,
- sess->stats.active_sources);
+ if (source_update_active (sess, source, prevactive))
on_ssrc_validated (sess, source);
- }
- if (prevsender != RTP_SOURCE_IS_SENDER (source)) {
- sess->stats.sender_sources++;
- GST_DEBUG ("source: %08x became sender, %d sender sources", ssrc,
- sess->stats.sender_sources);
- }
+
+ source_update_sender (sess, source, prevsender);
+
if (oldrate != source->bitrate)
sess->recalc_bandwidth = TRUE;
@@ -1755,8 +1742,7 @@ rtp_session_process_rtp (RTPSession * sess, GstBuffer * buffer,
if (created) {
GST_DEBUG ("created new CSRC: %08x", csrc);
rtp_source_set_as_csrc (csrc_src);
- if (RTP_SOURCE_IS_ACTIVE (csrc_src))
- sess->stats.active_sources++;
+ source_update_active (sess, csrc_src, FALSE);
on_new_ssrc (sess, csrc_src);
}
g_object_unref (csrc_src);
@@ -1777,18 +1763,9 @@ invalid_packet:
GST_DEBUG ("invalid RTP packet received");
return GST_FLOW_OK;
}
-ignore:
- {
- RTP_SESSION_UNLOCK (sess);
- gst_rtp_buffer_unmap (&rtp);
- gst_buffer_unref (buffer);
- GST_DEBUG ("ignoring RTP packet because we are leaving");
- return GST_FLOW_OK;
- }
collision:
{
RTP_SESSION_UNLOCK (sess);
- gst_rtp_buffer_unmap (&rtp);
gst_buffer_unref (buffer);
clean_arrival_stats (&arrival);
GST_DEBUG ("ignoring packet because its collisioning");
@@ -1807,16 +1784,23 @@ rtp_session_process_rb (RTPSession * sess, RTPSource * source,
guint32 ssrc, exthighestseq, jitter, lsr, dlsr;
guint8 fractionlost;
gint32 packetslost;
+ RTPSource *src;
gst_rtcp_packet_get_rb (packet, i, &ssrc, &fractionlost,
&packetslost, &exthighestseq, &jitter, &lsr, &dlsr);
GST_DEBUG ("RB %d: SSRC %08x, jitter %" G_GUINT32_FORMAT, i, ssrc, jitter);
- if (ssrc == sess->source->ssrc) {
+ /* find our own source */
+ src = find_source (sess, ssrc);
+ if (src == NULL)
+ continue;
+
+ if (src->internal && RTP_SOURCE_IS_ACTIVE (src)) {
/* only deal with report blocks for our session, we update the stats of
* the sender of the RTCP message. We could also compare our stats against
* the other sender to see if we are better or worse. */
+ /* FIXME, need to keep track who the RB block is from */
rtp_source_process_rb (source, arrival->ntpnstime, fractionlost,
packetslost, exthighestseq, jitter, lsr, dlsr);
}
@@ -1853,7 +1837,7 @@ rtp_session_process_sr (RTPSession * sess, GstRTCPPacket * packet,
return;
/* don't try to do lip-sync for sources that sent a BYE */
- if (rtp_source_received_bye (source))
+ if (RTP_SOURCE_IS_MARKED_BYE (source))
*do_sync = FALSE;
else
*do_sync = TRUE;
@@ -1864,11 +1848,7 @@ rtp_session_process_sr (RTPSession * sess, GstRTCPPacket * packet,
rtp_source_process_sr (source, arrival->current_time, ntptime, rtptime,
packet_count, octet_count);
- if (prevsender != RTP_SOURCE_IS_SENDER (source)) {
- sess->stats.sender_sources++;
- GST_DEBUG ("source: %08x became sender, %d sender sources", senderssrc,
- sess->stats.sender_sources);
- }
+ source_update_sender (sess, source, prevsender);
if (created)
on_new_ssrc (sess, source);
@@ -1921,7 +1901,7 @@ rtp_session_process_sdes (RTPSession * sess, GstRTCPPacket * packet,
i = 0;
while (more_items) {
guint32 ssrc;
- gboolean changed, created, validated;
+ gboolean changed, created, prevactive;
RTPSource *source;
GstStructure *sdes;
@@ -1974,19 +1954,15 @@ rtp_session_process_sdes (RTPSession * sess, GstRTCPPacket * packet,
/* takes ownership of sdes */
changed = rtp_source_set_sdes_struct (source, sdes);
- validated = !RTP_SOURCE_IS_ACTIVE (source);
+ prevactive = RTP_SOURCE_IS_ACTIVE (source);
source->validated = TRUE;
if (created)
on_new_ssrc (sess, source);
/* source became active */
- if (validated) {
- sess->stats.active_sources++;
- GST_DEBUG ("source: %08x became active, %d active sources", ssrc,
- sess->stats.active_sources);
+ if (source_update_active (sess, source, prevactive))
on_ssrc_validated (sess, source);
- }
if (changed)
on_ssrc_sdes (sess, source);
@@ -2021,42 +1997,39 @@ rtp_session_process_bye (RTPSession * sess, GstRTCPPacket * packet,
ssrc = gst_rtcp_packet_bye_get_nth_ssrc (packet, i);
GST_DEBUG ("SSRC: %08x", ssrc);
- if (ssrc == sess->source->ssrc)
- return;
-
/* find src and mark bye, no probation when dealing with RTCP */
source = obtain_source (sess, ssrc, &created, arrival, FALSE);
if (!source)
return;
+ if (source->internal) {
+ /* our own source, something weird with this packet */
+ g_object_unref (source);
+ continue;
+ }
+
/* store time for when we need to time out this source */
source->bye_time = arrival->current_time;
prevactive = RTP_SOURCE_IS_ACTIVE (source);
prevsender = RTP_SOURCE_IS_SENDER (source);
- /* let the source handle the rest */
- rtp_source_process_bye (source, reason);
+ /* mark the source BYE */
+ rtp_source_mark_bye (source, reason);
pmembers = sess->stats.active_sources;
- if (prevactive && !RTP_SOURCE_IS_ACTIVE (source)) {
- sess->stats.active_sources--;
- GST_DEBUG ("source: %08x became inactive, %d active sources", ssrc,
- sess->stats.active_sources);
- }
- if (prevsender && !RTP_SOURCE_IS_SENDER (source)) {
- sess->stats.sender_sources--;
- GST_DEBUG ("source: %08x became non sender, %d sender sources", ssrc,
- sess->stats.sender_sources);
- }
+ source_update_active (sess, source, prevactive);
+ source_update_sender (sess, source, prevsender);
+
members = sess->stats.active_sources;
- if (!sess->source->received_bye && members < pmembers) {
+ if (!sess->scheduled_bye && members < pmembers) {
/* some members went away since the previous timeout estimate.
* Perform reverse reconsideration but only when we are not scheduling a
* BYE ourselves. */
- if (arrival->current_time < sess->next_rtcp_check_time) {
+ if (sess->next_rtcp_check_time != GST_CLOCK_TIME_NONE &&
+ arrival->current_time < sess->next_rtcp_check_time) {
GstClockTime time_remaining;
time_remaining = sess->next_rtcp_check_time - arrival->current_time;
@@ -2144,8 +2117,7 @@ rtp_session_process_pli (RTPSession * sess, guint32 sender_ssrc,
if (!sess->callbacks.request_key_unit)
return;
- src = g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (sender_ssrc));
+ src = find_source (sess, sender_ssrc);
if (!src)
return;
@@ -2167,35 +2139,34 @@ rtp_session_process_fir (RTPSession * sess, guint32 sender_ssrc,
if (fci_length < 8)
return;
- src = g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (sender_ssrc));
+ src = find_source (sess, sender_ssrc);
/* Hack because Google fails to set the sender_ssrc correctly */
if (!src && sender_ssrc == 1) {
GHashTableIter iter;
- if (sess->stats.sender_sources >
- RTP_SOURCE_IS_SENDER (sess->source) ? 2 : 1)
+ /* we can't find the source if there are multiple */
+ if (sess->stats.sender_sources > sess->stats.internal_sender_sources + 1)
return;
g_hash_table_iter_init (&iter, sess->ssrcs[sess->mask_idx]);
-
while (g_hash_table_iter_next (&iter, NULL, (gpointer *) & src)) {
- if (src != sess->source && rtp_source_is_sender (src))
+ if (!src->internal && rtp_source_is_sender (src))
break;
src = NULL;
}
}
-
if (!src)
return;
for (position = 0; position < fci_length; position += 8) {
guint8 *data = fci_data + position;
+ RTPSource *own;
ssrc = GST_READ_UINT32_BE (data);
- if (ssrc == rtp_source_get_ssrc (sess->source)) {
+ own = find_source (sess, ssrc);
+ if (own->internal) {
our_request = TRUE;
break;
}
@@ -2216,6 +2187,7 @@ rtp_session_process_feedback (RTPSession * sess, GstRTCPPacket * packet,
guint32 media_ssrc = gst_rtcp_packet_fb_get_media_ssrc (packet);
guint8 *fci_data = gst_rtcp_packet_fb_get_fci (packet);
guint fci_length = 4 * gst_rtcp_packet_fb_get_fci_length (packet);
+ RTPSource *src;
GST_DEBUG ("received feedback %d:%d from %08X about %08X with FCI of "
"length %d", type, fbtype, sender_ssrc, media_ssrc, fci_length);
@@ -2240,15 +2212,15 @@ rtp_session_process_feedback (RTPSession * sess, GstRTCPPacket * packet,
gst_buffer_unref (fci_buffer);
}
- if (sess->rtcp_feedback_retention_window) {
- RTPSource *src = g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (media_ssrc));
+ src = find_source (sess, media_ssrc);
+ if (!src)
+ return;
- if (src)
- rtp_source_retain_rtcp_packet (src, packet, arrival->running_time);
+ if (sess->rtcp_feedback_retention_window) {
+ rtp_source_retain_rtcp_packet (src, packet, arrival->running_time);
}
- if (rtp_source_get_ssrc (sess->source) == media_ssrc ||
+ if (src->internal ||
/* PSFB FIR puts the media ssrc inside the FCI */
(type == GST_RTCP_TYPE_PSFB && fbtype == GST_RTCP_PSFB_TYPE_FIR)) {
switch (type) {
@@ -2308,9 +2280,6 @@ rtp_session_process_rtcp (RTPSession * sess, GstBuffer * buffer,
update_arrival_stats (sess, &arrival, FALSE, buffer, current_time, -1,
ntpnstime);
- if (sess->sent_bye)
- goto ignore;
-
/* start processing the compound packet */
gst_rtcp_buffer_map (buffer, GST_MAP_READ, &rtcp);
more = gst_rtcp_buffer_get_first_packet (&rtcp, &packet);
@@ -2320,7 +2289,7 @@ rtp_session_process_rtcp (RTPSession * sess, GstBuffer * buffer,
type = gst_rtcp_packet_get_type (&packet);
/* when we are leaving the session, we should ignore all non-BYE messages */
- if (sess->source->received_bye && type != GST_RTCP_TYPE_BYE) {
+ if (sess->scheduled_bye && type != GST_RTCP_TYPE_BYE) {
GST_DEBUG ("ignoring non-BYE RTCP packet because we are leaving");
goto next;
}
@@ -2360,7 +2329,7 @@ rtp_session_process_rtcp (RTPSession * sess, GstBuffer * buffer,
/* if we are scheduling a BYE, we only want to count bye packets, else we
* count everything */
- if (sess->source->received_bye) {
+ if (sess->scheduled_bye) {
if (is_bye) {
sess->stats.bye_members++;
UPDATE_AVG (sess->stats.avg_rtcp_packet_size, arrival.bytes);
@@ -2377,10 +2346,7 @@ rtp_session_process_rtcp (RTPSession * sess, GstBuffer * buffer,
/* notify caller of sr packets in the callback */
if (do_sync && sess->callbacks.sync_rtcp) {
- /* make writable, we might want to change the buffer */
- buffer = gst_buffer_make_writable (buffer);
-
- result = sess->callbacks.sync_rtcp (sess, sess->source, buffer,
+ result = sess->callbacks.sync_rtcp (sess, buffer,
sess->sync_rtcp_user_data);
} else
gst_buffer_unref (buffer);
@@ -2394,14 +2360,6 @@ invalid_packet:
gst_buffer_unref (buffer);
return GST_FLOW_OK;
}
-ignore:
- {
- RTP_SESSION_UNLOCK (sess);
- gst_buffer_unref (buffer);
- clean_arrival_stats (&arrival);
- GST_DEBUG ("ignoring RTCP packet because we left");
- return GST_FLOW_OK;
- }
}
/**
@@ -2414,14 +2372,28 @@ ignore:
void
rtp_session_update_send_caps (RTPSession * sess, GstCaps * caps)
{
+ GstStructure *s;
+ guint ssrc;
+
g_return_if_fail (RTP_IS_SESSION (sess));
g_return_if_fail (GST_IS_CAPS (caps));
GST_LOG ("received caps %" GST_PTR_FORMAT, caps);
- RTP_SESSION_LOCK (sess);
- rtp_source_update_caps (sess->source, caps);
- RTP_SESSION_UNLOCK (sess);
+ s = gst_caps_get_structure (caps, 0);
+
+ if (gst_structure_get_uint (s, "ssrc", &ssrc)) {
+ RTPSource *source;
+ gboolean created;
+
+ RTP_SESSION_LOCK (sess);
+ source = obtain_internal_source (sess, ssrc, &created);
+ if (source) {
+ rtp_source_update_caps (source, caps);
+ g_object_unref (source);
+ }
+ RTP_SESSION_UNLOCK (sess);
+ }
}
/**
@@ -2445,14 +2417,36 @@ rtp_session_send_rtp (RTPSession * sess, gpointer data, gboolean is_list,
RTPSource *source;
gboolean prevsender;
guint64 oldrate;
+ GstBuffer *buffer;
+ GstRTPBuffer rtp = { NULL };
+ guint32 ssrc;
+ gboolean created;
g_return_val_if_fail (RTP_IS_SESSION (sess), GST_FLOW_ERROR);
g_return_val_if_fail (is_list || GST_IS_BUFFER (data), GST_FLOW_ERROR);
GST_LOG ("received RTP %s for sending", is_list ? "list" : "packet");
+ if (is_list) {
+ GstBufferList *list = GST_BUFFER_LIST_CAST (data);
+
+ buffer = gst_buffer_list_get (list, 0);
+ if (!buffer)
+ goto no_buffer;
+ } else {
+ buffer = GST_BUFFER_CAST (data);
+ }
+
+ if (!gst_rtp_buffer_map (buffer, GST_MAP_READ, &rtp))
+ goto invalid_packet;
+
+ /* get SSRC and look up in session database */
+ ssrc = gst_rtp_buffer_get_ssrc (&rtp);
+
+ gst_rtp_buffer_unmap (&rtp);
+
RTP_SESSION_LOCK (sess);
- source = sess->source;
+ source = obtain_internal_source (sess, ssrc, &created);
/* update last activity */
source->last_rtp_activity = current_time;
@@ -2463,13 +2457,28 @@ rtp_session_send_rtp (RTPSession * sess, gpointer data, gboolean is_list,
/* we use our own source to send */
result = rtp_source_send_rtp (source, data, is_list, running_time);
- if (RTP_SOURCE_IS_SENDER (source) && !prevsender)
- sess->stats.sender_sources++;
+ source_update_sender (sess, source, prevsender);
+
if (oldrate != source->bitrate)
sess->recalc_bandwidth = TRUE;
RTP_SESSION_UNLOCK (sess);
+ g_object_unref (source);
+
return result;
+
+invalid_packet:
+ {
+ gst_mini_object_unref (GST_MINI_OBJECT_CAST (data));
+ GST_DEBUG ("invalid RTP packet received");
+ return GST_FLOW_OK;
+ }
+no_buffer:
+ {
+ gst_mini_object_unref (GST_MINI_OBJECT_CAST (data));
+ GST_DEBUG ("no buffer in list");
+ return GST_FLOW_OK;
+ }
}
static void
@@ -2478,6 +2487,7 @@ add_bitrates (gpointer key, RTPSource * source, gdouble * bandwidth)
*bandwidth += source->bitrate;
}
+/* must be called with session lock */
static GstClockTime
calculate_rtcp_interval (RTPSession * sess, gboolean deterministic,
gboolean first)
@@ -2492,7 +2502,7 @@ calculate_rtcp_interval (RTPSession * sess, gboolean deterministic,
bandwidth = sess->bandwidth;
else {
/* If it is <= 0, then try to estimate the actual bandwidth */
- bandwidth = sess->source->bitrate;
+ bandwidth = 0;
g_hash_table_foreach (sess->ssrcs[sess->mask_idx],
(GHFunc) add_bitrates, &bandwidth);
@@ -2507,11 +2517,11 @@ calculate_rtcp_interval (RTPSession * sess, gboolean deterministic,
sess->recalc_bandwidth = FALSE;
}
- if (sess->source->received_bye) {
+ if (sess->scheduled_bye) {
result = rtp_stats_calculate_bye_interval (&sess->stats);
} else {
result = rtp_stats_calculate_rtcp_interval (&sess->stats,
- RTP_SOURCE_IS_SENDER (sess->source), first);
+ sess->stats.internal_sender_sources > 0, first);
}
GST_DEBUG ("next deterministic interval: %" GST_TIME_FORMAT ", first %d",
@@ -2525,40 +2535,60 @@ calculate_rtcp_interval (RTPSession * sess, gboolean deterministic,
return result;
}
+static void
+source_mark_bye (const gchar * key, RTPSource * source, const gchar * reason)
+{
+ if (source->internal)
+ rtp_source_mark_bye (source, reason);
+}
+
+/**
+ * rtp_session_mark_all_bye:
+ * @sess: an #RTPSession
+ * @reason: a reason
+ *
+ * Mark all internal sources of the session as BYE with @reason.
+ */
+void
+rtp_session_mark_all_bye (RTPSession * sess, const gchar * reason)
+{
+ g_return_if_fail (RTP_IS_SESSION (sess));
+
+ RTP_SESSION_LOCK (sess);
+ g_hash_table_foreach (sess->ssrcs[sess->mask_idx],
+ (GHFunc) source_mark_bye, (gpointer) reason);
+ RTP_SESSION_UNLOCK (sess);
+}
+
/* Stop the current @sess and schedule a BYE message for the other members.
* One must have the session lock to call this function
*/
static GstFlowReturn
-rtp_session_schedule_bye_locked (RTPSession * sess, const gchar * reason,
- GstClockTime current_time)
+rtp_session_schedule_bye_locked (RTPSession * sess, GstClockTime current_time)
{
GstFlowReturn result = GST_FLOW_OK;
- RTPSource *source;
GstClockTime interval;
- g_return_val_if_fail (RTP_IS_SESSION (sess), GST_FLOW_ERROR);
-
- source = sess->source;
-
- /* ignore more BYEs */
- if (source->received_bye)
+ /* nothing to do it we already scheduled bye */
+ if (sess->scheduled_bye)
goto done;
- /* we have BYE now */
- source->received_bye = TRUE;
+ /* we schedule BYE now */
+ sess->scheduled_bye = TRUE;
/* at least one member wants to send a BYE */
- g_free (sess->bye_reason);
- sess->bye_reason = g_strdup (reason);
INIT_AVG (sess->stats.avg_rtcp_packet_size, 100);
sess->stats.bye_members = 1;
sess->first_rtcp = TRUE;
- sess->sent_bye = FALSE;
sess->allow_early = TRUE;
/* reschedule transmission */
sess->last_rtcp_send_time = current_time;
interval = calculate_rtcp_interval (sess, FALSE, TRUE);
- sess->next_rtcp_check_time = current_time + interval;
+
+ if (interval != GST_CLOCK_TIME_NONE)
+ sess->next_rtcp_check_time = current_time + interval;
+ else
+ sess->next_rtcp_check_time = GST_CLOCK_TIME_NONE;
GST_DEBUG ("Schedule BYE for %" GST_TIME_FORMAT ", %" GST_TIME_FORMAT,
GST_TIME_ARGS (interval), GST_TIME_ARGS (sess->next_rtcp_check_time));
@@ -2576,23 +2606,21 @@ done:
/**
* rtp_session_schedule_bye:
* @sess: an #RTPSession
- * @reason: a reason or NULL
* @current_time: the current system time
*
- * Stop the current @sess and schedule a BYE message for the other members.
+ * Schedule a BYE message for all sources marked as BYE in @sess.
*
* Returns: a #GstFlowReturn.
*/
GstFlowReturn
-rtp_session_schedule_bye (RTPSession * sess, const gchar * reason,
- GstClockTime current_time)
+rtp_session_schedule_bye (RTPSession * sess, GstClockTime current_time)
{
GstFlowReturn result = GST_FLOW_OK;
g_return_val_if_fail (RTP_IS_SESSION (sess), GST_FLOW_ERROR);
RTP_SESSION_LOCK (sess);
- result = rtp_session_schedule_bye_locked (sess, reason, current_time);
+ result = rtp_session_schedule_bye_locked (sess, current_time);
RTP_SESSION_UNLOCK (sess);
return result;
@@ -2628,18 +2656,15 @@ rtp_session_next_timeout (RTPSession * sess, GstClockTime current_time)
", next time: %" GST_TIME_FORMAT,
GST_TIME_ARGS (current_time), GST_TIME_ARGS (result));
- if (result < current_time) {
+ if (result == GST_CLOCK_TIME_NONE || result < current_time) {
GST_DEBUG ("take current time as base");
/* our previous check time expired, start counting from the current time
* again. */
result = current_time;
}
- if (sess->source->received_bye) {
- if (sess->sent_bye) {
- GST_DEBUG ("we sent BYE already");
- interval = GST_CLOCK_TIME_NONE;
- } else if (sess->stats.active_sources >= 50) {
+ if (sess->scheduled_bye) {
+ if (sess->stats.active_sources >= 50) {
GST_DEBUG ("reconsider BYE, more than 50 sources");
/* reconsider BYE if members >= 50 */
interval = calculate_rtcp_interval (sess, FALSE, TRUE);
@@ -2675,28 +2700,38 @@ early_exit:
typedef struct
{
+ RTPSource *source;
+ gboolean is_bye;
+ GstBuffer *buffer;
+} ReportOutput;
+
+typedef struct
+{
GstRTCPBuffer rtcpbuf;
RTPSession *sess;
+ RTPSource *source;
+ guint num_to_report;
GstBuffer *rtcp;
GstClockTime current_time;
guint64 ntpnstime;
GstClockTime running_time;
GstClockTime interval;
GstRTCPPacket packet;
- gboolean is_bye;
gboolean has_sdes;
gboolean is_early;
gboolean may_suppress;
+ GQueue output;
} ReportData;
static void
session_start_rtcp (RTPSession * sess, ReportData * data)
{
GstRTCPPacket *packet = &data->packet;
- RTPSource *own = sess->source;
+ RTPSource *own = data->source;
GstRTCPBuffer *rtcp = &data->rtcpbuf;
data->rtcp = gst_rtcp_buffer_new (sess->mtu);
+ data->has_sdes = FALSE;
gst_rtcp_buffer_map (data->rtcp, GST_MAP_READWRITE, rtcp);
@@ -2733,39 +2768,59 @@ session_report_blocks (const gchar * key, RTPSource * source, ReportData * data)
{
RTPSession *sess = data->sess;
GstRTCPPacket *packet = &data->packet;
+ guint8 fractionlost;
+ gint32 packetslost;
+ guint32 exthighestseq, jitter;
+ guint32 lsr, dlsr;
+
+ /* don't report for sources in future generations */
+ if (((gint16) (source->generation - sess->generation)) > 0) {
+ GST_DEBUG ("source %08x generation %u > %u", source->ssrc,
+ source->generation, sess->generation);
+ return;
+ }
+
+ /* only report about other sender */
+ if (source == data->source)
+ goto reported;
- /* create a new buffer if needed */
- if (data->rtcp == NULL) {
- session_start_rtcp (sess, data);
- } else if (data->is_early) {
- /* Put a single RR or SR in minimal compound packets */
+ if (gst_rtcp_packet_get_rb_count (packet) == GST_RTCP_MAX_RB_COUNT) {
+ GST_DEBUG ("max RB count reached");
return;
}
- if (gst_rtcp_packet_get_rb_count (packet) < GST_RTCP_MAX_RB_COUNT) {
- /* only report about other sender sources */
- if (source != sess->source && RTP_SOURCE_IS_SENDER (source)) {
- guint8 fractionlost;
- gint32 packetslost;
- guint32 exthighestseq, jitter;
- guint32 lsr, dlsr;
-
- /* get new stats */
- rtp_source_get_new_rb (source, data->current_time, &fractionlost,
- &packetslost, &exthighestseq, &jitter, &lsr, &dlsr);
-
- /* store last generated RR packet */
- source->last_rr.is_valid = TRUE;
- source->last_rr.fractionlost = fractionlost;
- source->last_rr.packetslost = packetslost;
- source->last_rr.exthighestseq = exthighestseq;
- source->last_rr.jitter = jitter;
- source->last_rr.lsr = lsr;
- source->last_rr.dlsr = dlsr;
-
- /* packet is not yet filled, add report block for this source. */
- gst_rtcp_packet_add_rb (packet, source->ssrc, fractionlost, packetslost,
- exthighestseq, jitter, lsr, dlsr);
- }
+
+ if (!RTP_SOURCE_IS_SENDER (source)) {
+ GST_DEBUG ("source %08x not sender", source->ssrc);
+ goto reported;
+ }
+
+ GST_DEBUG ("create RB for SSRC %08x", source->ssrc);
+
+ /* get new stats */
+ rtp_source_get_new_rb (source, data->current_time, &fractionlost,
+ &packetslost, &exthighestseq, &jitter, &lsr, &dlsr);
+
+ /* store last generated RR packet */
+ source->last_rr.is_valid = TRUE;
+ source->last_rr.fractionlost = fractionlost;
+ source->last_rr.packetslost = packetslost;
+ source->last_rr.exthighestseq = exthighestseq;
+ source->last_rr.jitter = jitter;
+ source->last_rr.lsr = lsr;
+ source->last_rr.dlsr = dlsr;
+
+ /* packet is not yet filled, add report block for this source. */
+ gst_rtcp_packet_add_rb (packet, source->ssrc, fractionlost, packetslost,
+ exthighestseq, jitter, lsr, dlsr);
+
+reported:
+ /* source is reported, move to next generation */
+ source->generation = sess->generation + 1;
+
+ /* if we reported all sources in this generation, move to next */
+ if (--data->num_to_report == 0) {
+ sess->generation++;
+ GST_DEBUG ("all reported, generation now %u", sess->generation);
}
}
@@ -2781,6 +2836,21 @@ session_cleanup (const gchar * key, RTPSource * source, ReportData * data)
GstClockTime interval, binterval;
GstClockTime btime;
+ GST_DEBUG ("look at %08x, generation %u", source->ssrc, source->generation);
+
+ /* check for outdated collisions */
+ if (source->internal) {
+ GST_DEBUG ("Timing out collisions for %x", source->ssrc);
+ rtp_source_timeout (source, data->current_time,
+ /* "a relatively long time" -- RFC 3550 section 8.2 */
+ RTP_STATS_MIN_INTERVAL * GST_SECOND * 10,
+ data->running_time - sess->rtcp_feedback_retention_window);
+ }
+
+ /* nothing else to do when without RTCP */
+ if (data->interval == GST_CLOCK_TIME_NONE)
+ return;
+
is_sender = RTP_SOURCE_IS_SENDER (source);
is_active = RTP_SOURCE_IS_ACTIVE (source);
@@ -2791,7 +2861,7 @@ session_cleanup (const gchar * key, RTPSource * source, ReportData * data)
* interval = CLAMP (sender_interval, data->interval, 5 * GST_SECOND)
* where sender_interval is difference between last 2 received RTCP reports
*/
- if (data->interval >= 5 * GST_SECOND || (source == sess->source)) {
+ if (data->interval >= 5 * GST_SECOND || source->internal) {
binterval = data->interval;
} else {
GST_LOG ("prev_rtcp %" GST_TIME_FORMAT ", last_rtcp %" GST_TIME_FORMAT,
@@ -2807,9 +2877,8 @@ session_cleanup (const gchar * key, RTPSource * source, ReportData * data)
GST_LOG ("timeout base interval %" GST_TIME_FORMAT,
GST_TIME_ARGS (binterval));
- /* check for our own source, we don't want to delete our own source. */
- if (!(source == sess->source)) {
- if (source->received_bye) {
+ if (!source->internal) {
+ if (source->marked_bye) {
/* if we received a BYE from the source, remove the source after some
* time. */
if (data->current_time > source->bye_time &&
@@ -2834,38 +2903,57 @@ session_cleanup (const gchar * key, RTPSource * source, ReportData * data)
}
/* senders that did not send for a long time become a receiver, this also
- * holds for our own source. */
+ * holds for our own sources. */
if (is_sender) {
/* mind old time that might pre-date last time going to PLAYING */
btime = MAX (source->last_rtp_activity, sess->start_time);
if (data->current_time > btime) {
interval = MAX (binterval * 2, 5 * GST_SECOND);
if (data->current_time - btime > interval) {
- GST_DEBUG ("sender source %08x timed out and became receiver, last %"
- GST_TIME_FORMAT, source->ssrc, GST_TIME_ARGS (btime));
- source->is_sender = FALSE;
- sess->stats.sender_sources--;
- sendertimeout = TRUE;
+ if (source->internal && source->sent_bye) {
+ /* an internal source is BYE and stopped sending RTP, remove */
+ GST_DEBUG ("internal BYE source %08x timed out, last %"
+ GST_TIME_FORMAT, source->ssrc, GST_TIME_ARGS (btime));
+ remove = TRUE;
+ } else {
+ GST_DEBUG ("sender source %08x timed out and became receiver, last %"
+ GST_TIME_FORMAT, source->ssrc, GST_TIME_ARGS (btime));
+ sendertimeout = TRUE;
+ }
}
}
}
if (remove) {
sess->total_sources--;
- if (is_sender)
+ if (is_sender) {
sess->stats.sender_sources--;
+ if (source->internal)
+ sess->stats.internal_sender_sources--;
+ }
if (is_active)
sess->stats.active_sources--;
+ if (source->internal)
+ sess->stats.internal_sources--;
+
if (byetimeout)
on_bye_timeout (sess, source);
else
on_timeout (sess, source);
} else {
- if (sendertimeout)
+ if (sendertimeout) {
+ source->is_sender = FALSE;
+ sess->stats.sender_sources--;
+ if (source->internal)
+ sess->stats.internal_sender_sources--;
+
on_sender_timeout (sess, source);
+ }
+ /* count how many source to report in this generation */
+ if (((gint16) (source->generation - sess->generation)) <= 0)
+ data->num_to_report++;
}
-
source->closing = remove;
}
@@ -2880,9 +2968,9 @@ session_sdes (RTPSession * sess, ReportData * data)
/* add SDES packet */
gst_rtcp_buffer_add_packet (rtcp, GST_RTCP_TYPE_SDES, packet);
- gst_rtcp_packet_sdes_add_item (packet, sess->source->ssrc);
+ gst_rtcp_packet_sdes_add_item (packet, data->source->ssrc);
- sdes = rtp_source_get_sdes_struct (sess->source);
+ sdes = rtp_source_get_sdes_struct (data->source);
/* add all fields in the structure, the order is not important. */
n_fields = gst_structure_n_fields (sdes);
@@ -2936,25 +3024,21 @@ session_sdes (RTPSession * sess, ReportData * data)
/* schedule a BYE packet */
static void
-session_bye (RTPSession * sess, ReportData * data)
+make_source_bye (RTPSession * sess, RTPSource * source, ReportData * data)
{
GstRTCPPacket *packet = &data->packet;
GstRTCPBuffer *rtcp = &data->rtcpbuf;
- /* open packet */
- session_start_rtcp (sess, data);
-
/* add SDES */
session_sdes (sess, data);
-
/* add a BYE packet */
gst_rtcp_buffer_add_packet (rtcp, GST_RTCP_TYPE_BYE, packet);
- gst_rtcp_packet_bye_add_ssrc (packet, sess->source->ssrc);
- if (sess->bye_reason)
- gst_rtcp_packet_bye_set_reason (packet, sess->bye_reason);
+ gst_rtcp_packet_bye_add_ssrc (packet, source->ssrc);
+ if (source->bye_reason)
+ gst_rtcp_packet_bye_set_reason (packet, source->bye_reason);
/* we have a BYE packet now */
- data->is_bye = TRUE;
+ source->sent_bye = TRUE;
}
static gboolean
@@ -2962,11 +3046,17 @@ is_rtcp_time (RTPSession * sess, GstClockTime current_time, ReportData * data)
{
GstClockTime new_send_time, elapsed;
+ if (GST_CLOCK_TIME_IS_VALID (sess->next_early_rtcp_time))
+ data->is_early = TRUE;
+ else
+ data->is_early = FALSE;
+
if (data->is_early && sess->next_early_rtcp_time < current_time)
goto early;
/* no need to check yet */
- if (sess->next_rtcp_check_time > current_time) {
+ if (sess->next_rtcp_check_time == GST_CLOCK_TIME_NONE ||
+ sess->next_rtcp_check_time > current_time) {
GST_DEBUG ("no check time yet, next %" GST_TIME_FORMAT " > now %"
GST_TIME_FORMAT, GST_TIME_ARGS (sess->next_rtcp_check_time),
GST_TIME_ARGS (current_time));
@@ -2976,16 +3066,20 @@ is_rtcp_time (RTPSession * sess, GstClockTime current_time, ReportData * data)
/* get elapsed time since we last reported */
elapsed = current_time - sess->last_rtcp_send_time;
+ new_send_time = data->interval;
/* perform forward reconsideration */
- new_send_time = rtp_stats_add_rtcp_jitter (&sess->stats, data->interval);
+ if (new_send_time != GST_CLOCK_TIME_NONE) {
+ new_send_time = rtp_stats_add_rtcp_jitter (&sess->stats, new_send_time);
- GST_DEBUG ("forward reconsideration %" GST_TIME_FORMAT ", elapsed %"
- GST_TIME_FORMAT, GST_TIME_ARGS (new_send_time), GST_TIME_ARGS (elapsed));
+ GST_DEBUG ("forward reconsideration %" GST_TIME_FORMAT ", elapsed %"
+ GST_TIME_FORMAT, GST_TIME_ARGS (new_send_time),
+ GST_TIME_ARGS (elapsed));
- new_send_time += sess->last_rtcp_send_time;
+ new_send_time += sess->last_rtcp_send_time;
+ }
/* check if reconsideration */
- if (current_time < new_send_time) {
+ if (new_send_time == GST_CLOCK_TIME_NONE || current_time < new_send_time) {
GST_DEBUG ("reconsider RTCP for %" GST_TIME_FORMAT,
GST_TIME_ARGS (new_send_time));
/* store new check time */
@@ -2999,25 +3093,29 @@ early:
GST_DEBUG ("can send RTCP now, next interval %" GST_TIME_FORMAT,
GST_TIME_ARGS (new_send_time));
- sess->next_rtcp_check_time = current_time + new_send_time;
-
- /* Apply the rules from RFC 4585 section 3.5.3 */
- if (sess->stats.min_interval != 0 && !sess->first_rtcp) {
- GstClockTimeDiff T_rr_current_interval = g_random_double_range (0.5, 1.5) *
- sess->stats.min_interval;
-
- /* This will caused the RTCP to be suppressed if no FB packets are added */
- if (sess->last_rtcp_send_time + T_rr_current_interval >
- sess->next_rtcp_check_time) {
- GST_DEBUG ("RTCP packet could be suppressed min: %" GST_TIME_FORMAT
- " last: %" GST_TIME_FORMAT
- " + T_rr_current_interval: %" GST_TIME_FORMAT
- " > sess->next_rtcp_check_time: %" GST_TIME_FORMAT,
- GST_TIME_ARGS (sess->stats.min_interval),
- GST_TIME_ARGS (sess->last_rtcp_send_time),
- GST_TIME_ARGS (T_rr_current_interval),
- GST_TIME_ARGS (sess->next_rtcp_check_time));
- data->may_suppress = TRUE;
+
+ sess->next_rtcp_check_time = new_send_time;
+ if (new_send_time != GST_CLOCK_TIME_NONE) {
+ sess->next_rtcp_check_time += current_time;
+
+ /* Apply the rules from RFC 4585 section 3.5.3 */
+ if (sess->stats.min_interval != 0 && !sess->first_rtcp) {
+ GstClockTimeDiff T_rr_current_interval =
+ g_random_double_range (0.5, 1.5) * sess->stats.min_interval;
+
+ /* This will caused the RTCP to be suppressed if no FB packets are added */
+ if (sess->last_rtcp_send_time + T_rr_current_interval >
+ sess->next_rtcp_check_time) {
+ GST_DEBUG ("RTCP packet could be suppressed min: %" GST_TIME_FORMAT
+ " last: %" GST_TIME_FORMAT
+ " + T_rr_current_interval: %" GST_TIME_FORMAT
+ " > sess->next_rtcp_check_time: %" GST_TIME_FORMAT,
+ GST_TIME_ARGS (sess->stats.min_interval),
+ GST_TIME_ARGS (sess->last_rtcp_send_time),
+ GST_TIME_ARGS (T_rr_current_interval),
+ GST_TIME_ARGS (sess->next_rtcp_check_time));
+ data->may_suppress = TRUE;
+ }
}
}
@@ -3036,6 +3134,45 @@ remove_closing_sources (const gchar * key, RTPSource * source, gpointer * data)
return source->closing;
}
+static void
+generate_rtcp (const gchar * key, RTPSource * source, ReportData * data)
+{
+ RTPSession *sess = data->sess;
+ gboolean is_bye = FALSE;
+ ReportOutput *output;
+
+ /* only generate RTCP for active internal sources */
+ if (!source->internal || source->sent_bye)
+ return;
+
+ data->source = source;
+
+ /* open packet */
+ session_start_rtcp (sess, data);
+
+ if (source->marked_bye) {
+ /* send BYE */
+ make_source_bye (sess, source, data);
+ is_bye = TRUE;
+ } else if (!data->is_early) {
+ /* loop over all known sources and add report blocks. If we are early, we
+ * just make a minimal RTCP packet and skip this step */
+ g_hash_table_foreach (sess->ssrcs[sess->mask_idx],
+ (GHFunc) session_report_blocks, data);
+ }
+ if (!data->has_sdes)
+ session_sdes (sess, data);
+
+ gst_rtcp_buffer_unmap (&data->rtcpbuf);
+
+ output = g_slice_new (ReportOutput);
+ output->source = g_object_ref (source);
+ output->is_bye = is_bye;
+ output->buffer = data->rtcp;
+ /* queue the RTCP packet to push later */
+ g_queue_push_tail (&data->output, output);
+}
+
/**
* rtp_session_on_timeout:
* @sess: an #RTPSession
@@ -3060,9 +3197,8 @@ rtp_session_on_timeout (RTPSession * sess, GstClockTime current_time,
{
GstFlowReturn result = GST_FLOW_OK;
ReportData data = { GST_RTCP_BUFFER_INIT };
- RTPSource *own;
GHashTable *table_copy;
- gboolean notify = FALSE;
+ ReportOutput *output;
g_return_val_if_fail (RTP_IS_SESSION (sess), GST_FLOW_ERROR);
@@ -3071,20 +3207,26 @@ rtp_session_on_timeout (RTPSession * sess, GstClockTime current_time,
GST_TIME_ARGS (ntpnstime), GST_TIME_ARGS (running_time));
data.sess = sess;
- data.rtcp = NULL;
data.current_time = current_time;
data.ntpnstime = ntpnstime;
- data.is_bye = FALSE;
- data.has_sdes = FALSE;
- data.may_suppress = FALSE;
data.running_time = running_time;
-
- own = sess->source;
+ data.num_to_report = 0;
+ data.may_suppress = FALSE;
+ g_queue_init (&data.output);
RTP_SESSION_LOCK (sess);
/* get a new interval, we need this for various cleanups etc */
data.interval = calculate_rtcp_interval (sess, TRUE, sess->first_rtcp);
+ /* we need an internal source now */
+ if (sess->stats.internal_sources == 0) {
+ RTPSource *source;
+ gboolean created;
+
+ source = obtain_internal_source (sess, sess->suggested_ssrc, &created);
+ g_object_unref (source);
+ }
+
/* Make a local copy of the hashtable. We need to do this because the
* cleanup stage below releases the session lock. */
table_copy = g_hash_table_new_full (NULL, NULL, NULL,
@@ -3101,103 +3243,68 @@ rtp_session_on_timeout (RTPSession * sess, GstClockTime current_time,
g_hash_table_foreach_remove (sess->ssrcs[sess->mask_idx],
(GHRFunc) remove_closing_sources, NULL);
- if (GST_CLOCK_TIME_IS_VALID (sess->next_early_rtcp_time))
- data.is_early = TRUE;
- else
- data.is_early = FALSE;
-
/* see if we need to generate SR or RR packets */
- if (is_rtcp_time (sess, current_time, &data)) {
- if (own->received_bye) {
- /* generate BYE instead */
- GST_DEBUG ("generating BYE message");
- session_bye (sess, &data);
- sess->sent_bye = TRUE;
- } else {
- /* loop over all known sources and do something */
- g_hash_table_foreach (sess->ssrcs[sess->mask_idx],
- (GHFunc) session_report_blocks, &data);
- }
- }
-
- if (data.rtcp) {
- /* we keep track of the last report time in order to timeout inactive
- * receivers or senders */
- if (!data.is_early && !data.may_suppress)
- sess->last_rtcp_send_time = data.current_time;
- sess->first_rtcp = FALSE;
- sess->next_early_rtcp_time = GST_CLOCK_TIME_NONE;
-
- /* add SDES for this source when not already added */
- if (!data.has_sdes)
- session_sdes (sess, &data);
- }
-
- /* check for outdated collisions */
- GST_DEBUG ("Timing out collisions");
- rtp_source_timeout (sess->source, current_time,
- /* "a relatively long time" -- RFC 3550 section 8.2 */
- RTP_STATS_MIN_INTERVAL * GST_SECOND * 10,
- running_time - sess->rtcp_feedback_retention_window);
-
- if (sess->change_ssrc) {
- GST_DEBUG ("need to change our SSRC (%08x)", own->ssrc);
- g_hash_table_steal (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (own->ssrc));
-
- own->ssrc = rtp_session_create_new_ssrc (sess);
- rtp_source_reset (own);
+ if (!is_rtcp_time (sess, current_time, &data))
+ goto done;
- g_hash_table_insert (sess->ssrcs[sess->mask_idx],
- GINT_TO_POINTER (own->ssrc), own);
+ GST_DEBUG ("doing RTCP generation %u for %u sources", sess->generation,
+ data.num_to_report);
- g_free (sess->bye_reason);
- sess->bye_reason = NULL;
- sess->sent_bye = FALSE;
- sess->change_ssrc = FALSE;
- notify = TRUE;
- GST_DEBUG ("changed our SSRC to %08x", own->ssrc);
- }
+ /* generate RTCP for all internal sources */
+ g_hash_table_foreach (sess->ssrcs[sess->mask_idx],
+ (GHFunc) generate_rtcp, &data);
- sess->allow_early = TRUE;
+ /* we keep track of the last report time in order to timeout inactive
+ * receivers or senders */
+ if (!data.is_early && !data.may_suppress)
+ sess->last_rtcp_send_time = data.current_time;
+ sess->first_rtcp = FALSE;
+ sess->next_early_rtcp_time = GST_CLOCK_TIME_NONE;
+done:
RTP_SESSION_UNLOCK (sess);
- if (notify)
- g_object_notify (G_OBJECT (sess), "internal-ssrc");
-
- /* push out the RTCP packet */
- if (data.rtcp) {
+ /* push out the RTCP packets */
+ while ((output = g_queue_pop_head (&data.output))) {
gboolean do_not_suppress;
-
- gst_rtcp_buffer_unmap (&data.rtcpbuf);
+ GstBuffer *buffer = output->buffer;
+ RTPSource *source = output->source;
/* Give the user a change to add its own packet */
g_signal_emit (sess, rtp_session_signals[SIGNAL_ON_SENDING_RTCP], 0,
- data.rtcp, data.is_early, &do_not_suppress);
+ buffer, data.is_early, &do_not_suppress);
if (sess->callbacks.send_rtcp && (do_not_suppress || !data.may_suppress)) {
guint packet_size;
- packet_size = gst_buffer_get_size (data.rtcp) + sess->header_len;
+ packet_size = gst_buffer_get_size (buffer) + sess->header_len;
UPDATE_AVG (sess->stats.avg_rtcp_packet_size, packet_size);
GST_DEBUG ("%p, sending RTCP packet, avg size %u, %u", &sess->stats,
sess->stats.avg_rtcp_packet_size, packet_size);
result =
- sess->callbacks.send_rtcp (sess, own, data.rtcp, sess->sent_bye,
+ sess->callbacks.send_rtcp (sess, source, buffer, output->is_bye,
sess->send_rtcp_user_data);
} else {
GST_DEBUG ("freeing packet callback: %p"
" do_not_suppress: %d may_suppress: %d",
sess->callbacks.send_rtcp, do_not_suppress, data.may_suppress);
- gst_buffer_unref (data.rtcp);
+ gst_buffer_unref (buffer);
}
+ g_object_unref (source);
+ g_slice_free (ReportOutput, output);
}
-
return result;
}
+/**
+ * rtp_session_request_early_rtcp:
+ * @sess: an #RTPSession
+ * @current_time: the current system time
+ * @max_delay: maximum delay
+ *
+ * Request transmission of early RTCP
+ */
void
rtp_session_request_early_rtcp (RTPSession * sess, GstClockTime current_time,
GstClockTimeDiff max_delay)
@@ -3213,6 +3320,9 @@ rtp_session_request_early_rtcp (RTPSession * sess, GstClockTime current_time,
if (GST_CLOCK_TIME_IS_VALID (sess->next_early_rtcp_time))
goto dont_send;
+ if (!GST_CLOCK_TIME_IS_VALID (sess->next_rtcp_check_time))
+ goto dont_send;
+
/* Ignore the request a scheduled packet will be in time anyway */
if (current_time + max_delay > sess->next_rtcp_check_time)
goto dont_send;
@@ -3267,8 +3377,7 @@ gboolean
rtp_session_request_key_unit (RTPSession * sess, guint32 ssrc, GstClockTime now,
gboolean fir, gint count)
{
- RTPSource *src = g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
- GUINT_TO_POINTER (ssrc));
+ RTPSource *src = find_source (sess, ssrc);
if (!src)
return FALSE;
@@ -3318,12 +3427,26 @@ rtp_session_on_sending_rtcp (RTPSession * sess, GstBuffer * buffer,
gpointer key, value;
gboolean started_fir = FALSE;
GstRTCPPacket fir_rtcppacket;
+ GstRTCPPacket packet;
GstRTCPBuffer rtcp = { NULL, };
-
- RTP_SESSION_LOCK (sess);
+ guint32 ssrc;
gst_rtcp_buffer_map (buffer, GST_MAP_READWRITE, &rtcp);
+ gst_rtcp_buffer_get_first_packet (&rtcp, &packet);
+ switch (gst_rtcp_packet_get_type (&packet)) {
+ case GST_RTCP_TYPE_SR:
+ gst_rtcp_packet_sr_get_sender_info (&packet, &ssrc,
+ NULL, NULL, NULL, NULL);
+ break;
+ case GST_RTCP_TYPE_RR:
+ ssrc = gst_rtcp_packet_rr_get_ssrc (&packet);
+ break;
+ default:
+ goto done;
+ }
+
+ RTP_SESSION_LOCK (sess);
g_hash_table_iter_init (&iter, sess->ssrcs[sess->mask_idx]);
while (g_hash_table_iter_next (&iter, &key, &value)) {
guint media_ssrc = GPOINTER_TO_UINT (key);
@@ -3336,8 +3459,7 @@ rtp_session_on_sending_rtcp (RTPSession * sess, GstBuffer * buffer,
&fir_rtcppacket))
break;
gst_rtcp_packet_fb_set_type (&fir_rtcppacket, GST_RTCP_PSFB_TYPE_FIR);
- gst_rtcp_packet_fb_set_sender_ssrc (&fir_rtcppacket,
- rtp_source_get_ssrc (sess->source));
+ gst_rtcp_packet_fb_set_sender_ssrc (&fir_rtcppacket, ssrc);
gst_rtcp_packet_fb_set_media_ssrc (&fir_rtcppacket, 0);
if (!gst_rtcp_packet_fb_set_fci_length (&fir_rtcppacket, 2)) {
@@ -3377,17 +3499,17 @@ rtp_session_on_sending_rtcp (RTPSession * sess, GstBuffer * buffer,
* further packet */
break;
gst_rtcp_packet_fb_set_type (&pli_rtcppacket, GST_RTCP_PSFB_TYPE_PLI);
- gst_rtcp_packet_fb_set_sender_ssrc (&pli_rtcppacket,
- rtp_source_get_ssrc (sess->source));
+ gst_rtcp_packet_fb_set_sender_ssrc (&pli_rtcppacket, ssrc);
gst_rtcp_packet_fb_set_media_ssrc (&pli_rtcppacket, media_ssrc);
ret = TRUE;
}
media_src->send_pli = FALSE;
}
- gst_rtcp_buffer_unmap (&rtcp);
-
RTP_SESSION_UNLOCK (sess);
+done:
+ gst_rtcp_buffer_unmap (&rtcp);
+
return ret;
}
diff --git a/gst/rtpmanager/rtpsession.h b/gst/rtpmanager/rtpsession.h
index 16e73b6e..76ee72dc 100644
--- a/gst/rtpmanager/rtpsession.h
+++ b/gst/rtpmanager/rtpsession.h
@@ -85,7 +85,6 @@ typedef GstFlowReturn (*RTPSessionSendRTCP) (RTPSession *sess, RTPSource *src, G
/**
* RTPSessionSyncRTCP:
* @sess: an #RTPSession
- * @src: the #RTPSource
* @buffer: the RTCP buffer ready for synchronisation
* @user_data: user data specified when registering
*
@@ -94,7 +93,7 @@ typedef GstFlowReturn (*RTPSessionSendRTCP) (RTPSession *sess, RTPSource *src, G
*
* Returns: a #GstFlowReturn.
*/
-typedef GstFlowReturn (*RTPSessionSyncRTCP) (RTPSession *sess, RTPSource *src, GstBuffer *buffer, gpointer user_data);
+typedef GstFlowReturn (*RTPSessionSyncRTCP) (RTPSession *sess, GstBuffer *buffer, gpointer user_data);
/**
* RTPSessionClockRate:
@@ -188,6 +187,8 @@ struct _RTPSession {
guint header_len;
guint mtu;
+ GstStructure *sdes;
+
guint probation;
/* bandwidths */
@@ -197,7 +198,7 @@ struct _RTPSession {
guint rtcp_rr_bandwidth;
guint rtcp_rs_bandwidth;
- RTPSource *source;
+ guint32 suggested_ssrc;
/* for sender/receiver counting */
guint32 key;
@@ -206,6 +207,7 @@ struct _RTPSession {
GHashTable *ssrcs[32];
guint total_sources;
+ guint16 generation;
GstClockTime next_rtcp_check_time;
GstClockTime last_rtcp_send_time;
GstClockTime start_time;
@@ -214,8 +216,7 @@ struct _RTPSession {
GstClockTime next_early_rtcp_time;
- gchar *bye_reason;
- gboolean sent_bye;
+ gboolean scheduled_bye;
RTPSessionCallbacks callbacks;
gpointer process_rtp_user_data;
@@ -229,7 +230,6 @@ struct _RTPSession {
RTPSessionStats stats;
- gboolean change_ssrc;
gboolean favor_new;
GstClockTime rtcp_feedback_retention_window;
guint rtcp_immediate_feedback_threshold;
@@ -302,18 +302,11 @@ gdouble rtp_session_get_bandwidth (RTPSession *sess);
void rtp_session_set_rtcp_fraction (RTPSession *sess, gdouble fraction);
gdouble rtp_session_get_rtcp_fraction (RTPSession *sess);
-gboolean rtp_session_set_sdes_string (RTPSession *sess, GstRTCPSDESType type,
- const gchar *cname);
-gchar* rtp_session_get_sdes_string (RTPSession *sess, GstRTCPSDESType type);
-
GstStructure * rtp_session_get_sdes_struct (RTPSession *sess);
void rtp_session_set_sdes_struct (RTPSession *sess, const GstStructure *sdes);
/* handling sources */
-RTPSource* rtp_session_get_internal_source (RTPSession *sess);
-
-void rtp_session_set_internal_ssrc (RTPSession *sess, guint32 ssrc);
-guint32 rtp_session_get_internal_ssrc (RTPSession *sess);
+guint32 rtp_session_suggest_ssrc (RTPSession *sess);
gboolean rtp_session_add_source (RTPSession *sess, RTPSource *src);
guint rtp_session_get_num_sources (RTPSession *sess);
@@ -334,9 +327,9 @@ void rtp_session_update_send_caps (RTPSession *sess, GstCaps *c
GstFlowReturn rtp_session_send_rtp (RTPSession *sess, gpointer data, gboolean is_list,
GstClockTime current_time, GstClockTime running_time);
-/* stopping the session */
-GstFlowReturn rtp_session_schedule_bye (RTPSession *sess, const gchar *reason,
- GstClockTime current_time);
+/* scheduling bye */
+void rtp_session_mark_all_bye (RTPSession *sess, const gchar *reason);
+GstFlowReturn rtp_session_schedule_bye (RTPSession *sess, GstClockTime current_time);
/* get interval for next RTCP interval */
GstClockTime rtp_session_next_timeout (RTPSession *sess, GstClockTime current_time);
diff --git a/gst/rtpmanager/rtpsource.c b/gst/rtpmanager/rtpsource.c
index 42539928..185ea1cd 100644
--- a/gst/rtpmanager/rtpsource.c
+++ b/gst/rtpmanager/rtpsource.c
@@ -126,7 +126,7 @@ rtp_source_class_init (RTPSourceClass * klass)
* name application/x-rtp-source-stats with the following fields:
*
* "ssrc" G_TYPE_UINT The SSRC of this source
- * "internal" G_TYPE_BOOLEAN If this source is the source of the session
+ * "internal" G_TYPE_BOOLEAN If this source is a source of the session
* "validated" G_TYPE_BOOLEAN If the source is validated
* "received-bye" G_TYPE_BOOLEAN If we received a BYE from this source
* "is-csrc" G_TYPE_BOOLEAN If this source was found as CSRC
@@ -219,13 +219,23 @@ rtp_source_class_init (RTPSourceClass * klass)
void
rtp_source_reset (RTPSource * src)
{
- src->received_bye = FALSE;
+ src->marked_bye = FALSE;
+ if (src->bye_reason)
+ g_free (src->bye_reason);
+ src->bye_reason = NULL;
+ src->sent_bye = FALSE;
src->stats.cycles = -1;
src->stats.jitter = 0;
src->stats.transit = -1;
src->stats.curr_sr = 0;
+ src->stats.sr[0].is_valid = FALSE;
src->stats.curr_rr = 0;
+ src->stats.rr[0].is_valid = FALSE;
+ src->stats.prev_rtptime = GST_CLOCK_TIME_NONE;
+ src->stats.prev_rtcptime = GST_CLOCK_TIME_NONE;
+ src->stats.last_rtptime = GST_CLOCK_TIME_NONE;
+ src->stats.last_rtcptime = GST_CLOCK_TIME_NONE;
}
static void
@@ -321,7 +331,7 @@ rtp_source_create_stats (RTPSource * src)
"ssrc", G_TYPE_UINT, (guint) src->ssrc,
"internal", G_TYPE_BOOLEAN, internal,
"validated", G_TYPE_BOOLEAN, src->validated,
- "received-bye", G_TYPE_BOOLEAN, src->received_bye,
+ "received-bye", G_TYPE_BOOLEAN, src->marked_bye,
"is-csrc", G_TYPE_BOOLEAN, src->is_csrc,
"is-sender", G_TYPE_BOOLEAN, is_sender,
"seqnum-base", G_TYPE_INT, src->seqnum_base,
@@ -426,7 +436,7 @@ sdes_struct_compare_func (GQuark field_id, const GValue * value,
}
/**
- * rtp_source_set_sdes:
+ * rtp_source_set_sdes_struct:
* @src: an #RTPSource
* @sdes: the SDES structure
*
@@ -454,7 +464,6 @@ rtp_source_set_sdes_struct (RTPSource * src, GstStructure * sdes)
} else {
gst_structure_free (sdes);
}
-
return changed;
}
@@ -670,21 +679,21 @@ rtp_source_is_sender (RTPSource * src)
}
/**
- * rtp_source_received_bye:
+ * rtp_source_is_marked_bye:
* @src: an #RTPSource
*
- * Check if @src has receoved a BYE packet.
+ * Check if @src is marked as leaving the session with a BYE packet.
*
- * Returns: %TRUE if @src has received a BYE packet.
+ * Returns: %TRUE if @src has been marked BYE.
*/
gboolean
-rtp_source_received_bye (RTPSource * src)
+rtp_source_is_marked_bye (RTPSource * src)
{
gboolean result;
g_return_val_if_fail (RTP_IS_SOURCE (src), FALSE);
- result = src->received_bye;
+ result = RTP_SOURCE_IS_MARKED_BYE (src);
return result;
}
@@ -694,11 +703,11 @@ rtp_source_received_bye (RTPSource * src)
* rtp_source_get_bye_reason:
* @src: an #RTPSource
*
- * Get the BYE reason for @src. Check if the source receoved a BYE message first
- * with rtp_source_received_bye().
+ * Get the BYE reason for @src. Check if the source is marked as leaving the
+ * session with a BYE message first with rtp_source_is_marked_bye().
*
- * Returns: The BYE reason or NULL when no reason was given or the source did
- * not receive a BYE message yet. g_fee() after usage.
+ * Returns: The BYE reason or NULL when no reason was given or the source was
+ * not marked BYE yet. g_free() after usage.
*/
gchar *
rtp_source_get_bye_reason (RTPSource * src)
@@ -756,75 +765,6 @@ rtp_source_update_caps (RTPSource * src, GstCaps * caps)
}
/**
- * rtp_source_set_sdes_string:
- * @src: an #RTPSource
- * @type: the type of the SDES item
- * @data: the SDES data
- *
- * Store an SDES item of @type in @src.
- *
- * Returns: %FALSE if the SDES item was unchanged or @type is unknown.
- */
-gboolean
-rtp_source_set_sdes_string (RTPSource * src, GstRTCPSDESType type,
- const gchar * data)
-{
- const gchar *old;
- const gchar *field;
-
- field = gst_rtcp_sdes_type_to_name (type);
-
- if (gst_structure_has_field (src->sdes, field))
- old = gst_structure_get_string (src->sdes, field);
- else
- old = NULL;
-
- if (old == NULL && data == NULL)
- return FALSE;
-
- if (old != NULL && data != NULL && strcmp (old, data) == 0)
- return FALSE;
-
- if (data == NULL)
- gst_structure_remove_field (src->sdes, field);
- else
- gst_structure_set (src->sdes, field, G_TYPE_STRING, data, NULL);
-
- return TRUE;
-}
-
-/**
- * rtp_source_get_sdes_string:
- * @src: an #RTPSource
- * @type: the type of the SDES item
- *
- * Get the SDES item of @type from @src.
- *
- * Returns: a null-terminated copy of the SDES item or NULL when @type was not
- * valid or the SDES item was unset. g_free() after usage.
- */
-gchar *
-rtp_source_get_sdes_string (RTPSource * src, GstRTCPSDESType type)
-{
- gchar *result;
- const gchar *type_name;
-
- g_return_val_if_fail (RTP_IS_SOURCE (src), NULL);
-
- if (type < 0 || type > GST_RTCP_SDES_PRIV - 1)
- return NULL;
-
- type_name = gst_rtcp_sdes_type_to_name (type);
-
- if (!gst_structure_has_field (src->sdes, type_name))
- return NULL;
-
- result = g_strdup (gst_structure_get_string (src->sdes, type_name));
-
- return result;
-}
-
-/**
* rtp_source_set_rtp_from:
* @src: an #RTPSource
* @address: the RTP address to set
@@ -1187,38 +1127,27 @@ probation_seqnum:
}
/**
- * rtp_source_process_bye:
+ * rtp_source_mark_bye:
* @src: an #RTPSource
* @reason: the reason for leaving
*
- * Notify @src that a BYE packet has been received. This will make the source
- * inactive.
+ * Mark @src in the BYE state. This can happen when the source wants to
+ * leave the sesssion or when a BYE packets has been received.
+ *
+ * This will make the source inactive.
*/
void
-rtp_source_process_bye (RTPSource * src, const gchar * reason)
+rtp_source_mark_bye (RTPSource * src, const gchar * reason)
{
g_return_if_fail (RTP_IS_SOURCE (src));
GST_DEBUG ("marking SSRC %08x as BYE, reason: %s", src->ssrc,
GST_STR_NULL (reason));
- /* copy the reason and mark as received_bye */
+ /* copy the reason and mark as bye */
g_free (src->bye_reason);
src->bye_reason = g_strdup (reason);
- src->received_bye = TRUE;
-}
-
-static gboolean
-set_ssrc (GstBuffer ** buffer, guint idx, RTPSource * src)
-{
- GstRTPBuffer rtp = { NULL };
-
- *buffer = gst_buffer_make_writable (*buffer);
- if (gst_rtp_buffer_map (*buffer, GST_MAP_WRITE, &rtp)) {
- gst_rtp_buffer_set_ssrc (&rtp, src->ssrc);
- gst_rtp_buffer_unmap (&rtp);
- }
- return TRUE;
+ src->marked_bye = TRUE;
}
/**
@@ -1246,7 +1175,6 @@ rtp_source_send_rtp (RTPSource * src, gpointer data, gboolean is_list,
GstBufferList *list = NULL;
GstBuffer *buffer = NULL;
guint packets;
- guint32 ssrc;
GstRTPBuffer rtp = { NULL };
g_return_val_if_fail (RTP_IS_SOURCE (src), GST_FLOW_ERROR);
@@ -1325,28 +1253,8 @@ rtp_source_send_rtp (RTPSource * src, gpointer data, gboolean is_list,
gst_rtp_buffer_unmap (&rtp);
goto no_callback;
}
-
- ssrc = gst_rtp_buffer_get_ssrc (&rtp);
gst_rtp_buffer_unmap (&rtp);
- if (ssrc != src->ssrc) {
- /* the SSRC of the packet is not correct, make a writable buffer and
- * update the SSRC. This could involve a complete copy of the packet when
- * it is not writable. Usually the payloader will use caps negotiation to
- * get the correct SSRC from the session manager before pushing anything. */
-
- /* FIXME, we don't want to warn yet because we can't inform any payloader
- * of the changes SSRC yet because we don't implement pad-alloc. */
- GST_LOG ("updating SSRC from %08x to %08x, fix the payloader", ssrc,
- src->ssrc);
-
- if (is_list) {
- list = gst_buffer_list_make_writable (list);
- gst_buffer_list_foreach (list, (GstBufferListFunc) set_ssrc, src);
- } else {
- set_ssrc (&buffer, 0, src);
- }
- }
GST_LOG ("pushing RTP %s %" G_GUINT64_FORMAT, is_list ? "list" : "packet",
src->stats.packets_sent);
diff --git a/gst/rtpmanager/rtpsource.h b/gst/rtpmanager/rtpsource.h
index 7f1210f1..bde29df9 100644
--- a/gst/rtpmanager/rtpsource.h
+++ b/gst/rtpmanager/rtpsource.h
@@ -51,7 +51,7 @@ typedef struct _RTPSourceClass RTPSourceClass;
* Check if @src is active. A source is active when it has been validated
* and has not yet received a BYE packet.
*/
-#define RTP_SOURCE_IS_ACTIVE(src) (src->validated && !src->received_bye)
+#define RTP_SOURCE_IS_ACTIVE(src) (src->validated && !src->marked_bye)
/**
* RTP_SOURCE_IS_SENDER:
@@ -60,6 +60,14 @@ typedef struct _RTPSourceClass RTPSourceClass;
* Check if @src is a sender.
*/
#define RTP_SOURCE_IS_SENDER(src) (src->is_sender)
+/**
+ * RTP_SOURCE_IS_MARKED_BYE:
+ * @src: an #RTPSource
+ *
+ * Check if @src is a marked as BYE.
+ */
+#define RTP_SOURCE_IS_MARKED_BYE(src) (src->marked_bye)
+
/**
* RTPSourcePushRTP:
@@ -127,6 +135,7 @@ struct _RTPSource {
/*< private >*/
guint32 ssrc;
+ guint16 generation;
guint probation;
guint curr_probation;
gboolean validated;
@@ -137,8 +146,9 @@ struct _RTPSource {
GstStructure *sdes;
- gboolean received_bye;
+ gboolean marked_bye;
gchar *bye_reason;
+ gboolean sent_bye;
GSocketAddress *rtp_from;
GSocketAddress *rtcp_from;
@@ -199,15 +209,13 @@ gboolean rtp_source_is_active (RTPSource *src);
gboolean rtp_source_is_validated (RTPSource *src);
gboolean rtp_source_is_sender (RTPSource *src);
-gboolean rtp_source_received_bye (RTPSource *src);
+void rtp_source_mark_bye (RTPSource *src, const gchar *reason);
+gboolean rtp_source_is_marked_bye (RTPSource *src);
gchar * rtp_source_get_bye_reason (RTPSource *src);
void rtp_source_update_caps (RTPSource *src, GstCaps *caps);
/* SDES info */
-gboolean rtp_source_set_sdes_string (RTPSource *src, GstRTCPSDESType type,
- const gchar *data);
-gchar* rtp_source_get_sdes_string (RTPSource *src, GstRTCPSDESType type);
const GstStructure *
rtp_source_get_sdes_struct (RTPSource * src);
gboolean rtp_source_set_sdes_struct (RTPSource * src, GstStructure *sdes);
@@ -222,7 +230,6 @@ GstFlowReturn rtp_source_process_rtp (RTPSource *src, GstBuffer *buffe
GstFlowReturn rtp_source_send_rtp (RTPSource *src, gpointer data, gboolean is_list,
GstClockTime running_time);
/* RTCP messages */
-void rtp_source_process_bye (RTPSource *src, const gchar *reason);
void rtp_source_process_sr (RTPSource *src, GstClockTime time, guint64 ntptime,
guint32 rtptime, guint32 packet_count, guint32 octet_count);
void rtp_source_process_rb (RTPSource *src, guint64 ntpnstime, guint8 fractionlost,
diff --git a/gst/rtpmanager/rtpstats.h b/gst/rtpmanager/rtpstats.h
index 77cbc717..f27e9e74 100644
--- a/gst/rtpmanager/rtpstats.h
+++ b/gst/rtpmanager/rtpstats.h
@@ -179,7 +179,9 @@ typedef struct {
gdouble receiver_fraction;
gdouble min_interval;
GstClockTime bye_timeout;
+ guint internal_sources;
guint sender_sources;
+ guint internal_sender_sources;
guint active_sources;
guint avg_rtcp_packet_size;
guint bye_members;
diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c
index c0c05a2c..591917ad 100644
--- a/gst/rtsp/gstrtspsrc.c
+++ b/gst/rtsp/gstrtspsrc.c
@@ -3893,17 +3893,26 @@ gst_rtspsrc_handle_data (GstRTSPSrc * src, GstRTSPMessage * message)
GstEvent *event;
GChecksum *cs;
gchar *uri;
+ GList *streams;
+ guint group_id = gst_util_group_id_next ();
/* generate an SHA256 sum of the URI */
cs = g_checksum_new (G_CHECKSUM_SHA256);
uri = src->conninfo.location;
g_checksum_update (cs, (const guchar *) uri, strlen (uri));
- stream_id =
- g_strdup_printf ("%s/%d", g_checksum_get_string (cs), stream->id);
- g_checksum_free (cs);
- event = gst_event_new_stream_start (stream_id);
- g_free (stream_id);
- gst_rtspsrc_push_event (src, event);
+
+ for (streams = src->streams; streams; streams = g_list_next (streams)) {
+ GstRTSPStream *ostream = (GstRTSPStream *) streams->data;
+
+ stream_id =
+ g_strdup_printf ("%s/%d", g_checksum_get_string (cs), ostream->id);
+ g_checksum_free (cs);
+ event = gst_event_new_stream_start (stream_id);
+ gst_event_set_group_id (event, group_id);
+
+ g_free (stream_id);
+ gst_rtspsrc_stream_push_event (src, ostream, event);
+ }
gst_rtspsrc_activate_streams (src);
src->need_activate = FALSE;
diff --git a/gst/videomixer/videomixer2.c b/gst/videomixer/videomixer2.c
index 464dc48c..63f4204f 100644
--- a/gst/videomixer/videomixer2.c
+++ b/gst/videomixer/videomixer2.c
@@ -590,7 +590,7 @@ gst_videomixer2_update_qos (GstVideoMixer2 * mix, gdouble proportion,
if (G_LIKELY (timestamp != GST_CLOCK_TIME_NONE)) {
if (G_UNLIKELY (diff > 0))
mix->earliest_time =
- timestamp + 2 * diff + gst_util_uint64_scale_int (GST_SECOND,
+ timestamp + 2 * diff + gst_util_uint64_scale_int_round (GST_SECOND,
GST_VIDEO_INFO_FPS_D (&mix->info), GST_VIDEO_INFO_FPS_N (&mix->info));
else
mix->earliest_time = timestamp + diff;
@@ -1013,7 +1013,7 @@ gst_videomixer2_collected (GstCollectPads * pads, GstVideoMixer2 * mix)
}
output_end_time =
- mix->ts_offset + gst_util_uint64_scale (mix->nframes + 1,
+ mix->ts_offset + gst_util_uint64_scale_round (mix->nframes + 1,
GST_SECOND * GST_VIDEO_INFO_FPS_D (&mix->info),
GST_VIDEO_INFO_FPS_N (&mix->info)) + mix->segment.start;
if (mix->segment.stop != -1)
@@ -1664,7 +1664,7 @@ gst_videomixer2_sink_clip (GstCollectPads * pads,
end_time = GST_BUFFER_DURATION (buf);
if (end_time == -1 && GST_VIDEO_INFO_FPS_N (&pad->info) != 0)
end_time =
- gst_util_uint64_scale_int (GST_SECOND,
+ gst_util_uint64_scale_int_round (GST_SECOND,
GST_VIDEO_INFO_FPS_D (&pad->info), GST_VIDEO_INFO_FPS_N (&pad->info));
if (end_time == -1) {
*outbuf = buf;
diff --git a/gst/wavparse/gstwavparse.c b/gst/wavparse/gstwavparse.c
index 603a7d03..cc9d35eb 100644
--- a/gst/wavparse/gstwavparse.c
+++ b/gst/wavparse/gstwavparse.c
@@ -2365,6 +2365,7 @@ gst_wavparse_loop (GstPad * pad)
{
GstFlowReturn ret;
GstWavParse *wav = GST_WAVPARSE (GST_PAD_PARENT (pad));
+ GstEvent *event;
gchar *stream_id;
GST_LOG_OBJECT (wav, "process data");
@@ -2377,7 +2378,9 @@ gst_wavparse_loop (GstPad * pad)
stream_id =
gst_pad_create_stream_id (wav->srcpad, GST_ELEMENT_CAST (wav), NULL);
- gst_pad_push_event (wav->srcpad, gst_event_new_stream_start (stream_id));
+ event = gst_event_new_stream_start (stream_id);
+ gst_event_set_group_id (event, gst_util_group_id_next ());
+ gst_pad_push_event (wav->srcpad, event);
g_free (stream_id);
wav->state = GST_WAVPARSE_HEADER;
diff --git a/po/af.gmo b/po/af.gmo
index c8f874f6..09ab0f2e 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index 9f435c25..5464c888 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.7.6\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2004-03-18 14:16+0200\n"
"Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
"Language-Team: Afrikaans <i18n@af.org.za>\n"
diff --git a/po/az.gmo b/po/az.gmo
index 758ba66e..1626220e 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index bf3d0b19..b41a123a 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-0.8.0\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2004-03-19 18:29+0200\n"
"Last-Translator: Metin Amiroff <metin@karegen.com>\n"
"Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
diff --git a/po/bg.gmo b/po/bg.gmo
index 9c541f59..eca7d398 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index f457f990..b8975b30 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-04-26 22:35+0300\n"
"Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
diff --git a/po/ca.gmo b/po/ca.gmo
index fca0bad0..9296a47c 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 015c2ae8..234d398b 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2012-01-01 14:19+0100\n"
"Last-Translator: Gil Forcada <gforcada@gnome.org>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
diff --git a/po/cs.gmo b/po/cs.gmo
index 25dacda0..3c098543 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 0914d71c..43fc14ed 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-12 23:07+0100\n"
"Last-Translator: Petr Kovar <pknbe@volny.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
diff --git a/po/da.gmo b/po/da.gmo
index d3508f5a..2a5e942e 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index 20279084..760c1cd5 100644
--- a/po/da.po
+++ b/po/da.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-07 23:54+0200\n"
"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
diff --git a/po/de.gmo b/po/de.gmo
index 92c5642c..1d50b3e4 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index fa77af83..85781021 100644
--- a/po/de.po
+++ b/po/de.po
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-21 22:36+0100\n"
"Last-Translator: Christian Kirbach <christian.kirbach@googlemail.com>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
diff --git a/po/el.gmo b/po/el.gmo
index 7da95be7..400b1653 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index 0ce750e8..1bb7a0b8 100644
--- a/po/el.po
+++ b/po/el.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.25.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-10-27 12:16+0200\n"
"Last-Translator: Michael Kotsarinis <mk73628@gmail.com>\n"
"Language-Team: Greek <team@lists.gnome.gr>\n"
diff --git a/po/en_GB.gmo b/po/en_GB.gmo
index f6436302..49d73c7b 100644
--- a/po/en_GB.gmo
+++ b/po/en_GB.gmo
Binary files differ
diff --git a/po/en_GB.po b/po/en_GB.po
index 03a513af..985b8293 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.8.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2004-04-26 10:41-0400\n"
"Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
"Language-Team: English (British) <en_gb@li.org>\n"
diff --git a/po/eo.gmo b/po/eo.gmo
index 0c54fa6f..72c31b14 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index 32c0067c..a655d5eb 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-06-04 21:48+0100\n"
"Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
diff --git a/po/es.gmo b/po/es.gmo
index 6cea3468..edf50639 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index f88d231f..1f753d6f 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-02-12 18:30+0100\n"
"Last-Translator: Jorge González González <aloriel@gmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"
diff --git a/po/eu.gmo b/po/eu.gmo
index 2ca5f8b5..87e4aa08 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index 0b1ac455..efcb3439 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.18.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-03-25 12:37+0100\n"
"Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
"Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
diff --git a/po/fi.gmo b/po/fi.gmo
index 417050c0..4a4cbd32 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index 2076b16e..e57bf764 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.25.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-11-17 23:03+0200\n"
"Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
diff --git a/po/fr.gmo b/po/fr.gmo
index 2c7cadfc..24d255f5 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index 5e8de841..d3f0a2d1 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-04-28 09:22+0200\n"
"Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
"Language-Team: French <traduc@traduc.org>\n"
diff --git a/po/gl.gmo b/po/gl.gmo
index 535d7748..e529f318 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index c555201d..cb98a62f 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-09 21:20+0100\n"
"Last-Translator: Fran Diéguez <frandieguez@ubuntu.com>\n"
"Language-Team: Galician <proxecto@trasno.net>\n"
diff --git a/po/gst-plugins-good-1.0.pot b/po/gst-plugins-good-1.0.pot
index baa67e4b..a78399e2 100644
--- a/po/gst-plugins-good-1.0.pot
+++ b/po/gst-plugins-good-1.0.pot
@@ -5,9 +5,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-good 1.1.2\n"
+"Project-Id-Version: gst-plugins-good 1.1.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -20,7 +20,10 @@ msgstr ""
msgid "Jack server not found"
msgstr ""
-#: ext/jpeg/gstjpegdec.c:251
+#: ext/jpeg/gstjpegdec.c:922 ext/jpeg/gstjpegdec.c:1170
+#: ext/jpeg/gstjpegdec.c:1182 ext/jpeg/gstjpegdec.c:1211
+#: ext/jpeg/gstjpegdec.c:1220 ext/jpeg/gstjpegdec.c:1229
+#: ext/jpeg/gstjpegdec.c:1237
msgid "Failed to decode JPEG image"
msgstr ""
@@ -42,28 +45,28 @@ msgstr ""
msgid "Server does not support seeking."
msgstr ""
-#: ext/soup/gstsouphttpsrc.c:1119
+#: ext/soup/gstsouphttpsrc.c:1128
msgid "Could not resolve server name."
msgstr ""
-#: ext/soup/gstsouphttpsrc.c:1125
+#: ext/soup/gstsouphttpsrc.c:1134
msgid "Could not establish connection to server."
msgstr ""
-#: ext/soup/gstsouphttpsrc.c:1130
+#: ext/soup/gstsouphttpsrc.c:1139
msgid "Secure connection setup failed."
msgstr ""
-#: ext/soup/gstsouphttpsrc.c:1135
+#: ext/soup/gstsouphttpsrc.c:1144
msgid ""
"A network error occured, or the server closed the connection unexpectedly."
msgstr ""
-#: ext/soup/gstsouphttpsrc.c:1141
+#: ext/soup/gstsouphttpsrc.c:1150
msgid "Server sent bad data."
msgstr ""
-#: gst/avi/gstavidemux.c:5311
+#: gst/avi/gstavidemux.c:5372
msgid "Internal data stream error."
msgstr ""
@@ -71,58 +74,58 @@ msgstr ""
msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr ""
-#: gst/isomp4/qtdemux.c:549 gst/isomp4/qtdemux.c:553
+#: gst/isomp4/qtdemux.c:559 gst/isomp4/qtdemux.c:563
msgid "This file contains no playable streams."
msgstr ""
-#: gst/isomp4/qtdemux.c:619 gst/isomp4/qtdemux.c:4519
-#: gst/isomp4/qtdemux.c:4585 gst/isomp4/qtdemux.c:4770
+#: gst/isomp4/qtdemux.c:609 gst/isomp4/qtdemux.c:4567
+#: gst/isomp4/qtdemux.c:4633 gst/isomp4/qtdemux.c:4818
msgid "This file is invalid and cannot be played."
msgstr ""
-#: gst/isomp4/qtdemux.c:2218
+#: gst/isomp4/qtdemux.c:2251
msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr ""
-#: gst/isomp4/qtdemux.c:2781 gst/isomp4/qtdemux.c:2857
-#: gst/isomp4/qtdemux.c:2900 gst/isomp4/qtdemux.c:5391
-#: gst/isomp4/qtdemux.c:5398 gst/isomp4/qtdemux.c:6077
-#: gst/isomp4/qtdemux.c:6506 gst/isomp4/qtdemux.c:6513
-#: gst/isomp4/qtdemux.c:8138
+#: gst/isomp4/qtdemux.c:2814 gst/isomp4/qtdemux.c:2890
+#: gst/isomp4/qtdemux.c:2933 gst/isomp4/qtdemux.c:5452
+#: gst/isomp4/qtdemux.c:5459 gst/isomp4/qtdemux.c:6101
+#: gst/isomp4/qtdemux.c:6530 gst/isomp4/qtdemux.c:6537
+#: gst/isomp4/qtdemux.c:8340
msgid "This file is corrupt and cannot be played."
msgstr ""
-#: gst/isomp4/qtdemux.c:2991
+#: gst/isomp4/qtdemux.c:3024
msgid "Invalid atom size."
msgstr ""
-#: gst/isomp4/qtdemux.c:3059
+#: gst/isomp4/qtdemux.c:3092
msgid "This file is incomplete and cannot be played."
msgstr ""
-#: gst/isomp4/qtdemux.c:5622
+#: gst/isomp4/qtdemux.c:7193
msgid "The video in this file might not play correctly."
msgstr ""
-#: gst/isomp4/qtdemux.c:8175
+#: gst/isomp4/qtdemux.c:8377
#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr ""
-#: gst/rtsp/gstrtspsrc.c:5721
+#: gst/rtsp/gstrtspsrc.c:5730
msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
-#: gst/rtsp/gstrtspsrc.c:5726
+#: gst/rtsp/gstrtspsrc.c:5735
msgid ""
"No supported stream was found. You might need to allow more transport "
"protocols or may otherwise be missing the right GStreamer RTSP extension "
"plugin."
msgstr ""
-#: gst/wavparse/gstwavparse.c:2454
+#: gst/wavparse/gstwavparse.c:2457
msgid "Internal data flow error."
msgstr ""
diff --git a/po/hu.gmo b/po/hu.gmo
index 91f9fa33..a520642e 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index b8663e29..54c42121 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.25.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-11-04 01:21+0100\n"
"Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n"
"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
diff --git a/po/id.gmo b/po/id.gmo
index 30bb87d7..f8a58b08 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index 5bc0c454..ffa71766 100644
--- a/po/id.po
+++ b/po/id.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-02-26 18:09+0700\n"
"Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
diff --git a/po/it.gmo b/po/it.gmo
index af6eced5..339f1b56 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index 99661152..53637f5d 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.25.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-10-25 10:11+0200\n"
"Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
diff --git a/po/ja.gmo b/po/ja.gmo
index 6083abbe..73c88948 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 431ea881..645042c5 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-08-28 23:59+0900\n"
"Last-Translator: Takeshi Hamasaki <hmatrjp@users.sourceforge.jp>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
diff --git a/po/lt.gmo b/po/lt.gmo
index ac391807..7445599a 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index cbd4cbe0..e01561e0 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-07-16 19:34+0300\n"
"Last-Translator: Žygimantas Beručka <uid0@akl.lt>\n"
"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
diff --git a/po/lv.gmo b/po/lv.gmo
index 24bba878..a38cd03e 100644
--- a/po/lv.gmo
+++ b/po/lv.gmo
Binary files differ
diff --git a/po/lv.po b/po/lv.po
index 621a3323..abcfd0fe 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-09-02 11:23-0000\n"
"Last-Translator: Rihards Priedītis <rprieditis@gmail.com>\n"
"Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"
diff --git a/po/mt.gmo b/po/mt.gmo
index 3f248aa6..c6559b2c 100644
--- a/po/mt.gmo
+++ b/po/mt.gmo
Binary files differ
diff --git a/po/mt.po b/po/mt.po
index 604706be..c1130029 100644
--- a/po/mt.po
+++ b/po/mt.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.10.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2008-10-26 19:09+0100\n"
"Last-Translator: Michel Bugeja <michelbugeja@rabatmalta.com>\n"
"Language-Team: Maltese <translation-team-mt@lists.sourceforge.net>\n"
diff --git a/po/nb.gmo b/po/nb.gmo
index baebcba2..be6a030f 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index d86fdd11..282c6513 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.25.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-10-24 21:53+0200\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
diff --git a/po/nl.gmo b/po/nl.gmo
index 524d3285..549e0dd3 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index cb9d2393..594c92b4 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-04-27 00:05+0200\n"
"Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
diff --git a/po/or.gmo b/po/or.gmo
index e8246757..faab827f 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/or.po b/po/or.po
index 673ec9f9..5e163f0d 100644
--- a/po/or.po
+++ b/po/or.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-0.8.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2004-09-27 13:32+0530\n"
"Last-Translator: Gora Mohanty <gora_mohanty@yahoo.co.in>\n"
"Language-Team: Oriya <gora_mohanty@yahoo.co.in>\n"
diff --git a/po/pl.gmo b/po/pl.gmo
index d44cc0c6..da9e8464 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index f9abe161..fb5a222f 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-07 21:53+0100\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index 9fb0bdf9..a8c5d2b9 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 3beabc4e..b7c60327 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-08 01:28-0300\n"
"Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
diff --git a/po/ro.gmo b/po/ro.gmo
index d58785af..5b065db8 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index 8dd3fae6..50cae5a5 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-08-16 03:22+0300\n"
"Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
diff --git a/po/ru.gmo b/po/ru.gmo
index f980b178..b0989d08 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index df3351ba..a45cb728 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-04-26 21:13+0400\n"
"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
"Language-Team: Russian <gnu@mx.ru>\n"
diff --git a/po/sk.gmo b/po/sk.gmo
index 3c6753c4..c8696e91 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index f94cf974..9fea46f6 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.25.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-11-08 15:48+0100\n"
"Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
diff --git a/po/sl.gmo b/po/sl.gmo
index 5deb5d3b..93eb5f67 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index b827d528..4b5a65c9 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-03-12 18:35+0100\n"
"Last-Translator: Klemen Košir <klemen.kosir@gmx.com>\n"
"Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
diff --git a/po/sq.gmo b/po/sq.gmo
index aab3fa63..8d9e9814 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index ff3b97c3..c604493d 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.8.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2004-08-07 20:29+0200\n"
"Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
"Language-Team: Albanian <begraj@hotmail.com>\n"
diff --git a/po/sr.gmo b/po/sr.gmo
index 1dbaef9a..ea83db81 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index f5222b29..3b1f36a2 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-12-04 16:44+0200\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <gnu@prevod.org>\n"
diff --git a/po/sv.gmo b/po/sv.gmo
index a35d49d1..fd3d76c5 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index 39a0bfc5..3d5f2621 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-09 19:36+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index ceb5cc79..38313f1b 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index 97fc7cc7..84de532e 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-01-08 00:03+0200\n"
"Last-Translator: Server Acim <serveracim@gmail.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
diff --git a/po/uk.gmo b/po/uk.gmo
index 717d2b3f..d93194ef 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index 92d1d7bb..bea06c12 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2011-05-01 11:55+0300\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
diff --git a/po/vi.gmo b/po/vi.gmo
index f350bb8e..98f0d4a0 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index d847c83a..4f64a375 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2010-10-03 18:48+1030\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index ac61dc6c..30440795 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 5c1c38c3..50e25238 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.16.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2009-11-13 22:20+0800\n"
"Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
diff --git a/po/zh_HK.gmo b/po/zh_HK.gmo
index efe1efe2..f48455dd 100644
--- a/po/zh_HK.gmo
+++ b/po/zh_HK.gmo
Binary files differ
diff --git a/po/zh_HK.po b/po/zh_HK.po
index afb4bbb5..91e7021d 100644
--- a/po/zh_HK.po
+++ b/po/zh_HK.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.2 0.10.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2006-08-29 01:08+0800\n"
"Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
"Language-Team: Chinese (Hong Kong) <community@linuxhall.org>\n"
diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo
index 7efd5a57..fb3bf5b7 100644
--- a/po/zh_TW.gmo
+++ b/po/zh_TW.gmo
Binary files differ
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 4a3a38fa..c1f8fe9d 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.2 0.10.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-07-11 15:56+0200\n"
+"POT-Creation-Date: 2013-07-29 13:41+0200\n"
"PO-Revision-Date: 2006-08-29 01:08+0800\n"
"Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
diff --git a/sys/osxaudio/gstosxaudiosink.c b/sys/osxaudio/gstosxaudiosink.c
index 053a8713..8f01a3ba 100644
--- a/sys/osxaudio/gstosxaudiosink.c
+++ b/sys/osxaudio/gstosxaudiosink.c
@@ -315,6 +315,9 @@ gst_osx_audio_sink_getcaps (GstBaseSink * base, GstCaps * filter)
caps_string = gst_caps_to_string (sink->cached_caps);
GST_DEBUG_OBJECT (sink, "using cached caps: %s", caps_string);
g_free (caps_string);
+ if (filter)
+ return gst_caps_intersect_full (sink->cached_caps, filter,
+ GST_CAPS_INTERSECT_FIRST);
return gst_caps_ref (sink->cached_caps);
}
diff --git a/sys/osxvideo/osxvideosink.m b/sys/osxvideo/osxvideosink.m
index d2555b95..89e98076 100644
--- a/sys/osxvideo/osxvideosink.m
+++ b/sys/osxvideo/osxvideosink.m
@@ -486,6 +486,9 @@ gst_osx_video_sink_set_property (GObject * object, guint prop_id,
switch (prop_id) {
case ARG_EMBED:
osxvideosink->embed = g_value_get_boolean(value);
+ g_warning ("The \"embed\" property of osxvideosink is deprecated and "
+ "will be removed in the near future. Use the GstVideoOverlay "
+ "instead.");
break;
case ARG_FORCE_PAR:
osxvideosink->keep_par = g_value_get_boolean(value);
diff --git a/tests/check/elements/videocrop.c b/tests/check/elements/videocrop.c
index d7bfdfad..a7bb46d2 100644
--- a/tests/check/elements/videocrop.c
+++ b/tests/check/elements/videocrop.c
@@ -265,7 +265,8 @@ check_1x1_buffer (GstBuffer * buf, GstCaps * caps)
/* the exact values we check for come from videotestsrc */
static const guint yuv_values[] = { 81, 90, 240, 255 };
static const guint rgb_values[] = { 0xff, 0, 0, 255 };
- static const guint gray_values[] = { 0x51 };
+ static const guint gray8_values[] = { 0x51 };
+ static const guint gray16_values[] = { 0x5151 };
const guint *values;
guint i;
const GstVideoFormatInfo *finfo;
@@ -281,7 +282,10 @@ check_1x1_buffer (GstBuffer * buf, GstCaps * caps)
if (GST_VIDEO_INFO_IS_YUV (&info))
values = yuv_values;
else if (GST_VIDEO_INFO_IS_GRAY (&info))
- values = gray_values;
+ if (GST_VIDEO_FORMAT_INFO_BITS (finfo) == 8)
+ values = gray8_values;
+ else
+ values = gray16_values;
else
values = rgb_values;
@@ -316,7 +320,11 @@ check_1x1_buffer (GstBuffer * buf, GstCaps * caps)
val = val & ((1 << depth) - 1);
GST_DEBUG ("val %08x %d : %d", pixels, i, val);
- fail_unless_equals_int (val, values[i] >> (8 - depth));
+ if (depth <= 8) {
+ fail_unless_equals_int (val, values[i] >> (8 - depth));
+ } else {
+ fail_unless_equals_int (val, values[i] >> (16 - depth));
+ }
} else {
}
}
diff --git a/tests/examples/spectrum/spectrum-example.c b/tests/examples/spectrum/spectrum-example.c
index 6ccb5012..1052b4e8 100644
--- a/tests/examples/spectrum/spectrum-example.c
+++ b/tests/examples/spectrum/spectrum-example.c
@@ -88,7 +88,7 @@ main (int argc, char *argv[])
spectrum = gst_element_factory_make ("spectrum", "spectrum");
g_object_set (G_OBJECT (spectrum), "bands", spect_bands, "threshold", -80,
- "message", TRUE, "message-phase", TRUE, NULL);
+ "post-messages", TRUE, "message-phase", TRUE, NULL);
sink = gst_element_factory_make ("fakesink", "sink");
g_object_set (G_OBJECT (sink), "sync", TRUE, NULL);
diff --git a/tests/files/id3-407349-1.tag b/tests/files/id3-407349-1.tag
index 47a27634..05cd4f69 100644
--- a/tests/files/id3-407349-1.tag
+++ b/tests/files/id3-407349-1.tag
Binary files differ
diff --git a/tests/files/id3-407349-2.tag b/tests/files/id3-407349-2.tag
index d44a9a1d..b16a42a3 100644
--- a/tests/files/id3-407349-2.tag
+++ b/tests/files/id3-407349-2.tag
Binary files differ
diff --git a/tests/files/id3-447000-wcop.tag b/tests/files/id3-447000-wcop.tag
index 0f81c260..27109cea 100644
--- a/tests/files/id3-447000-wcop.tag
+++ b/tests/files/id3-447000-wcop.tag
Binary files differ
diff --git a/win32/common/config.h b/win32/common/config.h
index ebb77cc7..ac0cb0d8 100644
--- a/win32/common/config.h
+++ b/win32/common/config.h
@@ -58,7 +58,7 @@
#define GST_PACKAGE_ORIGIN "Unknown package origin"
/* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2013-07-11"
+#define GST_PACKAGE_RELEASE_DATETIME "2013-07-29"
/* Define if static plugins should be built */
#undef GST_PLUGIN_BUILD_STATIC
@@ -388,7 +388,7 @@
#define PACKAGE_NAME "GStreamer Good Plug-ins"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer Good Plug-ins 1.1.2"
+#define PACKAGE_STRING "GStreamer Good Plug-ins 1.1.3"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "gst-plugins-good"
@@ -397,7 +397,7 @@
#undef PACKAGE_URL
/* Define to the version of this package. */
-#define PACKAGE_VERSION "1.1.2"
+#define PACKAGE_VERSION "1.1.3"
/* directory where plugins are located */
#ifdef _DEBUG
@@ -431,7 +431,7 @@
#undef TARGET_CPU
/* Version number of package */
-#define VERSION "1.1.2"
+#define VERSION "1.1.3"
/* old wavpack API */
#undef WAVPACK_OLD_API