Florin Apostol [Wed, 16 Dec 2015 10:23:23 +0000 (10:23 +0000)]
adaptivedemux: fixed clock compensation in get_fragment_waiting_time
Clock compensation is calculated in usec but is added to a GstClockTime value.
https://bugzilla.gnome.org/show_bug.cgi?id=759534
Sebastian Dröge [Wed, 16 Dec 2015 09:21:59 +0000 (10:21 +0100)]
applemedia: Link to IOSurface.framework for the IOSurface API
Dave Craig [Tue, 15 Dec 2015 17:10:00 +0000 (17:10 +0000)]
videoparsers: Check for NULL return value of gst_pad_get_current_caps()
https://bugzilla.gnome.org/show_bug.cgi?id=759503
Vineeth TM [Wed, 16 Dec 2015 05:32:20 +0000 (14:32 +0900)]
ivtc: Fix value memory leak
gvalue variable should be unset instead of reset.
https://bugzilla.gnome.org/show_bug.cgi?id=759525
Vineeth TM [Wed, 16 Dec 2015 05:29:20 +0000 (14:29 +0900)]
combdetect: Fix value memory leak
gvalue variable should be unset instead of reset.
https://bugzilla.gnome.org/show_bug.cgi?id=759523
Vineeth TM [Wed, 16 Dec 2015 04:08:22 +0000 (13:08 +0900)]
pnmdec: Fix scanner memory leak
For corrupted files, scanner memory is being leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=759522
Vineeth TM [Wed, 16 Dec 2015 04:06:45 +0000 (13:06 +0900)]
pnmdec: Fix buffer memory leak
In case of corrupted file, s->buf allocated is not being freed
https://bugzilla.gnome.org/show_bug.cgi?id=759522
Vineeth TM [Wed, 16 Dec 2015 00:05:42 +0000 (09:05 +0900)]
pnmenc: Fix string memory leak
header being allocated is not freed resulting in leak
https://bugzilla.gnome.org/show_bug.cgi?id=759520
Vineeth TM [Tue, 15 Dec 2015 23:52:12 +0000 (08:52 +0900)]
gdppay: Fix buffer memory leak
outbuffer being allocated is not being pushed to queue for EOS event and hence
should be freed.
https://bugzilla.gnome.org/show_bug.cgi?id=759519
Sebastian Dröge [Wed, 16 Dec 2015 08:39:03 +0000 (09:39 +0100)]
applemedia: Link to IOKit.framework for IOSurface related functions
Sebastian Dröge [Wed, 16 Dec 2015 08:33:12 +0000 (09:33 +0100)]
docs: update to git
Vineeth TM [Tue, 15 Dec 2015 23:25:19 +0000 (08:25 +0900)]
yadif: Fix illegal memory access
When applying the spatial prediction, there is an illegal access of -1 index of array.
Hence adding a condition to avoid this.
https://bugzilla.gnome.org/show_bug.cgi?id=759518
Vineeth TM [Tue, 15 Dec 2015 23:22:00 +0000 (08:22 +0900)]
yadif: Fix gvalue memory leak
gvalue variable should be unset instead of reset.
https://bugzilla.gnome.org/show_bug.cgi?id=759518
Alessandro Decina [Wed, 16 Dec 2015 06:02:27 +0000 (17:02 +1100)]
applemedia: vtdec: fix texture-target on iOS
Alessandro Decina [Wed, 16 Dec 2015 04:20:30 +0000 (15:20 +1100)]
applemedia: vtdec: remove obsolete FIXME
Alessandro Decina [Wed, 16 Dec 2015 03:38:44 +0000 (14:38 +1100)]
applemedia: avfvideosrc: rework GLMemory negotiation
Only do GLMemory when a GstGLContext is available AND GLMemory is actually
negotiated with downstream.
Alessandro Decina [Wed, 16 Dec 2015 02:47:00 +0000 (13:47 +1100)]
applemedia: avfvideosrc: update after IOSurface changes
Prefer GLMemory over sysmem. Also now when pushing GLMemory we push the
original formats (UYVY in OSX, BGRA in iOS) and leave it to downstream to
convert.
Alessandro Decina [Mon, 14 Dec 2015 05:10:01 +0000 (16:10 +1100)]
applemedia: vtdec: remove the internal GstGLColorConvert
It was added back in the day to make texture sharing work by default with
glimagesink inside playbin. These days glimagesink accepts (and converts) YUV
internally so it's no longer needed.
Alessandro Decina [Mon, 14 Dec 2015 03:23:20 +0000 (14:23 +1100)]
applemedia: vtdec: decouple outputting textures from outputting RGBA
We're going to be able to output NV12 textures soon.
Alessandro Decina [Fri, 11 Dec 2015 02:20:05 +0000 (13:20 +1100)]
applemedia: vtdec: switch to IOSurface on Mac
Switch to using IOSurface instead of CVOpenGLTextureCache on OSX. The latter can't be
used anymore to do YUV => RGB with opengl3 on El Capitan as GL_YCBCR_422_APPLE
has been removed from the opengl3 driver. Also switch to NV12 from UYVY, which
was the only YUV format supported by CVOpenGLTextureCache.
Alessandro Decina [Thu, 10 Dec 2015 05:22:08 +0000 (16:22 +1100)]
applemedia: rename GstCoreVideoTextureCache to GstVideoTextureCache
First of a few commits to stop using CVOpenGLTextureCache on OSX and use
IOSurfaces directly instead. CVOpenGLTextureCache hasn't been updated for OpenGL
3 which is why texture sharing is currently disabled on OSX.
Alessandro Decina [Tue, 17 Nov 2015 08:31:53 +0000 (19:31 +1100)]
Revert "vtdec: disable the texture cache on OSX"
This reverts commit
f02425c4afcd85260a1b387aeddf863774257917.
Alessandro Decina [Tue, 15 Dec 2015 03:17:16 +0000 (14:17 +1100)]
glupload: fix allocator name after GLMemory API changes
Nicolas Dufresne [Wed, 16 Dec 2015 00:28:05 +0000 (19:28 -0500)]
qtsink: Add configured GL cflags to the build
We don't directly link to GL in the element, though we use GL headers.
For this reason we need to include the proper GL headers path. This
prevent this element from using a different GL header then libgstgl.
Nicolas Dufresne [Wed, 16 Dec 2015 00:25:16 +0000 (19:25 -0500)]
gl: Allow using non-system mesa with both GL and GLES
GCC automatically disable redundance warnings for system headers. As
soon as we start using a non-system installed mesa, we would start
having issues. The test for both wasn't setting any flags, so it would
work but then fail at runtime.
This is being fixed by disabling in the code (where needed only) that
GCC warning. The test is also fixed to avoid the false positive we had.
Luis de Bethencourt [Tue, 15 Dec 2015 15:59:30 +0000 (15:59 +0000)]
opencv: pyramidsegment: fix example launch line
Use videotestsrc and autovideosink in the example gst-launch-1.0 line and
not a useless fakesrc-fakesink example.
Luis de Bethencourt [Tue, 15 Dec 2015 15:56:19 +0000 (15:56 +0000)]
opencv: add headers with example launch lines
Add description headers for all the OpenCV plugins missing them, so we can
have gst-launch-1.0 example launch lines for all of them.
Nicolas Dufresne [Mon, 14 Dec 2015 21:48:45 +0000 (16:48 -0500)]
opengl: Use pkg-config if available
libMesa ships .pc files now for gl/egl/glesv2. This patch makes use
of it while keeping support for system without.
https://bugzilla.gnome.org/show_bug.cgi?id=751068
Luis de Bethencourt [Tue, 15 Dec 2015 11:59:00 +0000 (11:59 +0000)]
geometrictransform: add headers with example launch lines
Add description headers for all geometrictransform elements so we can have
gst-launch-1.0 example launch lines for all of them.
Vineeth TM [Mon, 14 Dec 2015 02:09:46 +0000 (11:09 +0900)]
plugins-bad: Fix example pipelines
rename gst-launch --> gst-launch-1.0
replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**)
fix caps in examples
https://bugzilla.gnome.org/show_bug.cgi?id=759432
Nicolas Dufresne [Mon, 14 Dec 2015 20:01:09 +0000 (15:01 -0500)]
ignore: videoframe-audiolevel test
Xavier Claessens [Mon, 14 Dec 2015 19:44:31 +0000 (14:44 -0500)]
bad: Add g_autoptr() support to all types
https://bugzilla.gnome.org/show_bug.cgi?id=754464
Luis de Bethencourt [Mon, 14 Dec 2015 12:31:52 +0000 (12:31 +0000)]
glviewconvert: check pointer before dereferencing
priv->primary_out could be NULL, check before dereferencing it in
GST_BUFFER_FLAG_SET ()
CID
1308945
Vivia Nikolaidou [Mon, 14 Dec 2015 11:43:10 +0000 (13:43 +0200)]
videoframe-audiolevel: Fix possible division by zero
In update_rms_from_buffer(), division by "frames" wasn't checking whether
"frames" is zero.
CID
1341519.
https://bugzilla.gnome.org/show_bug.cgi?id=759443
Sebastian Dröge [Mon, 14 Dec 2015 08:38:41 +0000 (09:38 +0100)]
clutter: Fix compilation error in GL examples
Include gst/gl.h instead of specific headers to prevent such problems also in
the future.
In file included from ../../../../gst-libs/gst/gl/gl.h:47:0,
from ../../../../gst-libs/gst/gl/gstglbasememory.h:137,
from ../../../../gst-libs/gst/gl/gstglmemory.h:29,
from cluttershare.c:39:
../../../../gst-libs/gst/gl/gstglmemorypbo.h:51:20: error: field ‘mem’ has incomplete type
GstGLMemory mem;
^
../../../../gst-libs/gst/gl/gstglmemorypbo.h:124:24: error: field ‘parent’ has incomplete type
GstGLMemoryAllocator parent;
^
../../../../gst-libs/gst/gl/gstglmemorypbo.h:134:29: error: field ‘parent_class’ has incomplete type
GstGLMemoryAllocatorClass parent_class;
^
Matthew Waters [Mon, 14 Dec 2015 08:18:14 +0000 (19:18 +1100)]
applemedia: update for GLMemory API changes
Matthew Waters [Mon, 14 Dec 2015 08:15:14 +0000 (19:15 +1100)]
amcvideodec: update for GLMemory API changes
Matthew Waters [Mon, 14 Dec 2015 07:41:30 +0000 (18:41 +1100)]
tests: update for glmemory api changes
Matthew Waters [Mon, 14 Dec 2015 07:20:23 +0000 (18:20 +1100)]
glbuffer: bind/unbind on map/unmap for GL mappings
Bind the handle to the GL target on map/unmap to save the caller from
handling this themselves.
Matthew Waters [Mon, 14 Dec 2015 07:19:37 +0000 (18:19 +1100)]
glbuffer: remove buffer specific transfer flags
Instead rely on GstGLBaseMemory's transfer handling
Matthew Waters [Mon, 14 Dec 2015 07:18:20 +0000 (18:18 +1100)]
glmemorypbo: map/unmap pbo memory correctly for state tracking
Otherwise some downloads will fail to occur from the PBO.
Matthew Waters [Mon, 14 Dec 2015 07:15:42 +0000 (18:15 +1100)]
tests/glmemory: include the generic gl header
Including gstglmemory.h directly results in the compiler complaining
about incomplete types.
Matthew Waters [Mon, 14 Dec 2015 06:05:31 +0000 (17:05 +1100)]
glformat: add compatibility definitions for OES/rectangle textures
Matthew Waters [Mon, 14 Dec 2015 02:49:18 +0000 (13:49 +1100)]
glbasebuffer: remove unsed memory subclass
The functionality has been split into GstGLBaseMemory and GstGLBuffer.
Matthew Waters [Mon, 14 Dec 2015 02:43:59 +0000 (13:43 +1100)]
glmemory: base classify and add the pbo memory on top
The base class is useful for having multiple backing memory types other
than the default. e.g. IOSurface, EGLImage, dmabuf?
The PBO transfer logic is now inside GstGLMemoryPBO which uses GstGLBuffer
to manage the PBO memory.
This also moves the format utility functions into their own file.
Matthew Waters [Mon, 14 Dec 2015 02:08:10 +0000 (13:08 +1100)]
gl: add a GL buffer based GstMemory
Heavily based on GstGLBaseBuffer that is a subclass of GstGLBaseMemory.
Provides GPU and CPU accessible GL buffer objects by GL handle or by
sysmem data pointer.
Matthew Waters [Mon, 14 Dec 2015 01:59:02 +0000 (12:59 +1100)]
gl: add a base memory object
It handles the following
- GstAllocationParams -> gst_memory_init transformation
- Makes sure that map/unmap/create/destroy happen on the GL thread with
a GL context current.
- Holds a possible sysmem accessible data pointer with alignment.
- Holds the need upload/download transfer state
Matthew Waters [Mon, 14 Dec 2015 01:26:01 +0000 (12:26 +1100)]
gl: add convenience function for the start of a video frame
Get's the start of the video frame based on a GstVideoInfo and
GstVideoAlignment.
Matthew Waters [Fri, 11 Dec 2015 05:07:36 +0000 (16:07 +1100)]
gluploadmeta; remove convenience helper API
It was not really useful as if one knows about libgstgl, one can just use
GLMemory objects directly.
Matthew Waters [Fri, 11 Dec 2015 04:39:57 +0000 (15:39 +1100)]
gldownload: remove helper api from the library
It was never used by anyone and is not needed anymore with the element
and GstGLMemory's transparent support for downloading textures.
Luis de Bethencourt [Sat, 12 Dec 2015 20:07:32 +0000 (20:07 +0000)]
opencv: clean includes
The opencv element includes were full of duplicates and uneeded headers.
For example a few elements that stopped using gstcvopencvutils still
included that header file.
Luis de Bethencourt [Sat, 12 Dec 2015 19:31:55 +0000 (19:31 +0000)]
opencv: remove unused functions in gstopencvutils
Since commit
45ca8876b2f5267f7edb842b6d56d7a6c271ccb3 nobody is using
gst_opencv_get_ipl_depth_and_channels() or
gst_opencv_parse_iplimage_params_from_structure(). Remove this dead
code.
Luis de Bethencourt [Sat, 12 Dec 2015 19:13:42 +0000 (19:13 +0000)]
motioncells: Remove unused includes
Matthew Waters [Fri, 11 Dec 2015 23:06:55 +0000 (10:06 +1100)]
revert common submodule change
Matthew Waters [Fri, 11 Dec 2015 22:33:38 +0000 (09:33 +1100)]
gltransformation: clear to transparent
Otherwise composition will result in a black frame outside the transformed
video.
Thomas Roos [Fri, 11 Dec 2015 10:39:08 +0000 (11:39 +0100)]
directsoundsrc: Check return values of DirectSound functions in read loop
Otherwise we might end up in an infinite loop because of errors.
Also take the element's mutex in unprepare().
https://bugzilla.gnome.org/show_bug.cgi?id=738292
Sebastian Dröge [Thu, 10 Dec 2015 10:47:17 +0000 (12:47 +0200)]
mxfdemux: Only pre-set position for exactly the same essence track
The edit rate is only supposed to be the same in a source package, but there
might be multiple source packages with the same essence container. As such
just comparing the body/index SID is not sufficient.
Sebastian Dröge [Thu, 10 Dec 2015 10:25:54 +0000 (12:25 +0200)]
mxfdemux: Only pre-set the track position if it's for the same body/index SID
Alessandro Decina [Thu, 10 Dec 2015 03:41:44 +0000 (14:41 +1100)]
libgstgl: gstglcontext_cocoa: kCGLPFAStereo has been deprecated in 10.11
Also since the version scheme has changed (to include the micro number) since
10.10, use the MAC_OS_X_VERSION_* macro to avoid confusion.
Alessandro Decina [Thu, 10 Dec 2015 01:41:00 +0000 (12:41 +1100)]
glbufferpool: relax check for multiple texture targets
Only complain about multiple texture targets when _different_ texture targets
are configured.
Alessandro Decina [Thu, 10 Dec 2015 01:33:52 +0000 (12:33 +1100)]
glmemory: take subsampling into account for rectangle textures
Rectangle textures don't use normalized coordinates so subsampling needs to be
factored in explicitly.
Fixes YUV => RGB conversion for rectangle textures.
Sebastian Dröge [Wed, 9 Dec 2015 14:55:00 +0000 (16:55 +0200)]
mxfdemux: Only access the index table if it has enough elements
Sebastian Dröge [Wed, 9 Dec 2015 14:28:53 +0000 (16:28 +0200)]
mxfdemux: Use keyframe information from index table segments if available
We don't implement keyframe detection for all codecs and this will allow us to
implement better seeking.
Sebastian Dröge [Wed, 9 Dec 2015 14:31:19 +0000 (16:31 +0200)]
mxfdemux: Collect all index table segments after finding the random index pack
That way we always have the index table information available, especially the
keyframe-ness of all buffers.
Sebastian Dröge [Tue, 8 Dec 2015 16:15:55 +0000 (18:15 +0200)]
mxfdemux: Fix handling of IndexTableSegments
This was completely broken before and could only work on a very constrained
set of files. After these changes it should work except for situations where
PTS != DTS, which is not handled at all in mxfdemux currently.
https://bugzilla.gnome.org/show_bug.cgi?id=759118
Thiago Santos [Tue, 8 Dec 2015 17:06:21 +0000 (14:06 -0300)]
adaptivedemux: avoid pushing events with manifest lock
It can be an easy source of deadlocks. Reproducible with very
fast connections (local server).
Sebastian Dröge [Tue, 8 Dec 2015 18:24:45 +0000 (20:24 +0200)]
mxftypes: Fix parsing of index table segments
Sebastian Dröge [Tue, 8 Dec 2015 16:23:02 +0000 (18:23 +0200)]
mxfmux: Handle aggregation with NULL buffers without crashing
Sebastian Dröge [Tue, 8 Dec 2015 14:45:33 +0000 (16:45 +0200)]
mxfmux: Add FIXME about enforcing that all tracks in a source package have the same edit rate
The standard requires this and also the index table segments are not going to
work otherwise.
Sebastian Dröge [Mon, 7 Dec 2015 18:27:23 +0000 (20:27 +0200)]
mxfmux: Write index table segments
But only for the first essence track, and once for every keyframe every 2
seconds.
Sebastian Dröge [Mon, 7 Dec 2015 18:26:17 +0000 (20:26 +0200)]
mxfmetadata: Fix static local tag for index sid
Sebastian Dröge [Mon, 7 Dec 2015 17:34:25 +0000 (19:34 +0200)]
mxftypes: Add function to serialize an index table segment to a buffer
Sebastian Dröge [Mon, 7 Dec 2015 16:59:36 +0000 (18:59 +0200)]
mxfmux: Index table segments must not use the primer pack
According to S377-1-2009c 9.2 the local tags must not be resolved from the
primer pack, which as a result means that there can't be any other tags than
statically assigned ones.
Duncan Palmer [Mon, 7 Dec 2015 04:10:30 +0000 (14:10 +1000)]
hlsdemux: add support for seeking to fragment boundaries
Setting the seek flags to GST_SEEK_FLAG_SNAP_* will change the seek
target time to a segment boundary.
Based on original work by Ben Willers <bwillers@digisoft.tv>.
https://bugzilla.gnome.org/show_bug.cgi?id=759108
Sebastian Dröge [Tue, 8 Dec 2015 07:53:11 +0000 (09:53 +0200)]
dash: Fix unit test after moving of framerates to RepresentationBaseType
suhwang.kim [Tue, 8 Dec 2015 00:33:39 +0000 (09:33 +0900)]
dashdemux: Suggestion for setting the framerate information.
Dashdemux has set the width and height information from MPD manifest.
Some embedded devices which are not insufficient H/W resources need more information such as framerate
to assign H/W resources. So I suggested that dashdemux also needs to set the framerate information from MDP manifest.
https://bugzilla.gnome.org/show_bug.cgi?id=758515
suhwang.kim [Tue, 8 Dec 2015 00:23:22 +0000 (09:23 +0900)]
dashdemux: maxFrameRate & minFrameRate should be in RepresentationBase.
According to the spec, they can be in AdaptationSet, Representation and SubRepresentation.
So They should be in RepresentationBase.
https://bugzilla.gnome.org/show_bug.cgi?id=758515
Matthew Waters [Tue, 8 Dec 2015 05:35:45 +0000 (16:35 +1100)]
glproto: include function definitions for GL_APPLE_sync
Provides a performance improvement on iOS where we were falling back to glFinish
on settting sync points.
Sebastian Dröge [Mon, 7 Dec 2015 18:34:10 +0000 (20:34 +0200)]
openjpegenc: All frames in JPEG2000 are keyframes, mark them as such
Nicolas Dufresne [Mon, 7 Dec 2015 14:08:15 +0000 (09:08 -0500)]
Automatic update of common submodule
From
b319909 to
86e4663
Edward Hervey [Mon, 7 Dec 2015 12:48:12 +0000 (13:48 +0100)]
mxfmux: Remove more dead code
Coverity CID #
1328818
Edward Hervey [Mon, 7 Dec 2015 12:36:29 +0000 (13:36 +0100)]
teletextdec: Fix leak and NULL pointer usage
Coverity CID #
1341744
Edward Hervey [Mon, 7 Dec 2015 10:56:09 +0000 (11:56 +0100)]
teletextdec: Remove dead code
++i in a for() loop results in the loop never being executed more than once
Coverity CID #
1341748
Coverity CID #
1341743
Frédéric Wang [Thu, 12 Mar 2015 11:29:00 +0000 (11:29 +0000)]
acm: Port ACM MP3 decoder and encoders to GStreamer 1.x
https://bugzilla.gnome.org/show_bug.cgi?id=744047
Daniel Kamil Kozar [Thu, 24 Sep 2015 15:40:02 +0000 (17:40 +0200)]
port teletextdec to 1.0
https://bugzilla.gnome.org/show_bug.cgi?id=733819
Nicolas Dufresne [Wed, 2 Dec 2015 23:28:15 +0000 (18:28 -0500)]
h26xparse: Resend PPS/SPS after seek
This is to support byte-stream decoder that does not remember the
PPS/SPS after a flush. This is not needed by all decoders, but is
harmless for those that do remember.
https://bugzilla.gnome.org/show_bug.cgi?id=758405
Nicolas Dufresne [Tue, 1 Dec 2015 23:09:25 +0000 (18:09 -0500)]
glupload: Only offer custom allocator with caps features
To use GLMemory and EGLImage allocators, one need to know the
libgstgl API. This is only expected if the associated caps features
have been negotiated. Generic element that otherwise receive those
allocators may fail, resulting in broken pieline. We don't want to
force all generic element to check if the allocator is a custom
allocator or a normal allocator (which implement the _alloc method).
https://bugzilla.gnome.org/show_bug.cgi?id=758877
Sebastian Dröge [Fri, 4 Dec 2015 16:05:58 +0000 (18:05 +0200)]
mxfmux: Don't copy input buffers, just append them to the header
Sebastian Dröge [Thu, 3 Dec 2015 09:46:10 +0000 (11:46 +0200)]
hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist
As HLS does not provide any way of knowing the server's clock, and we do
buffering of "live" streams, at some point we will fall behind the server in
many cases and would have to advance to a fragment that is not in the playlist
anymore.
Previously we would've just resynced to the next oldest fragment that is still
there, but this causes problems as from this point onwards we would always
fall off the playlist again all the time.
Instead we now resync and move to the 3rd newest fragment like we would do
when starting playback of a live stream.
https://bugzilla.gnome.org/show_bug.cgi?id=758987
Tim-Philipp Müller [Thu, 3 Dec 2015 18:21:50 +0000 (18:21 +0000)]
hls: m3u8: remove superfluous gst_m3u8_copy() implementation
No need to implement _copy() when we just copy a list that
we're freeing three lines later anyway. Instead just steal
the new main list.
Sebastian Dröge [Thu, 3 Dec 2015 08:08:05 +0000 (10:08 +0200)]
adaptivedemux: Log PTS of buffers that are pushed downstream
Edward Hervey [Tue, 20 Oct 2015 07:49:16 +0000 (09:49 +0200)]
tsdemux: Expose DVB Subpicture as subpictures
For some reason we were considering them as private data.
Edward Hervey [Tue, 20 Oct 2015 15:22:23 +0000 (17:22 +0200)]
tsdemux: Push GAP events *after* deactivating old programs
The order in which program switch must happen is:
1) drain all data on old pads (but don't push EOS)
2) add new pads (but don't push any data on them)
3) Push EOS and remove old pads
4) Start pushing data on new pads
There was one caveat in this implementation, which is that when
we activate a sparse pad (step 2) we would push a GAP event. The problem
is that, while being an event, it is actually *data*.
We therefore need to make sure pushing those GAP event is done at the step
we start pushing data.
https://bugzilla.gnome.org/show_bug.cgi?id=750402
Edward Hervey [Tue, 15 Sep 2015 16:20:38 +0000 (18:20 +0200)]
tsdemux: Make sure old streams are drained before switching
Before we add any streams, make sure we drain all streams. This ensures
there's consistency that only "new" data will be pushed on buffers once
the new pads are added
https://bugzilla.gnome.org/show_bug.cgi?id=750402
Edward Hervey [Thu, 10 Sep 2015 12:55:05 +0000 (14:55 +0200)]
mpegtsdemux: Allow deactivation of programs to be delayed
When changing programs, the order of events needs to be the following:
* add pads from new program
* send EOS on old pads
* remove old pads
* emit 'no-more-pads'
Previously tsdemux was not doing that, and was first deactivating and
removing old pads before adding new ones.
We fix this by allowing subclasses of mpegtsbase to be able to handle
themselves the deactivation of programs. In this case tsdemux will
properly deactivate it once it has activated the new program.
https://bugzilla.gnome.org/show_bug.cgi?id=750402
Maroš Ondrášek [Wed, 2 Dec 2015 10:01:53 +0000 (11:01 +0100)]
hlsdemux: update current variant if connection speed is set
If connection speed is set, playlist according
to connection speed is selected as current playlist.
Problem is that the current variant of main playlist still
points to previously set variant.
If previously set variant doesn't correspond to current
playlist, then it causes unnecessary change of playlist
to the same playlist after first fragment is downloaded,
because of not updated current variant.
To fix this, we need to make sure that current variant
of main playlist corresponds to the current playlist
https://bugzilla.gnome.org/show_bug.cgi?id=758946
Sebastian Dröge [Wed, 2 Dec 2015 12:35:22 +0000 (14:35 +0200)]
videoframe-audiolevel: Fix compilation of static plugin and some compiler warnings
Use G_GSIZE_FORMAT for gsize instead of %ld and make sure that the plugin name
is a valid C identifier, i.e. contains no spaces or dashes.
Matthew Waters [Wed, 2 Dec 2015 11:42:39 +0000 (22:42 +1100)]
glcolorconvert: improve the YUY2/UYVY->RGBA conversion shader
Don't offset the y-axis. We only need to offset on the x-axis.
Removes a sawtooth pattern on horizontal and vertical edges.
https://bugzilla.gnome.org/show_bug.cgi?id=755486
Matthew Waters [Wed, 2 Dec 2015 11:40:06 +0000 (22:40 +1100)]
glcolorconvert: improve RGBA->YUY2/UYVY conversion shader
We should only average the chroma samples not the luma sample.
https://bugzilla.gnome.org/show_bug.cgi?id=758904
Jan Schmidt [Tue, 10 Nov 2015 16:55:27 +0000 (03:55 +1100)]
hlsdemux: Tell the base class the fragment duration
adaptivedemux uses the fragment duration as a delay
in some cases, so make sure to set it.