Vincent Penquerc'h [Fri, 2 May 2014 14:09:35 +0000 (15:09 +0100)]
rtpbuffer: avoid underflow in size calculation
Thiago Santos [Thu, 1 May 2014 22:31:09 +0000 (19:31 -0300)]
videodecoder: do not parse caps for not using it
Saving some cpu
John Bassett [Fri, 3 Jan 2014 10:06:22 +0000 (11:06 +0100)]
rtpbasepayload: restrict initial random sequence number to be <= 32767
In order to prevent SRTP roll over counter issues the initial sequence
number is restricted to <= 32767. This is recommended by RFC 4568 section 6.4.
Sebastian Dröge [Thu, 1 May 2014 13:11:04 +0000 (15:11 +0200)]
sdp: Add some more gobject-introspection annotations for bindings
https://bugzilla.gnome.org/show_bug.cgi?id=729123
Sebastian Dröge [Thu, 1 May 2014 11:15:57 +0000 (13:15 +0200)]
playbin: Don't block on non-serialized events
https://bugzilla.gnome.org/show_bug.cgi?id=729321
Sebastian Dröge [Thu, 1 May 2014 11:08:24 +0000 (13:08 +0200)]
playsink: Don't block on non-serialized events
https://bugzilla.gnome.org/show_bug.cgi?id=729321
Sebastian Dröge [Thu, 1 May 2014 11:06:53 +0000 (13:06 +0200)]
playsinkconvertbin: Don't block on non-serialized events
https://bugzilla.gnome.org/show_bug.cgi?id=729321
Sebastian Dröge [Thu, 1 May 2014 11:05:05 +0000 (13:05 +0200)]
subtitleoverlay: Don't block on non-serialized events
https://bugzilla.gnome.org/show_bug.cgi?id=729321
Vincent Penquerc'h [Wed, 30 Apr 2014 10:06:27 +0000 (11:06 +0100)]
rtcpbuffer: check claimed data size against available size
Coverity 1208773
Göran Jönsson [Wed, 23 Apr 2014 06:06:36 +0000 (08:06 +0200)]
rtspconnection: Empty queue when flush.
Empty the watchs queue when calling
gst_rtsp_watch_set_flushing with flushing variabel is TRUE.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728772
Ognyan Tonchev [Sun, 16 Mar 2014 15:09:36 +0000 (16:09 +0100)]
rtspconnection: Add more tests
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728907
Luis de Bethencourt [Tue, 29 Apr 2014 14:15:47 +0000 (10:15 -0400)]
videotestsrc: fix undefined behaviour of left-shift
With a small type for the color values being left-shifted, the result is
undefined and it could potentially overflow.
https://bugzilla.gnome.org/show_bug.cgi?id=729195
Tim-Philipp Müller [Tue, 29 Apr 2014 09:59:02 +0000 (10:59 +0100)]
win32: fix export files again
Revert unintended parts of
d8a0927930a87a2eb60d4c98cb3fea8aed911b27
Christian Fredrik Kalager Schaller [Tue, 29 Apr 2014 09:39:18 +0000 (11:39 +0200)]
Add mikey.h file
Haakon Sporsheim [Tue, 29 Apr 2014 07:58:21 +0000 (09:58 +0200)]
audiodecoder: Make caps writable before fixating
https://bugzilla.gnome.org/show_bug.cgi?id=729114
Sebastian Dröge [Tue, 29 Apr 2014 07:54:18 +0000 (09:54 +0200)]
sdpmessage: Add array length annotation to gst_sdp_message_parse_buffer
https://bugzilla.gnome.org/show_bug.cgi?id=729123
Stian Selnes [Tue, 29 Apr 2014 06:46:02 +0000 (08:46 +0200)]
rtpbuffer: fix memory leak when gst_rtp_buffer_map fails
Make sure rtp->data[3] is set before jumping to error path.
https://bugzilla.gnome.org/show_bug.cgi?id=729117
Ravi Kiran K N [Mon, 28 Apr 2014 13:17:06 +0000 (18:47 +0530)]
gst-play: add option to supply media files from playlist file
https://bugzilla.gnome.org/show_bug.cgi?id=728845
Tim-Philipp Müller [Sat, 26 Apr 2014 23:49:01 +0000 (00:49 +0100)]
giobasesink: we mustn't change the format of a query response
Not even in the DEFAULT case. That's bad 0.10 behaviour, no caller
is ever going to check the format of the response.
Tim-Philipp Müller [Sat, 26 Apr 2014 23:25:16 +0000 (00:25 +0100)]
playbin: add nick for soft colorbalance play flag to fix gst-inspect
Fix gst-inspect-1.0 playbin criticals when printing the
flags, which was caused by a missing nick name for one
of the flags.
Tim-Philipp Müller [Sat, 26 Apr 2014 22:26:09 +0000 (23:26 +0100)]
docs: remove outdated and pointless 'Last reviewed' lines from docs
They are very confusing for people, and more often than not
also just not very accurate. Seeing 'last reviewed: 2005' in
your docs is not very confidence-inspiring. Let's just remove
those comments.
Sebastian Dröge [Fri, 25 Apr 2014 15:32:59 +0000 (17:32 +0200)]
giobasesink: Implement handling of the SEEKING query
Edward Hervey [Fri, 25 Apr 2014 09:30:37 +0000 (11:30 +0200)]
audiodecoder: Plug caps leaks
We were returning in various places without unreffing the caps, and
we were also leaking (overwriting) the caps we got from _get_current_caps()
Spotted by Haakon Sporsheim in #gstreamer
Sebastian Dröge [Tue, 22 Apr 2014 16:28:10 +0000 (18:28 +0200)]
audioresample: Don't left-shift into the sign bit, instead use unsigned integers
Thiago Santos [Tue, 22 Apr 2014 03:21:01 +0000 (00:21 -0300)]
tag: exif: avoid adding empty strings
Fixes assertion with some jpeg files
Wim Taymans [Mon, 21 Apr 2014 13:35:32 +0000 (15:35 +0200)]
play: Improve pipeline states
First set the pipeline to the PAUSED state to check if we are dealing
with a live pipeline or not. Then move to the desired state.
If we don't do this, it is possible that we receive a BUFFERING message
before we know that the pipeline is live and we would set the pipeline
to PAUSED and deadlock.
Wim Taymans [Mon, 21 Apr 2014 13:33:10 +0000 (15:33 +0200)]
play: Update buffering state for live pipelines
Update the buffering variable, even for live pipelines so that we don't
print \n for each buffering message.
Sebastian Dröge [Wed, 16 Apr 2014 17:53:14 +0000 (19:53 +0200)]
videoframe: Initialise GstVideoFrame to zeroes if mapping fails
This should allow for more meaningful errors. Dereferencing NULL
is more useful information than dereferencing a random address
happened to be on the stack.
Vincent Penquerc'h [Wed, 16 Apr 2014 10:43:40 +0000 (11:43 +0100)]
exiftag: catch buffer mapping failure
Might be what caused:
Coverity 1139734
Sebastian Dröge [Tue, 15 Apr 2014 17:17:06 +0000 (19:17 +0200)]
audioresample: Fix memory leaks in test
Sebastian Dröge [Tue, 15 Apr 2014 17:16:44 +0000 (19:16 +0200)]
audioresample: Fix up indention
Sebastian Dröge [Tue, 15 Apr 2014 17:16:18 +0000 (19:16 +0200)]
audioresample: Fix out of bounds memory accesses
Sebastian Dröge [Tue, 15 Apr 2014 11:57:08 +0000 (13:57 +0200)]
pango: Make static caps actually static to fix a memory leak
Sebastian Dröge [Tue, 15 Apr 2014 11:54:45 +0000 (13:54 +0200)]
videotestsrc: Fix memory leak in test
Sebastian Dröge [Tue, 15 Apr 2014 11:48:46 +0000 (13:48 +0200)]
encodebin: Fix memory leak in test
Sebastian Dröge [Tue, 15 Apr 2014 11:48:17 +0000 (13:48 +0200)]
encoding-profile: Free preset name in finalize
Sebastian Dröge [Tue, 15 Apr 2014 11:39:39 +0000 (13:39 +0200)]
oggmux: Clear Ogg streams before initing them
They might've been inited before, in which case we leak
memory when initing them again without clearing.
Sebastian Dröge [Tue, 15 Apr 2014 11:03:34 +0000 (13:03 +0200)]
audioconvert: Fix leaks in unit test
Sebastian Dröge [Tue, 15 Apr 2014 09:55:22 +0000 (11:55 +0200)]
videoencoder/decoder: Fix memory leaks in the tests
Sebastian Dröge [Tue, 15 Apr 2014 09:53:43 +0000 (11:53 +0200)]
audiodecoder: Actually allocate enough memory for 64 bits, not just 32 bits
Also fix a memory leak.
Sebastian Dröge [Tue, 15 Apr 2014 09:43:41 +0000 (11:43 +0200)]
audioencoder: Fix memory leaks in unit test
Sebastian Dröge [Tue, 15 Apr 2014 08:29:12 +0000 (10:29 +0200)]
rtp: Fix GBytes memory leak in test
Wim Taymans [Sat, 12 Apr 2014 05:10:36 +0000 (07:10 +0200)]
rtpbasedepay: add stats property
Add a stats property that holds a structure with all the current
values of the depayloader.
See https://bugzilla.gnome.org/show_bug.cgi?id=646577
Wim Taymans [Sat, 12 Apr 2014 04:43:24 +0000 (06:43 +0200)]
rtpbasepayload: update docs
Wim Taymans [Sat, 12 Apr 2014 04:27:36 +0000 (06:27 +0200)]
rtpbasepayload: add current timestamp and seqnum offset to stats
Expose the current timestamp and seqnum offset in the stats
See https://bugzilla.gnome.org/show_bug.cgi?id=646577
Josep Torra [Fri, 11 Apr 2014 08:24:10 +0000 (10:24 +0200)]
textrender: push segment event after caps event
Fixes warning "Sticky event misordering, got 'segment' before 'caps'".
Vincent Penquerc'h [Thu, 10 Apr 2014 15:08:29 +0000 (16:08 +0100)]
oggstream: use G_GUINT64_CONSTANT instead of ll suffix
Thanks slomo for pointing out it's not standard.
Vincent Penquerc'h [Thu, 10 Apr 2014 14:55:57 +0000 (15:55 +0100)]
xvimage: remove dead code
matching_attr can not be NULL here, we've tested that away a few
lines beforehand.
Coverity 1139655
Vincent Penquerc'h [Thu, 10 Apr 2014 14:51:05 +0000 (15:51 +0100)]
videotestsrc: bail out on unsupported caps
This avoids using uninitialized data (and properly rejects caps).
Coverity 1139898
Vincent Penquerc'h [Thu, 10 Apr 2014 14:16:03 +0000 (15:16 +0100)]
typefind: remove pointless checks for data being NULL
It was already checked in an early out, and as it's only
incremented for at most the size of the passed buffer, it
can only become NULL in an address wraparound.
While there, don't cast away const on a pointer.
Coverity 1139845
Vincent Penquerc'h [Thu, 10 Apr 2014 12:34:58 +0000 (13:34 +0100)]
decodebin: consider "no demuxer" case to not have dynamic pads
This fixes a possible NULL dereference.
Coverity 1195146
Vincent Penquerc'h [Thu, 10 Apr 2014 12:28:30 +0000 (13:28 +0100)]
encodebin: guard against gst_pad_get_peer returning NULL
If it does, the pad may be leaked if it's a request pad, though.
Coverity 1139799
Vincent Penquerc'h [Thu, 10 Apr 2014 12:26:42 +0000 (13:26 +0100)]
encodebin: guard against pathological NULL dereference
Coverity 1139798
Vincent Penquerc'h [Thu, 10 Apr 2014 11:32:24 +0000 (12:32 +0100)]
audioresample: reject 0 denominator when creating resampler
Coverity 1195140, 1195139, 1195138
Vincent Penquerc'h [Thu, 10 Apr 2014 11:14:48 +0000 (12:14 +0100)]
video-overlay-composition: guard against NULL pointer dereference on error
If gst_video_overlay_rectangle_apply_global_alpha is called with
a rectangle with unsuitable alpha, expanding the alpha plane will
fail, and thus lead to dereferencing a NULL src pointer. It's not
certain this will happen in practice, as the function is static
and callers might ensure suitable alpha before calling, but there
is no apparent explicit such check.
Add prologue asserts for proper alpha to explicitely prevent this.
Coverity 1139707
Vincent Penquerc'h [Thu, 10 Apr 2014 11:10:47 +0000 (12:10 +0100)]
videometa: fix texture_type memcpy size
Coverity 1139589, 1139588
Vincent Penquerc'h [Thu, 10 Apr 2014 10:19:26 +0000 (11:19 +0100)]
sdpmessage: fix multi statement macros
Wasn't playing nice with an if statement below.
Coverity 1139767
Vincent Penquerc'h [Thu, 10 Apr 2014 10:14:25 +0000 (11:14 +0100)]
audiocdsrc: guard aginst overflow
An audio CD may contain about a tenth of the samples 32 bit can
represent, so it doesn't seem likely this will be hit in practice.
Coverity 1139805
Tim-Philipp Müller [Thu, 10 Apr 2014 11:30:50 +0000 (12:30 +0100)]
pbutils: descriptions: default to systemstream=false for partial video/mpeg caps
Assume systemstream=false for video/mpeg caps where that field
is missing.
Vincent Penquerc'h [Thu, 10 Apr 2014 09:57:53 +0000 (10:57 +0100)]
audiobasesink: avoid possible sample count overflow
At 48 kHz, 2<<31 samples is reached before 13 hours so it
sounds plausible this would be hit.
Coverity 1139800, 1139801
Vincent Penquerc'h [Thu, 10 Apr 2014 09:45:21 +0000 (10:45 +0100)]
theoraenc: fix comparison to unset timestamp
Also rejects negative timestamps that aren't GST_CLOCK_TIME_NONE.
Coverity 1139797
Vincent Penquerc'h [Thu, 10 Apr 2014 09:33:46 +0000 (10:33 +0100)]
oggstream: fix a few left shifts operations on 32 bits cast to 64 bits
This should not cause any actual bug since Theora and Daala have
a maximum shift of 31, and a packet duration of 2^31 seems very
implausible. But it fixes:
Coverity 1139804, 1139803, 1139802
Vincent Penquerc'h [Thu, 10 Apr 2014 09:29:34 +0000 (10:29 +0100)]
oggstream: remove NULL test after dereference
And add NULLness asserts at top of function. The only call
to this passes local variable pointers, so non NULL.
Coverity 206375
Vincent Penquerc'h [Thu, 10 Apr 2014 09:25:46 +0000 (10:25 +0100)]
oggmux: test for failure to return tag
It should really not happen unless the tag list it corrupt,
but the API returns a failure code so we may as well use it.
Coverity 1139595
Vincent Penquerc'h [Thu, 10 Apr 2014 09:22:43 +0000 (10:22 +0100)]
oggdemux: do not dereference NULL pad in warning message
Coverity 1197695
Sebastian Dröge [Thu, 10 Apr 2014 07:18:05 +0000 (09:18 +0200)]
video-event: Update the running times in the force-keyunit events from the pad offsets
Sebastian Dröge [Wed, 9 Apr 2014 14:03:15 +0000 (16:03 +0200)]
decodebin: In adaptive streaming mode, only have a fixed buffer limit for the non-buffering multiqueue
Wim Taymans [Tue, 8 Apr 2014 13:43:50 +0000 (15:43 +0200)]
sdp: guard against address parse errors.
Mathieu Duponchelle [Tue, 25 Mar 2014 16:11:34 +0000 (17:11 +0100)]
adder: rework the logic to check if eos has to be sent.
Checking the size available was incorrect, and the infos
for per-pad EOS are available.
Same logic as audiomixer.
fixes: https://bugzilla.gnome.org/show_bug.cgi?id=727025
Josep Torra [Tue, 8 Apr 2014 10:46:21 +0000 (12:46 +0200)]
audioringbuffer: parse channels field from compressed audio caps
Also parse channels as an optional field in the caps for compressed
audio formats.
Jan Schmidt [Sun, 6 Apr 2014 12:26:20 +0000 (22:26 +1000)]
subtitleoverlay: Consider all caps for overlays, not just the first.
Check all supported caps on the overlay video pad, not just the
first of (possibly) many.
Tim-Philipp Müller [Sat, 5 Apr 2014 12:25:46 +0000 (13:25 +0100)]
tools: update gst-play-1.0 man page
Thiago Santos [Wed, 2 Apr 2014 10:20:43 +0000 (07:20 -0300)]
videodecoder: do not deactivate the bufferpool, just unref
Videodecoder does late renegotiation, it will wait for the next
buffer before renegotiating its caps and bufferpool. It might happen
that downstream element switched from passthrough to non-passthrough
and sent a reconfigure upstream (that caused this renegotiation).
This downstream element will ask the video sink below for the bufferpool
with an allocation query and will get the same bufferpool that
videodecoder is holding, too.
When renegotiating, if videodecoder deactivates its bufferpool it
might be deactivating the bufferpool that some element downstream
is using and cause the pipeline to fail.
https://bugzilla.gnome.org/show_bug.cgi?id=727498
Vincent Penquerc'h [Mon, 24 Feb 2014 16:17:05 +0000 (11:17 -0500)]
audiobasesink: clip start samples to match clipped start time
Clock slaving can clip start time to zero, giving us a shorted
duration than we originally got. To keep in sync, we must then
discard the samples falling before that zero timestamp.
This possibly fixes random distortion caused by constant PA
underflows which are never resynced.
Wim Taymans [Fri, 4 Apr 2014 15:36:04 +0000 (17:36 +0200)]
mikey: Fix the KEMAC payload
The KEMAC payload actually needs to have subpayloads and the key should
go into the KEY_DATA subpayload. Add support for subpayloads and
implement the KEY_DATA payload.
Add some pointers to the conversion functions that allow us to add
encryption and decryption later.
Jan Schmidt [Thu, 3 Apr 2014 15:14:50 +0000 (02:14 +1100)]
playbin: Drop reference to any source element in NULL state
Drop the reference instead of waiting for either finalize(), or
for a new source when reused. Everyone else already forgot about
the old source.
Göran Jönsson [Tue, 1 Apr 2014 08:38:23 +0000 (10:38 +0200)]
rtspconnection: Added gst_rtsp_watch_set_flushing to list.
Added gst_rtsp_watch_set_flushing to list in file
libgstrtsp.def
Sebastian Dröge [Sun, 30 Mar 2014 16:26:59 +0000 (18:26 +0200)]
videodecoder: Always drain the decoder after a discont group in reverse playback mode
Sebastian Dröge [Sun, 30 Mar 2014 15:54:11 +0000 (17:54 +0200)]
videodecoder: Flush the decoder once per discont group, not once per keyframe
Sebastian Dröge [Sun, 30 Mar 2014 15:54:11 +0000 (17:54 +0200)]
videodecoder: Handle reverse playback with multiple GOPs per discont group properly
baseparse will reverse each GOP for us already, so the segment events can
be after our keyframe. Make sure to get it and all other relevant sticky
events before starting to decode.
Sebastian Dröge [Sat, 29 Mar 2014 09:23:05 +0000 (10:23 +0100)]
videodecoder: Log event types of events that are pushed downstream
Sebastian Dröge [Thu, 27 Mar 2014 19:15:01 +0000 (20:15 +0100)]
videodecoder: In reverse playback mode we need to finish the subclass after passing all frames to it
Wim Taymans [Fri, 28 Mar 2014 08:32:20 +0000 (09:32 +0100)]
rtspconnection: add flush method
Add a method to set/unset the flushing state that makes _wait_backlog()
unlock.
See https://bugzilla.gnome.org/show_bug.cgi?id=725898
Nicolas Dufresne [Thu, 27 Mar 2014 20:43:10 +0000 (16:43 -0400)]
ximagesink: only extrapolate alpha mask for 32-bit depth
Instead of passing bogus alpha mask values when there's no alpha.
https://bugzilla.gnome.org/show_bug.cgi?id=727188
Wim Taymans [Tue, 25 Mar 2014 10:14:51 +0000 (11:14 +0100)]
mikey: fix return values of g_return_*
Wim Taymans [Tue, 25 Mar 2014 10:07:34 +0000 (11:07 +0100)]
rtsptransport: UDP is also default for SAVP and AVPF
Wim Taymans [Thu, 20 Mar 2014 11:29:33 +0000 (12:29 +0100)]
docs: add MIKEY docs
Wim Taymans [Sat, 15 Mar 2014 17:46:52 +0000 (18:46 +0100)]
mikey: add MIKEY parsing helpers
MIKEY is defined in RFC 3830 and is used to exchange SRTP encryption
parameters between a sender and a receiver in a secure way.
This library implements a subset of the features, enough to implement
RFC 4567, using MIKEY in SDP and RTSP.
Ognyan Tonchev [Sun, 16 Mar 2014 16:04:44 +0000 (17:04 +0100)]
rtspconnection: Fix minor memory leaks in error handling
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726642
Ognyan Tonchev [Sun, 16 Mar 2014 16:06:02 +0000 (17:06 +0100)]
rtspconnection: Fix connection_poll()
* Only check for conditions we are interested in.
* Makes no sense to specify G_IO_ERR and G_IO_HUP in condition, they
will always be reported if they are true.
* Do not create timed source if timeout is NULL.
* Correctly wait for sources to be dispatched, context_iteration() is
not guaranteed to always block even if set to do so.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726641
Wim Taymans [Thu, 20 Mar 2014 08:18:31 +0000 (09:18 +0100)]
rtpbasepayload: add pt and ssrc to stats
Thiago Santos [Sun, 16 Mar 2014 11:34:30 +0000 (08:34 -0300)]
tests: decodebin: port old decodebin2 test for parser and decoder linking
They were in the old decodebin2.c tests file and were never ported.
Now we can get rid of decodebin2.c
Arun Raghavan [Sun, 16 Mar 2014 16:00:38 +0000 (17:00 +0100)]
playback: Add video-/audio-filter properties
This provides an audio-filter and video-filter property to allow
applications to set filter elements/bins. The idea is that these will
e
applied if possible -- for non-raw sinks, the filters will be skipped.
If the application wishes to force the application of the filters, this
can be done by setting the new flag introduced on playsink -
GST_PLAY_FLAG_FORCE_FILTERS.
https://bugzilla.gnome.org/show_bug.cgi?id=679031
Sebastian Dröge [Sun, 16 Mar 2014 17:38:25 +0000 (18:38 +0100)]
Revert "playback: Add video-/audio-filter properties"
This reverts commit
fb8fdedb4f4649aa33700bbc720131c1678df49f.
Arun Raghavan [Sat, 15 Mar 2014 15:05:22 +0000 (16:05 +0100)]
playback: Add video-/audio-filter properties
This provides an audio-filter and video-filter property to allow
applications to set filter elements/bins. The idea is that these will be
applied if possible -- for non-raw sinks, the filters will be skipped.
If the application wishes to force the application of the filters, this
can be done by setting the new flag introduced on playsink -
GST_PLAY_FLAG_FORCE_FILTERS.
https://bugzilla.gnome.org/show_bug.cgi?id=679031
Руслан Ижбулатов [Sat, 15 Mar 2014 20:21:32 +0000 (20:21 +0000)]
rtspconnection: Silence a compiler warning
Cast the argument into (const char *) on W32, as winsock2 expects it.
https://bugzilla.gnome.org/show_bug.cgi?id=726433
Arun Raghavan [Sat, 15 Mar 2014 10:24:23 +0000 (11:24 +0100)]
playsink: Fix documentation for what the audio chain looks like
https://bugzilla.gnome.org/show_bug.cgi?id=679031
Tim-Philipp Müller [Tue, 11 Mar 2014 21:58:49 +0000 (21:58 +0000)]
docs: update plugin docs and remove old properties and signals
Re-generate .args and .signals file from scratch so that
old signals that no longer exist (such as the 'new-decoded-pad'
signal on decodebin) no longer show up in the documentation.
Stefan Sauer [Tue, 11 Mar 2014 21:15:13 +0000 (22:15 +0100)]
adder: set a group-id on the stream-start event
Set a default group-id to fix a warning printed by the sink.
Christian Fredrik Kalager Schaller [Tue, 11 Mar 2014 16:39:54 +0000 (17:39 +0100)]
Add new header file