platform/upstream/gstreamer.git
9 years agortpjitterbuffer: Add "rtx-next-seqnum" property
Miguel París Díaz [Mon, 13 Apr 2015 09:20:40 +0000 (11:20 +0200)]
rtpjitterbuffer: Add "rtx-next-seqnum" property

If this is set to FALSE, rtpjitterbuffer will not request retransmissions for
future packets based on when they are estimated to arrive.

See also https://bugzilla.gnome.org/show_bug.cgi?id=748041

https://bugzilla.gnome.org/show_bug.cgi?id=739868

9 years agortxreceive: Put debug output for retransmission requests at the right place
Sebastian Dröge [Wed, 22 Apr 2015 17:29:34 +0000 (19:29 +0200)]
rtxreceive: Put debug output for retransmission requests at the right place

Before it was only ever printed once for every time a ssrc was associated with
a specific stream.

9 years agov4l2: don't add the same interlace mode twice
Wim Taymans [Wed, 22 Apr 2015 16:05:24 +0000 (18:05 +0200)]
v4l2: don't add the same interlace mode twice

Some drivers modify the interlace mode to progressive, no matter what
input you give them, make sure that we don't add the same interlace mode
twice.

9 years agoequalizer: fix dynamic changes on bands
Luis de Bethencourt [Tue, 21 Apr 2015 15:34:21 +0000 (16:34 +0100)]
equalizer: fix dynamic changes on bands

When we are in passthrough, the transform function doesn't run and if the
passthrough check is in this function it will never be deactivated. Fix this by
checking directly whenever a gain is changed.

Also set the passthrough to TRUE at init because the gains default to 0, so we
can passthrough until any gain property is changed.

https://bugzilla.gnome.org/show_bug.cgi?id=748068

9 years agoRemove INSTALL file
Sebastian Dröge [Wed, 22 Apr 2015 08:30:52 +0000 (10:30 +0200)]
Remove INSTALL file

autotools automatically generate this, and when using different versions
for autogen.sh there will always be changes to a file tracked by git.

9 years agoRemove LICENSE_readme
Sebastian Dröge [Wed, 22 Apr 2015 08:30:14 +0000 (10:30 +0200)]
Remove LICENSE_readme

It's completely outdated and just confusing, better if people are
forced to look at the actual code in question than trusting this file.

9 years agov4l2: cast unused return to void
Luis de Bethencourt [Tue, 21 Apr 2015 14:21:33 +0000 (15:21 +0100)]
v4l2: cast unused return to void

Quell unchecked return value defect by casting the return value to void and
making it explicit it is going to be ignored.

CID #206031

9 years agovp8dec: optimize vpx image to gstbuffer copy when strides match
Thiago Santos [Fri, 17 Apr 2015 16:08:02 +0000 (13:08 -0300)]
vp8dec: optimize vpx image to gstbuffer copy when strides match

Solving this FIXME. Copy the full plane when strides are the same

9 years agovp9dec: optimize vpx image to gstbuffer copy when strides match
Thiago Santos [Thu, 16 Apr 2015 18:11:05 +0000 (15:11 -0300)]
vp9dec: optimize vpx image to gstbuffer copy when strides match

Solving this FIXME. Copy the full plane when strides are the same

9 years agoac3parse: fix memory leak
Vincent Penquerc'h [Fri, 17 Apr 2015 12:32:54 +0000 (13:32 +0100)]
ac3parse: fix memory leak

9 years agoicydemux: Fix segfault if metadata-interval is 0
Alex O'Konski [Fri, 17 Apr 2015 06:51:46 +0000 (06:51 +0000)]
icydemux: Fix segfault if metadata-interval is 0

Prevents an extra unref of GstBuffer when passing a non-icy stream through
icydemux with metadata-interval set to 0.

Reproducible with:
gst-launch-1.0 filesrc location=~/testsong.mp3 ! \
'application/x-icy,metadata-interval=(int)0' ! icydemux ! decodebin ! wavenc ! \
filesink location=~/testsong.wav

https://bugzilla.gnome.org/show_bug.cgi?id=748024

9 years agoaudiofx: fix typo in example pipelines
Ravi Kiran K N [Fri, 17 Apr 2015 06:24:23 +0000 (11:54 +0530)]
audiofx: fix typo in example pipelines

Fix typo in example pipelines

https://bugzilla.gnome.org/show_bug.cgi?id=748022

9 years agoosxaudio: fix spelling in debug message
Ilya Konstantinov [Wed, 15 Apr 2015 15:22:37 +0000 (18:22 +0300)]
osxaudio: fix spelling in debug message

https://bugzilla.gnome.org//show_bug.cgi?id=747936

9 years agotests: selectable amount of bands in equalizer demo
Luis de Bethencourt [Thu, 16 Apr 2015 15:33:44 +0000 (16:33 +0100)]
tests: selectable amount of bands in equalizer demo

Adding an option in the equalizer demo to make the number of bands selectable.

9 years agortpsource/rtprtxsend: Also pass correct seqnum-offset and payload to the RTX rtpsource
Sebastian Dröge [Thu, 16 Apr 2015 13:31:25 +0000 (15:31 +0200)]
rtpsource/rtprtxsend: Also pass correct seqnum-offset and payload to the RTX rtpsource

https://bugzilla.gnome.org/show_bug.cgi?id=747394

9 years agortpsession: Track RTX ssrc caps
Arun Raghavan [Mon, 6 Apr 2015 07:26:50 +0000 (12:56 +0530)]
rtpsession: Track RTX ssrc caps

This is needed so that we can generate SR for RTX stream correctly (the
clock rate is required).

https://bugzilla.gnome.org/show_bug.cgi?id=747394

9 years agortprtxsend: Copy over timestamps from the orignal buffers to the RTX buffers
Sebastian Dröge [Tue, 14 Apr 2015 11:56:38 +0000 (13:56 +0200)]
rtprtxsend: Copy over timestamps from the orignal buffers to the RTX buffers

https://bugzilla.gnome.org/show_bug.cgi?id=747394

9 years agotests: switch equalizer demo to play from uri
Luis de Bethencourt [Thu, 16 Apr 2015 15:01:50 +0000 (16:01 +0100)]
tests: switch equalizer demo to play from uri

Switch the equalizer-nbands demo to use uridecodebin, so users can listen to
something more pleasant than white noise. If anybody misses the white noise
a uri handler to audiotestsrc can be used.

9 years agotests: improve readability of equalizer demo
Luis de Bethencourt [Thu, 16 Apr 2015 10:17:38 +0000 (11:17 +0100)]
tests: improve readability of equalizer demo

Rename variable name to make it more readable, add comments for the three
scales created per block, and set the window title.

9 years agotests: add missing license header for equalizer demo
Luis de Bethencourt [Wed, 15 Apr 2015 16:32:37 +0000 (17:32 +0100)]
tests: add missing license header for equalizer demo

9 years agoqtdemux: fix tag list leaks on error paths
Vincent Penquerc'h [Thu, 16 Apr 2015 12:09:19 +0000 (13:09 +0100)]
qtdemux: fix tag list leaks on error paths

9 years agoqtdemux: fix tag list leak on unknown stream type
Vincent Penquerc'h [Thu, 16 Apr 2015 11:23:38 +0000 (12:23 +0100)]
qtdemux: fix tag list leak on unknown stream type

9 years agosuppressions: ignore an apparent bug in strtod
Vincent Penquerc'h [Thu, 9 Apr 2015 12:19:49 +0000 (13:19 +0100)]
suppressions: ignore an apparent bug in strtod

A buffer overread.

https://bugzilla.gnome.org/show_bug.cgi?id=747554

9 years agosplitmuxsink: do not access property variable without the object lock, use the local...
George Kiagiadakis [Wed, 15 Apr 2015 09:07:27 +0000 (11:07 +0200)]
splitmuxsink: do not access property variable without the object lock, use the local stack copy instead

9 years agosplitmuxsink: add probe on the multiqueue's sink pad instead of the ghost pad
George Kiagiadakis [Tue, 14 Apr 2015 16:45:44 +0000 (18:45 +0200)]
splitmuxsink: add probe on the multiqueue's sink pad instead of the ghost pad

because _release_pad tries to release it from ctx->sinkpad, which is
multiqueue's sink pad, and currently fails because the probe is not
installed there

9 years agortprtx*: Fix typos
Sebastian Dröge [Tue, 14 Apr 2015 17:08:24 +0000 (19:08 +0200)]
rtprtx*: Fix typos

9 years agortpsession: Not sending early RTCP now because of dithering means we send it with...
Sebastian Dröge [Tue, 14 Apr 2015 15:24:46 +0000 (17:24 +0200)]
rtpsession: Not sending early RTCP now because of dithering means we send it with the next compound packet

9 years agortpsession: Improve debug output a bit if we can't allow early feedback
Sebastian Dröge [Tue, 14 Apr 2015 14:27:18 +0000 (16:27 +0200)]
rtpsession: Improve debug output a bit if we can't allow early feedback

9 years agortpvp8depay: When dropping intra packet, request keyframe
Olivier Crête [Tue, 7 Apr 2015 22:00:53 +0000 (18:00 -0400)]
rtpvp8depay: When dropping intra packet, request keyframe

https://bugzilla.gnome.org/show_bug.cgi?id=747208

9 years agortpjitterbuffer: Change resyncing GST_WARNING to GST_INFO
Sebastian Dröge [Mon, 13 Apr 2015 18:25:00 +0000 (20:25 +0200)]
rtpjitterbuffer: Change resyncing GST_WARNING to GST_INFO

This also happens in the very beginning when we receive the first packet, a
warning would be very confusing here. In all places where we should warn about
this, we would've printed a warning already before.

9 years agomultifilesink: minor docs improvement
Tim-Philipp Müller [Thu, 2 Apr 2015 12:26:41 +0000 (13:26 +0100)]
multifilesink: minor docs improvement

9 years agortpjitterbuffer: Add "rtx-max-retries" property
Miguel París Díaz [Thu, 6 Nov 2014 11:08:03 +0000 (12:08 +0100)]
rtpjitterbuffer: Add "rtx-max-retries" property

This property allows to limit the maximum number of retransmission
for a specific packet.

https://bugzilla.gnome.org/show_bug.cgi?id=739868

9 years agortpjitterbuffer: Fix expected_dts calc in calculate_expected
Miguel París Díaz [Tue, 4 Nov 2014 14:00:52 +0000 (15:00 +0100)]
rtpjitterbuffer: Fix expected_dts calc in calculate_expected

Right above we consider lost_packet packets, each of them having duration,
as lost and triggered their timers immediately. Below we use expected_dts
to schedule retransmission or schedule lost timers for the packets that
come after expected_dts.

As we just triggered lost_packets packets as lost, there's no point in
scheduling new timers for them and we can just skip over all lost packets.

https://bugzilla.gnome.org/show_bug.cgi?id=739868

9 years agortpjitterbuffer: Make the next output buffer discont after resetting the jitterbuffer
Sebastian Dröge [Fri, 20 Mar 2015 17:21:57 +0000 (18:21 +0100)]
rtpjitterbuffer: Make the next output buffer discont after resetting the jitterbuffer

Resetting the jitterbuffer drops all packets and other things, and will cause
a discontinuity in the packets received by the depayloaders. They should now
also flush anything they had pending as the new data will start at a different
position.

https://bugzilla.gnome.org/show_bug.cgi?id=739868

9 years agoqtdemux: Update segment.start after key-unit seek
Hyunjun Ko [Fri, 10 Apr 2015 00:17:26 +0000 (09:17 +0900)]
qtdemux: Update segment.start after key-unit seek

When doing key uint seek, qtdemux calls gst_qtdemux_adjust_seek
to get proper offset. And then this offset is set to
segment.position and segment.time in gst_qtdemux_perform_seek but
segment.start is not updated.

After that, application sends segment query,
qtdemux sets start and stop to query using gst_segment_to_stream_time. Due
to the wrong value in segment.start, the stop position is smaller than
it should.

https://bugzilla.gnome.org/show_bug.cgi?id=746822

9 years agoqtmux: remove useless variable do_pts
Thiago Santos [Tue, 7 Apr 2015 19:12:40 +0000 (16:12 -0300)]
qtmux: remove useless variable do_pts

We always write the CTTS in qtmux. Ideally we only want to do that
for streams that need DTS, it should be present on the track information
rather than be decided based on each buffer

9 years agoqtmux: remove subtraction that makes PTS/DTS start from 0
Thiago Santos [Tue, 7 Apr 2015 03:53:35 +0000 (00:53 -0300)]
qtmux: remove subtraction that makes PTS/DTS start from 0

As qt uses durations, it doesn't matter, only the difference
between consecutive buffers is important. Also, collectpads
already replaces PTS/DTS with the running times for them.

9 years agotests: qtmux: add tests to verify it handles non-0 segments
Thiago Santos [Tue, 7 Apr 2015 01:36:43 +0000 (22:36 -0300)]
tests: qtmux: add tests to verify it handles non-0 segments

Both input streams in this test have a segment.start = 10s, so
output should start from 0 anyway.

Another test has both starting at non-0 segments, but the running
time of both streams should still start from 0

9 years agotests: qtmux: simple muxing test
Thiago Santos [Mon, 6 Apr 2015 23:03:19 +0000 (20:03 -0300)]
tests: qtmux: simple muxing test

Adds a new simple test that verifies that data is properly muxed
and preserved.  PTS, DTS, duration and caps are verified.

9 years agosmpte: remove unused fields
Ravi Kiran K N [Fri, 10 Apr 2015 05:29:26 +0000 (10:59 +0530)]
smpte: remove unused fields

Remove the fields - format and fps from smpte
as they are unused.

https://bugzilla.gnome.org/show_bug.cgi?id=747597

9 years agotests: add test suite for alpha
Ravi Kiran K N [Fri, 10 Apr 2015 04:59:47 +0000 (10:29 +0530)]
tests: add test suite for alpha

Added test suite for alpha element with test cases
1. alpha
2. chroma keying

https://bugzilla.gnome.org/show_bug.cgi?id=747595

9 years agosuppressions: add a well known zlib inflate bug
Vincent Penquerc'h [Thu, 9 Apr 2015 11:58:46 +0000 (12:58 +0100)]
suppressions: add a well known zlib inflate bug

9 years agosplitmuxsink: fix mutex leak
Vincent Penquerc'h [Thu, 9 Apr 2015 11:58:26 +0000 (12:58 +0100)]
splitmuxsink: fix mutex leak

9 years agotests: Fix rtprtx test by handling buffer lists
Jan Schmidt [Thu, 9 Apr 2015 02:58:04 +0000 (12:58 +1000)]
tests: Fix rtprtx test by handling buffer lists

Commit #1018aa made rtprtxsend handle buffer lists, breaking
the test which probes for buffers, but not buffer lists.

Use a utility function to run the probe callback on each buffer
in the list in turn and remove any buffers that are dropped.

9 years agoisomp4: Refactor various state variables into a mux_mode var
Jan Schmidt [Wed, 1 Apr 2015 00:15:38 +0000 (11:15 +1100)]
isomp4: Refactor various state variables into a mux_mode var

Instead of checking various state variables around the muxer,
track the current muxing mode in a single 'mux_mode' enum.

Add some implementation notes about the different mux modes

9 years agotests: Use AM_TESTS_ENVIRONMENT
Edward Hervey [Wed, 8 Apr 2015 14:40:02 +0000 (16:40 +0200)]
tests: Use AM_TESTS_ENVIRONMENT

Needed by the new automake test runner

9 years agortph263depay: Fix framesize parsing
Edward Hervey [Wed, 8 Apr 2015 09:17:31 +0000 (11:17 +0200)]
rtph263depay: Fix framesize parsing

The string passed to the parsing function only contains a framesize, and
not <pt> + <framesize>

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726416

9 years agowavparse: clip chunk size above the valid maximum (0x7fffffff)
Vincent Penquerc'h [Fri, 20 Mar 2015 12:18:37 +0000 (12:18 +0000)]
wavparse: clip chunk size above the valid maximum (0x7fffffff)

https://bugzilla.gnome.org/show_bug.cgi?id=722567

9 years agowavparse: clip chunk length to available data (when known)
Vincent Penquerc'h [Fri, 20 Mar 2015 09:07:35 +0000 (09:07 +0000)]
wavparse: clip chunk length to available data (when known)

This prevents silly chunk lengths from possibly overflowing
(at least when we know the actual data length).

https://bugzilla.gnome.org/show_bug.cgi?id=722567

9 years agoqtdemux: Don't accumulate segment bases manually
Sebastian Dröge [Tue, 7 Apr 2015 03:17:52 +0000 (20:17 -0700)]
qtdemux: Don't accumulate segment bases manually

gst_segment_do_seek() does that for us already, and doing it twice
will break non-flushing seeks in interesting ways. Leftover from 1.0
porting.

Also copy over segment offset and applied_rate, just in case.

9 years agoicles: Fix waiting for segment-done if it happens too fast
Sebastian Dröge [Tue, 7 Apr 2015 02:08:10 +0000 (19:08 -0700)]
icles: Fix waiting for segment-done if it happens too fast

Sometimes we can get segment-done before we got async-done. If we waited
for async-done only, the segment-done would be dropped and we would wait
forever for it a few lines below.

9 years agoqtdemux: stbl_index is valid from 0 onwards
Thiago Santos [Mon, 6 Apr 2015 21:55:08 +0000 (18:55 -0300)]
qtdemux: stbl_index is valid from 0 onwards

It indicates the last sample parsed, not the next one to parse.
As it starts in -1, any value from 0 onwards means that it has
some valid data.

9 years agodocs: make GstRTCPSync enum show up in rtpbin docs
Tim-Philipp Müller [Sun, 5 Apr 2015 19:06:09 +0000 (20:06 +0100)]
docs: make GstRTCPSync enum show up in rtpbin docs

https://bugzilla.gnome.org/show_bug.cgi?id=747358

9 years agodocs: add RTPJitterBufferMode enum to rtpbin docs
Tim-Philipp Müller [Sun, 5 Apr 2015 10:45:45 +0000 (11:45 +0100)]
docs: add RTPJitterBufferMode enum to rtpbin docs

https://bugzilla.gnome.org/show_bug.cgi?id=747358

9 years agomultifilesink: close files before posting message
Thiago Santos [Sat, 4 Apr 2015 14:55:00 +0000 (11:55 -0300)]
multifilesink: close files before posting message

Makes sure the files were properly flushed and closed before
the message reaches the application

9 years agotests: multifile: increment tests to check for multifile messages
Thiago Santos [Mon, 30 Mar 2015 16:54:23 +0000 (13:54 -0300)]
tests: multifile: increment tests to check for multifile messages

Also verify that the multifilesink file messages are being correctly
posted to the bus

9 years agotests: multifile: handle FIXME for proper checking when test finished
Thiago Santos [Mon, 30 Mar 2015 15:51:35 +0000 (12:51 -0300)]
tests: multifile: handle FIXME for proper checking when test finished

Use a GstBus and wait for EOS to finish the tests instead of
relying on sleeping

9 years agomultifilesink: post file message on EOS
Thiago Santos [Mon, 30 Mar 2015 14:14:09 +0000 (11:14 -0300)]
multifilesink: post file message on EOS

When multifilesink is operating in any mode other than one file
per buffer, the last file created won't have a file message posted
as multifilesink doesn't handle the EOS event.

This patch fixes it by using the last position to post a file
message when EOS is received. This should ensure at least the
time related data and the filename are posted to the application
or other elements

https://bugzilla.gnome.org/show_bug.cgi?id=747000

9 years agoAutomatic update of common submodule
Tim-Philipp Müller [Fri, 3 Apr 2015 17:57:50 +0000 (18:57 +0100)]
Automatic update of common submodule

From bc76a8b to c8fb372

9 years agoqtdemux: Guard against 64-bit overflow
Jan Schmidt [Thu, 2 Apr 2015 15:08:50 +0000 (02:08 +1100)]
qtdemux: Guard against 64-bit overflow

For large-file atoms, guard against overflow in the size field,
which could make us jump backward in the file and cause
infinite loops.

9 years agoisomp4: Make non-seekable downstream an error in normal mode
Jan Schmidt [Wed, 1 Apr 2015 12:46:13 +0000 (23:46 +1100)]
isomp4: Make non-seekable downstream an error in normal mode

When not in fast-start or fragmented mode, we need to be able
to rewrite the size of the mdat atom, or else the output just
won't be playable - the mdat placeholder with size == 0 will
cover the rest of the file, including any moov atom we write out.

https://bugzilla.gnome.org/show_bug.cgi?id=708808

9 years agortph263pay/-depay: add framesize SDP attribute
Sebastian Rasmussen [Sat, 15 Mar 2014 14:23:01 +0000 (15:23 +0100)]
rtph263pay/-depay: add framesize SDP attribute

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726416

9 years agortpjpegpay/-depay: Remove incorrectly introduced framesize SDP attribute
Sebastian Rasmussen [Sat, 15 Mar 2014 12:33:56 +0000 (13:33 +0100)]
rtpjpegpay/-depay: Remove incorrectly introduced framesize SDP attribute

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726415

9 years agov4l2src: device sequence/offset correction in case of renegotiation
Peter Seiderer [Fri, 27 Mar 2015 20:09:44 +0000 (21:09 +0100)]
v4l2src: device sequence/offset correction in case of renegotiation

The v4l2 device restarts the sequence counter in case of streamoff/streamon,
the GST offset values are supposed to increment strictly monotonic, so
adjust the sequence counter/offset values in case of caps
renegotiation.

https://bugzilla.gnome.org/show_bug.cgi?id=745441

9 years agov4l2src: add frame loss detection
Peter Seiderer [Fri, 14 Nov 2014 13:18:51 +0000 (14:18 +0100)]
v4l2src: add frame loss detection

In case of v4l2 driver filled offset/sequence values add frame
loss detection (and write a warning message).

Move offset meta data setting and frame loss checking after the
timestamp adjustment code to get proper timestamps for the
warning message.

https://bugzilla.gnome.org/show_bug.cgi?id=745441

9 years agov4l2: use v4l2 capture device sequence counter
Peter Seiderer [Fri, 14 Nov 2014 12:48:51 +0000 (13:48 +0100)]
v4l2: use v4l2 capture device sequence counter

Use the v4l2 capture device sequence counter for
setting the GstBuffer offset/offset_end values.

https://bugzilla.gnome.org/show_bug.cgi?id=745441

9 years agov4l2: Ask the driver about its requirements for min_buffers before initiating buffer...
Tobias Modschiedler [Mon, 30 Mar 2015 11:12:35 +0000 (13:12 +0200)]
v4l2: Ask the driver about its requirements for min_buffers before initiating buffer pool.

If propose_allocation() had not been called yet, it was possible that the driver was not asked at all.
In buffer pool: Consider minimum number of buffers requested by driver when setting config.

https://bugzilla.gnome.org/show_bug.cgi?id=746834

9 years agortpvp8depay: Parse width/height/profile from keyframes
Olivier Crête [Wed, 1 Apr 2015 23:30:27 +0000 (19:30 -0400)]
rtpvp8depay: Parse width/height/profile from keyframes

This makes it possible to mux the result into a container
such as matroska.

https://bugzilla.gnome.org/show_bug.cgi?id=747208

9 years agovp8enc: Expose VP8 width/height limitations in the caps template
Olivier Crête [Wed, 1 Apr 2015 23:01:49 +0000 (19:01 -0400)]
vp8enc: Expose VP8 width/height limitations in the caps template

The VP8 format specification (RFC 6386 section 18.1) specifies
that the maximum size is 16383x16383.

9 years agoflv: When passing seek event upstream, hold a ref.
Jan Schmidt [Mon, 30 Mar 2015 13:20:13 +0000 (00:20 +1100)]
flv: When passing seek event upstream, hold a ref.

In case upstream can't handle the seek, make sure we
keep a ref on the event to attempt to handle it ourselves.

9 years agomatroska: fix GValue leaks when parsing tags
Guillaume Desmottes [Thu, 26 Mar 2015 12:34:53 +0000 (13:34 +0100)]
matroska: fix GValue leaks when parsing tags

gst_tag_list_add_value() doesn't consume the GValue we pass to it so there is
no point copying it.

https://bugzilla.gnome.org/show_bug.cgi?id=746810

9 years agoqtdemux: resurrect some flow return handling
Mark Nauwelaerts [Mon, 23 Mar 2015 19:58:25 +0000 (20:58 +0100)]
qtdemux: resurrect some flow return handling

https://bugzilla.gnome.org/show_bug.cgi?id=744572

9 years agoflvdemux: resurrect some flow return handling
Mark Nauwelaerts [Mon, 23 Mar 2015 19:57:56 +0000 (20:57 +0100)]
flvdemux: resurrect some flow return handling

https://bugzilla.gnome.org/show_bug.cgi?id=744572

9 years agomatroskademux: resurrect some flow return handling
Mark Nauwelaerts [Mon, 23 Mar 2015 19:56:41 +0000 (20:56 +0100)]
matroskademux: resurrect some flow return handling

https://bugzilla.gnome.org/show_bug.cgi?id=744572

9 years agomatroska: store stream tags and push as updated
Thiago Santos [Fri, 27 Mar 2015 21:58:31 +0000 (18:58 -0300)]
matroska: store stream tags and push as updated

New tags can be found on different parts of the file, so this patch
keeps the stream taglists around for the life cycle of the pad
and adds those new tags as found. Then a new tag is found, the
pad's is marked with a tags changed flag, making the element push
a new tag event on the next check. Before this, we were sending
only the newly found tags, as the element was losing its taglist
when pushing the event.

9 years agomatroskademux: send global tags incrementally
Ramiro Polla [Sun, 15 Mar 2015 13:40:36 +0000 (14:40 +0100)]
matroskademux: send global tags incrementally

Instead of sending only new tags once they are found, merge the taglist
and send them incrementally.

9 years agomatroskaparse: send global tags
Ramiro Polla [Sat, 14 Mar 2015 16:07:05 +0000 (17:07 +0100)]
matroskaparse: send global tags

Global tags are already being read in matroskaparse, but they are not
currently being sent.

This patch makes global tags get sent incrementally whenever new ones
are found.

https://bugzilla.gnome.org/show_bug.cgi?id=746242

9 years agoquarktv: fix "planes" property range, a value of 0 is not allowed
Vineeth T M [Tue, 3 Feb 2015 04:48:58 +0000 (10:18 +0530)]
quarktv: fix "planes" property range, a value of 0 is not allowed

When planes property is set to 0, the pipeline executes in
an infinite loop and never exits. Since planes must never
be 0, set the minimum value in the property description
to 1.

https://bugzilla.gnome.org/show_bug.cgi?id=743906

9 years agowavparse: Fix up comments regarding DTS
David Schleef [Thu, 26 Mar 2015 20:42:02 +0000 (13:42 -0700)]
wavparse: Fix up comments regarding DTS

9 years agortspsrc: Fix segment in TCP mode
Nicolas Dufresne [Wed, 25 Mar 2015 19:11:34 +0000 (15:11 -0400)]
rtspsrc: Fix segment in TCP mode

It is expected that buffers are time-stamped with running time. Set
a segment accordingly. In this case we pick 0,-1 as this is what udpsrc
would do. Depayloaders will update the segment to reflect the playback
position.

https://bugzilla.gnome.org/show_bug.cgi?id=635701

9 years agowavparse: be more strict about typefinding DTS
David Schleef [Thu, 26 Mar 2015 19:21:25 +0000 (12:21 -0700)]
wavparse: be more strict about typefinding DTS

Code now matches comments.

9 years agortspsrc: Remove useless function
Nicolas Dufresne [Wed, 25 Mar 2015 19:10:53 +0000 (15:10 -0400)]
rtspsrc: Remove useless function

This function didn't do anything special, let's not use a function for
that.

9 years agortpjitter: Account for rtx_retry in overflow check
Nicolas Dufresne [Fri, 20 Mar 2015 17:03:09 +0000 (13:03 -0400)]
rtpjitter: Account for rtx_retry in overflow check

As rtx_retry is part of the substraction, we need to take it into
account, otherwise we may endup with a big value.

9 years agoosxvideosink: check for deprecated constants prior to OSX 10.10
Julien Isorce [Tue, 24 Mar 2015 23:15:15 +0000 (23:15 +0000)]
osxvideosink: check for deprecated constants prior to OSX 10.10

cocoawindow.m:339:5: error: 'NSOpenGLPFAWindow'
is deprecated: first deprecated in OS X 10.9

cocoawindow.m:576:7: error: 'NSOpenGLPFAFullScreen'
is deprecated: first deprecated in OS X 10.6

cocoawindow.m:605:24: error: 'setFullScreen'
is deprecated: first deprecated in OS X 10.7

9 years agortspsrc: Fix seeking query
Nicolas Dufresne [Tue, 24 Mar 2015 20:51:12 +0000 (16:51 -0400)]
rtspsrc: Fix seeking query

The segment start/stop in the query is meant to represent the seekable
portion of the stream. It does not match the segment start/stop. Instead
export 0 to duration.

9 years agoflvdemux: Only set caps once if they don't change
Sebastian Dröge [Tue, 24 Mar 2015 15:18:53 +0000 (16:18 +0100)]
flvdemux: Only set caps once if they don't change

Previously we were setting new caps with the same content for every H264 or
AAC codec_data we found in the stream, spamming everything and causing
renegotiations.

9 years agoflvdemux: Don't create AAC/H264 caps without codec_data
Sebastian Dröge [Tue, 24 Mar 2015 11:46:19 +0000 (12:46 +0100)]
flvdemux: Don't create AAC/H264 caps without codec_data

Instead delay creating the caps until we read the codec_data from the stream,
or fail if we get normal data before the codec_data.

AAC raw caps and H264 avc caps always need codec_data, setting caps on the pad
without them is going to make negotiation fail most of the time. Even if we
later set new caps with the codec_data, that's usually going to be too late.

https://bugzilla.gnome.org/show_bug.cgi?id=746682

9 years agoflvdemux: Fix indention
Sebastian Dröge [Tue, 24 Mar 2015 14:39:22 +0000 (15:39 +0100)]
flvdemux: Fix indention

9 years agoosxaudio: Fix string format warning on 32-bit
Ilya Konstantinov [Sun, 22 Mar 2015 11:23:44 +0000 (13:23 +0200)]
osxaudio: Fix string format warning on 32-bit

UInt32 (Darwin, not C99's uint32_t) is 'unsigned long' on 32-bit
platforms.

9 years agortpsession: Fix another instance of sticky event misordering warnings
Sebastian Dröge [Sat, 21 Mar 2015 16:50:40 +0000 (17:50 +0100)]
rtpsession: Fix another instance of sticky event misordering warnings

Make sure that the sync_src pad has caps before the segment event.
Otherwise we might get a segment event before caps from the receive
RTCP pad, and then later when receiving RTCP packets will set caps.
This will results in a sticky event misordering warning

This fixes warnings in the rtpaux unit test but also in the
rtpaux and rtx examples in tests/examples/rtp

https://bugzilla.gnome.org/show_bug.cgi?id=746445

9 years agortpsession: Also start the RTCP send thread when receiving RTP or RTCP
Sebastian Dröge [Sat, 21 Mar 2015 16:18:47 +0000 (17:18 +0100)]
rtpsession: Also start the RTCP send thread when receiving RTP or RTCP

Before we only started it when either:
- there is no send RTP stream
or
- we received an RTP packet for sending

This could mean that if the send RTP pads are connected but never receive any
RTP data, and the same session is also used for receiving RTP/RTCP, we would
never start the RTCP thread and would never send RTCP for the receiving part
of the session.

This can be reproduced with a pipeline like:

gst-launch-1.0 rtpbin name=rtpbin \
udpsrc port=5000 ! "application/x-rtp, media=video, clock-rate=90000, encoding-name=H264" ! rtpbin.recv_rtp_sink_0 \
udpsrc port=5001 ! rtpbin.recv_rtcp_sink_0 \
rtpbin.send_rtcp_src_0 ! fakesink name=rtcp_fakesink silent=false async=false sync=false \
rtpbin.recv_rtp_src_0_2553225531_96 ! decodebin ! xvimagesink \
fakesrc ! valve drop=true ! rtpbin.send_rtp_sink_0 \
rtpbin.send_rtp_src_0 ! fakesink name=rtp_fakesink silent=false async=false sync=false -v

Before this change the rtcp_fakesink would never send RTCP for the receiving
part of the session (i.e. no receiver reports!), after the change it does.

And before and after this change it would send RTCP for the receiving part of
the session if the sender part was omitted (the last two lines).

9 years agortprtxsend: Add support for buffer lists
Sebastian Dröge [Thu, 19 Mar 2015 10:54:12 +0000 (11:54 +0100)]
rtprtxsend: Add support for buffer lists

9 years agortprtxqueue: Implement support for buffer lists
Sebastian Dröge [Thu, 19 Mar 2015 10:39:38 +0000 (11:39 +0100)]
rtprtxqueue: Implement support for buffer lists

9 years agortspsrc: Improve trace readability
Nicolas Dufresne [Wed, 18 Mar 2015 21:32:36 +0000 (17:32 -0400)]
rtspsrc: Improve trace readability

Change the command number into strings.

9 years agoflvdemux: Don't repeatedly warn after no_more_pads (v2)
Jan Alexander Steffens (heftig) [Tue, 20 Jan 2015 09:18:56 +0000 (10:18 +0100)]
flvdemux: Don't repeatedly warn after no_more_pads (v2)

This can get rather spammy for such a high log level.
Only warn once per stream.

https://bugzilla.gnome.org/show_bug.cgi?id=746274

9 years agoflvdemux: Introduce constant for no-more-pads threshold
Jan Alexander Steffens (heftig) [Mon, 16 Mar 2015 10:23:52 +0000 (11:23 +0100)]
flvdemux: Introduce constant for no-more-pads threshold

https://bugzilla.gnome.org/show_bug.cgi?id=746274

9 years agoflvdemux: Fix warning to contain 'video'
Jan Alexander Steffens (heftig) [Tue, 20 Jan 2015 09:18:29 +0000 (10:18 +0100)]
flvdemux: Fix warning to contain 'video'

https://bugzilla.gnome.org/show_bug.cgi?id=746274

9 years agomatroskademux: for dts only stream set pts=dts for intra only formats
Nicola Murino [Wed, 11 Mar 2015 20:25:40 +0000 (21:25 +0100)]
matroskademux: for dts only stream set pts=dts for intra only formats

https://bugzilla.gnome.org/show_bug.cgi?id=745192

9 years agomatroskademux: fix sending of tags
Ramiro Polla [Sat, 14 Mar 2015 15:39:09 +0000 (16:39 +0100)]
matroskademux: fix sending of tags

* Fix critical when new tags are found after segment event has already
  been sent.
* Send global tags before stream tags.
* Split sending of tags out of gst_matroska_demux_send_event() into its
  own function.

https://bugzilla.gnome.org/show_bug.cgi?id=745973

9 years agortspsrc: properly escape percent sign in documentation
Ramiro Polla [Fri, 13 Mar 2015 18:26:06 +0000 (18:26 +0000)]
rtspsrc: properly escape percent sign in documentation