platform/upstream/gstreamer.git
8 years agowebpdec: Wait for segment event before checking it
Nicolas Dufresne [Wed, 8 Jun 2016 01:10:04 +0000 (21:10 -0400)]
webpdec: Wait for segment event before checking it

The heuristic to choose between packetise or not was changed to use the
segment format. The problem is that this change is reading the segment
during the caps event handling. The segment event will only be sent
after. That prevented the decoder to go in packetize mode, and avoid
useless parsing.

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

8 years agovmncdec: Wait for segment event before checking it
Nicolas Dufresne [Wed, 8 Jun 2016 01:04:21 +0000 (21:04 -0400)]
vmncdec: Wait for segment event before checking it

The heuristic to choose between packetise or not was changed to use the
segment format. The problem is that this change is reading the segment
during the caps event handling. The segment event will only be sent
after. That prevented the decoder to go in packetize mode, and avoid
useless parsing.

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

8 years agoopenjpeg: fix builddir != srcdir build, and distcheck
Tim-Philipp Müller [Tue, 7 Jun 2016 13:15:41 +0000 (14:15 +0100)]
openjpeg: fix builddir != srcdir build, and distcheck

8 years agojpeg2000parse: Add JPEG2000 parser element
Aaron Boxer [Wed, 1 Jun 2016 23:02:33 +0000 (19:02 -0400)]
jpeg2000parse: Add JPEG2000 parser element

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

8 years agoopenjpeg: set sampling in the caps
Aaron Boxer [Wed, 1 Jun 2016 23:01:44 +0000 (19:01 -0400)]
openjpeg: set sampling in the caps

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

8 years agompegtsmux: Set PTS on aligned buffers
Jan Alexander Steffens (heftig) [Mon, 2 May 2016 15:38:50 +0000 (17:38 +0200)]
mpegtsmux: Set PTS on aligned buffers

This was broken in 09c05df (make "alignment" property more useful for
packetisation).

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

8 years agovtdec: always drain in ::negotiate
Alessandro Decina [Tue, 7 Jun 2016 07:22:01 +0000 (17:22 +1000)]
vtdec: always drain in ::negotiate

Move calling gst_vtdec_push_frames_if_needed from ::set_format to ::negotiate so
that we always drain even when renegotiation is triggered by downstream.

8 years agovtdec: try to preserve downstream caps order
Alessandro Decina [Tue, 7 Jun 2016 06:00:01 +0000 (16:00 +1000)]
vtdec: try to preserve downstream caps order

vtdec specifies sysmem; GLMemory as template caps. When negotiating, we used to
call gst_pad_peer_query_caps (..., filter) with our template caps as filter. The
query does gst_caps_intersect (filter, peercaps) internally which gives
precedence to the order of the filter caps. While we want to output sysmem by
default, when negotiating with glimagesink which returns GLMemory; sysmem; we
do want to do GL, so we now query using a NULL filter and intersect the result
with our template caps giving precedence to downstream's caps.

tl;dr: make sure we end up negotiating GLMemory with glimagesink

8 years agoahcsrc: Avoid a div by 0 warning
Xavier Claessens [Mon, 6 Jun 2016 18:08:43 +0000 (14:08 -0400)]
ahcsrc: Avoid a div by 0 warning

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

8 years agoamcvideoenc: Do not call gst_object_unref on GstCaps
Xavier Claessens [Mon, 6 Jun 2016 16:38:45 +0000 (12:38 -0400)]
amcvideoenc: Do not call gst_object_unref on GstCaps

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

8 years agoadaptivedemux: Set DISCONT on startup, resume and after seeks
Edward Hervey [Thu, 19 May 2016 09:16:50 +0000 (11:16 +0200)]
adaptivedemux: Set DISCONT on startup, resume and after seeks

Initial buffers after STREAM_START and seeks should always have the
DISCONT flag set.

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

8 years agotsdemux: Change the pad naming scheme to include a generation ID
Jan Schmidt [Tue, 22 Sep 2015 16:51:57 +0000 (02:51 +1000)]
tsdemux: Change the pad naming scheme to include a generation ID

A simple fix for the problem of creating new pads with duplicate
names when switching program, easier than the alternative of
trying to work out which pads might persist and manage that.

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

8 years agoplayer: pause() should not inhibit signals but work exactly like play()
Sebastian Dröge [Mon, 6 Jun 2016 08:13:00 +0000 (11:13 +0300)]
player: pause() should not inhibit signals but work exactly like play()

https://bugzilla.gnome.org/show_bug.cgi?id=766607#c23

8 years agodvbsrc: improve description of PIDs property
Reynaldo H. Verdejo Pinochet [Fri, 3 Jun 2016 22:58:52 +0000 (15:58 -0700)]
dvbsrc: improve description of PIDs property

8 years agoapplemedia: Only use the OpenGL framework on OSX
Edward Hervey [Fri, 3 Jun 2016 05:11:33 +0000 (07:11 +0200)]
applemedia: Only use the OpenGL framework on OSX

It's not available on ios (uses OpenGLES already)

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

8 years agogst-libs: gl, video: use MAY_BE_LEAKED flag
Guillaume Desmottes [Tue, 17 May 2016 14:14:49 +0000 (17:14 +0300)]
gst-libs: gl, video: use MAY_BE_LEAKED flag

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

8 years agoa2dpsink: unref avdtpsink if state transition failed
Guillaume Desmottes [Wed, 18 May 2016 09:48:48 +0000 (12:48 +0300)]
a2dpsink: unref avdtpsink if state transition failed

If for some reason the avdtpsink element can't go READY then the
gsta2dpsink can't either and so should release the ressources it
allocates when trying to do so.

Fix a leak with the generic/states test.

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

8 years agoapplemedia: CGLTexImageIOSurface2D needs the OpenGL framework on OSX
Havard Graff [Sat, 28 May 2016 19:34:52 +0000 (21:34 +0200)]
applemedia: CGLTexImageIOSurface2D needs the OpenGL framework on OSX

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

8 years agoavsamplevideosink: check we are compiling for 10.1 up to 10.4
Havard Graff [Sat, 28 May 2016 19:39:00 +0000 (21:39 +0200)]
avsamplevideosink: check we are compiling for 10.1 up to 10.4

This API was deprecated in 10.4, so don't use it for 10.5 and onwards.

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

8 years agoapplemedia: vtenc: Register a hardware-only vtenc_h264_hw element on OSX
Heinrich Fink [Wed, 1 Jun 2016 11:43:32 +0000 (13:43 +0200)]
applemedia: vtenc: Register a hardware-only vtenc_h264_hw element on OSX

Similar to vtdec_hw, this commit adds a vtenc_h264_hw element that fails
caps negotiation unless a hardware encoder could actually be acquired.
This is useful in situations where a fallback to a software encoder
other than the vtenc_h264 software encoder is desired (e.g. to x264enc).

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

8 years agovtdec: make vtdec_hw fallback to software on renegotiation
Alessandro Decina [Thu, 2 Jun 2016 06:30:02 +0000 (16:30 +1000)]
vtdec: make vtdec_hw fallback to software on renegotiation

When renegotiating mid stream - for example with variable bitrate
streams - and therefore destroying and recreating VTSessions, the
hw decoder might become temporarily unavailable.

To deal with this and avoid erroring out on bitrate changes,
vtdec_hw now falls back to using the software decoder if the hw
one was available at some point but isn't anymore. At
renegotiation/bitrate change time, it will still retry to open
the hardware one.

8 years agovtdec: fix switching from GLMemory to Sysmem
Alessandro Decina [Thu, 2 Jun 2016 03:10:51 +0000 (13:10 +1000)]
vtdec: fix switching from GLMemory to Sysmem

When renegotiating from GLMemory to Sysmem do teardown the texture_cache.

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

8 years agovtdec: optimize renegotiation
Alessandro Decina [Thu, 2 Jun 2016 01:36:57 +0000 (11:36 +1000)]
vtdec: optimize renegotiation

::negotiate can be called several times before the CAPS event is sent downstream
so use the currently configured output state caps instead of the pad current
caps when deciding whether to recreate the VTSession or not.

This leads to creating/destroying less VTSessions which makes renegotiation more
reliable especially when using hw decoding.

8 years agodvbsrc: remove comment on self-explanatory code
Reynaldo H. Verdejo Pinochet [Wed, 1 Jun 2016 20:52:10 +0000 (13:52 -0700)]
dvbsrc: remove comment on self-explanatory code

8 years agodvbsrc: avoid out-bound write on PID filter array
Reynaldo H. Verdejo Pinochet [Wed, 1 Jun 2016 20:18:21 +0000 (13:18 -0700)]
dvbsrc: avoid out-bound write on PID filter array

There's no need for an end-of-list marker in the filter
PIDs array if full, as the absolute maximum number of
elements (MAX_FILTERS) is known.

CID #1362441

8 years agoandroidmedia: fix error debug message when camera doesn't exist
Tim-Philipp Müller [Tue, 31 May 2016 19:41:14 +0000 (20:41 +0100)]
androidmedia: fix error debug message when camera doesn't exist

Makes no sense to include the system error here since errno
will likely not be set and then it says 'system error: success'
which is confusing.

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

8 years agoahcsrc: release resources in 'finalize' function
Justin Kim [Tue, 31 May 2016 09:58:43 +0000 (18:58 +0900)]
ahcsrc: release resources in 'finalize' function

In general, 'dispose' function is used for dropping all references
and 'finalize' is called for releasing instances.

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

8 years agoplayer: inhibit signals after gst_player_stop() has been called
Guillaume Desmottes [Wed, 25 May 2016 13:01:31 +0000 (15:01 +0200)]
player: inhibit signals after gst_player_stop() has been called

Also wait for the state change to STOP to have been announced before
destroying the player so it won't appear as leaked by leak detector
tools.

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

8 years agoplayer: handle uri-loaded in test
Guillaume Desmottes [Wed, 25 May 2016 10:48:13 +0000 (12:48 +0200)]
player: handle uri-loaded in test

Had to adapt the existing tests because of this new callback.

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

8 years agoh265parse: Don't assume contiguous id's in make_codec_data
Scott D Phillips [Wed, 25 May 2016 23:57:49 +0000 (16:57 -0700)]
h265parse: Don't assume contiguous id's in make_codec_data

vps/sps/pps id's are not required to be used contiguously.

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

8 years agodvbsrc: add sample ATSC launch line
Reynaldo H. Verdejo Pinochet [Sat, 28 May 2016 08:22:32 +0000 (01:22 -0700)]
dvbsrc: add sample ATSC launch line

8 years agogl: glquery: cast to silence compiler warning
Havard Graff [Sat, 28 May 2016 19:36:04 +0000 (21:36 +0200)]
gl: glquery: cast to silence compiler warning

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

8 years agogltestsrc: gltestsrc.h already defines GstGLTestSrc
Havard Graff [Sat, 28 May 2016 19:35:37 +0000 (21:35 +0200)]
gltestsrc: gltestsrc.h already defines GstGLTestSrc

And redefinition is not allowed.

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

8 years agoplayer: use correct _NONE enum
Havard Graff [Fri, 27 May 2016 21:24:54 +0000 (23:24 +0200)]
player: use correct _NONE enum

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

8 years agoh264parser: maintain minimal ABI compat
Tim-Philipp Müller [Sat, 28 May 2016 09:44:04 +0000 (10:44 +0100)]
h264parser: maintain minimal ABI compat

Because we can.

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

8 years agoh264parser: Remove unused fps_num/fps_den fields
Sebastian Dröge [Thu, 22 May 2014 14:12:01 +0000 (16:12 +0200)]
h264parser: Remove unused fps_num/fps_den fields

Instead the newly added function should be used to calculate
the framerate properly.

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

8 years agosmoothstreaming: update fps calculation for h264 codec parser API changes
Tim-Philipp Müller [Wed, 25 May 2016 09:59:00 +0000 (10:59 +0100)]
smoothstreaming: update fps calculation for h264 codec parser API changes

Use new gst_h264_video_calculate_framerate() API instead of fps_n/fps_d
fields in SPS struct which are to be removed.

Apparently H264 content in MSS is always non-interlaced/progressive,
so we can just pass 0 for field_pic_flag and don't need to parse any
slice headers first if there's no external signalling. But even if
that's not the case the new code is not worse than the existing code.

https://msdn.microsoft.com/en-us/library/cc189080%28VS.95%29.aspx

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

8 years agodvbsrc: use single marker at end of filtering PID list
Reynaldo H. Verdejo Pinochet [Thu, 26 May 2016 17:28:14 +0000 (10:28 -0700)]
dvbsrc: use single marker at end of filtering PID list

Avoids at least ~100 unneeded assignment operations at runtime

8 years agodvbsrc: simplify reporting of set polarity
Reynaldo H. Verdejo Pinochet [Mon, 23 May 2016 23:31:05 +0000 (16:31 -0700)]
dvbsrc: simplify reporting of set polarity

8 years agodvbsrc: fix bandwidth-hz property description
Reynaldo H. Verdejo Pinochet [Mon, 23 May 2016 21:41:40 +0000 (14:41 -0700)]
dvbsrc: fix bandwidth-hz property description

Bandwidth Hz is no longer a DVBT-only property

8 years agodvbsrc: fix usage of PES & DVR acronyms everywhere
Reynaldo H. Verdejo Pinochet [Mon, 23 May 2016 21:02:10 +0000 (14:02 -0700)]
dvbsrc: fix usage of PES & DVR acronyms everywhere

Additionally, improve message on gst_poll_new() failure

8 years agogldisplay: always unref the context on a collision
Matthew Waters [Thu, 26 May 2016 10:16:07 +0000 (20:16 +1000)]
gldisplay: always unref the context on a collision

Otherwise we will leak GstGLContext's when adding the same context more than
once.

Fixes a regression caused by 5f9d10f6036068502ad23e1ec86a73e341801ae1 in the
gstglcontext unit test that failed with:

Assertion 'tmp == NULL' failed

8 years agoRevert "aggregator: Start the task when linked"
Nicolas Dufresne [Wed, 25 May 2016 17:38:47 +0000 (13:38 -0400)]
Revert "aggregator: Start the task when linked"

This reverts commit 302580c3815136d29479c3a8cae611d6e2ff3709.

8 years agocaopengllayersink: Don't cache buffer pool
Nicolas Dufresne [Fri, 20 May 2016 18:34:37 +0000 (14:34 -0400)]
caopengllayersink: Don't cache buffer pool

Pools cannot be used by the two elements at the same time.

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

8 years agoaggregator: Start the task when linked
Nicolas Dufresne [Wed, 13 Apr 2016 20:30:28 +0000 (16:30 -0400)]
aggregator: Start the task when linked

Until now we would start the task when the pad is activated. Part of the
activiation concist of testing if the pipeline is live or not.
Unfortunatly, this is often too soon, as it's likely that the pad get
activated before it is fully linked in dynamic pipeline.

Instead, start the task when the first serialized event arrive. This is
a safe moment as we know that the upstream chain is complete and just
like the pad activation, the pads are locked, hence cannot change.

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

8 years agogl: win32: Add debug category in gstglcontext_wgl.c
Xavier Claessens [Wed, 25 May 2016 13:09:01 +0000 (09:09 -0400)]
gl: win32: Add debug category in gstglcontext_wgl.c

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

8 years agoglimagesink: support video rotation using transform matrix
Haihua Hu [Mon, 16 May 2016 12:02:28 +0000 (20:02 +0800)]
glimagesink: support video rotation using transform matrix

Add "rotate-method" to glimagesink and apply transform matrix
to vertex coordinate to control rotation.

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

8 years agoglvideomixer: fix race retrieving the GL context from the display
Matthew Waters [Tue, 24 May 2016 13:39:27 +0000 (23:39 +1000)]
glvideomixer: fix race retrieving the GL context from the display

_get_gl_context() can be called concurrently from either propose_allocation() or
decide_allocation().  If it so happens that this happens at the same time,
the check for whether we already had a GL context was outside the lock.  Inside
the lock and loop, the first thing that happens is that we unref the current GL
context (if valid) as if there was a conflict adding it to the display.  If the
timing was unlucky, subsequent use of the GL context would be referencing an
already unreffed GL context object resulting in a critical:

g_object_ref: assertion 'object->ref_count > 0' failed

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

8 years agogldisplay: add some debugging about retrieving GL contexts
Matthew Waters [Tue, 24 May 2016 13:38:22 +0000 (23:38 +1000)]
gldisplay: add some debugging about retrieving GL contexts

8 years agoeglimage: Re-add accidentially removed GST_DEFINE_MINI_OBJECT_TYPE()
Sebastian Dröge [Wed, 25 May 2016 07:01:38 +0000 (10:01 +0300)]
eglimage: Re-add accidentially removed GST_DEFINE_MINI_OBJECT_TYPE()

8 years agoplayer: fix suburi getter debug message
Guillaume Desmottes [Mon, 23 May 2016 12:24:53 +0000 (15:24 +0300)]
player: fix suburi getter debug message

The property is a string, not a boolean.

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

8 years agoplayer: Don't set subtitle URI directly but dispatch to the player thread
Sebastian Dröge [Wed, 25 May 2016 06:53:15 +0000 (09:53 +0300)]
player: Don't set subtitle URI directly but dispatch to the player thread

Otherwise we do state changes and everything in the application thread, which
might block and more important can cause reentrant signals.

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

8 years agoeglimage: Ensure that the debug category is always initalized
Sebastian Dröge [Mon, 23 May 2016 17:11:17 +0000 (20:11 +0300)]
eglimage: Ensure that the debug category is always initalized

Before the initializer was only run if dmabuf support was used.

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

8 years agogltransformation: make the pivot-z property READWRITE
Arjen Veenhuizen [Tue, 24 May 2016 13:30:09 +0000 (23:30 +1000)]
gltransformation: make the pivot-z property READWRITE

Instead of just being READABLE.

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

8 years agogltestsrc: fix src_impl leak
Guillaume Desmottes [Mon, 23 May 2016 07:40:58 +0000 (10:40 +0300)]
gltestsrc: fix src_impl leak

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

8 years agog-i: pass compiler env to g-ir-scanner
Tim-Philipp Müller [Mon, 23 May 2016 23:55:11 +0000 (00:55 +0100)]
g-i: pass compiler env to g-ir-scanner

It's what introspection.mak does as well. Should
fix spurious build failures on gnome-continuous.

8 years agopnmdec: Fix ASCII parsing
Jan Schmidt [Mon, 23 May 2016 21:17:22 +0000 (07:17 +1000)]
pnmdec: Fix ASCII parsing

Parse gray16 properly in ascii mode, and fix
some bugs around reading data in chunks when
ascii values cross chunk boundaries

8 years agopnm: Add a basic unit test
Jan Schmidt [Wed, 18 May 2016 15:28:04 +0000 (01:28 +1000)]
pnm: Add a basic unit test

Test that we can run an encode / decode cycle in various
formats without errors

8 years agopnmenc: Make output caps match the srcpad template
Jan Schmidt [Wed, 18 May 2016 15:04:36 +0000 (01:04 +1000)]
pnmenc: Make output caps match the srcpad template

Don't output 'image/pnm', which isn't even in the template
caps. Instead, output a mime-type consistent with what we
are encoding.

8 years agopnmenc: Tidy up code, support BE/LE GRAY16 properly
Jan Schmidt [Wed, 18 May 2016 07:19:40 +0000 (17:19 +1000)]
pnmenc: Tidy up code, support BE/LE GRAY16 properly

Remove code that dealt with odd strides separately - there's
not really any overhead to just using 1 codepath for both matched
and unmatched stride output.

Add separate codepaths for BE vs LE GRAY16 input so they're
handled properly

8 years agopnmdec: Actually output LE or BE GRAY16 as negotiated
Jan Schmidt [Mon, 16 May 2016 11:22:57 +0000 (21:22 +1000)]
pnmdec: Actually output LE or BE GRAY16 as negotiated

Add codepaths to output GRAY16 in little or big endian
as negotiated.

Move all output format negotiation into a central
function and clean it up

8 years agopnmdec: Implementation of GRAY16 handling
Dimitrios Katsaros [Thu, 22 Oct 2015 15:06:01 +0000 (17:06 +0200)]
pnmdec: Implementation of GRAY16 handling

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

8 years agopnmenc: Implementation of GRAY16 handling
Dimitrios Katsaros [Mon, 19 Oct 2015 15:15:30 +0000 (17:15 +0200)]
pnmenc: Implementation of GRAY16 handling

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

8 years agokmsbufferpool: error only if no allocator
Víctor Manuel Jáquez Leal [Fri, 20 May 2016 17:25:57 +0000 (19:25 +0200)]
kmsbufferpool: error only if no allocator

Do not expect an allocator from the configuration, but expect to have already
one set.

8 years agokmssink: frame copy log in performance category
Víctor Manuel Jáquez Leal [Sun, 15 May 2016 09:52:55 +0000 (11:52 +0200)]
kmssink: frame copy log in performance category

Log the message when the frame is going to be copy (worse case) under the
performance log category.

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

8 years agokmssink: use trace level for buffer render log
Víctor Manuel Jáquez Leal [Sun, 15 May 2016 09:51:22 +0000 (11:51 +0200)]
kmssink: use trace level for buffer render log

Instead of using debug level for logging each buffer rendered, use trace
level.

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

8 years agoplayer: Fix documentation for gst_player_video_info_get_framerate()
Arun Raghavan [Mon, 23 May 2016 11:30:22 +0000 (17:00 +0530)]
player: Fix documentation for gst_player_video_info_get_framerate()

Document out parameters and fix function name.

8 years agoplayer: use gst_check_init() in test
Guillaume Desmottes [Wed, 18 May 2016 13:00:47 +0000 (16:00 +0300)]
player: use gst_check_init() in test

Calling GST_DEBUG() in test rely on the default category to be defined,
which is done in gst_check_init().

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

8 years agoopenjpegenc: enable MCT for RGB video
Aaron Boxer [Fri, 20 May 2016 21:28:52 +0000 (17:28 -0400)]
openjpegenc: enable MCT for RGB video

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

8 years agodvbsrc: group DVB-T2 substream-id check with its corresponding set_prop()
Reynaldo H. Verdejo Pinochet [Fri, 20 May 2016 21:08:03 +0000 (14:08 -0700)]
dvbsrc: group DVB-T2 substream-id check with its corresponding set_prop()

8 years agodvbsrc: add DVB-S2 sub-stream ID check
Reynaldo H. Verdejo Pinochet [Fri, 20 May 2016 20:57:45 +0000 (13:57 -0700)]
dvbsrc: add DVB-S2 sub-stream ID check

Disable if invalid (> 255) instead of blindy setting this
property regardless of its actual value.

8 years agodvbsrc: clarify consequence of passing a wrong ID to the substream filter
Reynaldo H. Verdejo Pinochet [Fri, 20 May 2016 20:47:06 +0000 (13:47 -0700)]
dvbsrc: clarify consequence of passing a wrong ID to the substream filter

8 years agogltestsrc: fix shaders ref counting
Guillaume Desmottes [Thu, 19 May 2016 14:05:33 +0000 (17:05 +0300)]
gltestsrc: fix shaders ref counting

The gltestsrc element uses two shaders: color_shader and snow_shader.
Those are alternatively assigned to the SrcShader->shader pointer and
their reference was transferred to it. Only the SrcShader->shader was
unreffed (in _src_shader_deinit()) so only one shader was properly
freed, the other one was leaked.

Fixed this by giving an extra ref to SrcShader->shader and unreffing the
2 shaders in _src_smpte_free().

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

8 years agoglmosaic: fix shader leak
Guillaume Desmottes [Thu, 19 May 2016 13:55:31 +0000 (16:55 +0300)]
glmosaic: fix shader leak

gst_gl_mosaic_init_shader() is called twice with test_glmosaic so the
first shader was leaked.

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

8 years agogl: win32: Unparent internal window before destroying it
Xavier Claessens [Mon, 16 May 2016 21:11:53 +0000 (17:11 -0400)]
gl: win32: Unparent internal window before destroying it

For some reason DestroyWindow() deadlock if it's called from
parent window's KeyPress event.

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

8 years agogl: win32: Don't steal parent focus when creating internal window
Xavier Claessens [Mon, 16 May 2016 19:26:53 +0000 (15:26 -0400)]
gl: win32: Don't steal parent focus when creating internal window

This fix regression introduced by 0acc18c60f6f962cc6553f6047fdb64891bab544.

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

8 years agovideoaggregator: Don't wait if input buffer is after output
Olivier Crête [Sat, 14 May 2016 09:56:59 +0000 (11:56 +0200)]
videoaggregator: Don't wait if input buffer is after output

If the input buffer is after the end of the output buffer, then waiting
for more data won't help. We will never get an input buffer for this point.

This fixes compositing of streams from rtspsrc.

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

8 years agoahc: fix potential NULL deref
Martin Kelly [Thu, 19 May 2016 16:25:57 +0000 (09:25 -0700)]
ahc: fix potential NULL deref

This bug was found via cppcheck static analysis.

If android.hardware.Camera.getParameters returns NULL, then object will
be NULL, and we won't allocate params. This means that the GST_DEBUG
statement referencing params->object will be invalid. Fix this by
exiting early if android.hardware.Camera.getParameters returns NULL.

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

8 years agoahc: fix typo in doc blurb
Martin Kelly [Thu, 19 May 2016 18:33:52 +0000 (11:33 -0700)]
ahc: fix typo in doc blurb

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

8 years agoadaptivedemux: fix pending tags leak
Guillaume Desmottes [Wed, 18 May 2016 13:55:38 +0000 (16:55 +0300)]
adaptivedemux: fix pending tags leak

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

8 years agokmssink: chain up finalize method
Guillaume Desmottes [Wed, 18 May 2016 09:30:05 +0000 (12:30 +0300)]
kmssink: chain up finalize method

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

8 years agoexamples: opencv: typo fix
Martin Kelly [Wed, 18 May 2016 19:33:51 +0000 (12:33 -0700)]
examples: opencv: typo fix

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

8 years agolv2: support CVPorts
Stefan Sauer [Thu, 19 May 2016 04:29:15 +0000 (21:29 -0700)]
lv2: support CVPorts

CVPorts are ports that take a buffer. For now we just fill the buffers with
the control value.

8 years agolv2: use _OBJECT log variants and lower log level when processing
Stefan Sauer [Thu, 19 May 2016 04:26:50 +0000 (21:26 -0700)]
lv2: use _OBJECT log variants and lower log level when processing

8 years agodvbsrc: move ISDB-T bandwidth check to _is_valid_bandwidth()
Reynaldo H. Verdejo Pinochet [Tue, 17 May 2016 21:33:04 +0000 (14:33 -0700)]
dvbsrc: move ISDB-T bandwidth check to _is_valid_bandwidth()

Allows test to be used for delivery system auto-detection.

Additionally, add 0 (auto) as valid value.

8 years agodvbsrc: add '0' as a valid value for bandwidth
Reynaldo H. Verdejo Pinochet [Tue, 17 May 2016 21:19:30 +0000 (14:19 -0700)]
dvbsrc: add '0' as a valid value for bandwidth

Underlying API considers this the BANDWIDTH_HZ equivalent
to the old BANDWIDTH_AUTO for BANDWIDTH.

8 years agodvbsrc: factor out and reuse DVB-T/T2 bandwidth checks
Reynaldo H. Verdejo Pinochet [Tue, 17 May 2016 20:53:54 +0000 (13:53 -0700)]
dvbsrc: factor out and reuse DVB-T/T2 bandwidth checks

Use new utility function as an additional check for delivery
system auto-detection.

8 years agodvb/parsechannels: recognize additional bandwidths at zap parsing
Reynaldo H. Verdejo Pinochet [Tue, 17 May 2016 19:06:45 +0000 (12:06 -0700)]
dvb/parsechannels: recognize additional bandwidths at zap parsing

Previously ignored 1.712, 5 and 10 MHz values are also valid

8 years agovideoaggregator: canonicalise function names
Tim-Philipp Müller [Mon, 16 May 2016 11:27:50 +0000 (12:27 +0100)]
videoaggregator: canonicalise function names

Had to be done at some point:
gst_videoaggregator_* -> gst_video_aggregator_*
Also fix up some function names with typos.

8 years agolv2: cleanup the predicates
Stefan Sauer [Mon, 16 May 2016 06:31:33 +0000 (23:31 -0700)]
lv2: cleanup the predicates

Use the defines from the headers and get rid of our own namespace defines.
Replace the 'role' prop with 'designation'.

8 years agolv2: tweak enum logging
Stefan Sauer [Mon, 16 May 2016 06:27:22 +0000 (23:27 -0700)]
lv2: tweak enum logging

Log more details when we find a bad scalepoint and downgrade the logging of the
good enum valzes.

8 years agolv2: generate enums from scalepoints
Stefan Sauer [Mon, 16 May 2016 05:05:43 +0000 (22:05 -0700)]
lv2: generate enums from scalepoints

Plugins can provide a set of named values for a control port. Ideally only those
values are set for the property. Check if all scalepoints are integers and if so
generate an enum type.

8 years agolv2: reduce log spam for property bounds
Stefan Sauer [Mon, 16 May 2016 02:45:26 +0000 (19:45 -0700)]
lv2: reduce log spam for property bounds

Only complain about bad bounds, if the plugin actually set those. Otherwise
silently adjust our defaults.

8 years agolv2: remove lv2_symbol_pred
Stefan Sauer [Mon, 16 May 2016 00:58:51 +0000 (17:58 -0700)]
lv2: remove lv2_symbol_pred

We're not actually using it.

8 years agolv2: remove leftover FIME
Stefan Sauer [Mon, 16 May 2016 00:54:06 +0000 (17:54 -0700)]
lv2: remove leftover FIME

8 years agodvbsrc: special case detection when DVB-T and T2 seem valid
Reynaldo H. Verdejo Pinochet [Sun, 15 May 2016 07:41:12 +0000 (00:41 -0700)]
dvbsrc: special case detection when DVB-T and T2 seem valid

There is no way to tell one over the other when parameters
seem valid for DVB-T and DVB-T2 and the adapter supports
both. Reason to go with the former here is that, from
experience, most DVB-T2 channels out there seem to use
parameters that are not valid for DVB-T, like QAM_256

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

8 years agodvbsrc: add transmission mode check for DTMB
Reynaldo H. Verdejo Pinochet [Sun, 15 May 2016 06:32:49 +0000 (23:32 -0700)]
dvbsrc: add transmission mode check for DTMB

8 years agodvb/parsechannels: use proper fe_spectral_inversion enum identifiers
Reynaldo H. Verdejo Pinochet [Fri, 13 May 2016 08:54:56 +0000 (01:54 -0700)]
dvb/parsechannels: use proper fe_spectral_inversion enum identifiers

8 years agodvbsrc: explicitly disable stream filter for invalid ids
Reynaldo H. Verdejo Pinochet [Fri, 13 May 2016 08:25:08 +0000 (01:25 -0700)]
dvbsrc: explicitly disable stream filter for invalid ids

8 years agodvb/parsechannels: do not assume DVB-T from zap file alone
Reynaldo H. Verdejo Pinochet [Fri, 13 May 2016 07:50:45 +0000 (00:50 -0700)]
dvb/parsechannels: do not assume DVB-T from zap file alone

DVB-T/T2 have the same number of fields so we were
wrongly assuming DVB-T for DVB-T2 broadcasts. Not
setting the delivery system here allows for dvbsrc
to make an informed guess based on the channel
parameters.