Aleix Conchillo Flaqué [Wed, 1 Oct 2014 22:04:09 +0000 (15:04 -0700)]
rtspconnection: call watch notify before freeing any watch resources
This gives control to the notify function allowing it to finish other
watch related functionality.
https://bugzilla.gnome.org/show_bug.cgi?id=737752
Sebastian Dröge [Mon, 20 Oct 2014 13:31:29 +0000 (15:31 +0200)]
appsink: Fix gst_app_sink_pull() docs to transfer full for the return value
Also we get a GstSample, not a GstBuffer here.
Stefan Sauer [Fri, 17 Oct 2014 10:10:44 +0000 (12:10 +0200)]
typefind: use gslice for typefine data
Also use our free function in the failure case.
Tim-Philipp Müller [Mon, 13 Oct 2014 14:58:56 +0000 (15:58 +0100)]
encodebin: fix some leaks in error code path
Fixes test_encodebin_sink_pads_nopreset_static
running under valgrind.
Tim-Philipp Müller [Mon, 13 Oct 2014 04:08:41 +0000 (05:08 +0100)]
tests: parallelise 'make valgrind'
Use $(MAKE) instead of 'make' inside the Makefile,
otherwise the make will run as if -j1 had been
specified and complain about the job server not
being available, and with $(MAKE) in inherits the
parent make's settings it seems.
Upgrade common submodule for parallel check-valgrind.
Peter G. Baum [Fri, 3 Oct 2014 10:57:52 +0000 (12:57 +0200)]
riff-media: allow more channel_masks
Allow partial valid channel masks.
Set channel mask to 0 for non-valid channel masks.
https://bugzilla.gnome.org/show_bug.cgi?id=733405
Peter G. Baum [Fri, 3 Oct 2014 10:54:17 +0000 (12:54 +0200)]
audio-channels: allow partially valid channel_mask
Since WAVEFORMATEXTENSIBLE allows to have more channels than
bits in the channel mask we should allow this, too, to avoid
loss of information.
https://bugzilla.gnome.org/show_bug.cgi?id=733405
Thiago Santos [Tue, 14 Oct 2014 01:24:31 +0000 (22:24 -0300)]
audiodecoder: should post DECODE errors and not ENCODE
Fix error code for audio decoder
Luis de Bethencourt [Fri, 10 Oct 2014 17:49:29 +0000 (18:49 +0100)]
videoblend: Avoid assigning a negative value to a guint
There are some few but certain conditions where it is possible for the
dest_width to be smaller than x. So we check this before assigning a negative
value to src_width, which is a unsigned and would be promoted to a number that
can segfault videoblend.
https://bugzilla.gnome.org/show_bug.cgi?id=738242
Luis de Bethencourt [Fri, 10 Oct 2014 04:35:19 +0000 (10:05 +0530)]
basetextoverlay: Fix segfault when overlay outside the frame
When the textoverlay is set outside the video frame by deltax or deltay the
calculation segfaults, but it is also unnecessary since it doesn't need to be
displayed. So we should clip the text.
https://bugzilla.gnome.org/show_bug.cgi?id=738242
Olivier Crête [Fri, 10 Oct 2014 21:32:41 +0000 (17:32 -0400)]
pbutils: Rename clock-base/seqnum-base to timestamp-offset/seqnum-offset
To match how they were renamed elsewhere.
Heinrich Fink [Fri, 10 Oct 2014 09:14:17 +0000 (12:14 +0300)]
playsink: Use correct property enum value for video-filter property installation
Luis de Bethencourt [Wed, 8 Oct 2014 15:50:52 +0000 (16:50 +0100)]
videoscale: remove FIXME about NV21 support
NV21 is already supported so removing FIXME about adding support for it.
Wim Taymans [Wed, 8 Oct 2014 09:26:24 +0000 (11:26 +0200)]
videotestsrc: add gradient pattern
Makes a gradient between background and foreground color.
Wim Taymans [Mon, 6 Oct 2014 13:17:42 +0000 (15:17 +0200)]
video-chroma: improve 4x downsampling coefficients
Peter G. Baum [Mon, 6 Oct 2014 20:13:00 +0000 (22:13 +0200)]
audioresample: remove unused variables
https://bugzilla.gnome.org/show_bug.cgi?id=738026
Danny Song [Mon, 6 Oct 2014 20:50:56 +0000 (05:50 +0900)]
typefindfunctions: Remove leftover #define from 0.10
https://bugzilla.gnome.org/show_bug.cgi?id=738018
Andrei Sarakeev [Tue, 7 Oct 2014 08:10:42 +0000 (12:10 +0400)]
decodebin: Only emit the drain signal for the main decode chain, not any subchains
https://bugzilla.gnome.org/show_bug.cgi?id=738064
Sebastian Dröge [Mon, 6 Oct 2014 07:15:13 +0000 (10:15 +0300)]
decodebin: Free factories array when delaying autoplugging due to non-final caps
Sebastian Dröge [Mon, 6 Oct 2014 07:11:05 +0000 (10:11 +0300)]
videoconverter: Free the converter config in free()
Aurélien Zanelli [Thu, 2 Oct 2014 19:20:48 +0000 (21:20 +0200)]
decodebin: unref decode pad after usage
https://bugzilla.gnome.org/show_bug.cgi?id=737757
Sebastian Dröge [Sat, 4 Oct 2014 20:09:19 +0000 (23:09 +0300)]
videoencoder: Stop storing if we received EOS
This was never reset when going from PAUSED->READY and resulted
in encoders being not reusable after EOS. They just rejected any
buffer because they received EOS in their previous life.
The flag wasn't used anywhere except for rejecting buffers after
EOS, and this is now handled by GstPad directly.
Aurélien Zanelli [Wed, 1 Oct 2014 22:14:03 +0000 (00:14 +0200)]
vorbisdec: don't reorder streams with channels count greater than eight
vorbis_reorder_map is defined for eight channels max. If we have more
than eight channels, it's the application which shall define the order.
Since we set audio position to none, we just interleave all the channels
without any particular reordering.
https://bugzilla.gnome.org/show_bug.cgi?id=737742
Andres Gomez [Tue, 4 Mar 2014 14:51:11 +0000 (16:51 +0200)]
uridecodebin: Removed setting "iradio-mode" property in the source element
The "iradio-mode" property used to have a default FALSE value in HTTP
source elements but now it should default to TRUE or just do not exist
as a property so it is not really needed to set it any more in
uridecodebin.
Apart from that this code could've never worked as uridecodebin looks for a
string-typed iradio-mode property, but it's a boolean in all sources.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725383
Jan Schmidt [Wed, 1 Oct 2014 16:46:58 +0000 (02:46 +1000)]
design: Add a proposal for handling stereoscopic 3D and multiview
Aurélien Zanelli [Wed, 1 Oct 2014 09:16:30 +0000 (11:16 +0200)]
videoencoder: release frame in finish_frame when no output state is configured
Otherwise, frame is leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=737706
Wim Taymans [Thu, 25 Sep 2014 15:32:32 +0000 (17:32 +0200)]
video-converter: add orc optimized matrix8 function
Add an ORC implementation of the matrix8 function.
Regenerate video-orc-dist.[ch]
Arun Raghavan [Mon, 29 Sep 2014 14:15:22 +0000 (19:45 +0530)]
audio: Fix up a comment in GstAudioBaseSink
Rewrote the comment to not be PulseAudio-specific.
Rico Tzschichholz [Sat, 27 Sep 2014 18:05:38 +0000 (20:05 +0200)]
video: Make sure to link against libm
Tim-Philipp Müller [Sat, 27 Sep 2014 14:58:51 +0000 (15:58 +0100)]
xvimagesink: get rid of unnecessary private struct for pool
Tim-Philipp Müller [Sat, 27 Sep 2014 14:53:43 +0000 (15:53 +0100)]
ximagesink: get rid of unnecessary private struct for pool
This is not exposed as API after all.
Arun Raghavan [Wed, 24 Sep 2014 15:08:31 +0000 (20:38 +0530)]
audio: Trivial comment for unhandled MPEG-2 payloading case
The spec mentions a version of the MPEG-2 frame with a base frame and
extension frame. I don't have IEC 13818-3 to figure out what that is,
and don't see any references in search results, so it's a FIXME for now.
https://bugzilla.gnome.org/show_bug.cgi?id=736797
Arun Raghavan [Wed, 24 Sep 2014 14:41:49 +0000 (20:11 +0530)]
audio: Fixes for MPEG-2 LSF IEC61937 payloading
The low sample frequency case for MPEG-2 is <=12kHz (the 32kHz number
applies to MPEG-1).
https://bugzilla.gnome.org/show_bug.cgi?id=736797
Anuj Jaiswal [Wed, 17 Sep 2014 12:10:04 +0000 (17:40 +0530)]
audio: correct condition for MPEG case.
Signed-off-by: Anuj Jaiswal <anuj.jaiswal@samsung.com>
https://bugzilla.gnome.org/show_bug.cgi?id=736797
Wim Taymans [Fri, 26 Sep 2014 16:14:11 +0000 (18:14 +0200)]
video: improve YUV -> RGB conversion
Reorganize orc instructions to free up some registers.
We can reuse the ORC code to implement the generic AYUV->ARGB matrix.
Wim Taymans [Fri, 26 Sep 2014 14:35:51 +0000 (16:35 +0200)]
videotestsrc: storel is better then copyl
It is better to use storel to splat the variable into the destination.
ORC doesn't know when a variable is last written to so it can't yet optimize
away the copy operation.
Luis de Bethencourt [Fri, 26 Sep 2014 14:00:12 +0000 (15:00 +0100)]
videoscale: avoid recalculating values
Avoid recalculating values used multiple times as base of index. Plus some style
fixes.
https://bugzilla.gnome.org/show_bug.cgi?id=737400
Ravi Kiran K N [Fri, 26 Sep 2014 03:44:51 +0000 (09:14 +0530)]
videoscale: support lanczos method for NV formats
Support lanczos scaling method for NV12 and NV21 formats.
Scale the 'Y' plane and scale 'NV' plane.
Implementation for submethods - int16, int32, float and double
https://bugzilla.gnome.org/show_bug.cgi?id=737400
Tim-Philipp Müller [Thu, 25 Sep 2014 14:19:21 +0000 (15:19 +0100)]
video: update disted orc backup files
Wim Taymans [Wed, 24 Sep 2014 14:19:30 +0000 (16:19 +0200)]
video: convertor -> converter
Wim Taymans [Wed, 24 Sep 2014 13:49:42 +0000 (15:49 +0200)]
video: move videoconvert code to video library
Move the conversion code used in videoconvert to the video library
and expose a simple but generic API to do arbitrary conversion. It can
currently do colorspace conversion but the plan is to add videoscale to
it as well.
See https://bugzilla.gnome.org/show_bug.cgi?id=732415
Wim Taymans [Wed, 24 Sep 2014 09:04:15 +0000 (11:04 +0200)]
video-color: add gst_video_color_matrix_get_Kr_Kb()
Move the function to get the color matrix coefficients from
videoconvert to the video library.
Thiago Santos [Tue, 23 Sep 2014 17:14:36 +0000 (14:14 -0300)]
audiosink: compensate for segment restart with clock's time_offset
When playing chained data the audio ringbuffer is released and
then acquired again. This makes it reset the segbase/segdone
variables, but the next sample will be scheduled to play in
the next position (right after the sample from the previous media)
and, as the segdone is at 0, the audiosink will wait the duration
of this previous media before it can write and play the new data.
What happens is this:
pointer at 0, write to 698-1564, diff 698, segtotal 20, segsize 1764, base 0
it will have to wait the length of 698 samples before being able to write.
In a regular sample playback it looks like:
pointer at 677, write to 696-1052, diff 19, segtotal 20, segsize 1764, base 0
In this case it will write to the next available position and it
doesn't need to wait or fill with silence.
This solution is borrowed from pulsesink that resets the clock to
start again from 0, which makes it reset the time_offset to the time
of the last played sample. This is used to correct the place of
writing in the ringbuffer to the new start (0 again)
https://bugzilla.gnome.org/show_bug.cgi?id=737055
Ognyan Tonchev [Sun, 21 Sep 2014 11:16:43 +0000 (13:16 +0200)]
videopool: add missing annotation for gst_video_buffer_pool_new()
https://bugzilla.gnome.org/show_bug.cgi?id=737072
Sebastian Dröge [Tue, 23 Sep 2014 20:12:19 +0000 (23:12 +0300)]
videoscale Use stride instead of width in more places
Sanjay NM [Fri, 19 Sep 2014 07:01:49 +0000 (12:31 +0530)]
videoscale: Use width instead of stride in buffer offset calculation
https://bugzilla.gnome.org/show_bug.cgi?id=736944
Stefan Sauer [Tue, 23 Sep 2014 09:56:33 +0000 (11:56 +0200)]
audioencoder: reshuffle code in error handling
Move the assert to the error handling block at the end of the function so the
the logging is still triggered. Reword the logging slightly and add another
comment to hint what went wrong.
Fixes #737138
Stefan Sauer [Mon, 22 Sep 2014 18:15:13 +0000 (20:15 +0200)]
videoencoder: log the timestamps if we are unhappy about them
When complaining about the DTS!=PTS on keyframes log the actualy timestamps.
Wim Taymans [Mon, 22 Sep 2014 08:42:47 +0000 (10:42 +0200)]
tests: add orc test for videoconvert
Sebastian Dröge [Mon, 22 Sep 2014 07:40:01 +0000 (10:40 +0300)]
gst-play: Fix format string compiler warning
gst-play.c:92:28: error: format string is not a string literal
[-Werror,-Wformat-nonliteral]
len = g_vasprintf (&str, format, args);
^~~~~~
Edward Hervey [Fri, 19 Sep 2014 12:58:20 +0000 (14:58 +0200)]
example/overlay: Specify minimum gdk version
Avoids deprecation warnings (such as for gtk_widget_set_double_buffered()
which became deprecated from 3.14)
Tim-Philipp Müller [Fri, 19 Sep 2014 17:29:54 +0000 (18:29 +0100)]
gst-play: add --quiet option to suppress output
Thiago Santos [Fri, 5 Sep 2014 16:49:46 +0000 (13:49 -0300)]
basetextoverlay: Do not fail the negotiation if query fails
The allocation query failure doesn't mean that the negotiation
has failed as the element can allocate buffers itself.
Instead, only fail if the pads are flushing and the allocation
query failed.
https://bugzilla.gnome.org/show_bug.cgi?id=735844
Sanjay NM [Thu, 18 Sep 2014 10:15:43 +0000 (15:45 +0530)]
videoscale: Added NV support for 4Tap resize
https://bugzilla.gnome.org/show_bug.cgi?id=736845
Andrei Sarakeev [Thu, 18 Sep 2014 08:29:37 +0000 (12:29 +0400)]
playbin: Don't leak input-selector sinkpads
https://bugzilla.gnome.org/show_bug.cgi?id=736861
Sebastian Dröge [Thu, 18 Sep 2014 09:39:48 +0000 (12:39 +0300)]
audiodecoder: Simplify code a bit
Ognyan Tonchev [Wed, 17 Sep 2014 12:34:25 +0000 (14:34 +0200)]
streamsplitter: do not leak events when flushing them
https://bugzilla.gnome.org/show_bug.cgi?id=736796
Ognyan Tonchev [Wed, 17 Sep 2014 12:18:49 +0000 (14:18 +0200)]
audioencoder: do not leak events when flushing them
https://bugzilla.gnome.org/show_bug.cgi?id=736796
Ognyan Tonchev [Wed, 17 Sep 2014 12:11:21 +0000 (14:11 +0200)]
videodecoder: do not leak events when flushing them
https://bugzilla.gnome.org/show_bug.cgi?id=736796
Ognyan Tonchev [Wed, 17 Sep 2014 12:08:17 +0000 (14:08 +0200)]
videoencoder: do not leak events when flushing them
https://bugzilla.gnome.org/show_bug.cgi?id=736796
Ognyan Tonchev [Wed, 17 Sep 2014 10:17:27 +0000 (12:17 +0200)]
audiodecoder: extend flush_events test to check for event leaks
https://bugzilla.gnome.org/show_bug.cgi?id=736788
Ognyan Tonchev [Wed, 17 Sep 2014 10:17:53 +0000 (12:17 +0200)]
audiodecoder: Don't leak events
https://bugzilla.gnome.org/show_bug.cgi?id=736788
Ognyan Tonchev [Tue, 16 Sep 2014 11:32:52 +0000 (13:32 +0200)]
audiocdsrc: do not leak uid after parsing TOC select event
https://bugzilla.gnome.org/show_bug.cgi?id=736739
Ravi Kiran K N [Wed, 17 Sep 2014 05:21:59 +0000 (10:51 +0530)]
typefind: correct the condition for irap flag
https://bugzilla.gnome.org/show_bug.cgi?id=736779
Sebastian Dröge [Tue, 16 Sep 2014 18:42:46 +0000 (21:42 +0300)]
playsink: Add audio/videoconvert in front of the audio/video-filters
audioresample and videoscale is something the application will have to do if
required, but we can at least help here by adding the
audioconvert/videoconvert elements.
https://bugzilla.gnome.org/show_bug.cgi?id=735748
Sebastian Dröge [Mon, 15 Sep 2014 22:07:18 +0000 (01:07 +0300)]
video-frame: Don't ref buffers twice when mapping
Sebastian Dröge [Mon, 15 Sep 2014 21:41:55 +0000 (00:41 +0300)]
app: Add FIXME comment for making the instance/class structs private
Tim-Philipp Müller [Mon, 15 Sep 2014 20:51:15 +0000 (21:51 +0100)]
appsrc: fix recent ABI breakage caused by GstAppSrc structure size increase
Also fixes 'make check'.
https://bugzilla.gnome.org/show_bug.cgi?id=728379
Ognyan Tonchev [Mon, 15 Sep 2014 14:23:57 +0000 (16:23 +0200)]
videodecoder: do not leak pool and allocator in error case
https://bugzilla.gnome.org/show_bug.cgi?id=736679
Sebastian Dröge [Fri, 12 Sep 2014 11:41:01 +0000 (14:41 +0300)]
videofilter: Use new GST_VIDEO_FRAME_MAP_FLAG_NO_REF
https://bugzilla.gnome.org/show_bug.cgi?id=736118
Sebastian Dröge [Fri, 12 Sep 2014 11:39:16 +0000 (14:39 +0300)]
video-frame: Add GST_VIDEO_FRAME_MAP_FLAG_NO_REF
This makes sure that the buffer is not reffed another time when
storing it in the GstVideoFrame, keeping it writable if it was
writable.
https://bugzilla.gnome.org/show_bug.cgi?id=736118
Sebastian Dröge [Fri, 12 Sep 2014 11:27:44 +0000 (14:27 +0300)]
videofilter: Unref buffers before calling the transform_frame functions
GstVideoFrame has another reference, so the buffer looks unwriteable,
meaning that we can't attach any metas or anything to it
https://bugzilla.gnome.org/show_bug.cgi?id=736118
Garg [Fri, 5 Sep 2014 16:54:10 +0000 (09:54 -0700)]
audiobasesink: Fix deadlock caused by holding object lock while calling clock functions
Issue:
During a PAUSED->PLAYING transition when we are rendering an audio buffer in AudioBaseSink
we make adjustments to the sink's provided clock i.e. fix clock calibration using the external
pipeline clock, within "gst_audio_base_sink_sync_latency function inside gstaudiobasesink.c".
For the calibration adjustment we need to get the sink clock time using "gst_audio_clock_get_time".
But before calling "gst_audio_clock_get_time" we acquire the Object Lock on the Sink. If sink is
a pulsesink, "gst_audio_clock_get_time" internally calls "gst_pulsesink_get_time" which needs to
acquire Pulse Audio Main Loop Lock before querying Pulse Audio for its stream time using
"pa_stream_get_time". Please see "gst_pulsesink_get_time in pulsesink.c".
So the situation here is we have acquired the Object lock on Sink and need PA Main Loop Lock.
Now Pulse Audio Main Thread itself might be in the process of posting a stream status
message after Paused to Playing transition which in turn acquires the PA Main loop lock and
needs the Object Lock on Pulse Sink. This causes a deadlock with the earlier render thread.
Fix:
Do not acquire the object Lock on Sink before querying the time on PulseSink clock. This is
similar to the way we have used get_time at other places in the code. Acquire it after the
get_time call. This way PA Main loop will be able to post its stream status message by
acquiring the Sink Object lock and will eventually release its Main Loop lock needed for
gst_pulsesink_get_time to continue.
https://bugzilla.gnome.org/show_bug.cgi?id=736071
Nicola Murino [Thu, 4 Sep 2014 09:56:50 +0000 (11:56 +0200)]
appsrc: Add example that shows gst_app_src_push_sample() usage
Nicola Murino [Fri, 5 Sep 2014 09:14:51 +0000 (11:14 +0200)]
appsrc: Add push_sample() convenience function for easy appsink -> appsrc use
https://bugzilla.gnome.org/show_bug.cgi?id=728379
Tim-Philipp Müller [Thu, 11 Sep 2014 21:19:05 +0000 (22:19 +0100)]
xvimagesink: only try to set XV_ITURBT_709 port attribute if it exists
Don't try to set port attribute that's not advertised by the
adaptor. Fixes videotestsrc ! xvimagesink aborting with
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 151 (XVideo)
Minor opcode of failed request: 13 ()
on intel HD4600 graphics with kernel 3.16, xserver 1.15,
intel driver 2.21.15.
Thiago Santos [Thu, 11 Sep 2014 19:58:35 +0000 (16:58 -0300)]
decodebin: protect buffering message handling
Use the object lock to avoid concurrent processing which leads
to small disasters (assertions or crashes)
Ognyan Tonchev [Tue, 9 Sep 2014 09:37:26 +0000 (11:37 +0200)]
rtspconnection: ignore timeout in session request header
The timeout parameter is only allowed in a session response header
but some clients, like Honeywell VMS applications, send it as part
of the session request header. Ignore everything from the semicolon
to the end of the line when parsing session id.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=736267
George Kiagiadakis [Fri, 28 Mar 2014 12:02:54 +0000 (13:02 +0100)]
playbin: filter out buffering messages when switching uri
When switching URI from about-to-finish, playbin starts decoding the new
URI and the queue2 inside uridecodebin starts emitting buffering messages
immediately. However, the queue(s) inside playsink still have buffers to
play and the pipeline doesn't need to pause for buffering, so we should
not send those buffering messages up to the application, otherwise there
is an audible glitch caused by pausing the pipeline for a very short time.
https://bugzilla.gnome.org/show_bug.cgi?id=727255
Kipp Cannon [Tue, 8 Jul 2014 16:37:41 +0000 (12:37 -0400)]
audioresample: don't skip input samples
when downsampling, the output buffer can be filled before all the input
samples are consumed. this is correct: when downsampling, several input
samples are needed for each output sample, so when only a small number of
input samples are available the number of output samples produced can be 0.
the resampler, however, was discarding those extra input samples instead of
clocking them into its filter history for the next iteration. this patch
fixes this by removing the check that the output buffer is full. the code
now always loops until all input samples are consumed, and relies on the
calling code to have provided a suitably sized location for the output.
note that there are already other checks in place in the calling code to
ensure that this is the case.
https://bugzilla.gnome.org/show_bug.cgi?id=732908
Arnaud Vrac [Thu, 31 Jan 2013 12:49:00 +0000 (13:49 +0100)]
basetextoverlay: get framerate from previously parsed video info
Arnaud Vrac [Thu, 31 Jan 2013 12:47:35 +0000 (13:47 +0100)]
basetextoverlay: do not ask for a bufferpool when checking for composition meta
Arnaud Vrac [Thu, 4 Sep 2014 13:06:31 +0000 (15:06 +0200)]
basetextoverlay: schedule reconfigure on source pad when negotiation fails
The source pad might be flushing while negotiating, resulting in
set_caps or the ALLOCATION query failing. In this case set the
reconfigure flag on the source pad so that negotiation is retried on the
next buffer.
Arnaud Vrac [Thu, 31 Jan 2013 14:38:18 +0000 (15:38 +0100)]
basetextoverlay: just forward the seek event to sink pads like other events
https://bugzilla.gnome.org/show_bug.cgi?id=735844
Nicola Murino [Thu, 4 Sep 2014 10:13:45 +0000 (12:13 +0200)]
basetextoverlay: remove unneeded cairo transparence setting
he code here:
http://cgit.freedesktop.org/gstreamer/gst-plugins-base/tree/ext/pango/gstbasetextoverlay.c#n1554
should make transparent the box that contains the text, I think this code is
not correct, it should be:
if (overlay->want_shading) {
double alpha = overlay->shading_value / 255.0;
cairo_paint_with_alpha (cr, alpha);
}
however I think this code could be removed, we already do a shaded background,
why shade the box behind the text with cairo too? only one shading is needed so
we must shade with cairo or with methods like these:
http://cgit.freedesktop.org/gstreamer/gst-plugins-base/tree/ext/pango/gstbasetextoverlay.c#n1642
not both
https://bugzilla.gnome.org/show_bug.cgi?id=736028
Nicola Murino [Tue, 2 Sep 2014 11:10:34 +0000 (13:10 +0200)]
basetextoverlay: Make shading_value a property
https://bugzilla.gnome.org/show_bug.cgi?id=735879
Vineeth T M [Wed, 3 Sep 2014 09:53:26 +0000 (15:23 +0530)]
videorate: GstStructure refcount critical message
s3 is not being initialized when run in a loop
and the same was being freed, which resulted in the crash
https://bugzilla.gnome.org/show_bug.cgi?id=735952
Sebastian Dröge [Tue, 2 Sep 2014 12:37:38 +0000 (15:37 +0300)]
decodebin: Also include the raw caps in the error message, not just the human readable description
Sebastian Dröge [Tue, 2 Sep 2014 09:59:18 +0000 (12:59 +0300)]
decodebin: Include codec description for missing plugins in the error message
If we had plugins and an error occurred we only include the error message
caused by this, otherwise we will include the codec description as generated
from the caps.
This allows to detect which exact codec was missing instead of getting a
generic "no suitable decoders found" error message.
Thiago Santos [Mon, 1 Sep 2014 18:23:27 +0000 (15:23 -0300)]
tests: textoverlay: add test to reproduce fakesink scenario
Adds a new test to textoverlay to make sure it can properly handle
elements that have ANY caps but fail to add the overlay meta in
the allocation query.
This test verifies that textoverlay won't use the caps features even
knowing that the overlay meta is accepted when querying the downstream
caps because it also needs downstream to confirm by putting the meta
in the allocation query.
https://bugzilla.gnome.org/show_bug.cgi?id=735800
Thiago Santos [Mon, 1 Sep 2014 15:38:02 +0000 (12:38 -0300)]
basetextoverlay: properly fallback to non-overlay caps
When downstream claims to accept the overlay meta but fails to
provide it in the allocation query, properly fallback to setting
a new caps without the overlay meta as that is not going to be used.
Only do this if the original caps doesn't have the overlay already,
otherwise there isn't much that can be done.
https://bugzilla.gnome.org/show_bug.cgi?id=735800
Guillaume Desmottes [Mon, 1 Sep 2014 13:06:51 +0000 (15:06 +0200)]
oggdemux: don't set segment.base in pad_submit_packet()
Setting segment.base in the segment sent from gst_ogg_demux_handle_page() is
enough to ensure that chained oggs are played corretly (see bgo#706569).
Tweaking the base in gst_ogg_pad_submit_packet() as well result in delays when
playing a file with start != -1.
https://bugzilla.gnome.org/show_bug.cgi?id=735808
Sebastian Dröge [Mon, 1 Sep 2014 09:28:24 +0000 (12:28 +0300)]
textoverlay: Don't hold any mutexes while calling negotiate
It's not done in any other code calling negotiate and will cause deadlocks
as it is sending events and queries in the pipeline.
Specifically this pipeline was deadlocking:
gst-launch-1.0 videotestsrc ! textoverlay ! textoverlay ! fakesink
Guillaume Desmottes [Fri, 29 Aug 2014 12:00:06 +0000 (14:00 +0200)]
oggdemux: accumulate base time
Base time should be accumulated so non flushing seeks have the expected base.
Not accumulating result in segments appearing as "too late" and so are not
played by the sink.
https://bugzilla.gnome.org/show_bug.cgi?id=735509
Tim-Philipp Müller [Fri, 29 Aug 2014 18:15:56 +0000 (19:15 +0100)]
textoverlay: remove code that can't be reached
If this code could ever be reached, it would leak
memory (CID 1231978), but gst_caps_get_features()
never returns NULL, so that can't happen.
Tim-Philipp Müller [Fri, 29 Aug 2014 17:18:10 +0000 (18:18 +0100)]
encoding: remove assignment that's no longer needed
CID 1231980
Peter G. Baum [Wed, 23 Jul 2014 19:25:24 +0000 (21:25 +0200)]
riff: Recognize RF64 as RIFF file
https://bugzilla.gnome.org/show_bug.cgi?id=735631
Göran Jönsson [Wed, 27 Aug 2014 11:45:57 +0000 (13:45 +0200)]
rtspconnection: Protect readsrc, writesrc and controllsrc with a mutex
Fixes a crash when controlsrc, readsrc or writesrc are modified from
gst_rtsp_source_dispatch_read/write and gst_rtsp_watch_reset at the
same time.
https://bugzilla.gnome.org/show_bug.cgi?id=735569
Sebastian Dröge [Thu, 28 Aug 2014 14:13:05 +0000 (17:13 +0300)]
playsinkconvertbin: setcaps() always returns TRUE and the return value is unused
Change it to a void return value. The caps are forwarded afterwards via
gst_pad_event_default() and not inside this function.
CID 1226477
Sebastian Dröge [Thu, 28 Aug 2014 14:06:22 +0000 (17:06 +0300)]
videodecoder: Fix broken boolean expression
We can seek with end_type==NONE and end_type==SET && end_position=-1. The
check for end_type!=NONE made the second condition impossible.
CID 1226440