platform/upstream/gst-plugins-good.git
9 years agomatroska: remove unused property enum items
Luis de Bethencourt [Thu, 30 Apr 2015 14:42:34 +0000 (15:42 +0100)]
matroska: remove unused property enum items

9 years agoqtdemux: fix buffer leak on eos in push mode
Tim-Philipp Müller [Thu, 30 Apr 2015 11:13:59 +0000 (12:13 +0100)]
qtdemux: fix buffer leak on eos in push mode

Based on patch by Guillaume Desmottes.

scenario: validate.http.playback.seek_with_stop.raw_h264_1_mp4

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

9 years agoqtdemux: Check for sizes of the rdrf (redirect) atom before accessing the data and...
Sebastian Dröge [Wed, 29 Apr 2015 17:41:29 +0000 (19:41 +0200)]
qtdemux: Check for sizes of the rdrf (redirect) atom before accessing the data and use g_strndup() instead of g_strdup()

Thanks to Ralph Giles for reporting this.

9 years agortspsrc: Only enable retransmissions if there is retransmission info in the SDP
Sebastian Dröge [Wed, 29 Apr 2015 13:52:27 +0000 (15:52 +0200)]
rtspsrc: Only enable retransmissions if there is retransmission info in the SDP

Otherwise we're going to send early RTCP and NACKs in non-feedback sessions
too, which will confuse servers.

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

9 years agodvdemux: extract recording time
Ravi Kiran K N [Wed, 11 Feb 2015 12:39:24 +0000 (18:09 +0530)]
dvdemux: extract recording time

Extracts the recorded time of the dv file from
the metadata and puts it into the global tags.

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

9 years agomatroskademux: fix seek event leak
Guillaume Desmottes [Tue, 28 Apr 2015 13:59:25 +0000 (15:59 +0200)]
matroskademux: fix seek event leak

gst_matroska_demux_handle_seek_event() doesn't consume the
event so we have to unref it.

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

9 years agomatroska-demux: Send pending tags when adding a new pad
Sebastian Dröge [Tue, 28 Apr 2015 13:42:49 +0000 (15:42 +0200)]
matroska-demux: Send pending tags when adding a new pad

We might've parsed those tags before already and tried to push them to
non-existing pads before. Now let's do it for real.

9 years agortpstats: Average RTCP packet size is in bytes, bandwidths in bits
Sebastian Dröge [Thu, 23 Apr 2015 16:57:37 +0000 (18:57 +0200)]
rtpstats: Average RTCP packet size is in bytes, bandwidths in bits

We need to convert the size to bits for our calculations.

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

9 years agortpstats: Use the same lower limit for RTCP bandwidth to stop sending RTCP everywhere
Sebastian Dröge [Thu, 23 Apr 2015 16:53:39 +0000 (18:53 +0200)]
rtpstats: Use the same lower limit for RTCP bandwidth to stop sending RTCP everywhere

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

9 years agortpsession: Use bandwidth calculation by default instead of some arbitrary hardcoded...
Sebastian Dröge [Tue, 14 Apr 2015 16:41:07 +0000 (18:41 +0200)]
rtpsession: Use bandwidth calculation by default instead of some arbitrary hardcoded value

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

9 years agortpsession: Bandwidth is supposed to be in bits/s, not bytes/s
Sebastian Dröge [Thu, 23 Apr 2015 16:49:37 +0000 (18:49 +0200)]
rtpsession: Bandwidth is supposed to be in bits/s, not bytes/s

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

9 years agortpjitterbuffer: Fix RTX unit test
Sebastian Dröge [Mon, 27 Apr 2015 14:36:27 +0000 (16:36 +0200)]
rtpjitterbuffer: Fix RTX unit test

The calculations were a bit off everywhere, even before the changes done
recently to the delay for RTX of expected future packets. It only worked by
accident, but now the calculations are all correct again. Hopefully.

9 years agoRename property enums from ARG_ to PROP_
Luis de Bethencourt [Mon, 27 Apr 2015 10:22:11 +0000 (11:22 +0100)]
Rename property enums from ARG_ to PROP_

Property enum items should be named PROP_ for consistency and readability.

9 years agortpjitterbuffer: Fix "stats" property docs
Ilya Konstantinov [Fri, 24 Apr 2015 23:49:58 +0000 (02:49 +0300)]
rtpjitterbuffer: Fix "stats" property docs

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

9 years agoRemove obsolete Android build cruft
Tim-Philipp Müller [Sun, 26 Apr 2015 16:54:52 +0000 (17:54 +0100)]
Remove obsolete Android build cruft

This is not needed any longer.

9 years agovideocrop: print the property values when set
Thiago Santos [Fri, 24 Apr 2015 16:55:08 +0000 (13:55 -0300)]
videocrop: print the property values when set

Instead of printing the currently used values. The log is meant
to show what the properties changed to, not what is being currently
used.

9 years agoremove unused enum items PROP_LAST
Luis de Bethencourt [Fri, 24 Apr 2015 16:01:10 +0000 (17:01 +0100)]
remove unused enum items PROP_LAST

This were probably added to the enums due to cargo cult programming and are
unused. Removing them.

9 years agolevel: fix infinite loop for very low interval values
Tim-Philipp Müller [Thu, 23 Apr 2015 23:30:35 +0000 (00:30 +0100)]
level: fix infinite loop for very low interval values

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

9 years agotests: define GST_CHECK_TEST_ENVIRONMENT_BEACON
Tim-Philipp Müller [Thu, 23 Apr 2015 15:08:54 +0000 (16:08 +0100)]
tests: define GST_CHECK_TEST_ENVIRONMENT_BEACON

Make sure the test environment is set up.

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

9 years agoconfigure: bump automake requirement to 1.14 and autoconf to 2.69
Tim-Philipp Müller [Thu, 23 Apr 2015 15:08:32 +0000 (16:08 +0100)]
configure: bump automake requirement to 1.14 and autoconf to 2.69

This is only required for builds from git, people can still
build tarballs if they only have older autotools.

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

9 years agoUpdate .gitignore
Tim-Philipp Müller [Thu, 23 Apr 2015 15:06:57 +0000 (16:06 +0100)]
Update .gitignore

9 years agortspsrc: Fix RTCP caps leak
Jesper Larsen [Thu, 23 Apr 2015 07:55:59 +0000 (09:55 +0200)]
rtspsrc: Fix RTCP caps leak

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

9 years agortpjitterbuffer: When request retransmissions for future packets, consider the packet...
Sebastian Dröge [Wed, 22 Apr 2015 18:24:20 +0000 (20:24 +0200)]
rtpjitterbuffer: When request retransmissions for future packets, consider the packet spacing in the extra delay

We now take the maximum of 2*jitter and 0.5*packet_spacing for the extra
delay. If jitter is very low, this should prevent unnecessary retransmission
requests to some degree.

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

9 years agortpjitterbuffer: Take a running average of the packet spacings instead of just the...
Sebastian Dröge [Wed, 22 Apr 2015 17:41:07 +0000 (19:41 +0200)]
rtpjitterbuffer: Take a running average of the packet spacings instead of just the latest

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

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.