Sebastian Dröge [Thu, 29 Jan 2015 15:30:34 +0000 (16:30 +0100)]
glcolorconvert: Add FIXME comment about possibility of non-Apple YCbCr422 rectangular textures
Sebastian Dröge [Thu, 29 Jan 2015 15:26:26 +0000 (16:26 +0100)]
glcolorconvert: Only use GL_TEXTURE_RECTANGLE with OpenGL
It's not defined for GLES.
Alessandro Decina [Thu, 29 Jan 2015 13:28:18 +0000 (00:28 +1100)]
applemedia: rework GL texture sharing
Use YUV instead of RGB textures, then convert using the new apple specific
shader in GstGLColorConvert. Also use GLMemory directly instead of using the
GL upload meta, avoiding an extra texture copy we used to have before.
Alessandro Decina [Tue, 27 Jan 2015 13:53:59 +0000 (00:53 +1100)]
applemedia: vtdec: fix CMBlockBufferRef leak
Fix huge leak that went unnoticed for too long. Oops.
Alessandro Decina [Tue, 27 Jan 2015 13:48:27 +0000 (00:48 +1100)]
libgstgl: run a custom shader to convert YUV to RGB on mac and ios
When GL_APPLE_ycbcr_422 is available, run a custom shader to convert
GL_TEXTURE_RECTANGLE textures from YUV to RGB.
See https://www.opengl.org/registry/specs/APPLE/ycbcr_422.txt
Alessandro Decina [Tue, 27 Jan 2015 13:43:09 +0000 (00:43 +1100)]
applemedia: don't call CVPixelBufferLockBaseAddress when doing texture sharing
When doing texture sharing we don't need to call CVPixelBufferLockBaseAddress to
map the buffer in CPU. This cuts about 10% relative cpu time from a vtdec !
glimagesink pipeline.
Alessandro Decina [Tue, 27 Jan 2015 13:13:46 +0000 (00:13 +1100)]
gl: initial support for texture targets other than GL_TEXTURE_2D
Make GstGLMemory hold the texture target (tex_target) the texture it represents
(tex_id) is bound to. Modify gst_gl_memory_wrapped_texture and
gst_gl_download_perform_with_data to take the texture target as an argument.
This change is needed to support wrapping textures created outside libgstgl,
which might be bound to a target other than GL_TEXTURE_2D. For example on OSX
textures coming from VideoToolbox have target GL_TEXTURE_RECTANGLE.
With this change we still keep (and sometimes imply) GL_TEXTURE_2D as the
target of textures created with libgstgl.
API: modify GstGLMemory
API: modify gst_gl_memory_wrapped_texture
API: gst_gl_download_perform_with_data
Alessandro Decina [Thu, 22 Jan 2015 02:18:23 +0000 (13:18 +1100)]
gstglcolorconvert: micro optimization
Don't call glClear && glClearColor at each draw since we're going to draw the
whole viewport anyway. Gets rid of a glFlush triggered by glClear on OSX.
Alessandro Decina [Thu, 22 Jan 2015 02:17:11 +0000 (13:17 +1100)]
applemedia: corevideobuffer: make mapping the CVPixelBuffer in CPU optional
Mapping is not necessary and impacts performance when doing texture sharing with
downstream
Alessandro Decina [Thu, 22 Jan 2015 02:11:46 +0000 (13:11 +1100)]
gstglcolorconvert: relax caps features check
Require caps to have the GST_CAPS_FEATURE_MEMORY_GL_MEMORY feature but allow
them to have more features.
Vincent Penquerc'h [Wed, 28 Jan 2015 16:43:59 +0000 (16:43 +0000)]
opusenc: change audio property to audio-type
This is now an enum with values generic (default) and voice.
https://bugzilla.gnome.org/show_bug.cgi?id=740891
Matthew Waters [Thu, 29 Jan 2015 12:45:15 +0000 (23:45 +1100)]
gl/win32: fixup compilation
Luis de Bethencourt [Thu, 29 Jan 2015 11:54:35 +0000 (11:54 +0000)]
audiovisualizer: remove double-setting of render function
No need to set the audiovisualizer->render function twice. Once is enough.
Matthew Waters [Thu, 29 Jan 2015 11:25:00 +0000 (22:25 +1100)]
glwindow: make showing a window explicit
Also fixes the cgl context always displaying a window to render to for
every GstGLContextCocoa created
Thibault Saunier [Mon, 26 Jan 2015 16:06:29 +0000 (17:06 +0100)]
aggregator: Cleanup locking around AggregatorPad flush related fields
And document the locking
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Mathieu Duponchelle [Mon, 26 Jan 2015 12:11:05 +0000 (13:11 +0100)]
aggregator: keep chain functions as dumb as possible.
+ A pad chain function has no business checking other pads,
that's what the aggregate thread is for.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Thibault Saunier [Mon, 26 Jan 2015 10:32:47 +0000 (11:32 +0100)]
aggregator: More fixes around locking when accessing protected private fields
In some more places we were accessing GstAggregator->segment
and GstAggregator->seqnum without holding the GST_OBJECT_LOCK
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Thibault Saunier [Mon, 26 Jan 2015 10:29:08 +0000 (11:29 +0100)]
aggregator: Make the PAD_LOCK private
Instead of using the GST_OBJECT_LOCK we should have
a dedicated mutex for the pad as it is also associated
with the mutex on the EVENT_MUTEX on which we wait
in the _chain function of the pad.
The GstAggregatorPad.segment is still protected with the
GST_OBJECT_LOCK.
Remove the gst_aggregator_pad_peak_unlocked method as it does not make
sense anymore with a private lock.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Thibault Saunier [Mon, 26 Jan 2015 10:25:54 +0000 (11:25 +0100)]
aggregator: Hide GstAggregatorPad buffer and EOS fileds
And add a getter for the EOS.
The user should always use the various getters to access
those fields
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Thu, 22 Jan 2015 00:09:13 +0000 (19:09 -0500)]
audiomixer: Make flush start/stop test non-racy
The flush stop could have happened between the source trying
to push the segment event and the buffer, this would cause a warning.
Prevent that by taking the source's stream lock while flushing.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Thu, 22 Jan 2015 22:41:24 +0000 (17:41 -0500)]
audiomixer: Replace racy timeout based tested with drain query
Using the drain query, we can be certain that the buffer has done going
through the aggregator by taking the stream locks.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 21 Jan 2015 23:41:43 +0000 (18:41 -0500)]
aggregator: Document locking of GstAggregatorPrivate members
Most of them are protected by the object lock, specify
which ones use a different lock.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 21 Jan 2015 23:47:09 +0000 (18:47 -0500)]
aggregator: Document how the segment is protected
Document that it can only be accessed with the object lock.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Thu, 22 Jan 2015 00:44:57 +0000 (19:44 -0500)]
aggregator: Protect all latency related members with the object lock
The locking was not consistent, now consistently use the object lock.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Thu, 22 Jan 2015 00:43:12 +0000 (19:43 -0500)]
aggregator: Document locking for gst_aggregator_get_latency_unlocked()
Renamed it to _unlocked() to make it clear.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Thu, 22 Jan 2015 00:35:25 +0000 (19:35 -0500)]
aggregator: Protect the srcpad caps negotiation with the stream lock
Instead of adding another lock, use the srcpad stream lock, which is already
taken anyway to push out the new caps if needed.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Thu, 22 Jan 2015 00:33:18 +0000 (19:33 -0500)]
aggregator: Protect the tags with the object lock
The tags related variables were sometimes protected, sometimes not and
sometimes atomic. Put them all under the object lock.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Thu, 22 Jan 2015 00:32:34 +0000 (19:32 -0500)]
audiomixer: Avoid race in caps negotiation
With the current audiomixer, the input caps need to be the same,
otherwise there is an unavoidable race in the caps negotiation. So
enforce that using capsfilters
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 21 Jan 2015 23:53:20 +0000 (18:53 -0500)]
aggregator: Consistenly lock the flow_return state
Use the object's lock to protect it.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 21 Jan 2015 23:47:40 +0000 (18:47 -0500)]
audiomixer: Clear GstAudioInfo the the caps
When clearing the caps, also clear the matching GstAudioInfo
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 21 Jan 2015 23:45:36 +0000 (18:45 -0500)]
aggregator: Consistently lock some members
Some members sometimes used atomic access, sometimes where not locked at
all. Instead consistently use a mutex to protect them, also document
that.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 21 Jan 2015 23:39:24 +0000 (18:39 -0500)]
audiomixer: Don't reset caps on flush
A flush event doesn't invalidate the previous caps event.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 14 Jan 2015 19:45:06 +0000 (14:45 -0500)]
videoaggregator: Lock access to members of GstAggregatorPad
Take the pad's object lock before accessing members of the
GstAggregatorPad structure.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 14 Jan 2015 19:38:09 +0000 (14:38 -0500)]
aggregator: Protect exported pad members with the pad's object lock
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Wed, 14 Jan 2015 19:35:15 +0000 (14:35 -0500)]
aggregator: Replace event lock with pad's object lock
Reduce the number of locks simplify code, what is protects
is exposed, but the lock was not.
Also means adding an _unlocked version of gst_aggregator_pad_steal_buffer().
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Olivier Crête [Sat, 10 Jan 2015 03:01:00 +0000 (22:01 -0500)]
aggregator: Protect data with the same mutex as GCond
Whenever a GCond is used, the safest paradigm is to protect
the variable which change is signalled by the GCond with the same
mutex that the GCond depends on.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
Nirbheek Chauhan [Wed, 28 Jan 2015 20:58:38 +0000 (02:28 +0530)]
videoaggregator: If getting a timeout before having caps, just advance our position
This can happen if this is a live pipeline and no source produced any buffer
and sent no caps until an output buffer should've been produced according to the
latency.
This fix is similar in spirit to commit
be7034d1 by Sebastian for audiomixer.
Matthew Waters [Thu, 29 Jan 2015 06:31:09 +0000 (17:31 +1100)]
gl/calayer: add resize callback based on the bounds rectangle
Matthew Waters [Thu, 29 Jan 2015 04:26:21 +0000 (15:26 +1100)]
gl/caopengllayer: draw asynchronously
This essentially makes the CAOpenGLLayer draw every refresh cycle.
Matthew Waters [Wed, 28 Jan 2015 06:59:42 +0000 (17:59 +1100)]
gl/cocoa: don't segfault if we have a NULL draw/resize/close callback
Matthew Waters [Wed, 28 Jan 2015 06:16:14 +0000 (17:16 +1100)]
cgl/calayer: use a callback instead of hardcoding the draw functionality
Matthew Waters [Wed, 28 Jan 2015 06:13:05 +0000 (17:13 +1100)]
cgl: install the gl context and gl layer headers
Matthew Waters [Wed, 28 Jan 2015 06:05:14 +0000 (17:05 +1100)]
cgl: add a header for the CAOpenGLLayer support
Sebastian Dröge [Wed, 28 Jan 2015 16:02:59 +0000 (17:02 +0100)]
decklinkvideosink: Always lock the mutex before starting the streams
Sebastian Dröge [Wed, 28 Jan 2015 15:58:27 +0000 (16:58 +0100)]
decklinkvideosink: Fix deadlock
Sebastian Dröge [Wed, 28 Jan 2015 14:48:26 +0000 (15:48 +0100)]
decklink{audio,video}sink: Only start scheduled playback once both sources are ready and we are in PLAYING
Otherwise we might start the scheduled playback before the audio or video streams are
actually enabled, and then error out later because they are enabled to late.
We enable the streams when getting the caps, which might be *after* we were
set to PLAYING state.
Sebastian Dröge [Wed, 28 Jan 2015 14:26:17 +0000 (15:26 +0100)]
decklink{audio,video}src: Only start the streams once both sources are ready and we are in PLAYING
Otherwise we might start the streams before the audio or video streams are
actually enabled, and then error out later because they are enabled to late.
We enable the streams when getting the caps, which might be *after* we were
set to PLAYING state.
Sebastian Dröge [Wed, 28 Jan 2015 13:21:40 +0000 (14:21 +0100)]
decklink: Make sure our clock never returns NONE, always advances and does not jump when going from PAUSED to PLAYING
It basically behaves the same as the audio clocks.
Sebastian Dröge [Wed, 28 Jan 2015 11:20:05 +0000 (12:20 +0100)]
decklinkvideosink: Handle the clock returning GST_CLOCK_TIME_NONE properly
Sebastian Dröge [Wed, 28 Jan 2015 10:41:17 +0000 (11:41 +0100)]
decklinkvideo{sink,src}: Make elements more similar to the audio elements by enabling the video input/output only when getting the actual caps
This will also make it easier later to support caps changes and support
selecting the mode based on the caps if that should ever be implemented.
Sebastian Dröge [Mon, 26 Jan 2015 18:02:04 +0000 (19:02 +0100)]
decklinkvideosrc: Properly report caps if mode!=auto and handle caps changes properly for mode=auto
Sebastian Dröge [Mon, 26 Jan 2015 17:27:10 +0000 (18:27 +0100)]
decklinkaudiosrc: Don't release input device twice on errors in set_caps()
Philippe Normand [Tue, 27 Jan 2015 10:25:53 +0000 (11:25 +0100)]
gl/dispmanx: fix build
Commit
ab48bb6f0f55091662e595a001e178154ce60cdb changed the API of
GstGLWindow.
Matthew Waters [Tue, 27 Jan 2015 03:52:47 +0000 (14:52 +1100)]
glmemory: more compatibility defines for gles2 systems
Matthew Waters [Tue, 27 Jan 2015 01:15:43 +0000 (12:15 +1100)]
glmemory: add some thread safety for gl operations
Matthew Waters [Tue, 27 Jan 2015 00:53:51 +0000 (11:53 +1100)]
glmemory: use pbo's for download
In order to use pbo's efficiently, the transfer operation has to
be separated from the use of the downloaded data which requires some
rearchitecturing around glcolorconvert/gldownload and elements
Matthew Waters [Tue, 27 Jan 2015 00:04:07 +0000 (11:04 +1100)]
glprototypes: add some (un)map buffer variants for GL/GLES
Thiago Santos [Mon, 26 Jan 2015 20:51:22 +0000 (17:51 -0300)]
dashdemux: use audio_%02u and video_%02u names for pads
Instead of using the default ghostpad%u naming. The audio_/video_
names are more common in demuxers
Sebastian Dröge [Mon, 26 Jan 2015 14:33:23 +0000 (15:33 +0100)]
decklinkaudiosrc: Release the audio input on errors, not the video input
Luis de Bethencourt [Mon, 26 Jan 2015 13:46:44 +0000 (13:46 +0000)]
aiffparse: remove unnecessary variable
The bps variable is declared with value aiff->bps, read once and never written.
aiff->bps can be used directly instead.
Luis de Bethencourt [Mon, 26 Jan 2015 12:49:45 +0000 (12:49 +0000)]
aiffparse: fix which stop variable is used in assignment
Assignment is done to variable segment.stop when the intention was to assign to
local variable stop. Instead of overwriting it, the value is now clamped and
segment.stop is set to it soon after.
CID #1265772
Tim-Philipp Müller [Mon, 26 Jan 2015 09:22:23 +0000 (09:22 +0000)]
videoaggregator: fix crash when receiving buffer without timestamps
Unset out buffer in clip function when we unref the buffer to be
clipped, otherwise aggregator will continue to use the already-
freed buffer. Fixes crash when buffers without timestamps are
being fed to aggregator. Partly because aggregator ignores the
error flow return.
https://bugzilla.gnome.org/show_bug.cgi?id=743334
Tim-Philipp Müller [Sun, 18 Jan 2015 18:05:31 +0000 (18:05 +0000)]
Remove unported directdraw plugin
This API has been deprecated for eternities and microsoft
stopped shipping the headers in 2010 accoding to wikipedia,
so let's just remove it and focus on bringing the plugins
based on the newer APIs up to snuff.
Matthieu Bouron [Wed, 26 Mar 2014 17:43:33 +0000 (17:43 +0000)]
aiffmux: write padding byte at end of SSND chunk if needed
AIFF chunks are supposed to be even aligned.
Aligning the SSND chunk will allow the aiff muxer to properly write
chunks (like the ID3 one) at the end of the file.
https://bugzilla.gnome.org/show_bug.cgi?id=727402
Edward Hervey [Fri, 23 Jan 2015 11:44:22 +0000 (12:44 +0100)]
waylandsink: Free leaked GstStructure
Coverity CID : 1256565
Edward Hervey [Fri, 23 Jan 2015 11:41:29 +0000 (12:41 +0100)]
gltestsrc: Ensure variable is initialized before usage
Coverity CID: 1256569
Edward Hervey [Fri, 23 Jan 2015 11:26:16 +0000 (12:26 +0100)]
codecparsers: Indent file
Someone's been commiting without using gst-indent :)
Edward Hervey [Fri, 23 Jan 2015 11:24:52 +0000 (12:24 +0100)]
codecparsers: Add READ_UE_MAX macro
READ_UE_ALLOWED was almost exclusively used with min == 0, which doesn't
make much point for unsigned integers.
Add a READ_UE_MAX variant and use that instead. Also replaced two usages
of CHECK_ALLOWED (a,0,something) by CHECK_ALLOWED_MAX (a, something)
Arun Raghavan [Fri, 23 Jan 2015 06:58:42 +0000 (12:28 +0530)]
intervideosrc: Fix GAP flag setting on non-black frames
The previous commit fixed setting the GAP flag on black frames, but
incorrectly dropped the flag on repeated pushes of the same video
buffer.
Matthew Waters [Fri, 23 Jan 2015 06:27:42 +0000 (17:27 +1100)]
gl/tests: update glwindow api change
Matthew Waters [Fri, 23 Jan 2015 05:52:25 +0000 (16:52 +1100)]
gl/window/eagl: fix a couple of typos
Matthew Waters [Fri, 23 Jan 2015 05:39:44 +0000 (16:39 +1100)]
glwindow: cleanup/reorganize functions/members into logical groups
Matthew Waters [Fri, 23 Jan 2015 04:02:55 +0000 (15:02 +1100)]
applemedia: update for gstgl cocoa -> cgl change
Matthew Waters [Fri, 23 Jan 2015 03:18:12 +0000 (14:18 +1100)]
gl/qt/examples: update for NSOpenGL -> CGL change
Matthew Waters [Fri, 23 Jan 2015 03:11:48 +0000 (14:11 +1100)]
glwindow: remove width/height from _draw()
Depending on the platform, it was only ever implemented to 1) set a
default surface size, 2) resize based on the video frame or 3) nothing.
Instead, provide a set_preferred_size () that elements/applications
can use to request a certain size which may be ignored for
videooverlay/other cases.
Matthew Waters [Thu, 22 Jan 2015 10:43:51 +0000 (21:43 +1100)]
glcontext/cocoa: avoid destroying a possibly 0 GSource id
Matthew Waters [Tue, 20 Jan 2015 11:01:39 +0000 (22:01 +1100)]
gl/cocoa: move to CGL and CAOpenGLLayer for rendering
Removes the use of NSOpenGL* variety and functions. Any Cocoa
specific functions that took/returned a NSOpenGL* object now
take/return the CGL equivalents.
Matthew Waters [Thu, 22 Jan 2015 05:08:11 +0000 (16:08 +1100)]
glcontext/cocoa: add debug category
Arun Raghavan [Thu, 22 Jan 2015 05:20:23 +0000 (10:50 +0530)]
intervideosrc: Fix GAP flag setting on black frames correctly
This did not actually work since the video_buffer was set to NULL after
the first black frame.
Reported by: Patrik Oldsberg <patrik.oldsberg@ericsson.com>
Arun Raghavan [Wed, 21 Jan 2015 18:07:10 +0000 (23:37 +0530)]
intervideosrc: Fix max value of the timeout property
Reported by: Patrik Oldsberg <patrik.oldsberg@ericsson.com>
Arun Raghavan [Wed, 21 Jan 2015 18:05:55 +0000 (23:35 +0530)]
openh264: Implement the preset interface
Will be useful when we want to set presets on the encoder via encodebin
or such.
Luis de Bethencourt [Wed, 21 Jan 2015 15:31:21 +0000 (15:31 +0000)]
audiovisualizer: sync with base class in -base
https://bugzilla.gnome.org/show_bug.cgi?id=742875
Luis de Bethencourt [Wed, 21 Jan 2015 15:06:21 +0000 (15:06 +0000)]
audiovisualizer: ensure default query/event handlers are used
Sync audiovisualizer class implementation to the one in gst-plugins-base. This
commit matches
9dd0e6cccc971d8a6bcca4e9e4d2ee1dbb20fffa in that module.
https://bugzilla.gnome.org/show_bug.cgi?id=742875
Sebastian Dröge [Wed, 21 Jan 2015 09:18:11 +0000 (10:18 +0100)]
siren: Make some local variables non-static for thread-safety
Otherwise we will override values from another thread if we encode
or decode frames at the same time in different threads.
Sebastian Dröge [Wed, 21 Jan 2015 09:17:04 +0000 (10:17 +0100)]
Constify some static arrays everywhere
Edward Hervey [Wed, 21 Jan 2015 07:49:23 +0000 (08:49 +0100)]
po: Fix list of files tracked
sfsink/sfsrc haven't been ported (and therefore dist'ed) in 1.x
Edward Hervey [Tue, 9 Dec 2014 08:58:03 +0000 (09:58 +0100)]
mpegdemux: minor debug update
Only show PTS/DTS when they are valid, and include the stream id
Thiago Santos [Tue, 20 Jan 2015 17:55:05 +0000 (14:55 -0300)]
adaptivedemux: do not skip the first fragment
Avoid advancing fragment right after downloading the header. If it
is the header, by default, don't advance to the next fragment.
Piotr Drąg [Tue, 20 Jan 2015 15:57:15 +0000 (16:57 +0100)]
po: update POTFILES
https://bugzilla.gnome.org/show_bug.cgi?id=743251
Víctor Manuel Jáquez Leal [Fri, 16 Jan 2015 18:32:15 +0000 (19:32 +0100)]
h264parse: expose stereo-high profile
Exposing stereo-high profile as a compatible profile of multiview-high
if the maximum number of encoded views in the stream is two.
https://bugzilla.gnome.org/show_bug.cgi?id=743174
Víctor Manuel Jáquez Leal [Mon, 19 Jan 2015 16:31:26 +0000 (17:31 +0100)]
h264parse: parse SPS subset
This patch calls gst_h264_parser_parse_subset_sps() when a
SPS subset NAL type is found.
All the bits required for parsing the SPS subset in NALs were
already there, just we need to call them when the this NAL type
is found.
With this parsing, the number of views (minus 1) attribute is
filled, which was a requirement for negotiating the stereo-high
profile.
https://bugzilla.gnome.org/show_bug.cgi?id=743174
Sreerenj Balachandran [Tue, 19 Mar 2013 12:23:00 +0000 (14:23 +0200)]
h264parse: add initial support for MVC NAL units.
Initial support for MVC NAL units. It is only needed to propagate the
complete set of NAL units downstream at this time.
https://bugzilla.gnome.org/show_bug.cgi?id=696135
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Thiago Santos [Tue, 20 Jan 2015 12:23:02 +0000 (09:23 -0300)]
adaptivedemux: add explicit cast to make clang happy
Fixes compilation
Thiago Santos [Thu, 15 Jan 2015 20:44:45 +0000 (17:44 -0300)]
adaptivedemux: refactor chunk downloading flow
Add more power to the chunk_received function (renamed to data_received)
and also to the fragment_finish function.
The data_received function must parse/decrypt the data if necessary and
also push it using the new push_buffer function that is exposed now. The
default implementation gets data from the stream adapter (all available)
and pushes it.
The fragment_finish function must also advance the fragment. The default
implementation only advances the fragment.
This allows the subsegment handling in dashdemux to continuously download
the same file from the server instead of stopping at every subsegment
boundary and starting a new request
Vincent Penquerc'h [Mon, 19 Jan 2015 12:37:23 +0000 (12:37 +0000)]
compositor: fix illegal memory access in blend function with negative ypos
https://bugzilla.gnome.org/show_bug.cgi?id=741115
Thiago Santos [Mon, 19 Jan 2015 11:37:59 +0000 (08:37 -0300)]
dashdemux: add log message about segment time information
For debugging purposes
Thiago Santos [Mon, 19 Jan 2015 11:36:42 +0000 (08:36 -0300)]
adaptivedemux: fix multi-period playback
If we say it is the first segment after a new period it will resync
the segment.start value and all buffers will be late for the new period
we are trying to play. Otherwise we want to keep the segment.start with
the previous value to allow the running time to smoothly increase
Sebastian Dröge [Mon, 19 Jan 2015 10:23:52 +0000 (11:23 +0100)]
dashdemux: Fix compiler warning with clang
gstdashdemux.c:1330:13: error: implicit conversion from enumeration type 'enum _GstAdaptiveDemuxFlowReturn' to different enumeration type
'GstFlowReturn' [-Werror,-Wenum-conversion]
ret = GST_ADAPTIVE_DEMUX_FLOW_SUBSEGMENT_END;
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Nicola Murino [Sun, 18 Jan 2015 20:05:44 +0000 (21:05 +0100)]
glimagesink: fix memleak
https://bugzilla.gnome.org/show_bug.cgi?id=743142
Tim-Philipp Müller [Sun, 18 Jan 2015 17:25:35 +0000 (17:25 +0000)]
Remove real plugin which is no longer needed and has never been ported
Decoders for these formats exist in gst-libav, if anyone
still has a need for them.