Tim-Philipp Müller [Tue, 21 Jun 2016 17:04:23 +0000 (18:04 +0100)]
tests: discoverer: handle missing ogg/codec plugins gracefully
https://bugzilla.gnome.org/show_bug.cgi?id=767859
Nicolas Dufresne [Tue, 21 Jun 2016 15:45:49 +0000 (11:45 -0400)]
Automatic update of common submodule
From ac2f647 to f363b32
Vincent Penquerc'h [Mon, 20 Jun 2016 11:42:28 +0000 (12:42 +0100)]
opusdec: handle missing buffers with no duration
If buffer duration is missing, it is parsed from the packet data.
This is not foolproof, since Opus can change durations on the
fly.
https://bugzilla.gnome.org/show_bug.cgi?id=767826
Michael Olbrich [Fri, 17 Jun 2016 13:11:20 +0000 (15:11 +0200)]
tagdemux: preserve duration when skipping a tag at the beginning of a buffer
gst_buffer_copy_region() does not copy the duration if it doesn't start
with the first byte. We just skip the tag here, so the duration is still
valid.
https://bugzilla.gnome.org/show_bug.cgi?id=767791
Sebastian Dröge [Tue, 21 Jun 2016 07:24:15 +0000 (10:24 +0300)]
discoverer: Only allow serializing OK discoverer infos to GVariants
They will be incomplete otherwise and we can't generate the full serialized
information, and instead will crash somewhere on the way.
https://bugzilla.gnome.org/show_bug.cgi?id=767859
Vincent Penquerc'h [Thu, 14 Apr 2016 13:02:27 +0000 (14:02 +0100)]
oggdemux: fix audio glitches with low bitrate vorbis
A low bitrate stream which can pack more than 2 seconds of audio
in a page would cause the stream's position to be updated not
often enough, and would trigger a spurious "jump" via a GAP
event. Instead, we update the stream position after calculating
the new overall segment position.
https://bugzilla.gnome.org/show_bug.cgi?id=764966
Mikhail Fludkov [Thu, 16 Jun 2016 09:55:52 +0000 (10:55 +0100)]
opusdec: test for PLC timestamp when FEC is enabled.
Mikhail Fludkov [Tue, 5 Apr 2016 10:41:45 +0000 (12:41 +0200)]
audiodecoder: fix invalid timestamps when PLC and delay
Elements inherited from GstAudioDecoder, supporting PLC and introducing
delay produce invalid timestamps. Good example is opusdec with in-band FEC
enabled. After receiving GAP event it delays the audio concealment until
the next buffer arrives. The next buffer will have DISCONT flag set which
will make GstAudioDecoder to reset it's internal state, thus forgetting
the timestamp of GAP event. As a result the concealed audio will have the
timestamp of the next buffer (with DISCONT flag) but not the timestamp
from the event.
Paulo Neves [Sat, 11 Jun 2016 15:11:30 +0000 (17:11 +0200)]
exiftag: Increase serialized geo precision
The serialization of double typed geographical
coordinates to DMS system supported by the exif
standards was previously truncated without need.
The previous code truncated the seconds part of
the coordinate to a fraction with denominator
equal to 1 causing a bug on the deserialization
when the test for the coordinate to be serialized
was more precise.
This patch applies a 10E6 multiplier to the numerator
equal to the denominator of the rational number.
Eg. Latitude = 89.5688643 Serialization
DMS Old code = 89/1 deg, 34/1 min, 7/1 sec
DMS New code = 89/1 deg, 34/1 min, 79114800UL/10000000UL
Deserialization
DMS Old code = 89.
5686111111
DMS New code = 89.5688643
The new test tries to serialize a higher precision
coordinate.
The types of the coordinates are also guint32 instead
of gint like previously. guint32 is the type of the
fraction components in the exif.
https://bugzilla.gnome.org/show_bug.cgi?id=767537
Thomas Jones [Sat, 11 Jun 2016 02:36:32 +0000 (22:36 -0400)]
audiovisualizer: Fix calculations for bytes<->samples conversions
Use bpf instead of channels * sizeof(gint16).
https://bugzilla.gnome.org/show_bug.cgi?id=767505
Thomas Jones [Fri, 10 Jun 2016 18:04:36 +0000 (14:04 -0400)]
audiovisualizer: Use GST_BUFFER_PTS() instead of GST_BUFFER_TIMESTAMP()
https://bugzilla.gnome.org/show_bug.cgi?id=767506
Thomas Jones [Sat, 11 Jun 2016 02:50:41 +0000 (22:50 -0400)]
audiovisualizer: fix timestamp calculation for audio channels > 1
We have to use bps*channels instead of just bps, which is exactly what bpf is for.
https://bugzilla.gnome.org/show_bug.cgi?id=767507
Víctor Manuel Jáquez Leal [Thu, 9 Apr 2015 17:09:17 +0000 (19:09 +0200)]
videodecoder: handle buffer's flags at offset
For reverse playback it is important to handle correctly the frame sync
points, which is set when the input buffer doesn't have the DELTA_UNIT flag.
This is handled correctly when decoder is packetized, but when it is not the
frame's sync point is not copied, and the reverse playback never decodes frame
batches.
The current patch adds the buffer's flags to the Timestamp list, where the
timestamp and duration of the input buffers are hold.
Víctor Manuel Jáquez Leal [Thu, 9 Apr 2015 17:18:58 +0000 (19:18 +0200)]
videodecoder: squash two message logs into one
There were two consecutive log messages in gst_video_decoder_decode_frame().
Given the information they provide, it is more efficient to squash them into a
single one.
Víctor Manuel Jáquez Leal [Thu, 9 Apr 2015 17:16:10 +0000 (19:16 +0200)]
videodecoder: playback rate is in input_segment
The playback rate is hold in the input_segment member variable, not in the
output_segment, and the parse_gather list was never filled because of that.
This patch changes the comparison with input_segment.
Sebastian Dröge [Thu, 9 Jun 2016 16:02:49 +0000 (19:02 +0300)]
videodecoder: Use input segment rate instead of output segment rate to decide whether the drain on keyframes
The output segment is only set up after data is output, which might be far in
the future for reverse playback. Also we are here interested in the state at
the current *input* frame (which is the keyframe), not any possible output.
Sebastian Dröge [Thu, 9 Jun 2016 15:53:54 +0000 (18:53 +0300)]
videodecoder: Only drain in KEY_UNITS trick mode after a keyframe in forwards playback mode
For reverse playback the same behaviour was already implemented in
flush_parse().
For reverse playback, chain_forward() is only used to gather frames and not
for decoding, and it is actually called by the draining logic, causing an
infinite recursion.
Edward Hervey [Tue, 7 Jun 2016 07:48:35 +0000 (09:48 +0200)]
videodecoder: Don't push late frames
While it's a bit tricky to discard frames *before* decoding (because
we might not be sure which data is needed or not by the decoder), we
can discard them after decoding if they are too late anyway.
Any following basetransform based element or similar would drop the frame too.
Edward Hervey [Tue, 7 Jun 2016 08:31:59 +0000 (10:31 +0200)]
videodecoder: Avoid recursive drain/flush calls
_chain_forward() can also be called with reverse playback. Blindly
calling drain_out() on DISCONT buffers would end up in a recursive
call.
Edward Hervey [Sat, 4 Jun 2016 07:51:17 +0000 (09:51 +0200)]
videodecoder: Drain out keyframes in TRICK_MODE_KEY_UNITS
When asked to just decode keyframe, if we got a keyframe drain out
the decoder straight away.
This avoids having to wait for the next frame and reduces delay even
more.
https://bugzilla.gnome.org/show_bug.cgi?id=767232
Edward Hervey [Sat, 4 Jun 2016 07:49:00 +0000 (09:49 +0200)]
videodecoder: Drain decoder on DISCONT buffers
This ensures the decoder is properly drained out when receiving a
DISCONT buffer. The optimal way of doing this would have been to
receive a GAP event before hand but it is not always possible.
Fixes big delays with some decoders (ex gst-libav) that will not
drain out data when only decoding keyframes.
https://bugzilla.gnome.org/show_bug.cgi?id=767232
Michael Olbrich [Wed, 1 Jun 2016 09:02:12 +0000 (11:02 +0200)]
tagdemux: preserve timestamp when skipping a tag at the beginning of a buffer
gst_buffer_copy_region() does not copy the timestamp if it doesn't start
with the first byte. We just skip the tag here, so the timestamp is still
valid.
https://bugzilla.gnome.org/show_bug.cgi?id=767173
Stian Selnes [Tue, 10 May 2016 11:56:13 +0000 (13:56 +0200)]
video-color: Fix colorimetry IS_UNKNOWN
Fix issue with colorimetry default indicies not being in sync with the
actual table causing IS_UNKNOWN() to sometimes fail.
https://bugzilla.gnome.org/show_bug.cgi?id=767163
Guillaume Desmottes [Thu, 2 Jun 2016 11:07:01 +0000 (13:07 +0200)]
opusenc, subtitleoverlay: use MAY_BE_LEAKED flag
Flag caps that are cached locally and will never be freed.
https://bugzilla.gnome.org/show_bug.cgi?id=767155
Sebastian Dröge [Wed, 1 Jun 2016 13:56:13 +0000 (16:56 +0300)]
decodebin: Create a new decode element with the parser/convert capsfilter if there is a multiqueue after the parser
https://bugzilla.gnome.org/show_bug.cgi?id=767102
Edward Hervey [Mon, 23 May 2016 13:11:53 +0000 (15:11 +0200)]
videodecoder: Make sure the DISCONT flag is set on the outgoing buffer
The base class was setting the DISCONT flag before checking whether the buffer
would be in segment or not.
Fix issues with DISCONT flags not being properly propagated downstream when
decoders buffers were out of segment.
https://bugzilla.gnome.org/show_bug.cgi?id=766800
Joan Pau Beltran [Wed, 1 Jun 2016 13:31:52 +0000 (15:31 +0200)]
docs: design: add IYU2 raw video format description
https://bugzilla.gnome.org/show_bug.cgi?id=763026
Tim-Philipp Müller [Wed, 1 Jun 2016 11:36:38 +0000 (12:36 +0100)]
textoverlay: enable shaded background drawing for new IYU2 format
Joan Pau Beltran [Mon, 30 May 2016 14:40:26 +0000 (16:40 +0200)]
video: add IYU2 format
This existed in 0.10 and is needed by dc1394src.
IYU2 format is a YUV fully-sampled packed format similar to v308
but with different component order (U-Y-V instead of Y-U-V).
http://www.fourcc.org/yuv.php#IYU2
https://bugzilla.gnome.org/show_bug.cgi?id=763026#c5
Nirbheek Chauhan [Thu, 17 Mar 2016 18:17:48 +0000 (23:47 +0530)]
libvisual: Factor out endian-order RGB formats
MSVC seems to ignore preprocessor conditionals inside static
pad templates. Also remove unnecessary quotes inside caps strings.
Tim-Philipp Müller [Mon, 23 May 2016 23:44:21 +0000 (00:44 +0100)]
g-i: pass compiler env to g-ir-scanner
It's what introspection.mak does as well. Should
fix spurious build failures on gnome-continuous.
Tim-Philipp Müller [Mon, 23 May 2016 18:28:39 +0000 (19:28 +0100)]
opus: use default error messages in some more cases
Tim-Philipp Müller [Mon, 23 May 2016 14:35:39 +0000 (15:35 +0100)]
opusdec: use default error message strings in more cases
Details should go into the debug message. We should probably
make up new codes for encoder/decoder lib init failures too.
Olivier Crête [Thu, 19 May 2016 16:26:05 +0000 (12:26 -0400)]
opus: Post error message on GST_FLOW_ERROR
https://bugzilla.gnome.org/show_bug.cgi?id=766265
Olivier Crête [Sat, 14 May 2016 12:41:28 +0000 (14:41 +0200)]
opusdec: Use GST_AUDIO_DECODER_ERROR
This way, the first invalid stream won't break all decoding.
https://bugzilla.gnome.org/show_bug.cgi?id=766265
Guillaume Desmottes [Mon, 16 May 2016 10:52:50 +0000 (12:52 +0200)]
videosink: ensure the debug category is always initialized
gst_video_sink_center_rect() can be called without a GstVideoSink
having been instantiated so we can't relly on the video sink
class_init function to init the category.
Fix a warning when running:
GST_CHECKS=test_video_center_rect GST_DEBUG=6 G_DEBUG=fatal_warnings make libs/video.check-norepeat
https://bugzilla.gnome.org/show_bug.cgi?id=766510
Guillaume Desmottes [Mon, 16 May 2016 13:39:02 +0000 (15:39 +0200)]
playbin: fix suburidecodebin leak
We take a ref before removing which was never freeded.
The element is still alive anyway because the group has its own ref as
well.
Fix a leak with the 'test_suburi_error_wrongproto' test.
https://bugzilla.gnome.org/show_bug.cgi?id=766515
Tim-Philipp Müller [Mon, 16 May 2016 08:52:35 +0000 (09:52 +0100)]
tests: playbin: add test for new "element-setup" signal
https://bugzilla.gnome.org/show_bug.cgi?id=578933
Tim-Philipp Müller [Sat, 14 May 2016 10:28:01 +0000 (11:28 +0100)]
playbin: add "element-setup" signal
Allows configuration of plugged elements.
https://bugzilla.gnome.org/show_bug.cgi?id=578933
Tim-Philipp Müller [Sun, 15 May 2016 13:43:11 +0000 (14:43 +0100)]
app: remove marshaller files from git
Tim-Philipp Müller [Sun, 15 May 2016 13:37:41 +0000 (14:37 +0100)]
app: use generic marshallers
Edward Hervey [Sun, 15 May 2016 10:01:17 +0000 (12:01 +0200)]
oggdemux: Reset keyframe_granule when needed
This avoids ending up with bogus values when doing flushing seeks
in push-mode.
https://bugzilla.gnome.org/show_bug.cgi?id=766467
Sebastian Dröge [Sun, 15 May 2016 10:31:03 +0000 (13:31 +0300)]
docs: Update for git master
Matthew Waters [Sat, 14 May 2016 12:43:24 +0000 (15:43 +0300)]
video/affinetransformationmeta: define the coordinate space used
Based on the expected output from the already existing usage by androidmedia
and the opengl plugins.
https://bugzilla.gnome.org/show_bug.cgi?id=764667
Tim-Philipp Müller [Thu, 17 Dec 2015 19:38:33 +0000 (19:38 +0000)]
pbutils: add description for WebVTT
Tim-Philipp Müller [Wed, 30 Sep 2015 16:55:22 +0000 (17:55 +0100)]
tests: playsink: add minimal test for playsink element
Attempt to reproduce leak.
https://bugzilla.gnome.org/show_bug.cgi?id=755867
Guillaume Desmottes [Tue, 10 May 2016 10:17:34 +0000 (12:17 +0200)]
vorbistag: fix buffer leaks in tests
It internally uses gst_check_chain_func() so we
should call gst_check_drop_buffers() when tearing down tests to free
the buffers which have been exchanged through the pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=766226
Guillaume Desmottes [Tue, 10 May 2016 10:17:34 +0000 (12:17 +0200)]
appsrc: fix buffer leaks in tests
It internally uses gst_check_chain_func() so we
should call gst_check_drop_buffers() when tearing down tests to free
the buffers which have been exchanged through the pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=766226
Guillaume Desmottes [Tue, 10 May 2016 10:17:34 +0000 (12:17 +0200)]
audiorate: fix buffer leaks in tests
It internally uses gst_check_chain_func() so we
should call gst_check_drop_buffers() when tearing down tests to free
the buffers which have been exchanged through the pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=766226
Hyunjun Ko [Tue, 10 May 2016 12:34:53 +0000 (21:34 +0900)]
sdp: parse sdp attributes in case that sdp message doesn't contain mikey message
https://bugzilla.gnome.org/show_bug.cgi?id=766204
Sebastian Dröge [Tue, 10 May 2016 13:44:04 +0000 (16:44 +0300)]
appsrc: Add duration property for providing a duration in TIME format
https://bugzilla.gnome.org/show_bug.cgi?id=766229
Sebastian Dröge [Tue, 10 May 2016 07:01:12 +0000 (10:01 +0300)]
videodecoder/encoder: Correct GST_IS_*CODER_CLASS macros
They are currently not used, but would result in a compiler error due to wrong
variable name usage.
https://bugzilla.gnome.org/show_bug.cgi?id=766203
Sebastian Dröge [Thu, 5 May 2016 10:16:57 +0000 (13:16 +0300)]
multihandlesink: Warn if trying to change the state from the streaming thread
Instead of silently returning GST_STATE_CHANGE_FAILURE.
Alessandro Decina [Wed, 4 May 2016 01:33:50 +0000 (11:33 +1000)]
decodebin: an element can negotiate before we block it
When we initialize an element in decodebin, we 1) set it to PAUSED and
push sticky events on its sinkpad to trigger negotiation 2) block its
src pad(s) to detect CAPS events. We can't block before 1) as that
would lead to a deadlock.
It's possible (and common) tho that an element configures its srcpad
during 1) and before 2). Therefore before this change we would
typically block and expose an element's pad only once the element
output its first buffer, triggering sticky events to be resent. One
consequence of this behaviour is that it sometimes broke
renegotiation.
With this change now we consider a pad ready to be exposed when it's
->blocked or has fixed caps (which were set before we could block it).
https://bugzilla.gnome.org/show_bug.cgi?id=765456
Thiago Santos [Mon, 2 May 2016 17:21:55 +0000 (14:21 -0300)]
opusdec: intersect with the filter before returning on getcaps
So upstream gets a smaller set to decide upon as it is what it requested
with the filter
https://bugzilla.gnome.org/show_bug.cgi?id=765684
Thiago Santos [Mon, 2 May 2016 13:23:09 +0000 (10:23 -0300)]
opusdec: improve getcaps to return all possible rates
The library is capable of converting to different rates.
Includes tests.
https://bugzilla.gnome.org/show_bug.cgi?id=765684
Thiago Santos [Mon, 2 May 2016 13:21:52 +0000 (10:21 -0300)]
opusdec: remove artificial restriction on rate negotiation
Remove restrictions when rate is 48000, the underlying lib supports
converting any of the input to any of the output rates.
https://bugzilla.gnome.org/show_bug.cgi?id=765684
Thiago Santos [Mon, 2 May 2016 02:19:57 +0000 (23:19 -0300)]
opusdec: refactor getcaps repeated code into a function
Easier to read and maintain
Thiago Santos [Mon, 2 May 2016 13:36:07 +0000 (10:36 -0300)]
tests: opus: remove apparently useless macro in tests
Sebastian Dröge [Fri, 29 Apr 2016 08:06:49 +0000 (11:06 +0300)]
encoding-profile: Fix caps memory leak
Sebastian Dröge [Thu, 28 Apr 2016 08:21:47 +0000 (11:21 +0300)]
encoding-profile: Recurse into nested container profiles and only add the final audio/video streams
If we e.g. have AVI with DV container with video/audio inside the DV
container, we can't handle this at this point with an encoding profile.
Instead of erroring out, flatten the container hierarchy.
https://bugzilla.gnome.org/show_bug.cgi?id=765708
Sebastian Dröge [Thu, 28 Apr 2016 08:18:23 +0000 (11:18 +0300)]
encoding-profile: Fail to create encoding profile from discoverer info if no streams could be added
https://bugzilla.gnome.org/show_bug.cgi?id=765708
Sebastian Dröge [Thu, 28 Apr 2016 08:15:53 +0000 (11:15 +0300)]
encoding-profile: Move adding of each stream to a helper function
https://bugzilla.gnome.org/show_bug.cgi?id=765708
Aurélien Zanelli [Fri, 21 Aug 2015 08:40:33 +0000 (10:40 +0200)]
exiftag: handle GST_TAG_CAPTURING_FOCAL_LENGTH_35_MM tag
This tag match the EXIF_TAG_FOCAL_LENGTH_IN_35_MM_FILM exif tag and is
stored on a short. Hence there is a precision loss compared to the
GstTag which is a double value.
https://bugzilla.gnome.org/show_bug.cgi?id=753930
Aurélien Zanelli [Fri, 21 Aug 2015 08:39:36 +0000 (10:39 +0200)]
tag: add GST_TAG_CAPTURING_FOCAL_LENGTH_35_MM tag
It is the 35 mm equivalent focal length of the lens, mainly used in
photography. Tag value is stored in a double value to be consistent with
GST_TAG_CAPTURING_FOCAL_LENGTH.
https://bugzilla.gnome.org/show_bug.cgi?id=753930
Guillaume Desmottes [Thu, 28 Apr 2016 06:59:25 +0000 (09:59 +0300)]
opusdec: fix caps leaks
The caps returned by gst_pad_get_allowed_caps() was leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=765706
Kipp Cannon [Wed, 27 Apr 2016 09:08:46 +0000 (18:08 +0900)]
audio: Add const to segment parameter of gst_audio_buffer_clip()
e.g., allows this to be used with the reference retrieved by
gst_event_parse_segment().
https://bugzilla.gnome.org/show_bug.cgi?id=765663
Jakub Adam [Thu, 21 Apr 2016 06:45:40 +0000 (08:45 +0200)]
ximagesink: generate reconfigure on window handle change
When ximagesink is given a new window handle, it should check
its geometry and if the size of the new window differs from
the previous one, create reconfigure event in order to get
a chance to negotiate a more suitable image resolution with
the upstream elements.
We can't rely on receiving Expose or ConfigureNotify from
the X server for the newly assigned window, which would also
generate reconfigure.
https://bugzilla.gnome.org/show_bug.cgi?id=765424
Sebastian Dröge [Mon, 25 Apr 2016 14:16:04 +0000 (17:16 +0300)]
smartencoder: Only accept TIME segments for real
... and don't try to push pending data without ever having received a SEGMENT
event before EOS
https://bugzilla.gnome.org/show_bug.cgi?id=765541
Sebastian Dröge [Mon, 25 Apr 2016 13:48:36 +0000 (16:48 +0300)]
codec-utils: H265 level idc 0 is not valid
Don't put level=0 into the caps, it confuses other elements.
https://bugzilla.gnome.org/show_bug.cgi?id=765538
Sebastian Dröge [Mon, 25 Apr 2016 13:47:00 +0000 (16:47 +0300)]
codec-utils: H264 level idc 0 is not valid
Don't put level=0 into the caps, it confuses other elements.
https://bugzilla.gnome.org/show_bug.cgi?id=765538
Sebastian Dröge [Mon, 25 Apr 2016 13:06:39 +0000 (16:06 +0300)]
encoding-profile: Remove codec_data and streamheader fields from constraint caps
When converting discoverer output to an encoding profile, it makes sense to
omit these. It's very very unlikely that our encoder is going to produce bit
by bit the same codec_data or streamheader.
https://bugzilla.gnome.org/show_bug.cgi?id=765534
Sebastian Dröge [Mon, 25 Apr 2016 12:05:36 +0000 (15:05 +0300)]
encoding-profile: Don't put G_BEGIN_DECLS around #include statements
It should only be around our own declarations.
Wim Taymans [Fri, 22 Apr 2016 13:07:10 +0000 (15:07 +0200)]
video-converter: add more fastpaths for I420 -> RGB
Use the I420->BGRA and a new I420->ARGB to speed up any I420 to RGB
operation.
Josep Torra [Tue, 19 Apr 2016 15:36:20 +0000 (17:36 +0200)]
sdp: update since markers to 1.8.1 for some new APIs
As we decided to backport some fixes we update the since markers.
Tim-Philipp Müller [Sun, 17 Apr 2016 15:21:32 +0000 (16:21 +0100)]
tests: vorbisenc: fix with CK_FORK=no
Vivia Nikolaidou [Tue, 12 Apr 2016 13:32:20 +0000 (16:32 +0300)]
decodebin: Always add a multiqueue in single-stream use-buffering pipelines
If we are configured to use buffering and there is no demuxer in the chain, we
still want a multiqueue, otherwise we will ignore the use-buffering property.
In that case, we will insert a multiqueue after the parser or decoder - not
elsewhere, otherwise we won't have timestamps.
https://bugzilla.gnome.org/show_bug.cgi?id=764948
Guillaume Desmottes [Mon, 18 Apr 2016 14:39:02 +0000 (17:39 +0300)]
gst-play: call gst_deinit()
So we can use gst-play to track memory leaks.
https://bugzilla.gnome.org/show_bug.cgi?id=765216
Tim-Philipp Müller [Fri, 15 Apr 2016 16:48:26 +0000 (17:48 +0100)]
win32: update .def for new API
Jan Schmidt [Fri, 15 Apr 2016 16:11:59 +0000 (02:11 +1000)]
Revert "audioringbuffer: start ringbuffer if needed upon commit"
This reverts commit
13ee94ef1091f8a8a90dbd395b39876c26c5188e.
Causes audio glitches at startup by starting to output segments
from the ringbuffer before it has been filled / fully prerolled.
https://bugzilla.gnome.org/show_bug.cgi?id=657076
Aleix Conchillo Flaqué [Fri, 15 Apr 2016 07:18:50 +0000 (00:18 -0700)]
sdpmessage: new gst_sdp_media_parse_keymgmt/gst_sdp_media_parse_keymgmt
We add a couple of new functions gst_sdp_media_parse_keymgmt and
gst_sdp_media_parse_keymgmt. We also implement
gst_sdp_message_attributes_to_caps and gst_sdp_media_attributes_to_caps
in terms of these new functions and also gst_mikey_message_to_caps.
Aleix Conchillo Flaqué [Fri, 15 Apr 2016 06:29:34 +0000 (23:29 -0700)]
mikey: add new function gst_mikey_message_to_caps
Vincent Penquerc'h [Fri, 15 Apr 2016 11:54:32 +0000 (12:54 +0100)]
subparse: fix build with GCC 4.6.3
gstsubparse.c: In function ‘parse_subrip’:
gstsubparse.c:988:7: error: ignoring return value of ‘strtol’, declared with attribute warn_unused_result [-Werror=unused-result]
cc1: all warnings being treated as errors
https://bugzilla.gnome.org/show_bug.cgi?id=765042
Josep Torra [Fri, 15 Apr 2016 11:08:38 +0000 (13:08 +0200)]
.gitignore: add test-resample binary
Aleix Conchillo Flaqué [Fri, 15 Apr 2016 00:26:54 +0000 (17:26 -0700)]
mikey: allow passing srtp or srtcp to create mikey message
Current implementation requires all srtp and srtcp parameters to be
given in the caps. MIKEY uses only one algorithm for encryption and one
for authentication so we now allow passing srtp or srtcp parameters. If
both are given srtp parametres will be preferred.
https://bugzilla.gnome.org/show_bug.cgi?id=765027
Julien Isorce [Thu, 14 Apr 2016 09:00:06 +0000 (10:00 +0100)]
Automatic update of common submodule
From 6f2d209 to ac2f647
Sebastian Dröge [Wed, 13 Apr 2016 07:07:33 +0000 (10:07 +0300)]
videometa: Initialize all fields of all metas with default values
The metas are not allocated with all fields initialized to zeroes.
https://bugzilla.gnome.org/show_bug.cgi?id=764902
Arjen Veenhuizen [Mon, 11 Apr 2016 15:28:00 +0000 (15:28 +0000)]
videometa: Explicitly initialize GstVideoCropMeta on init
It is not allocated with all fields initialized to 0.
https://bugzilla.gnome.org/show_bug.cgi?id=764902
Guillaume Desmottes [Mon, 21 Mar 2016 15:34:37 +0000 (16:34 +0100)]
alsa: properly convert position-less channels from ALSA
The only way for ALSA to expose a position-less multi channels is to
return an array full of SND_CHMAP_MONO. Converting this to a
GST_AUDIO_CHANNEL_POSITION_MONO array would be invalid as
GST_AUDIO_CHANNEL_POSITION_MONO is meant to be used only with one
channel.
Fix this by using GST_AUDIO_CHANNEL_POSITION_NONE which is meant to be
used for position-less channels.
https://bugzilla.gnome.org/show_bug.cgi?id=763799
Guillaume Desmottes [Mon, 21 Mar 2016 15:29:39 +0000 (16:29 +0100)]
audioringbuffer: don't attempt to reorder position-less channels
As said in its doc GST_AUDIO_CHANNEL_POSITION_NONE is meant to be used
for "position-less channels, e.g. from a sound card that records 1024
channels; mutually exclusive with any other channel position".
But at the moment using such positions would raise a
'g_return_if_reached' warning as gst_audio_get_channel_reorder_map()
would reject it.
Fix this by preventing any attempt to reorder in such case as that's not
what we want anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=763799
Guillaume Desmottes [Mon, 21 Mar 2016 11:26:50 +0000 (07:26 -0400)]
audio: add debug output if channels mapping does not match
https://bugzilla.gnome.org/show_bug.cgi?id=763985
Guillaume Desmottes [Mon, 21 Mar 2016 10:58:13 +0000 (11:58 +0100)]
alsa: add some debugging output to alsa_detect_channels_mapping()
https://bugzilla.gnome.org/show_bug.cgi?id=763985
Guillaume Desmottes [Mon, 21 Mar 2016 10:46:45 +0000 (11:46 +0100)]
gst-audio: add gst_audio_channel_positions_to_string()
We currently don't log much about channel positions making debugging
harder as it should be. This is the first step in my attempt to improve
this.
https://bugzilla.gnome.org/show_bug.cgi?id=763985
Guillaume Desmottes [Mon, 21 Mar 2016 09:09:10 +0000 (05:09 -0400)]
alsa: factor out alsa_detect_channels_mapping()
This code was duplicated in alsasrc and alsasink.
https://bugzilla.gnome.org/show_bug.cgi?id=763985
Guillaume Desmottes [Mon, 21 Mar 2016 09:06:18 +0000 (05:06 -0400)]
alsa: coding style fix
Was using tabs instead of spaces.
https://bugzilla.gnome.org/show_bug.cgi?id=763985
Vivia Nikolaidou [Tue, 12 Apr 2016 13:34:00 +0000 (16:34 +0300)]
fdmemory, rtpbasedepayload: Ran gst-indent
https://bugzilla.gnome.org/show_bug.cgi?id=764948
Vivia Nikolaidou [Tue, 12 Apr 2016 13:25:12 +0000 (16:25 +0300)]
decodebin: Rename misleading variable is_parser_converter into is_parser
In that place, the variable isn't checking whether the element is a
converter, only if it is a parser.
https://bugzilla.gnome.org/show_bug.cgi?id=764948
Fabrice Bellet [Mon, 11 Apr 2016 09:28:09 +0000 (11:28 +0200)]
audio: Fix a race with the audioringbuffer thread
There is a small window of time where the audio ringbuffer thread
can access the parent thread variable, before it's initialized
by the parent thread. The patch replaces this variable use by
g_thread_self().
https://bugzilla.gnome.org/show_bug.cgi?id=764865
Tim-Philipp Müller [Wed, 6 Apr 2016 16:57:28 +0000 (17:57 +0100)]
tests: libscpp: test RTP/RTCP buffer init macros with C++ compiler
Jan Schmidt [Wed, 6 Apr 2016 11:03:19 +0000 (21:03 +1000)]
subtitleoverlay: Don't complain when stream-start is the first event.
When blocking the subtitle pad, it's expected that stream-start
is the first event, and that it can precede caps arriving on the
peer pad - in fact the caps can only have arrived on the peer
pad when it was pre-primed with sticky events previously.
Instead, just pass the stream-start and don't block, because
stream-start is sticky anyway.