platform/upstream/gst-plugins-good.git
8 years agoflvdemux: don't emit pad-added until caps are ready
Havard Graff [Wed, 16 Mar 2016 19:17:55 +0000 (20:17 +0100)]
flvdemux: don't emit pad-added until caps are ready

In other words, gst_pad_get_current_caps should never return NULL
in a pad-added callback from the demuxer.

Added tests for the two special cases with AAC and H.264 where this
would happen every time.

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

8 years agogood: use new gst_element_class_add_static_pad_template()
Vineeth TM [Fri, 4 Mar 2016 01:30:12 +0000 (10:30 +0900)]
good: use new gst_element_class_add_static_pad_template()

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

8 years agoflvmux: Test to verify flvmux handles DTS with GST_CLOCK_TIME NONE
David Buchmann [Fri, 4 Mar 2016 08:42:44 +0000 (09:42 +0100)]
flvmux: Test to verify flvmux handles DTS with GST_CLOCK_TIME NONE

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

8 years agortspsrc: avoid potentially overflowing expression
Jihae Yi [Wed, 4 Nov 2015 05:51:19 +0000 (14:51 +0900)]
rtspsrc: avoid potentially overflowing expression

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

8 years agoqtdemux: Add the function to get channels and sample rate for AAC
Jimmy Ohn [Tue, 22 Mar 2016 01:43:45 +0000 (10:43 +0900)]
qtdemux: Add the function to get channels and sample rate for AAC

Add aac_get_channels and sample_rate function to get these value for
AAC.

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

8 years agoBack to development
Sebastian Dröge [Thu, 24 Mar 2016 11:33:02 +0000 (13:33 +0200)]
Back to development

8 years agoRelease 1.8.0
Sebastian Dröge [Thu, 24 Mar 2016 10:27:33 +0000 (12:27 +0200)]
Release 1.8.0

8 years agoUpdate .po files
Sebastian Dröge [Thu, 24 Mar 2016 10:02:59 +0000 (12:02 +0200)]
Update .po files

8 years agodeinterleave: Use GstIterator for iterating all pads instead of manually iterating...
Sebastian Dröge [Wed, 16 Mar 2016 18:18:41 +0000 (20:18 +0200)]
deinterleave: Use GstIterator for iterating all pads instead of manually iterating them while holding the object lock all the time

Doing queries while holding the object lock is a bit dangerous, and in this
case causes deadlocks.

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

8 years agodeinterlace: Fix typo to not change the input caps but our filtered caps
Vivia Nikolaidou [Thu, 17 Mar 2016 18:53:27 +0000 (20:53 +0200)]
deinterlace: Fix typo to not change the input caps but our filtered caps

Changing the input caps and not using them anymore afterwards is useless, and
it breaks negotiation in pipelines like:

gst-launch-1.0 videotestsrc ! "video/x-raw,framerate=25/1,interlace-mode=interleaved" !
  deinterlace fields=all ! "video/x-raw,framerate=50/1,interlace-mode=progressive" !
  fakesink

8 years agoRelease 1.7.91
Sebastian Dröge [Tue, 15 Mar 2016 10:04:39 +0000 (12:04 +0200)]
Release 1.7.91

8 years agoUpdate .po files
Sebastian Dröge [Tue, 15 Mar 2016 09:53:37 +0000 (11:53 +0200)]
Update .po files

8 years agopo: Update translations
Sebastian Dröge [Tue, 15 Mar 2016 09:41:22 +0000 (11:41 +0200)]
po: Update translations

8 years agortpmanager: Some comment and documentation clarifications/fixes
Nirbheek Chauhan [Mon, 14 Mar 2016 21:56:14 +0000 (03:26 +0530)]
rtpmanager: Some comment and documentation clarifications/fixes

8 years agoRevert "flacparse: push tags in pre_push_frame"
Sebastian Dröge [Sun, 13 Mar 2016 08:33:13 +0000 (10:33 +0200)]
Revert "flacparse: push tags in pre_push_frame"

This reverts commit 4065fcb80a49924b70f0c8fc159dec0ff47943a1.

flacparse should not push tags by itself, the base class is going to do that
while properly merging in upstream tags. It just didn't because of a bug in
the base class, which was hidden by this commit.

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

8 years agowin32: Don't use __attribute__ on MSVC
Nirbheek Chauhan [Wed, 24 Feb 2016 23:47:51 +0000 (05:17 +0530)]
win32: Don't use __attribute__ on MSVC

Use MSVC-equivalents for alignment and packing compiler directives when building
on MSVC

8 years agowin32: Don't try to include xmath.h on newer Visual Studio
Nirbheek Chauhan [Wed, 24 Feb 2016 23:46:42 +0000 (05:16 +0530)]
win32: Don't try to include xmath.h on newer Visual Studio

8 years agogst Factor out endian-order RGB formats
Nirbheek Chauhan [Wed, 24 Feb 2016 23:46:09 +0000 (05:16 +0530)]
gst Factor out endian-order RGB formats

MSVC seems to ignore preprocessor conditionals inside static pad
template macros.

8 years agodirctsoundsink: Setting volume should not unmute
Thomas Roos [Tue, 8 Mar 2016 16:37:17 +0000 (17:37 +0100)]
dirctsoundsink: Setting volume should not unmute

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

8 years agodirctsoundsink: Fix volume reset on unmute
Thomas Roos [Tue, 8 Mar 2016 12:57:24 +0000 (13:57 +0100)]
dirctsoundsink: Fix volume reset on unmute

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

8 years agov4l2object: fix capture with bayer formats other than bggr
Alban Bedel [Tue, 8 Mar 2016 12:03:55 +0000 (13:03 +0100)]
v4l2object: fix capture with bayer formats other than bggr

gst_v4l2_object_get_caps_info() always return V4L2_PIX_FMT_SBGGR8
for all bayer formats. This is obviously broken if the device use
another ordering. Fix this by properly reading the format parameter.

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

8 years agoqtdemux: reset pending segment if we are already pushing one
Thiago Santos [Mon, 7 Mar 2016 13:28:06 +0000 (10:28 -0300)]
qtdemux: reset pending segment if we are already pushing one

When upstream is running in bytes in push-mode, qtdemux will
convert seeks from time to bytes and send it upstream. Upstream
element will perform a byte seek and send a byte segment to qtdemux
that will convert it to time and push it downstream.

There is, however, the pending_segment variable that stores a new
segment event to be pushed before the next data. When handling seeks
as mentioned above this variable was being ignored and, if it contained
some segment event, it would override the one resulting from the seek.
This would restore a previous segment and would cause the seek segment
to be discarded downstream.

This patch fixes this issue by unrefing any pending segment as the
seek from upstream should contain the latest one that should be
used, as requested by the application.

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

8 years agoqtdemux: run gst-indent
Thiago Santos [Mon, 7 Mar 2016 13:27:41 +0000 (10:27 -0300)]
qtdemux: run gst-indent

Otherwise commits will fail with our indent check hook

8 years agov4l2: fix colorimetry for NV12
Josep Torra [Fri, 4 Mar 2016 14:09:45 +0000 (15:09 +0100)]
v4l2: fix colorimetry for NV12

Replicate V4L2_MAP_QUANTIZATION_DEFAULT macro behavior.
At #v4l it was described that documentation might be wrong and that
we should trust this macro instead.

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

8 years agoudpsrc: Fix multicast group joining with provided sockets on Windows
Sebastian Dröge [Fri, 4 Mar 2016 12:07:19 +0000 (14:07 +0200)]
udpsrc: Fix multicast group joining with provided sockets on Windows

On Windows the socket will be bound to ANY instead of the multicast group,
as binding to a multicast group does not work. Which would mean that we
override src->addr to become ANY and won't automatically join a multicast
group anymore on Windows.

On Linux we would automatically join a multicast group, keep it consistent.

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

8 years agoRevert "rtpjitterbuffer: don't forget to unlock mutex in error code path in two cases"
Sebastian Dröge [Wed, 2 Mar 2016 11:13:24 +0000 (13:13 +0200)]
Revert "rtpjitterbuffer: don't forget to unlock mutex in error code path in two cases"

This reverts commit a7fb7b53592d87f7983544debb74d364fc3257ad.

The mutex is taken by the caller, we should keep it locked when returning so
the caller can unlock it again.

8 years agoflacparse: push tags in pre_push_frame
Luis de Bethencourt [Tue, 1 Mar 2016 15:01:22 +0000 (15:01 +0000)]
flacparse: push tags in pre_push_frame

Push a tag event before pre-roll if we have tags.

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

8 years agoRelease 1.7.90
Sebastian Dröge [Tue, 1 Mar 2016 16:15:43 +0000 (18:15 +0200)]
Release 1.7.90

8 years agoUpdate .po files
Sebastian Dröge [Tue, 1 Mar 2016 15:03:59 +0000 (17:03 +0200)]
Update .po files

8 years agopo: Update translations
Sebastian Dröge [Tue, 1 Mar 2016 14:53:27 +0000 (16:53 +0200)]
po: Update translations

8 years agortpjitterbuffer: don't forget to unlock mutex in error code path in two cases
Tim-Philipp Müller [Tue, 1 Mar 2016 14:14:02 +0000 (14:14 +0000)]
rtpjitterbuffer: don't forget to unlock mutex in error code path in two cases

8 years agomatroska-demux: remove impossible condition
Luis de Bethencourt [Mon, 29 Feb 2016 10:10:24 +0000 (10:10 +0000)]
matroska-demux: remove impossible condition

It is impossible for a guint to have a negative value, no need to check for
this. Introduced in commit 6861d11c49ea0f30d2432cf4ebf6108bc89897f1

CID 1354509

8 years agoalpha: Fix sample pipeline
Petr Viktorin [Sun, 28 Feb 2016 09:12:36 +0000 (10:12 +0100)]
alpha: Fix sample pipeline

Use the zorder pad property to make sure the semitransparent
video is on top of the background.

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

8 years agorgvolume: make tag list writable before modifying it
Tim-Philipp Müller [Sun, 28 Feb 2016 13:42:28 +0000 (13:42 +0000)]
rgvolume: make tag list writable before modifying it

Making the event itself writable is not enough, it won't make
the actual taglist in the event writable as well. Instead, just
make a copy of the taglist and then create a new tag event from
that if required, replacing the old one. Before we would
inadvertently modify taglists upstream elements might still
be holding on to. Add unit test for this as well.

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

8 years agortspsrc: Properly error out if binding the UDP sockets fails
Sebastian Dröge [Sun, 28 Feb 2016 11:01:34 +0000 (13:01 +0200)]
rtspsrc: Properly error out if binding the UDP sockets fails

udpsrc is not returning us a socket in that case.

8 years agogoom: Use goom_set_resolution() instead of recreating the goom instance when the...
Sebastian Dröge [Sat, 27 Feb 2016 18:33:32 +0000 (20:33 +0200)]
goom: Use goom_set_resolution() instead of recreating the goom instance when the resolution changes

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

8 years agoRevert "goom: Initialize the goom struct only once we know width/height and recreate...
Sebastian Dröge [Sat, 27 Feb 2016 18:32:45 +0000 (20:32 +0200)]
Revert "goom: Initialize the goom struct only once we know width/height and recreate it if those change"

This reverts commit cc6e102643c1bae928316dca9f34db028fb9a67e.

8 years agogoom: Initialize the goom struct only once we know width/height and recreate it if...
Sebastian Dröge [Sat, 27 Feb 2016 18:31:15 +0000 (20:31 +0200)]
goom: Initialize the goom struct only once we know width/height and recreate it if those change

Fixes crash when the width and/or height is changing.

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

8 years agoAutomatic update of common submodule
Sebastian Dröge [Fri, 26 Feb 2016 10:41:07 +0000 (12:41 +0200)]
Automatic update of common submodule

From b64f03f to 6f2d209

8 years agodocs: add rtpopusdepay and rtpopuspay to documentation
Tim-Philipp Müller [Thu, 25 Feb 2016 22:54:18 +0000 (22:54 +0000)]
docs: add rtpopusdepay and rtpopuspay to documentation

8 years agortp: opus: move Opus RTP payloader/depayloader from -bad to -good
Tim-Philipp Müller [Wed, 17 Feb 2016 15:15:11 +0000 (15:15 +0000)]
rtp: opus: move Opus RTP payloader/depayloader from -bad to -good

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

8 years agoMerge branch 'plugin-move-rtp-opus'
Tim-Philipp Müller [Wed, 17 Feb 2016 15:10:00 +0000 (15:10 +0000)]
Merge branch 'plugin-move-rtp-opus'

Move Opus RTP depayloader/payloader from -bad to -good.

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

8 years agoqtdemux: cenc aux info parsing from mdat support in PULL mode
Philippe Normand [Thu, 25 Feb 2016 10:33:13 +0000 (11:33 +0100)]
qtdemux: cenc aux info parsing from mdat support in PULL mode

This is already supported for PUSH mode but was failing in PULL mode.
The aux info is sometimes stored in the mdat before the first sample,
so the loop task needs to pull data stored at that location and
perform the aux info cenc parsing.

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

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

8 years agoqtdemux: prevent buffer flow if any stream failed to be exposed
Philippe Normand [Wed, 24 Feb 2016 10:28:09 +0000 (11:28 +0100)]
qtdemux: prevent buffer flow if any stream failed to be exposed

In some cases the stream configuration can fail, for instance if the
stream is protected and no decryptor was found. For those situations
the demuxer shouldn't emit any data on the corresponding source pad of
the stream and bail out.

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

8 years agoqtdemux: don't push encrypted buffer without cenc metadata
Philippe Normand [Wed, 24 Feb 2016 08:12:03 +0000 (09:12 +0100)]
qtdemux: don't push encrypted buffer without cenc metadata

When the cenc metadata is stored outside of the moof box and the
stream is exposed it is possible that the cenc metadata hasn't been
processed yet while the first buffer is being pushed. When this
happens the buffer can't possibly be decrypted downstream so don't
push it.

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

8 years agoqtdemux: read saio aux_info_type as a FOURCC
Philippe Normand [Wed, 21 Oct 2015 14:21:45 +0000 (16:21 +0200)]
qtdemux: read saio aux_info_type as a FOURCC

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

8 years agogst: Handle gst_pad_get_current_caps() returning NULL gracefully
Sebastian Dröge [Tue, 23 Feb 2016 16:27:47 +0000 (18:27 +0200)]
gst: Handle gst_pad_get_current_caps() returning NULL gracefully

8 years agortph265depay: Don't assume that get_current_caps() returns non-NULL caps after has_cu...
Dave Craig [Tue, 23 Feb 2016 16:12:54 +0000 (18:12 +0200)]
rtph265depay: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps()

Remove calls to gst_pad_has_current_caps() which then go on to call
gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just
use gst_pad_get_current_caps() and check for NULL.

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

8 years agogst: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps()
Dave Craig [Wed, 16 Dec 2015 12:40:39 +0000 (12:40 +0000)]
gst: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps()

Remove calls to gst_pad_has_current_caps() which then go on to call
gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just
use gst_pad_get_current_caps() and check for NULL.

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

8 years agoaacparse: Handle gst_pad_get_current_caps() returning NULL gracefully
Dave Craig [Wed, 16 Dec 2015 10:54:17 +0000 (10:54 +0000)]
aacparse: Handle gst_pad_get_current_caps() returning NULL gracefully

This can happen when the pipeline is currently shutting down.

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

8 years agomatroska-demux: Don't handle seek until ready
Linus Svensson [Tue, 23 Feb 2016 14:57:18 +0000 (15:57 +0100)]
matroska-demux: Don't handle seek until ready

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

8 years agomatroska-demux: Unref seek event
Linus Svensson [Tue, 23 Feb 2016 14:55:13 +0000 (15:55 +0100)]
matroska-demux: Unref seek event

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

8 years agomultifilesink: close file on write error with next-file mode is set to buffer
Aurélien Zanelli [Mon, 22 Feb 2016 10:01:40 +0000 (11:01 +0100)]
multifilesink: close file on write error with next-file mode is set to buffer

If we have an error during fwrite call, file stays open and thus next
incoming buffer will trigger an assert when trying to opening a new
file.
This happens if we do not restart element, file is closed at stop, and
if application handles the returned GST_FLOW_ERROR to keep bin alive.

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

8 years agomatroskamux: don't output empty tags/tag elements
Matej Knopp [Fri, 19 Feb 2016 22:44:42 +0000 (23:44 +0100)]
matroskamux: don't output empty tags/tag elements

Such files will not play on Android, because of bug in libwebm matroska parsing, which is still present in 6.0.1

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

8 years agomatroska-demux: make up an OpusHead block if possible when missing
Vincent Penquerc'h [Thu, 4 Feb 2016 15:59:04 +0000 (15:59 +0000)]
matroska-demux: make up an OpusHead block if possible when missing

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

8 years agomatroska-mux: make up an OpusHead block if possible when missing
Vincent Penquerc'h [Thu, 4 Feb 2016 10:43:15 +0000 (10:43 +0000)]
matroska-mux: make up an OpusHead block if possible when missing

This block is needed in the Matroska file, but data coming from
RTP may not have one.

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

8 years agomatroskademux: make stream-id more readable and order-friendly
Mark Nauwelaerts [Mon, 22 Feb 2016 12:53:21 +0000 (13:53 +0100)]
matroskademux: make stream-id more readable and order-friendly

... as streams are so ordered by id by e.g. decodebin
(and as typically already honoured by other demuxers).

8 years agomatroska: remove confusing duplicate track uid field
Mark Nauwelaerts [Mon, 22 Feb 2016 12:25:51 +0000 (13:25 +0100)]
matroska: remove confusing duplicate track uid field

8 years agortpvp9pay: add missing break
Luis de Bethencourt [Mon, 22 Feb 2016 14:03:02 +0000 (14:03 +0000)]
rtpvp9pay: add missing break

VP9_PAY_PICTURE_ID_7BITS and VP9_PAY_PICTURE_ID_15BITS are mutually
exclusive options of the picture-id-mode. We can break after the
first case.

1 or 2 bytes need to be added to the header length depending on the
PictureID size.
https://tools.ietf.org/html/draft-uberti-payload-vp9-00#section-4.2

CID 1353479

8 years agoavidemux: Fix buffer memory leak
Vineeth TM [Mon, 22 Feb 2016 00:09:01 +0000 (09:09 +0900)]
avidemux: Fix buffer memory leak

buffer being mapped is not being unmapped in some cases

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

8 years agortpmanager: Don't warn for duplicate/reordered packets
Stian Selnes [Wed, 4 Nov 2015 09:19:03 +0000 (10:19 +0100)]
rtpmanager: Don't warn for duplicate/reordered packets

This is a normal scenario and should not be a warning.

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

8 years agowin32: remove outdated build cruft
Tim-Philipp Müller [Sun, 21 Feb 2016 09:47:43 +0000 (09:47 +0000)]
win32: remove outdated build cruft

This hasn't been touched for generations, doesn't work,
and is just causing confusion. We also don't want to
maintain these files manually.

8 years agov4l2: don't use undeclared core debug category symbols
Tim-Philipp Müller [Sat, 20 Feb 2016 11:51:56 +0000 (11:51 +0000)]
v4l2: don't use undeclared core debug category symbols

8 years agoqtdemux: workaround for files with wrong color_table_id value
Matej Knopp [Sat, 6 Feb 2016 13:39:05 +0000 (14:39 +0100)]
qtdemux: workaround for files with wrong color_table_id value

Instead of erroring out, just use the default color table.

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

8 years agoflvmux, rtpvp9depay: fix indentation
Tim-Philipp Müller [Fri, 19 Feb 2016 15:02:04 +0000 (15:02 +0000)]
flvmux, rtpvp9depay: fix indentation

8 years agov4l2src: fix indentation
Tim-Philipp Müller [Fri, 19 Feb 2016 15:03:04 +0000 (15:03 +0000)]
v4l2src: fix indentation

8 years agoflvmux: plug leak(s) in error-scenario
Havard Graff [Thu, 3 Dec 2015 13:46:34 +0000 (00:46 +1100)]
flvmux: plug leak(s) in error-scenario

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

8 years agoflvdemux: fix eos event leak
Havard Graff [Thu, 3 Dec 2015 13:46:12 +0000 (00:46 +1100)]
flvdemux: fix eos event leak

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

8 years agotests: fix indentation
Tim-Philipp Müller [Fri, 19 Feb 2016 14:41:07 +0000 (14:41 +0000)]
tests: fix indentation

8 years agotests: rtpjitterbuffer: port testharness to GstHarness and cleanup/improve
Havard Graff [Thu, 18 Feb 2016 15:09:29 +0000 (16:09 +0100)]
tests: rtpjitterbuffer: port testharness to GstHarness and cleanup/improve

Probably found a bug as well, in that there are some timestamps in
there that are looking very wrong. (marked with FIXME)

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

8 years agotests: rtpjitterbuffer: test cleanups/improvements
Havard Graff [Thu, 18 Feb 2016 09:27:19 +0000 (10:27 +0100)]
tests: rtpjitterbuffer: test cleanups/improvements

Use fail_unless and friends instead of g_assert
Factor seq-num checking out to separate function
Check more return-values from push and crank and others

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

8 years agotests: rtpjitterbuffer: fix leaks in unit test
Stian Selnes [Thu, 3 Dec 2015 10:07:05 +0000 (11:07 +0100)]
tests: rtpjitterbuffer: fix leaks in unit test

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

8 years agoBack to development
Sebastian Dröge [Fri, 19 Feb 2016 10:38:28 +0000 (12:38 +0200)]
Back to development

8 years agoRelease 1.7.2
Sebastian Dröge [Fri, 19 Feb 2016 09:49:55 +0000 (11:49 +0200)]
Release 1.7.2

8 years agopo: Update translations
Sebastian Dröge [Fri, 19 Feb 2016 08:31:48 +0000 (10:31 +0200)]
po: Update translations

8 years agoqtdemux: plug leaks in cenc aux info parsing
Philippe Normand [Thu, 18 Feb 2016 17:33:13 +0000 (18:33 +0100)]
qtdemux: plug leaks in cenc aux info parsing

8 years agotests: fix spurious souphttpsrc test timouts
Tim-Philipp Müller [Thu, 18 Feb 2016 13:43:07 +0000 (13:43 +0000)]
tests: fix spurious souphttpsrc test timouts

Set GSETTINGS_BACKEND=memory, apparently there's something
about fork() and the dconf backend (or whatever else that
drags in or activates) that messes up locking and causes
timeouts due to deadlocks in g_mutex_lock(), since
everything works fine with CK_FORK=no as well.

8 years agomatroskademux: Unmap wavpack header buffer after creating it
Sebastian Dröge [Thu, 18 Feb 2016 09:10:14 +0000 (11:10 +0200)]
matroskademux: Unmap wavpack header buffer after creating it

Otherwise it will be mapped writable all the time and we can't read from it
anywhere.

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

8 years agortpjitterbuffer: Add test for big seqnum gap handling
Stian Selnes [Tue, 8 Dec 2015 17:49:40 +0000 (18:49 +0100)]
rtpjitterbuffer: Add test for big seqnum gap handling

Make sure that the packets queued when detecting a big gap are pushed
after reset (5 consective seqnums) and not dropped.

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

8 years agortp: sprinkle some G_GNUC_INTERNAL for internal utils functions
Tim-Philipp Müller [Wed, 17 Feb 2016 15:03:13 +0000 (15:03 +0000)]
rtp: sprinkle some G_GNUC_INTERNAL for internal utils functions

8 years agoqtdemux: only transform protected caps once
Alex Ashley [Tue, 9 Feb 2016 13:17:00 +0000 (13:17 +0000)]
qtdemux: only transform protected caps once

Commit 7873bede3134b15e5066e8d14e54d1f5054d2063
(https://bugzilla.gnome.org/show_bug.cgi?id=760774) changed the
behaviour of qtdemux to call gst_qtdemux_configure_stream() for
every new moof.

When playing a protected stream, gst_qtdemux_configure_stream()
calls gst_qtdemux_configure_protected_caps(). The
gst_qtdemux_configure_protected_caps() function takes the original
media format, puts this in a field called "original-media-type"
and then changes the caps to "application/x-cenc".

The gst_qtdemux_configure_protected_caps() did not handle the case
of being called multiple times, causing it to incorrectly set the
caps. The second call was causing the caps to be set to:

    application/x-cenc, original-media-type"application/x-cenc"

This commit makes gst_qtdemux_configure_protected_caps() check that
the caps have already been transformed, so that it only gets
changed once.

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

8 years agoopus: Add proper support for multichannel audio
Sebastian Dröge [Tue, 3 Nov 2015 12:50:53 +0000 (14:50 +0200)]
opus: Add proper support for multichannel audio

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

8 years agoopus: Copy metadata in the (de)payloader, but only the relevant ones
Sebastian Dröge [Tue, 30 Jun 2015 11:51:33 +0000 (13:51 +0200)]
opus: Copy metadata in the (de)payloader, but only the relevant ones

The payloader didn't copy anything so far, the depayloader copied every
possible meta. Let's make it consistent and just copy all metas without tags or
with only the audio tag.

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

8 years agoopusdepay: Set multistream=FALSE on the Opus caps
Sebastian Dröge [Mon, 4 May 2015 09:23:16 +0000 (11:23 +0200)]
opusdepay: Set multistream=FALSE on the Opus caps

The RTP Opus mapping only allows mono/stereo, and not multistream Opus
streams.

8 years agortpopuspay: Forward stereo preferences from caps upstream
Olivier Crête [Tue, 24 Mar 2015 17:57:54 +0000 (13:57 -0400)]
rtpopuspay: Forward stereo preferences from caps upstream

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

8 years agortpopuspay: Set the number of channels to 2 as per RFC draft
Olivier Crête [Tue, 24 Mar 2015 17:56:21 +0000 (13:56 -0400)]
rtpopuspay: Set the number of channels to 2 as per RFC draft

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

8 years agoopus: Handle sprop-stereo and sprop-maxcapturerate RTP caps fields
Sebastian Dröge [Mon, 23 Mar 2015 11:24:55 +0000 (12:24 +0100)]
opus: Handle sprop-stereo and sprop-maxcapturerate RTP caps fields

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

8 years agortpopuspay: default encoding name to OPUS
Vincent Penquerc'h [Thu, 19 Feb 2015 14:30:10 +0000 (14:30 +0000)]
rtpopuspay: default encoding name to OPUS

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

8 years agortpopuspay: make caps writable before truncating them
Vincent Penquerc'h [Thu, 19 Feb 2015 14:05:06 +0000 (14:05 +0000)]
rtpopuspay: make caps writable before truncating them

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

8 years agortpopuspay: negotiate the encoding name
Vincent Penquerc'h [Thu, 5 Feb 2015 10:27:51 +0000 (10:27 +0000)]
rtpopuspay: negotiate the encoding name

Chrome uses a different encoding name that gstreamer.

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

8 years agortpopus: Use OPUS encoding name
Nicolas Dufresne [Sat, 1 Nov 2014 14:10:27 +0000 (10:10 -0400)]
rtpopus: Use OPUS encoding name

Both Firefox and Chrome uses OPUS as the encoding in their SDP.
Adding this now defacto standard name remove the need for special
case in SDP parsing code.

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

8 years agoopuspay: fix timestamps
Wim Taymans [Thu, 31 Jan 2013 11:30:49 +0000 (12:30 +0100)]
opuspay: fix timestamps

Copy timestamps to payloaded buffer.
Avoid input buffer memory leak.

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

8 years agoFix FSF address
Tim-Philipp Müller [Sat, 3 Nov 2012 20:38:00 +0000 (20:38 +0000)]
Fix FSF address

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

8 years agoopuspay: remove pointless caps serialization
Wim Taymans [Mon, 22 Oct 2012 10:08:41 +0000 (12:08 +0200)]
opuspay: remove pointless caps serialization

Remove the caps serialization in the rtp caps. the spec nor the receiver
does anything with it.

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

8 years agoUse gst_element_class_set_static_metadata()
Tim-Philipp Müller [Wed, 17 Oct 2012 16:34:26 +0000 (17:34 +0100)]
Use gst_element_class_set_static_metadata()

where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.

8 years agortpopuspay: Allocate the rtp buffer correctly
Olivier Crête [Thu, 20 Sep 2012 22:41:24 +0000 (18:41 -0400)]
rtpopuspay: Allocate the rtp buffer correctly

Use the right functions to allocate the rtp buffer

8 years agoreplace gst_element_class_set_details_simple with gst_element_class_set_metadata
Mark Nauwelaerts [Fri, 14 Sep 2012 15:08:49 +0000 (17:08 +0200)]
replace gst_element_class_set_details_simple with gst_element_class_set_metadata

8 years agoopus: port to updated 0.11
Mark Nauwelaerts [Wed, 7 Mar 2012 16:14:29 +0000 (17:14 +0100)]
opus: port to updated 0.11

8 years agoMerge remote-tracking branch 'origin/master' into 0.11-premerge
Edward Hervey [Fri, 30 Dec 2011 10:41:17 +0000 (11:41 +0100)]
Merge remote-tracking branch 'origin/master' into 0.11-premerge

Conflicts:
docs/libs/Makefile.am
ext/kate/gstkatetiger.c
ext/opus/gstopusdec.c
ext/xvid/gstxvidenc.c
gst-libs/gst/basecamerabinsrc/Makefile.am
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h
gst-libs/gst/video/gstbasevideocodec.c
gst-libs/gst/video/gstbasevideocodec.h
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideoencoder.c
gst/asfmux/gstasfmux.c
gst/audiovisualizers/gstwavescope.c
gst/camerabin2/gstcamerabin2.c
gst/debugutils/gstcompare.c
gst/frei0r/gstfrei0rmixer.c
gst/mpegpsmux/mpegpsmux.c
gst/mpegtsmux/mpegtsmux.c
gst/mxf/mxfmux.c
gst/videomeasure/gstvideomeasure_ssim.c
gst/videoparsers/gsth264parse.c
gst/videoparsers/gstmpeg4videoparse.c

8 years agoopusenc: add upstream negotiation for multistream ability
Vincent Penquerc'h [Fri, 9 Dec 2011 17:25:41 +0000 (17:25 +0000)]
opusenc: add upstream negotiation for multistream ability

This will help elements that cannot deal with multistream,
such as the RTP payloader.

The caps now do not include a "streams" field anymore, but
a "multistream" boolean, since we have no real use for knowing
the exact amount of streams.

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