Wim Taymans [Sun, 16 Oct 2011 13:26:38 +0000 (15:26 +0200)]
Merge branch 'master' into 0.11
Conflicts:
gst/rtp/gstrtpvrawdepay.c
Arun Raghavan [Fri, 14 Oct 2011 05:26:16 +0000 (10:56 +0530)]
videomixer2: Fix a leak
Buffers weren't being unref'ed in one case inside, causing memory usage
to blow up.
Marc Leeman [Fri, 14 Oct 2011 07:10:01 +0000 (09:10 +0200)]
set colour masks for video/x-raw-rgb in rtpvrawdepay
Thiago Santos [Thu, 13 Oct 2011 04:05:13 +0000 (01:05 -0300)]
configure: re-enable videocrop plugin
Already ported to 0.11
Thiago Santos [Thu, 13 Oct 2011 04:05:04 +0000 (01:05 -0300)]
aspectratiocrop: Port to 0.11
Thiago Santos [Thu, 13 Oct 2011 03:39:28 +0000 (00:39 -0300)]
videocrop: Port to 0.11
Thiago Santos [Wed, 12 Oct 2011 20:43:47 +0000 (17:43 -0300)]
tests: aspectratiocrop: Port to 0.11
Thiago Santos [Wed, 12 Oct 2011 11:24:28 +0000 (08:24 -0300)]
tests: alphacolor: Port to 0.11
Edward Hervey [Thu, 13 Oct 2011 15:12:23 +0000 (17:12 +0200)]
flacenc: Properly register type
It's a subclass of GstAudioEncoder and not of GstElement
Arun Raghavan [Thu, 13 Oct 2011 11:29:50 +0000 (16:59 +0530)]
videomixer2: Fix incorrect gst_buffer_replace() call
This got exposed when gst_buffer_replace() was changed from a macro to a
function.
Edward Hervey [Thu, 13 Oct 2011 07:34:04 +0000 (09:34 +0200)]
rtpssrcdemux: Fix wrong usage of gst_iterator_filter
It takes a GValue* as the user_data.
And don't forget to unref the demuxer before returning.
Wim Taymans [Thu, 13 Oct 2011 07:02:47 +0000 (09:02 +0200)]
fix compile
Wim Taymans [Thu, 13 Oct 2011 06:58:06 +0000 (08:58 +0200)]
Merge branch 'master' into 0.11
Conflicts:
ext/jpeg/gstjpegdec.c
gst/rtp/gstrtpvrawpay.c
Thiago Santos [Wed, 12 Oct 2011 11:09:20 +0000 (08:09 -0300)]
tests: cmmlenc: Port to 0.11
Thiago Santos [Wed, 12 Oct 2011 11:02:08 +0000 (08:02 -0300)]
tests: cmmldec: Port to 0.11
Thiago Santos [Wed, 12 Oct 2011 10:29:30 +0000 (07:29 -0300)]
pulseaudiosink: Use new GstIterator API correctly
GstIterator now uses GValue, use it correctly.
Edward Hervey [Wed, 12 Oct 2011 09:26:50 +0000 (11:26 +0200)]
rtpvrawpay: Only use 24 LSB for depth=24 RGB caps
... and indent the masks for clarity
René Stadler [Tue, 11 Oct 2011 12:58:43 +0000 (14:58 +0200)]
matroskamux: fix segment handling, so we actually use running time
gst_matroska_mux_best_pad adjusts the buffer timestamp to running time using
the segment stored in the pad's collect data. However, the event handler didn't
pass the newsegment event on to collectpads' handler, so this segment was never
updated at all.
Re-fixes bug #432612.
Sjoerd Simons [Mon, 10 Oct 2011 18:01:23 +0000 (19:01 +0100)]
gstrtpg722pay: Compensate for clockrate vs. samplerate difference
The RTP clock-rate used for G722 is 8000, even though the samplerate is
16000. Compensate for this by pretending G722 has 8 bits per sample
instead of the 4 bits as if it were a codec that ran at half the speed,
but with twice the number of bits. Fixes #661376
Sjoerd Simons [Tue, 27 Sep 2011 18:25:53 +0000 (19:25 +0100)]
jpegdec: Implement upstream negotiation
Add upstream negotiation for jpegdec. Fixes #660275
Tim-Philipp Müller [Mon, 10 Oct 2011 18:02:58 +0000 (19:02 +0100)]
matroska-demux: don't leak audio codec_data buffer
Edward Hervey [Mon, 10 Oct 2011 15:41:10 +0000 (17:41 +0200)]
alpha: Don't use start() vmethod
The only thing we're doing is initializing parameters ...
* which won't work because we don't have upstream/downstream caps
* which will be initialized when ::set_caps() is called
Wim Taymans [Mon, 10 Oct 2011 12:08:29 +0000 (14:08 +0200)]
Merge branch 'master' into 0.11
Wim Taymans [Mon, 10 Oct 2011 11:22:12 +0000 (13:22 +0200)]
id3demux: port to 0.11
Stefan Sauer [Mon, 10 Oct 2011 11:20:04 +0000 (13:20 +0200)]
tests: add missing PLUGIN_ASE_LIBS to LDADD
Wim Taymans [Mon, 10 Oct 2011 10:54:22 +0000 (12:54 +0200)]
icydemux: port to 0.11
Wim Taymans [Mon, 10 Oct 2011 10:27:06 +0000 (12:27 +0200)]
annodex: port to 0.11
Wim Taymans [Mon, 10 Oct 2011 09:48:20 +0000 (11:48 +0200)]
Merge branch 'master' into 0.11
Conflicts:
ext/speex/gstspeexenc.c
Thiago Santos [Mon, 10 Oct 2011 03:18:56 +0000 (00:18 -0300)]
pulse: port pulseutil to 0.11
Thiago Santos [Mon, 10 Oct 2011 00:17:24 +0000 (21:17 -0300)]
pulseaudiosink: port to 0.11
Thiago Santos [Sun, 9 Oct 2011 21:58:29 +0000 (18:58 -0300)]
pulsesink: Fixing getcaps function
Update getcaps function to 0.11 API
Mark Nauwelaerts [Sun, 9 Oct 2011 19:31:27 +0000 (21:31 +0200)]
speexenc: only push header buffers following initial events
Tim-Philipp Müller [Sun, 9 Oct 2011 15:29:05 +0000 (16:29 +0100)]
Merge remote-tracking branch 'origin/master' into 0.11
Tim-Philipp Müller [Sun, 9 Oct 2011 15:24:36 +0000 (16:24 +0100)]
qtdemux: update for __gst_debug_min name change
Thiago Santos [Sun, 9 Oct 2011 14:18:18 +0000 (11:18 -0300)]
qtmux: Fix memory leak on atoms recovery function
Remember to free the ftyp data after writing it to a file.
Fixes #660969
Wim Taymans [Thu, 6 Oct 2011 10:26:33 +0000 (12:26 +0200)]
qtmux: report new bits
Wim Taymans [Thu, 6 Oct 2011 10:23:39 +0000 (12:23 +0200)]
Merge branch 'master' into 0.11
Conflicts:
ext/speex/gstspeexdec.c
ext/speex/gstspeexenc.c
gst/isomp4/atoms.c
gst/isomp4/gstqtmux.c
Vincent Penquerc'h [Wed, 21 Sep 2011 17:45:42 +0000 (18:45 +0100)]
matroskademux: improve segment handling with non-zero starting timestamp
... as well as related items, such as seeking and position reporting.
https://bugzilla.gnome.org/show_bug.cgi?id=659808
Stas Sergeev [Thu, 29 Sep 2011 14:41:53 +0000 (18:41 +0400)]
v4l2, ximagesrc: fix some printf format compiler warnings
https://bugzilla.gnome.org/show_bug.cgi?id=660150
Thiago Santos [Fri, 30 Sep 2011 15:42:22 +0000 (12:42 -0300)]
tests: qtmux: Refactor bitrate check test
Refactor bitrate check test to accomodate multiple tests
for bitrate
Thiago Santos [Fri, 30 Sep 2011 16:02:31 +0000 (13:02 -0300)]
qtmux: update esds atom under wave atom for aac bitrates
AAC in mov format puts an ESDS atom inside of a WAVE atom in
STSD atom, we need to update the bitrate on this ESDS. This patch
fixes it.
Thiago Santos [Fri, 30 Sep 2011 15:41:52 +0000 (12:41 -0300)]
qtmux: Also update btrt atom
When rewriting bitrates, also update the btrt atom under stsd
Thiago Santos [Fri, 30 Sep 2011 13:55:53 +0000 (10:55 -0300)]
tests: qtmux: add tests for bitrate average calculation
Adds tests to make sure qtmux/mp4mux sets average bitrate
correctly
Thiago Santos [Wed, 28 Sep 2011 14:41:49 +0000 (11:41 -0300)]
qtmux: Calculate average bitrate for streams
Calculate and use average bitrate for streams when no
bitrate tag was received
Thiago Santos [Wed, 28 Sep 2011 13:41:14 +0000 (10:41 -0300)]
qtmux: Avoid a buffer metadata copy if possible
If first_ts is 0 there is no need to subtract, so we might
skip some copying to make the buffer metadata writable.
Tim-Philipp Müller [Thu, 29 Sep 2011 22:21:46 +0000 (23:21 +0100)]
speexenc: initialise variable before adding to it
Mark Nauwelaerts [Thu, 29 Sep 2011 15:21:22 +0000 (17:21 +0200)]
speexdec: port to audiodecoder
Mark Nauwelaerts [Thu, 29 Sep 2011 14:33:01 +0000 (16:33 +0200)]
speexenc: clean up some unused remnants
Mark Nauwelaerts [Thu, 29 Sep 2011 15:32:23 +0000 (17:32 +0200)]
speexenc: port to audioencoder
Tim-Philipp Müller [Wed, 28 Sep 2011 18:10:27 +0000 (19:10 +0100)]
flacdec: get rid of granulepos handling
Leave that to the parser or demuxer. There's still some
code for operating in DEFAULT (samples) format, but that
will be removed later.
Tim-Philipp Müller [Wed, 28 Sep 2011 17:32:00 +0000 (18:32 +0100)]
flacdec: get rid of pull-mode support and focus on being a decoder
Leave all the other stuff to flacparse.
Tim-Philipp Müller [Wed, 28 Sep 2011 16:29:08 +0000 (17:29 +0100)]
flac, jpeg: fix compiler warning
Wim Taymans [Wed, 28 Sep 2011 15:40:01 +0000 (17:40 +0200)]
flac: port to 0.11
Wim Taymans [Wed, 28 Sep 2011 15:39:12 +0000 (17:39 +0200)]
Merge branch 'master' into 0.11
Conflicts:
ext/flac/gstflacenc.c
Wim Taymans [Wed, 28 Sep 2011 14:18:54 +0000 (16:18 +0200)]
Merge branch 'master' into 0.11
Mark Nauwelaerts [Wed, 28 Sep 2011 14:09:58 +0000 (16:09 +0200)]
flacenc: port to audioencoder
Vincent Penquerc'h [Tue, 27 Sep 2011 14:59:24 +0000 (15:59 +0100)]
matroskademux: ensure minimal alignment for audio/x-raw-* buffers
Since matroskademux will attempt to push unaligned buffers,
downstream might have trouble with those, especially if downstream
uses ORC, such as audioconvert.
Ensure we push buffers aligned to the basic type at least for
those raw buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=659798
Wim Taymans [Wed, 28 Sep 2011 10:44:59 +0000 (12:44 +0200)]
Merge branch 'master' into 0.11
Conflicts:
common
ext/pulse/pulsesink.c
ext/soup/gstsouphttpclientsink.c
gst/audioparsers/gstaacparse.c
gst/audioparsers/gstac3parse.c
gst/rtp/gstrtph264depay.c
gst/rtpmanager/gstrtpjitterbuffer.c
gst/rtpmanager/rtpjitterbuffer.c
gst/rtsp/gstrtspsrc.c
sys/ximage/gstximagesrc.c
Raimo Järvi [Tue, 27 Sep 2011 21:10:09 +0000 (00:10 +0300)]
goom2k1: Fix compiler warnings on 64 bit mingw-w64
Fixes bug #660294.
Tim-Philipp Müller [Sun, 25 Sep 2011 14:13:39 +0000 (15:13 +0100)]
soup: rename souphttpsink to souphttpclientsink
To avoid confusion, and because we might want a server
sink at some point too.
https://bugzilla.gnome.org/show_bug.cgi?id=659947
Tim-Philipp Müller [Fri, 23 Sep 2011 15:39:46 +0000 (16:39 +0100)]
souphttpsink: don't create unused second sink pad object
The base class will create the sink pad.
Julien Isorce [Fri, 23 Sep 2011 13:36:36 +0000 (15:36 +0200)]
ac3parse: correctly check for ac3/e-ac3 switch
https://bugzilla.gnome.org/show_bug.cgi?id=659943
Edward Hervey [Wed, 21 Sep 2011 12:01:20 +0000 (14:01 +0200)]
Update common to 0.11 branch
Mark Nauwelaerts [Tue, 20 Sep 2011 11:38:53 +0000 (13:38 +0200)]
rtph264depay: improve downstream flow return feedback to upstream
... although basertpdepay does not really make it easy/possible to do so
all the way.
Vincent Penquerc'h [Tue, 20 Sep 2011 11:11:47 +0000 (12:11 +0100)]
ximagesrc: add xid and xname properties to allow capturing a particular window
A particular window may be selected using the new xid (X-Window
XID, eg a pointer) and xname (window title) properties. If both
are specified, the XID is used in preference, falling back to
xname if not found.
Default (if none of xid and xname are specified, or if no such
window is found) is to capture the root window.
https://bugzilla.gnome.org/show_bug.cgi?id=546932
Tim-Philipp Müller [Tue, 2 Aug 2011 16:39:44 +0000 (17:39 +0100)]
tests: add unit test to make sure encodebin picks mp4mux for variant=iso
https://bugzilla.gnome.org/show_bug.cgi?id=651496
Ha Nguyen [Mon, 19 Sep 2011 10:15:11 +0000 (12:15 +0200)]
rtpbin: Fix a leaked clock for each buffering message
Fixes bug #659237.
Mark Nauwelaerts [Mon, 19 Sep 2011 10:11:32 +0000 (12:11 +0200)]
qtdemux: parse embedded ID32 tags
Mark Nauwelaerts [Fri, 2 Sep 2011 11:41:41 +0000 (13:41 +0200)]
rtpsession: avoid source premature timing out
Use slightly adjusted sender interval to determine sender timeout rather than
our own sender side interval (which may have been forced small).
Mark Nauwelaerts [Thu, 25 Aug 2011 10:40:52 +0000 (12:40 +0200)]
rtpsession: avoid timing out source too quickly
... following a PAUSE/PLAY cycle, particularly applicable when operating
with a short RTCP interval (possibly forced so server-side).
Mark Nauwelaerts [Wed, 24 Aug 2011 12:37:52 +0000 (14:37 +0200)]
rtpjitterbuffer/rtpbin: relax dropping rtcp packets
... to at least having it trigger a/v synchronization, possibly without
using provided values which are still not considered sane
(as previously dropped).
Mark Nauwelaerts [Wed, 24 Aug 2011 12:34:23 +0000 (14:34 +0200)]
rtpjitterbuffer: some more reset when clearing pt map
... which in particular caters for some more reset following a possible
rtsp PLAY.
Mark Nauwelaerts [Sun, 21 Aug 2011 19:58:38 +0000 (21:58 +0200)]
rtspsrc: do not set elements to PLAYING when doing seek in PAUSED
Mark Nauwelaerts [Thu, 1 Sep 2011 12:47:48 +0000 (14:47 +0200)]
rtpjitterbuffer: only reset skew on gap if input ts available
Mark Nauwelaerts [Thu, 18 Aug 2011 12:12:21 +0000 (14:12 +0200)]
rtpjitterbuffer: check some more for possible rtp timestamp discontinuity
... when operating in non slave mode, and reset if detected.
This should avoid some (large) bogus outgoing timestamp due to jumps
in rtp time, as result of PAUSE/PLAY or seek or ...
Mark Nauwelaerts [Mon, 8 Aug 2011 10:48:50 +0000 (12:48 +0200)]
rtspsrc: switch to rtp time based syncing when guessed appropriate
Mark Nauwelaerts [Mon, 8 Aug 2011 10:15:20 +0000 (12:15 +0200)]
rtpbin: alternative inter-stream syncing methods
... at least if not syncing to NPT time:
* either sync using RTCP SR data (as currently)
* only perform the above once using initial RTCP SR packets
* discard RTCP and sync by equating provided stream's clock-base rtptime,
as provided by jitterbuffer (typically obtained from RTP-Info in RTSP).
Mark Nauwelaerts [Mon, 8 Aug 2011 10:11:24 +0000 (12:11 +0200)]
rtpjitterbuffer: also provide clock-base to sync signal
Mark Nauwelaerts [Mon, 8 Aug 2011 10:09:41 +0000 (12:09 +0200)]
rtpbin: allow configurable rtcp stream syncing interval
... rather than necessarily syncing at each RTCP SR.
Mark Nauwelaerts [Mon, 1 Aug 2011 06:35:01 +0000 (08:35 +0200)]
rtpsession: trigger reconsideration if rtcp interval set
Mark Nauwelaerts [Mon, 1 Aug 2011 06:32:24 +0000 (08:32 +0200)]
rtspsrc: configure rtcp interval if provided
... in PLAY response.
Lasse Laukkanen [Fri, 16 Sep 2011 13:53:22 +0000 (16:53 +0300)]
isomp4: Fix allowing zero duration tracks
https://bugzilla.gnome.org/show_bug.cgi?id=637486
Vincent Penquerc'h [Mon, 5 Sep 2011 09:11:18 +0000 (10:11 +0100)]
udpsrc: error out when no protocol is specified in the uri
It is certainly better than to crash.
https://bugzilla.gnome.org/show_bug.cgi?id=658178
Vincent Penquerc'h [Mon, 19 Sep 2011 07:37:58 +0000 (09:37 +0200)]
speexenc: do not use invalid buffer timestamps
Arun Raghavan [Tue, 29 Mar 2011 06:39:18 +0000 (12:09 +0530)]
pulse: New pulseaudiosink element to handle format changes
This introduces a new bin which wraps around pulsesink and depending on
the formats supported by the sink, plugs in/out a decodebin2 as
required. This allows users to switch sinks on the stream and adapts
accordingly (for example, you could watch a movie in passthrough mode on
your receiver which supports AC3 decode, then plug out and switch to a
non-digital profile to continue uninterrupted on analog output).
The bin is required because doing the same with playbin2/playsink will
require API changes that cannot be made in 0.10. With 0.11/1.0, we
should be able to ask for upstream caps renegotiation to deal with all
this.
https://bugzilla.gnome.org/show_bug.cgi?id=657179
Branko Subasic [Fri, 16 Sep 2011 13:03:23 +0000 (15:03 +0200)]
matroskademux: Avoid sending EOS when in paused state
Changed the ebml reader's gst_ebml_peek_id_length() function so
that it returns the actual reason for why the peek failed, instead
of (almost) always returning GST_FLOW_UNEXPECTED. This prevents
the pulling task from sending EOS when doing a flushing seek.
Vincent Penquerc'h [Thu, 15 Sep 2011 14:53:47 +0000 (15:53 +0100)]
matroskademux: fix stuttering A/V
Someone got had by implicit promotion to unsigned in ops with
a signed and an unsigned value.
https://bugzilla.gnome.org/show_bug.cgi?id=659153
Vincent Penquerc'h [Wed, 14 Sep 2011 15:37:12 +0000 (16:37 +0100)]
navseek: toggle pause/play on space bar
A useful thing to have.
https://bugzilla.gnome.org/show_bug.cgi?id=659065
David Svensson Fors [Wed, 14 Sep 2011 12:46:00 +0000 (14:46 +0200)]
matroskademux: configurable timestamp gap handling
matroskademux performs segment tricks to skip gaps in streams,
notably at start for non 0 based files. There may however be
cases when full presentation (including intermediate gaps) is
desired, so a property allows to configure as of which gap
to act (or not at all).
API: GstMatroskaDemux::max-gap-time
Fixes #659009.
Thiago Santos [Mon, 12 Sep 2011 12:21:47 +0000 (09:21 -0300)]
tests: flvmux: Fix flvmux's tests after fix for request pads handling
Now that flvmux doesn't release its request pads on PAUSED->READY the
test doesn't need to re-request them for every reuse test start.
Thiago Santos [Fri, 9 Sep 2011 12:12:56 +0000 (09:12 -0300)]
qtmux: Fix ctts generation for streams that don't start at 0 timestamps
Subtract the first timestamp of a stream from all input buffers to
get 0-based timestamps for creating a sane ctts table. Without this
patch the ctts could have larger values than needed, causing the
playback to have a delay at startup.
As the first timestamp is only found after a few buffers are queued
(due to possible reordered buffers), once we find the first timestamp
we subtract it from all buffers on the queue, from that point on,
all buffers have their timestamps subtract when they are collected.
https://bugzilla.gnome.org/show_bug.cgi?id=658659
Alessandro Decina [Mon, 12 Sep 2011 05:55:19 +0000 (07:55 +0200)]
flvmux: don't release request pads going PAUSED->READY
Don't release request pads but just reset them. This makes pipelines using
flvmux reusable.
Vincent Penquerc'h [Fri, 9 Sep 2011 11:35:50 +0000 (12:35 +0100)]
ac3parse: use bsid 9 and 10 to control sample rate
See http://matroska.org/technical/specs/codecid/index.html
The spec is silent about this though...
https://bugzilla.gnome.org/show_bug.cgi?id=658546
Mark Nauwelaerts [Wed, 7 Sep 2011 12:13:03 +0000 (14:13 +0200)]
rtspsrc: ensure some initial state variable setup
... which might otherwise be skipped if the PLAY command is issued before
the OPEN command had a chance to actually be acted upon.
Fixes #657376.
Mark Nauwelaerts [Thu, 8 Sep 2011 13:02:05 +0000 (15:02 +0200)]
matroskademux: tweak gap handling
... so as to avoid buffers before and after gap to have identical running time.
Guillaume Desmottes [Thu, 8 Sep 2011 11:28:24 +0000 (13:28 +0200)]
v4l2: use GST_RESOURCE_ERROR_BUSY if v4l2_ioctl fails with EBUSY
https://bugzilla.gnome.org/show_bug.cgi?id=658543
Thiago Santos [Wed, 7 Sep 2011 11:54:17 +0000 (08:54 -0300)]
qtmux: remove one G_UNLIKELY for user property
Using G_UNLIKELY on user properties isn't nice, specially when
that is the default option.
Andoni Morales Alastruey [Tue, 15 Mar 2011 10:03:53 +0000 (11:03 +0100)]
matroskamux: handle GstForceKeyUnit event
... by starting a new cluster after forwarding event.
Fixes #644154.
Sebastian Dröge [Wed, 7 Sep 2011 12:27:36 +0000 (14:27 +0200)]
cmml: Use complete cmml caps in the unit test
Sebastian Dröge [Wed, 7 Sep 2011 12:26:01 +0000 (14:26 +0200)]
qtmux: Use complete MPEG caps in the unit test