platform/upstream/gst-plugins-good.git
8 years agodeinterlace: Do passthrough in auto mode if downstream only supports interlaced
Vivia Nikolaidou [Tue, 26 Jan 2016 16:39:20 +0000 (17:39 +0100)]
deinterlace: Do passthrough in auto mode if downstream only supports interlaced

If the following conditions are met:
1) upstream and downstream caps are compatible
2) upstream is interlaced
3) downstream doesn't support progressive mode
then deinterlace will just do passthrough instead of failing to link.

This is done with the following scenario in mind:

videotestsrc ! "video/x-raw,interlace-mode=interleaved" ! deinterlace
name=dein_src ! tee name=t ! queue ! deinterlace name=dein_file ! filesink t. !
queue ! deinterlace name=dein_desktop ! autovideosink
In this case, dein_src will do the deinterlacing. However,

videotestsrc ! "video/x-raw,interlace-mode=interleaved" ! deinterlace
name=dein_src ! tee name=t ! queue ! deinterlace name=dein_file ! filesink t. !
queue ! deinterlace name=dein_desktop ! autovideosink t. ! queue !
"video/x-raw,interlace-mode=interleaved" ! fakesink

In this case, caps auto-negotiation will make dein_file and dein_desktop do
the deinterlacing, while dein_src will be passthrough.

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

8 years agodeinterlace: Add mode=auto-strict
Sebastian Dröge [Tue, 26 Jan 2016 17:05:51 +0000 (18:05 +0100)]
deinterlace: Add mode=auto-strict

In this mode we will passthrough all progressive caps but interlaced caps must be
caps where we actually support deinterlacing.

This is the only difference between auto and auto-strict, auto would
passthrough all unsupported interlaced caps.

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

8 years agodeinterlace: Implement reconfiguration a bit better
Sebastian Dröge [Tue, 26 Jan 2016 16:50:30 +0000 (17:50 +0100)]
deinterlace: Implement reconfiguration a bit better

And e.g. consider reconfiguration caused by RECONFIGURE events too.

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

8 years agodeinterlace: Rewrite caps negotiation
Sebastian Dröge [Tue, 26 Jan 2016 10:57:09 +0000 (11:57 +0100)]
deinterlace: Rewrite caps negotiation

Previously the result of the CAPS query and ACCEPT_CAPS depended on what kind
of caps were last set, and e.g. if we last had interlaced caps or not. That's
just broken.

Also previously the handling of non-sysmem caps features was rather random and
unusuable.

Now the behaviour is the following, depending on the mode property:
1) mode=disabled
  Completely do passthrough of everything
2) mode=interlaced
  Only accept formats we can actually deinterlace, and accept interlaced
  and progressive content and always run the deinterlacer and output
  progressive content
3) mode=auto (i.e. playbin)
  Accept all progressive formats as passthrough, accept all formats that we
  can deinterlace ourselves (which we do then), but also accept everything
  else for which we then just passthrough. In auto mode, deinterlacing is best
  effort: If we can, we deinterlace, if we can't we just output interlaced
  content.

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

8 years agodeinterlace: Remove unused, obsolete bufferalloc code
Sebastian Dröge [Tue, 26 Jan 2016 10:34:40 +0000 (11:34 +0100)]
deinterlace: Remove unused, obsolete bufferalloc code

8 years agomatroskamux: use A_AAC instead of A_AAC/MPEGx/y
Matej Knopp [Tue, 26 Jan 2016 17:50:38 +0000 (18:50 +0100)]
matroskamux: use A_AAC instead of A_AAC/MPEGx/y

Some GoogleCast compatible devices ignore A_AAC/MPEGx/y tracks; Also according to http://wiki.multimedia.cx/index.php?title=Matroska A_AAC/MPEGx/y is obsolete

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

8 years agogst: Fix unintialized variable warnings
Víctor Manuel Jáquez Leal [Mon, 25 Jan 2016 16:21:24 +0000 (17:21 +0100)]
gst: Fix unintialized variable warnings

While cross-compiling with Linaro GCC 5.1-2015.08, it complained
about a couple unitialized variables.

This patch initializes them to zero.

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

8 years agosplitmuxsrc: print potentially negative offset with a sign
George Kiagiadakis [Mon, 25 Jan 2016 14:03:23 +0000 (15:03 +0100)]
splitmuxsrc: print potentially negative offset with a sign

8 years agov4l2: Re-add colorimetry field for RGB formats
Nicolas Dufresne [Thu, 21 Jan 2016 22:41:55 +0000 (17:41 -0500)]
v4l2: Re-add colorimetry field for RGB formats

This time, check if it's an RGB format and sets the transformation
matrix to identity. The rest of the colorimetry information is
meaningfull and shall be kept.

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

8 years agov4l2: fix sRGB colorspace definition
Wim Taymans [Fri, 22 Jan 2016 09:03:50 +0000 (10:03 +0100)]
v4l2: fix sRGB colorspace definition

V4l2 can also use the sRGB colorspace for YUV formats and thus needs a
default matrix.

8 years agotaginject: fix sample pipeline in docs
Tim-Philipp Müller [Thu, 21 Jan 2016 15:29:46 +0000 (15:29 +0000)]
taginject: fix sample pipeline in docs

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

8 years agov4l2: Add adobe colorspace support
Wim Taymans [Thu, 21 Jan 2016 09:49:44 +0000 (10:49 +0100)]
v4l2: Add adobe colorspace support

Use the new primaries and transfer function for Adobe RGB.
Explicitly list the colorimetry instead of using the default GStreamer
ones. The defaults for BT2020, for example, do not match.
Explicitly set the matrix of SRGB to RGB.

8 years agovp8enc: Ensure that we always have valid frame user data before using it
Sebastian Dröge [Wed, 20 Jan 2016 11:41:33 +0000 (13:41 +0200)]
vp8enc: Ensure that we always have valid frame user data before using it

Otherwise we're going to dereference NULL pointers.

8 years agovpxdec: Unref frame in all code paths of handle_frame()
Sebastian Dröge [Wed, 20 Jan 2016 08:02:48 +0000 (10:02 +0200)]
vpxdec: Unref frame in all code paths of handle_frame()

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

8 years agovpxenc: Unref frame on ERROR
Thibault Saunier [Tue, 19 Jan 2016 21:49:20 +0000 (22:49 +0100)]
vpxenc: Unref frame on ERROR

All code paths for handle_frame() must somehow take ownership of the frame, be
it by actually unreffing, forwarding the frame elsewhere or storing it for
later.

http://bugzilla.gnome.org/show_bug.cgi?id=760666

8 years agov4l2: Don't free props structure twice.
Jan Schmidt [Wed, 20 Jan 2016 07:20:43 +0000 (18:20 +1100)]
v4l2: Don't free props structure twice.

gst_v4l2_device_provider_probe_device() frees the passed props
structure, don't free it again in the caller.

8 years agov4l2object: Cleanup uneeded return statement
Nicolas Dufresne [Tue, 19 Jan 2016 20:15:35 +0000 (15:15 -0500)]
v4l2object: Cleanup uneeded return statement

8 years agov4l2object: Don't set colorimetry for non YUV formats
Nicolas Dufresne [Tue, 19 Jan 2016 20:14:59 +0000 (15:14 -0500)]
v4l2object: Don't set colorimetry for non YUV formats

Setting colormetry in caps for RGB have no meaning, but worst it
confuses the converters downstream.

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

8 years agortp: fix compiler warnings with gcc-6
Tim-Philipp Müller [Tue, 19 Jan 2016 13:01:17 +0000 (13:01 +0000)]
rtp: fix compiler warnings with gcc-6

In file included from gstrtpL16depay.h:27:0,
                 from gstrtp.c:73:
gstrtpchannels.h:154:33: error: 'channel_orders' defined but not used [-Werror=unused-const-variable]
 static const GstRTPChannelOrder channel_orders[] =

8 years agowavparse: Don't play anything after the end of the data chunk even when seeking
Sebastian Dröge [Tue, 19 Jan 2016 12:57:03 +0000 (14:57 +0200)]
wavparse: Don't play anything after the end of the data chunk even when seeking

Especially in push mode we would completely ignore the size of the data chunk
when not stop position is given for the seek. Instead make sure that the end
offset is at most the end of the data chunk if known.

Without this we would output anything after the data chunk, possibly causing
loud noises if the media file is followed by an INFO chunk or an ID3 tag.

8 years agowavparse: Don't do calculations with -1 offsets when handling SEGMENT events
Sebastian Dröge [Tue, 19 Jan 2016 12:55:57 +0000 (14:55 +0200)]
wavparse: Don't do calculations with -1 offsets when handling SEGMENT events

We use that to signal "infinity", taking the difference between that and some
other value is not going to give us any useful result for the end offsets of
segments.

8 years agoRevert "WIP: rtpjitterbuffer: Add RFC7273 media clock handling"
Sebastian Dröge [Mon, 18 Jan 2016 09:30:45 +0000 (11:30 +0200)]
Revert "WIP: rtpjitterbuffer: Add RFC7273 media clock handling"

This reverts commit 271501f6576de4d141e7c2f618e28b9e3b1e5b38.

It wasn't meant to be pushed yet as the commit message indicates.

8 years agortspsrc: handle rtcp/srtcp caps properly when using interleaved data
Aleix Conchillo Flaqué [Tue, 12 Jan 2016 22:01:21 +0000 (14:01 -0800)]
rtspsrc: handle rtcp/srtcp caps properly when using interleaved data

We check the stream profile and use the proper RTCP caps:
application/x-srtcp if we are using a secure profile and
application/x-rtcp otherwise.

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

8 years agoWIP: rtpjitterbuffer: Add RFC7273 media clock handling
Sebastian Dröge [Tue, 5 Jan 2016 14:15:16 +0000 (16:15 +0200)]
WIP: rtpjitterbuffer: Add RFC7273 media clock handling

8 years agovp8enc: Return FLOW_ERROR when an error accures
Thibault Saunier [Fri, 15 Jan 2016 11:36:35 +0000 (11:36 +0000)]
vp8enc: Return FLOW_ERROR when an error accures

FALSE would mean FLOW_OK

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

8 years agoosxaudio: break as soon as the device is found
Nirbheek Chauhan [Thu, 14 Jan 2016 22:27:45 +0000 (03:57 +0530)]
osxaudio: break as soon as the device is found

No need to loop further if there's no side-effects for it

8 years agoosxaudio: Fix error handling when selecting/opening devices
Nirbheek Chauhan [Thu, 14 Jan 2016 22:26:49 +0000 (03:56 +0530)]
osxaudio: Fix error handling when selecting/opening devices

Post an element error when the CoreAudio device cannot be selected or opened.
Also ensure that we post a GST_ERROR with more detail.

8 years agowavparse: When flushing on EOS, don't process more data than the "data" size
Sebastian Dröge [Wed, 13 Jan 2016 22:40:20 +0000 (23:40 +0100)]
wavparse: When flushing on EOS, don't process more data than the "data" size

Even if we have more data queued up when flushing than the size of the data
chunk, don't process and output it. If the data size is known, this likely
contains another chunk (e.g. an INFO chunk) or things like ID3 tags. Just
outputting them as if they were data is going to cause unexpected behaviour
and unpleasant audio noises.

8 years agotests: fix a thinko in the wavenc example
Antonio Ospite [Fri, 29 Aug 2014 13:40:23 +0000 (15:40 +0200)]
tests: fix a thinko in the wavenc example

The code is supposed to follow somehow what the comment above says, that
is to have one channel with a wave of freq 440 and the other channel
with a wave of freq 880, but an off by one error results in frequencies
of 0 and 440.

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

8 years agointerleave: Fix the example by setting channel-masks in the sink pads
Antonio Ospite [Fri, 29 Aug 2014 13:07:58 +0000 (15:07 +0200)]
interleave: Fix the example by setting channel-masks in the sink pads

The current example does not work, it fails with:

ERROR: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstWavParse:wavparse0: Internal data flow error.
gstwavparse.c(2178): gst_wavparse_loop (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstWavParse:wavparse0:
streaming task paused, reason not-negotiated (-4)

This is because negotiation with wavenc gets messed up by the missing
channel positions configuration.

The proper way to define the channel layout when using the interleave
element in code would be to set the channel-positions property, but
gst-launch-1.0 does not know how to deal with arrays; so the example
pipeline works around the issue by setting the channel-masks in the sink
pads.

Also fix a repetition in the deinterleave example description

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

8 years agosbcparse: Fix frame length calculation
Tim Sheridan [Mon, 11 Jan 2016 16:29:55 +0000 (16:29 +0000)]
sbcparse: Fix frame length calculation

SBC frame length calculation wasn't being rounded up to the nearest byte
(as specified in the A2DP 1.0 specification, section 12.9). This could
cause 'stereo' and 'joint stereo' mode SBC streams to have incorrectly
calculated frame lengths.

Incorrect frame length calculation causes frame coalescing to fail, as
subsequent frames in the stream aren't found in the expected locations.

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

8 years agoflacparse: demote warning on wrong reserved value to fixme
Reynaldo H. Verdejo Pinochet [Mon, 11 Jan 2016 06:54:12 +0000 (22:54 -0800)]
flacparse: demote warning on wrong reserved value to fixme

We are likely just parsing a backward-compatible stream we
don't fully support.

8 years agoimagefreeze: simplify caps selection
Thiago Santos [Fri, 8 Jan 2016 19:27:05 +0000 (16:27 -0300)]
imagefreeze: simplify caps selection

The downstream caps query with a filter alraedy gives us the possible
intersection so there is no need to check it again with downstream
if it is supported. Just try to set it directly.

8 years agortph264depay: fix unnecessary sub-buffer creation
Tim-Philipp Müller [Thu, 7 Jan 2016 20:42:41 +0000 (20:42 +0000)]
rtph264depay: fix unnecessary sub-buffer creation

We create a sub-buffer just to copy over its metas and then
throw it away immediately, just use the original input buffer
directly.

8 years agortpdvdepay: fix unnecessary sub-buffer creation
Tim-Philipp Müller [Thu, 7 Jan 2016 20:38:27 +0000 (20:38 +0000)]
rtpdvdepay: fix unnecessary sub-buffer creation

We create a sub-buffer just to copy over its metas and then
throw it away immediately, just use the original input buffer
directly.

8 years agortpamrdepay: fix unnecessary sub-buffer creation
Tim-Philipp Müller [Thu, 7 Jan 2016 20:34:05 +0000 (20:34 +0000)]
rtpamrdepay: fix unnecessary sub-buffer creation

We create a sub-buffer just to copy over its metas and then
throw it away immediately, just use the original input buffer
directly.

8 years agortpvrawdepay: fix major memory leak and performance issue
Tim-Philipp Müller [Thu, 7 Jan 2016 20:27:29 +0000 (20:27 +0000)]
rtpvrawdepay: fix major memory leak and performance issue

We call gst_rtp_buffer_get_payload() which creates a sub-buffer
of each input buffer, just to copy over metas, and then leak it.

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

8 years agorganalysis: Fix compiler warnings in the unit test
Sebastian Dröge [Fri, 8 Jan 2016 13:32:47 +0000 (15:32 +0200)]
rganalysis: Fix compiler warnings in the unit test

elements/rganalysis.c:919:66: error: shifting a negative signed value is undefined
      [-Werror,-Wshift-negative-value]
  push_buffer (test_buffer_const_int16_stereo (8000, 16, 512, -1 << 14, 0));
                                                              ~~ ^
elements/rganalysis.c:929:69: error: shifting a negative signed value is undefined
      [-Werror,-Wshift-negative-value]
  push_buffer (test_buffer_const_int16_stereo (8000, 16, 512, 0, -1 << 14));
                                                                 ~~ ^
elements/rganalysis.c:939:64: error: shifting a negative signed value is undefined
      [-Werror,-Wshift-negative-value]
  push_buffer (test_buffer_const_int16_mono (8000, 16, 512, -1 << 14));
                                                            ~~ ^

8 years agoflacparse: don't map buffer multiple times when parsing
Tim-Philipp Müller [Tue, 5 Jan 2016 18:13:06 +0000 (18:13 +0000)]
flacparse: don't map buffer multiple times when parsing

8 years agomatroska: Store subtitle stream count in the correct variable
Steven Hoving [Thu, 7 Jan 2016 16:20:30 +0000 (18:20 +0200)]
matroska: Store subtitle stream count in the correct variable

And don't override the video stream count instead.

8 years agoequalizer: The child-proxy API is GObject based in 1.x
Sebastian Dröge [Tue, 5 Jan 2016 16:59:06 +0000 (18:59 +0200)]
equalizer: The child-proxy API is GObject based in 1.x

Not GstObject anymore.

8 years agov4l2-*: Configuring output pool correctly for using drivers min_buffer if present.
Pablo Anton [Thu, 21 May 2015 15:41:12 +0000 (17:41 +0200)]
v4l2-*: Configuring output pool correctly for using drivers min_buffer if present.

Signed-off-by: Pablo Anton <pablo.anton@vodalys-labs.com>
https://bugzilla.gnome.org/show_bug.cgi?id=755736

8 years agoflacparse: add debug msg on CRC mismatch while validating frame header
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 23:46:31 +0000 (15:46 -0800)]
flacparse: add debug msg on CRC mismatch while validating frame header

8 years agoflacparse: drop unneeded braces at _parse_frame() exit
Reynaldo H. Verdejo Pinochet [Fri, 1 Jan 2016 00:00:49 +0000 (16:00 -0800)]
flacparse: drop unneeded braces at _parse_frame() exit

Additionally, drop redundant comment & line break

8 years agoflacparse: minor grammar correction
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 23:55:18 +0000 (15:55 -0800)]
flacparse: minor grammar correction

8 years agoflacparse: update URLs on pointers to online spec
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 23:34:57 +0000 (15:34 -0800)]
flacparse: update URLs on pointers to online spec

8 years agoflacparse: make buffer DTS setting explicitly unconditional
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 22:40:15 +0000 (14:40 -0800)]
flacparse: make buffer DTS setting explicitly unconditional

We are setting it to PTS regardless of block_strategy

8 years agoflacparse: add actual invalid block type to warning
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 22:21:40 +0000 (14:21 -0800)]
flacparse: add actual invalid block type to warning

For someone that read the spec is clear the only *invalid*
data block type is 127. For the rest, its useful information.

Additionally. values 7-126 are currently reserved by the
spec so the situation might change in the future.

8 years agoflacparse: use shift instead of mask & comp
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 22:12:36 +0000 (14:12 -0800)]
flacparse: use shift instead of mask & comp

We are only interested on the first bit of the first
byte of the metadata block header to figure out whether
is marked as the last one. The shift makes it quite
clearer.

8 years agoflacparse: warn on wishful parsing of weird headers
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 20:52:13 +0000 (12:52 -0800)]
flacparse: warn on wishful parsing of weird headers

If we get anything from 7 to 126 as type when parsing
a metadata block header, we are likely dealing with a
FLAC stream version we don't fully understand. Issue
a warning if so.

Document function assumptions regarding the passed-on
type while at this.

8 years agoflacparse: show meaningful info on frame CRC check
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 19:33:45 +0000 (11:33 -0800)]
flacparse: show meaningful info on frame CRC check

As CRCs are calculated for the comparition already, we
might as well (cheaply) inform the user how the numbers
differ if a missmatched pair is found.

While at it:

Rephrase candidate-frame message to make more sense

8 years agoflacparse: drop remaining trailing whitespace
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 10:40:43 +0000 (02:40 -0800)]
flacparse: drop remaining trailing whitespace

8 years agoflacparse: drop superflous else clauses
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 10:15:06 +0000 (02:15 -0800)]
flacparse: drop superflous else clauses

8 years agoflacparse: factor out buffer time and offset resetting
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 09:09:51 +0000 (01:09 -0800)]
flacparse: factor out buffer time and offset resetting

Avoids multiple occurrences of the same resetting pattern

8 years agoflacparse: move block handling by type out of _parse_frame()
Reynaldo H. Verdejo Pinochet [Thu, 31 Dec 2015 08:54:48 +0000 (00:54 -0800)]
flacparse: move block handling by type out of _parse_frame()

8 years agortspsrc: replace duplicated codes to call new base sdp apis
Hyunjun Ko [Wed, 7 Oct 2015 09:51:25 +0000 (18:51 +0900)]
rtspsrc: replace duplicated codes to call new base sdp apis

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

8 years agoflacparse: drop redundant return statement on _header_is_valid()
Reynaldo H. Verdejo Pinochet [Wed, 30 Dec 2015 20:16:56 +0000 (12:16 -0800)]
flacparse: drop redundant return statement on _header_is_valid()

Fix the rather vague error message while at it.

8 years agoflacparse: rework gst_flac_parse_frame_is_valid()
Reynaldo H. Verdejo Pinochet [Wed, 30 Dec 2015 09:56:26 +0000 (01:56 -0800)]
flacparse: rework gst_flac_parse_frame_is_valid()

drop unnecessary nesting looking for end of frame

8 years agoflacparse: factor out context clearing routine
Reynaldo H. Verdejo Pinochet [Wed, 30 Dec 2015 08:37:04 +0000 (00:37 -0800)]
flacparse: factor out context clearing routine

8 years agomatroskademux: Guard against no codec data in prores caps creation
Sebastian Dröge [Tue, 29 Dec 2015 16:05:56 +0000 (18:05 +0200)]
matroskademux: Guard against no codec data in prores caps creation

CID 1346532

8 years agovpxdec: Initialize buffer variable to NULL
Sebastian Dröge [Tue, 29 Dec 2015 15:58:38 +0000 (17:58 +0200)]
vpxdec: Initialize buffer variable to NULL

False positive but trivial to fix and possibly causing compiler warnings at
some point in the future too.

CID 1346535

8 years agov4l2deviceprovider: add properties to the device
Wim Taymans [Mon, 27 Jul 2015 13:53:26 +0000 (15:53 +0200)]
v4l2deviceprovider: add properties to the device

Add properties to the device with exactly the same keys and sematics
as what pulseaudio uses as property keys.

Also handle the case when a device is probed manually and not through gudev.

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

8 years agoscaletempo: Free the various buffers in GstBaseTransform::stop()
Sebastian Dröge [Fri, 25 Dec 2015 10:41:19 +0000 (11:41 +0100)]
scaletempo: Free the various buffers in GstBaseTransform::stop()

Previously we leaked them completely, but as they're specific to the caps
freeing them in stop() instead of finalize() makes most sense.

8 years agoBack to development
Sebastian Dröge [Thu, 24 Dec 2015 14:28:06 +0000 (15:28 +0100)]
Back to development

8 years agoRelease 1.7.1
Sebastian Dröge [Thu, 24 Dec 2015 13:16:21 +0000 (14:16 +0100)]
Release 1.7.1

8 years agoUpdate .po files
Sebastian Dröge [Thu, 24 Dec 2015 12:19:24 +0000 (13:19 +0100)]
Update .po files

8 years agopo: Update translations
Sebastian Dröge [Thu, 24 Dec 2015 11:22:32 +0000 (12:22 +0100)]
po: Update translations

8 years agoqtdemux: drop flushes from our own offset seek
Thiago Santos [Mon, 21 Dec 2015 12:57:33 +0000 (09:57 -0300)]
qtdemux: drop flushes from our own offset seek

Prevents downstream from receiving flushes for a seek only in
upstream. Those seeks are only to start reading from the right
offset when skipping or returning to qt atoms.

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

8 years agomatroskademux: Always set the channel mask for PCM streams
Thibault Saunier [Wed, 11 Nov 2015 15:53:19 +0000 (16:53 +0100)]
matroskademux: Always set the channel mask for PCM streams

Just use the gst_audio_channel_get_fallback_mask function for now as
the specification is too complicated and nobody implements it.

8 years agodirectsoundsink: Fix sleep for buffer-time lower than 200000
Thomas Roos [Mon, 21 Dec 2015 10:37:26 +0000 (11:37 +0100)]
directsoundsink: Fix sleep for buffer-time lower than 200000

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

8 years agoconfigure: Use -Bsymbolic-functions if available
Sebastian Dröge [Mon, 21 Dec 2015 11:31:19 +0000 (12:31 +0100)]
configure: Use -Bsymbolic-functions if available

While this is more useful for libraries, some of our plugins with multiple
files and some internal API can also benefit from this.

8 years agoprogressreport: add support for using format=buffers with do-query=false
William Manley [Fri, 18 Dec 2015 15:34:52 +0000 (15:34 +0000)]
progressreport: add support for using format=buffers with do-query=false

This is useful for investigating and debugging pipelines which are
producing buffers at a slower/faster rate than you would expect.

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

8 years agov4l2object: Update formats table
Nicolas Dufresne [Fri, 18 Dec 2015 20:49:43 +0000 (15:49 -0500)]
v4l2object: Update formats table

This change add all the new RGB based format. Those format removes the
ambiguity with the ALPHA channel. Some other missing multiplanar format
has been added with some additional cleanup.

8 years agoqtmux: Don't write invalid edit list start time.
Jan Schmidt [Thu, 17 Dec 2015 18:17:15 +0000 (05:17 +1100)]
qtmux: Don't write invalid edit list start time.

Avoid writing a negative number as a large positive
integer in an edit list when the first_ts is smaller
than the first_dts - which can happen when the first
packet received has a PTS but no DTS.

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

8 years agosplitmuxsink: Only update running time when it increases.
Jan Schmidt [Fri, 4 Dec 2015 12:16:45 +0000 (23:16 +1100)]
splitmuxsink: Only update running time when it increases.

Don't increment running time from every buffer. The correct
logic to only increment when running time advances is a
little further down, so delete this left-over line.

8 years agomatroska-mux: Implement prores support
Thibault Saunier [Wed, 18 Nov 2015 10:01:20 +0000 (11:01 +0100)]
matroska-mux: Implement prores support

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

8 years agomatroska-demux: Play ProRes video streams
Jan Schmidt [Wed, 18 Nov 2015 05:20:38 +0000 (16:20 +1100)]
matroska-demux: Play ProRes video streams

Generate video/x-prores caps for ProRes video streams.
Every frame needs an 8 byte header prepended, as described in
http://wiki.multimedia.cx/index.php?title=Apple_ProRes#Frame_layout
so do that in a post-processing callback.

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

8 years agodvdec: Remove unused fields
Ravi Kiran K N [Fri, 18 Dec 2015 04:48:09 +0000 (10:18 +0530)]
dvdec: Remove unused fields

Remove unused fields frame_len and space

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

8 years agortpj2kdepay: Push one JPEG2000 frame per buffer, not a buffer list with multiple...
Vincent Dehors [Thu, 17 Dec 2015 15:03:04 +0000 (16:03 +0100)]
rtpj2kdepay: Push one JPEG2000 frame per buffer, not a buffer list with multiple buffers

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

8 years agodv1394: log error if failed to set socket status flag
Luis de Bethencourt [Wed, 16 Dec 2015 11:43:58 +0000 (11:43 +0000)]
dv1394: log error if failed to set socket status flag

Log an error message if failed to set write or read socket as
non-blocking.

CID 1139608
CID 1139609

8 years agoaudioparsers: Check for NULL return value of gst_pad_get_current_caps()
Dave Craig [Tue, 15 Dec 2015 17:10:00 +0000 (17:10 +0000)]
audioparsers: Check for NULL return value of gst_pad_get_current_caps()

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

8 years agodocs: update to git
Sebastian Dröge [Wed, 16 Dec 2015 08:35:53 +0000 (09:35 +0100)]
docs: update to git

8 years agovpx: Add missing headers in Makefile.am
Nicolas Dufresne [Tue, 15 Dec 2015 19:27:22 +0000 (14:27 -0500)]
vpx: Add missing headers in Makefile.am

This fixes distcheck.

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

8 years agovpx: created common baseclass GstVPXEnc
Prashant Gotarne [Thu, 24 Sep 2015 07:27:00 +0000 (12:57 +0530)]
vpx: created common baseclass GstVPXEnc

GstVP8Enc and GstVP9Enc has almost 80% code in common.
created common baseclass GstVPXEnc for GstVP8Enc and GstVP9Enc

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

8 years agovpxdec: Remove unneeded add video_meta
Nicolas Dufresne [Tue, 15 Dec 2015 17:57:53 +0000 (12:57 -0500)]
vpxdec: Remove unneeded add video_meta

This also remove copies for VP8, which was not correctly in place
in previous related patch.

8 years agovpx: created common base class GstVPXdec for vpx decoders
Prashant Gotarne [Tue, 15 Dec 2015 04:19:24 +0000 (09:49 +0530)]
vpx: created common base class GstVPXdec for vpx decoders

Base class for the vp8dec and vp9dec.

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

8 years agosouphttpsrc: Add GTlsInteraction property
Xavier Claessens [Wed, 10 Jun 2015 13:17:08 +0000 (09:17 -0400)]
souphttpsrc: Add GTlsInteraction property

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

8 years agortspsrc: Retry connection if tunneling needs authentication
Evan Callaway [Mon, 14 Dec 2015 14:05:06 +0000 (09:05 -0500)]
rtspsrc: Retry connection if tunneling needs authentication

Leverage response from gst_rtsp_connection_connect_with_response to
determine if the connection should be retried using authentication.  If
so, add the appropriate authentication headers based upon the response
and retry the connection.

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

8 years agortspsrc: check port-range format
Luis de Bethencourt [Mon, 14 Dec 2015 14:19:05 +0000 (14:19 +0000)]
rtspsrc: check port-range format

The string could exist but with a wrong format, in that case we still want
to reset the values of client_port_range.min and max like we do if there is
no string.

CID 1139593

8 years agodirectsoundsink: Check device property and fail if device can't be found
Thomas Roos [Mon, 14 Dec 2015 13:55:12 +0000 (14:55 +0100)]
directsoundsink: Check device property and fail if device can't be found

Don't use default if a specific device is set but it can't be found.

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

8 years agodirectsoundsink: Fix handling of the mute property
Thomas Roos [Mon, 14 Dec 2015 13:15:00 +0000 (14:15 +0100)]
directsoundsink: Fix handling of the mute property

- set mute value at startup
- correct set and get mute functions

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

8 years agodirectsoundsink: Check the return value of GetStatus() too to decide if there was...
Thomas Roos [Fri, 11 Dec 2015 10:23:13 +0000 (11:23 +0100)]
directsoundsink: Check the return value of GetStatus() too to decide if there was an error

If GetStatus() fails, the status itself won't be very meaningful but we also
have to look at its return value. This fixes blocking pipelines when removing
sound devices or during other errors, where we wouldn't notice the error and
then wait forever.

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

8 years agoisomp4: remove unused parameters in build_*_extension
Luis de Bethencourt [Thu, 10 Dec 2015 17:41:46 +0000 (17:41 +0000)]
isomp4: remove unused parameters in build_*_extension

AtomTRAK parameter is not used by build_mov_alac_extension(),
build_jp2h_extension(), or build_mov_alac_extension()  and can be
removed.

8 years agoisomp4: replace variable only used once
Luis de Bethencourt [Thu, 10 Dec 2015 15:11:07 +0000 (15:11 +0000)]
isomp4: replace variable only used once

Replace has_shift variable with value since it is only use once.

8 years agortpjitterbuffer: Fix packet dropping after a big discont
Sebastian Dröge [Wed, 9 Dec 2015 10:24:09 +0000 (12:24 +0200)]
rtpjitterbuffer: Fix packet dropping after a big discont

We would queue 5 consective packets before considering a reset and a proper
discont here. Instead of expecting the next output packet to have the current
seqnum (i.e. the fifth), expect it to have the first seqnum. Otherwise we're
going to drop all queued up packets.

8 years agointerleave: Remove unsed field
Ravi Kiran K N [Wed, 9 Dec 2015 06:19:02 +0000 (11:49 +0530)]
interleave: Remove unsed field

Remove unused field collect_event in interleave.

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

8 years agoqtdemux: Stop pushing data as soon as possible in push-mode
Edward Hervey [Mon, 7 Dec 2015 15:33:14 +0000 (16:33 +0100)]
qtdemux: Stop pushing data as soon as possible in push-mode

When working in push-mode, we attempt to push out everything currently
buffered in the adapter.

This has two pitfalls:
* We could stop earlier (the moment we get a non-ok or non-not-linked)
* We return the last combined flow return, which might be completely
  different from the previous combined flow return

8 years agoAutomatic update of common submodule
Nicolas Dufresne [Mon, 7 Dec 2015 14:08:09 +0000 (09:08 -0500)]
Automatic update of common submodule

From b319909 to 86e4663

8 years agortpsession: Add a warning if an empty RTCP packet is tried to be sent
Sebastian Dröge [Mon, 7 Dec 2015 12:41:51 +0000 (14:41 +0200)]
rtpsession: Add a warning if an empty RTCP packet is tried to be sent

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

8 years agovpxdec: Use GstMemory to avoid copies
Nicolas Dufresne [Tue, 1 Dec 2015 00:20:13 +0000 (19:20 -0500)]
vpxdec: Use GstMemory to avoid copies

With the VPX decoders it's not simple to use downstream buffer pool,
because we don't know the image size and alignment when buffers get
allocated. We can though use GstAllocator (for downstream, or the system
allocator) to avoid a copy before pushing if downstream supports
GstVideoMeta. This would still cause a copy for sink that requires
specialized memory and does not have a GstAllocator for that, though
it will greatly improve performance for sink like glimagesink and
cluttersink. To avoid allocating for every buffer, we also use a
internal buffer pool.

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