Tim-Philipp Müller [Sat, 27 Aug 2016 00:17:25 +0000 (01:17 +0100)]
meson: enable tests
At least on non-Windows platforms.
Thibault Saunier [Fri, 19 Aug 2016 18:09:27 +0000 (11:09 -0700)]
Use the new API to post flow ERROR messages on the bus
https://bugzilla.gnome.org/show_bug.cgi?id=770158
Josep Torra [Fri, 26 Aug 2016 18:48:05 +0000 (20:48 +0200)]
build: silence error about pthread for 'make check' in osx
Fixes "clang: error: argument unused during compilation: '-pthread'"
Tim-Philipp Müller [Thu, 25 Aug 2016 11:19:52 +0000 (12:19 +0100)]
meson: update for new files in video lib
Josep Torra [Tue, 9 Aug 2016 09:39:53 +0000 (11:39 +0200)]
decodebin: forward sticky events on multiqueue
When connecting a demuxer through a multiqueue ensure to copy sticky
events in order to allow the following factory being properly
checked that it is functional.
https://bugzilla.gnome.org/show_bug.cgi?id=769580
Sebastian Dröge [Thu, 25 Aug 2016 08:56:11 +0000 (11:56 +0300)]
win32: Update libgstvideo.def
Xabier Rodriguez Calvar [Tue, 26 Jul 2016 17:14:40 +0000 (19:14 +0200)]
videodirection: interface for rotation and flip
A GstVideoOrientationMethod enumeration is also provided for the
admitted property values.
https://bugzilla.gnome.org/show_bug.cgi?id=768687
Matej Knopp [Wed, 17 Aug 2016 21:49:02 +0000 (23:49 +0200)]
parsebin: do not set global tags to stream
https://bugzilla.gnome.org/show_bug.cgi?id=770053
Nirbheek Chauhan [Fri, 12 Aug 2016 15:26:31 +0000 (20:56 +0530)]
Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson
With contributions from:
Tim-Philipp Müller <tim@centricular.com>
Jussi Pakkanen <jpakkane@gmail.com> (original port)
Highlights of the features provided are:
* Faster builds on Linux (~40-50% faster)
* The ability to build with MSVC on Windows
* Generate Visual Studio project files
* Generate XCode project files
* Much faster builds on Windows (on-par with Linux)
* Seriously fast configure and building on embedded
... and many more. For more details see:
http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
Building with Meson should work on both Linux and Windows, but may
need a few more tweaks on other operating systems.
Tim-Philipp Müller [Sat, 20 Aug 2016 10:01:04 +0000 (11:01 +0100)]
tests: ignore new videotimecode test binary
Vivia Nikolaidou [Fri, 19 Aug 2016 12:29:13 +0000 (15:29 +0300)]
videotimecode: Fix false positive coverity issues
They are false positive overflows, because coverity doesn't realize that
hours <= 24, minutes < 60 and seconds < 60 in all functions. Also casting the
number 60 (seconds in minute, minutes in hour) to guint64 for the
calculations, in order to avoid overflowing once we allow more than 24-hour
timecodes.
CIDs #1371459, #1371458
Sebastian Dröge [Thu, 18 Aug 2016 09:03:39 +0000 (12:03 +0300)]
videorate: Implement basic support for reverse playback
This is enough for making it work in GES, but it's unclear if all the various
property combinations are working correctly. It's an improvement over what was
there before in any case, which was to just drop all buffers if rate < 0.0.
https://bugzilla.gnome.org/show_bug.cgi?id=769624
Nirbheek Chauhan [Fri, 12 Aug 2016 15:34:03 +0000 (21:04 +0530)]
gstfft: Use stdint.h instead of _stdint.h
_stdint.h is generated by Autotools and we don't really need it.
stdint.h is now available on all supported platforms.
This really only makes a difference for MSVC, which has it starting from
Visual Studio 2015.
Wim Taymans [Fri, 19 Aug 2016 07:27:01 +0000 (09:27 +0200)]
fdmemory: add flag to avoid close of the fd
Add GST_FD_MEMORY_FLAG_DONT_CLOSE to avoid closing the fd when the
memory is freed. When you can guarantee the lifetime of the fd is
longer than the memory, this can save a dup() call.
Vivia Nikolaidou [Wed, 17 Aug 2016 10:03:43 +0000 (13:03 +0300)]
videotimecode: Fix various coverity issues
Most of them are overflow related and false positives, but coverity can't know
that these can't overflow without us giving it more information. Add some
assertions for this.
One was an actual issue with flags comparison.
CIDs #1369051, #1369050, #1369049, #1369048, #1369045
Tim-Philipp Müller [Mon, 8 Aug 2016 19:04:11 +0000 (20:04 +0100)]
playbin3: add "element-setup" signal
Allows configuration of plugged elements.
https://bugzilla.gnome.org/show_bug.cgi?id=578933
Vincent Penquerc'h [Thu, 16 Jun 2016 09:01:50 +0000 (10:01 +0100)]
oggdemux: remove eos avoidance workaround
This workaround tried to avoid an EOS event when seeking to the
end of an Ogg stream in order to find its duration. At some point,
an EOS event there would cause any queue2 upstream to pause and
not restart on a seek back to the beginning. This now appears to
not be the case anymore, and so the workaround can be removed.
https://bugzilla.gnome.org/show_bug.cgi?id=767689
Sebastian Dröge [Thu, 4 Aug 2016 16:06:45 +0000 (19:06 +0300)]
videotimecode: Add to docs and exports list
Vivia Nikolaidou [Wed, 18 May 2016 16:30:52 +0000 (19:30 +0300)]
timeoverlay: Add support to display timecode
Choosing time-mode=time-code will display the time code attached to the
buffer, or 00:00:00:00 if no time code is found.
https://bugzilla.gnome.org/show_bug.cgi?id=766419
Vivia Nikolaidou [Sat, 14 May 2016 14:59:20 +0000 (17:59 +0300)]
videometa: Added video time code meta
It attaches a GstVideoTimeCodeMeta (SMPTE timecode) as metadata to a buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=766419
Vivia Nikolaidou [Sat, 14 May 2016 09:20:38 +0000 (12:20 +0300)]
videotimecode: Added support for SMPTE time code metadata
Can be attached as GstMeta into a video frame.
https://bugzilla.gnome.org/show_bug.cgi?id=766419
Guillaume Desmottes [Thu, 28 Jul 2016 13:04:01 +0000 (15:04 +0200)]
decodebin3: don't leak alternate inputs
Fix leaks (including parsebin elements) with this pipeline:
playbin3
uri=http://127.0.0.1:8079/defaults/exMPD_BIP_TC1/exMPD_BIP_TC1.mpd
https://bugzilla.gnome.org/show_bug.cgi?id=769270
Luis de Bethencourt [Mon, 1 Aug 2016 15:00:29 +0000 (16:00 +0100)]
ogg: check return values in gst_ogg_parse_new_stream
Return NULL in gst_ogg_parse_new_stream when either ogg_stream_pagein() or
gst_ogg_stream_setup_map() failed.
https://bugzilla.gnome.org/show_bug.cgi?id=769299
Luis de Bethencourt [Mon, 1 Aug 2016 14:52:11 +0000 (15:52 +0100)]
ogg: fix memory leak in gst_ogg_parse_new_stream
Avoid leaking the stream object
https://bugzilla.gnome.org/show_bug.cgi?id=769299
Guillaume Desmottes [Mon, 1 Aug 2016 11:35:16 +0000 (13:35 +0200)]
decodebin3: fix output->decoder_{sink,src} leak
output->decoder_sink and output->decoder_src are both going to be
replaced in the 2 branches of the following 'if'.
https://bugzilla.gnome.org/show_bug.cgi?id=769270
Guillaume Desmottes [Mon, 1 Aug 2016 10:37:43 +0000 (12:37 +0200)]
decodebin3: fix tag list leak
https://bugzilla.gnome.org/show_bug.cgi?id=769270
Guillaume Desmottes [Mon, 1 Aug 2016 10:28:20 +0000 (12:28 +0200)]
decodebin3: consume select-streams event
https://bugzilla.gnome.org/show_bug.cgi?id=769270
Guillaume Desmottes [Thu, 28 Jul 2016 13:44:27 +0000 (15:44 +0200)]
decodebin_next: fix caps and tags leaks
The getters are (transfer full).
https://bugzilla.gnome.org/show_bug.cgi?id=769270
Guillaume Desmottes [Thu, 28 Jul 2016 12:46:34 +0000 (14:46 +0200)]
decodebin3: fix collection ref handling
gst_stream_collection_add_stream() consumes the collection reference
passed to it but gst_stream_collection_get_stream() is (transfer none).
Fix this pipeline:
playbin3
uri=http://127.0.0.1:8079/defaults/exMPD_BIP_TC1/exMPD_BIP_TC1.mpd
https://bugzilla.gnome.org/show_bug.cgi?id=769270
Guillaume Desmottes [Fri, 29 Jul 2016 09:38:44 +0000 (11:38 +0200)]
decodebin3: handle full removal of streams
Fix the
validate.file.playback.disable_subtitle_track_while_paused.* validate
scenarios when using playbin3.
https://bugzilla.gnome.org/show_bug.cgi?id=769298
Carlos Rafael Giani [Tue, 2 Aug 2016 10:03:18 +0000 (12:03 +0200)]
riff: Remove sample rate and channel count boundaries in caps
WAV is too generic to impose more-or-less arbitrary boundaries on the
sample rate and channel count caps. For example, there are 384 kHz WAV
files. Another example: it is in theory possible that somebody puts DSD
data into a WAV file, which will then have a sample rate of ~2.8 MHz.
For this reason, get rid of the rate and channel caps unless they are
fixed values. Downstream anyway usually knows the limitations better.
https://bugzilla.gnome.org/show_bug.cgi?id=761514
Sreerenj Balachandran [Fri, 29 Jul 2016 12:51:35 +0000 (15:51 +0300)]
pbutils: Add more h264 scalable profiles
Adding Scalable Constrained High (G.10.1.2.1) and
Scalable High Intra(G.10.1.3) profiles to the profile list
https://bugzilla.gnome.org/show_bug.cgi?id=769303
Sebastian Dröge [Tue, 26 Jul 2016 14:46:02 +0000 (17:46 +0300)]
rtpbuffer: Add some const qualifiers
gst_rtp_buffer_add_extension_onebyte_header() and
gst_rtp_buffer_add_extension_twobytes_header() can have a const argument for
the actual extension data.
Tim-Philipp Müller [Sat, 26 Dec 2015 13:19:01 +0000 (13:19 +0000)]
parsebin: maintain original order when creating fallback stream collection
Jan Schmidt [Sun, 20 Mar 2016 03:37:03 +0000 (14:37 +1100)]
decodebin: Send stream-group-done to unblock downstream
When processing EOS for a pad, send a stream-group-done
for the pad in case downstream is waiting for more
data on this stream before it can process related
streams from the group.
https://bugzilla.gnome.org/show_bug.cgi?id=768995
Guillaume Desmottes [Fri, 22 Jul 2016 12:40:25 +0000 (14:40 +0200)]
playbin3: fix collection leak
The collection referenced owned by playbin3 was not released when it was
destroyed.
https://bugzilla.gnome.org/show_bug.cgi?id=769080
Guillaume Desmottes [Fri, 22 Jul 2016 12:35:17 +0000 (14:35 +0200)]
decodebin3: fix collection refcounting
My collection leak fix
83f30627cd9460157935e7e9603c60a15555967e
introduced a crash in this scenario: audiotestsrc ! decodebin3 ! fakesink
The reference handling of collection in decodebin3 wasn't very clear and
my attempt to fix the leak introduced a regression where we went one
reference short in some other scenarios.
Fixing this by:
- Giving a strong reference to DecodebinInput making things clearer
- Fixing get_merged_collection() which was sometimes returning an
existing reference and sometimes a new one.
https://bugzilla.gnome.org/show_bug.cgi?id=769080
Tim-Philipp Müller [Sat, 23 Jul 2016 13:42:30 +0000 (14:42 +0100)]
Add more files to .gitignore
Tim-Philipp Müller [Fri, 22 Jul 2016 13:42:31 +0000 (14:42 +0100)]
docs: urisourcebin: fix typo
Jan Schmidt [Fri, 22 Jul 2016 13:21:36 +0000 (23:21 +1000)]
playback: Flesh out docs a bit for new elements
Add some more text to the docs for urisourcebin,
parsebin, decodebin3 and playbin3, including a warning
that they are unstable API for now
Tim-Philipp Müller [Fri, 22 Jul 2016 11:52:12 +0000 (12:52 +0100)]
docs: add playbin3, decodebin3, parsebin, urisourcebin to docs
Docs still need some fleshing out though.
Arun Raghavan [Wed, 13 Jul 2016 09:29:52 +0000 (18:29 +0900)]
Revert "vorbisenc: push an updated segment stop time when we know it"
This reverts commit
a16cd5d2a5cbdf084163ead68b59d537d7db99f7.
Setting the stop time on the segment breaks reconfiguration, as the
encoder signals an EOS, but we reconfigure it an continue to produce
buffers.
This information should not be required via the segment downstream
since we already have the sample count being used to generate buffer
durations.
https://bugzilla.gnome.org/show_bug.cgi?id=768763
Vincent Penquerc'h [Wed, 20 Jul 2016 10:47:48 +0000 (11:47 +0100)]
oggdemux: fix unknown duration playing Ogg over HTTP
If the duration is not known from the chain, it might be known
by the startup seek.
This fixes failure to seek.
Merged with a patch from Tim-Philipp Müller <tim@centricular.com>
https://bugzilla.gnome.org/show_bug.cgi?id=768991
Michael Olbrich [Wed, 20 Jul 2016 10:17:57 +0000 (12:17 +0200)]
audioclock: use GST_STIME_FORMAT for the correct argument
GST_STIME_ARGS is used for time_offset not for last_time.
This fixes the format string accordingly.
https://bugzilla.gnome.org/show_bug.cgi?id=768990
Wim Taymans [Tue, 19 Jul 2016 16:20:57 +0000 (18:20 +0200)]
audioresample: after a reset, recalculate the ouput size
After we reset the resampler, there is no history anymore in the resampler
and the previously calculated output size is no longer valid.
Recalculate the new output size after a reset to make sure we don't try
to convert too much.
Tim-Philipp Müller [Tue, 19 Jul 2016 12:26:06 +0000 (13:26 +0100)]
subparse: fix some leaks
Fixes check-valgrind for subparse test.
Tim-Philipp Müller [Mon, 18 Jul 2016 16:26:26 +0000 (17:26 +0100)]
tests: appsink: add minimal test for new pull with timeout functions
https://bugzilla.gnome.org/show_bug.cgi?id=768852
Joan Pau Beltran [Fri, 15 Jul 2016 11:20:29 +0000 (13:20 +0200)]
appsink: add _pull_sample/preroll() variants with timeout
The _pull_sample() and _pull_preroll() functions block
until a sample is available, EOS happens or the pipeline
is shut down (returning NULL in the last two cases).
This adds _try_pull_sample() and _try_pull_preroll()
functions with a timeout argument to specify the maximum
amount of time to wait for a new sample.
To avoid code duplication, wait forever if the timeout is
GST_CLOCK_TIME_NONE and use that to implement
_pull_sample/_pull_preroll with the original behavior.
Add also corresponding action signals "try-pull-sample"
and "try-pull-preroll".
https://bugzilla.gnome.org/show_bug.cgi?id=768852
Guillaume Desmottes [Wed, 13 Jul 2016 12:17:25 +0000 (14:17 +0200)]
decodebin3: actually check result of accept caps query
We were just checking if the query was handled, not its result.
Also fix a leak as gst_pad_query() was not consuming the query.
https://bugzilla.gnome.org/show_bug.cgi?id=768811
Tim-Philipp Müller [Mon, 18 Jul 2016 13:20:11 +0000 (14:20 +0100)]
xvimagesink: only error out if the allocated memory is too small
https://bugzilla.gnome.org/show_bug.cgi?id=767712
Duncan Palmer [Mon, 18 Jul 2016 09:59:23 +0000 (19:59 +1000)]
xvimageallocator: const correctness in gst_xvimage_allocator_alloc().
https://bugzilla.gnome.org/show_bug.cgi?id=767712
Duncan Palmer [Thu, 7 Jul 2016 12:27:15 +0000 (22:27 +1000)]
xvimagesink: error out on buffer size sanity check failure.
If sanity checks on the buffer size allocated by XvShmCreateImage() fail,
call on g_set_error(), rather than just logging a warning, as this
failure is fatal.
Add a sanity check on buffer size when the video format is RGB. This adds to
existing checks on various YUV pixel formats.
https://bugzilla.gnome.org/show_bug.cgi?id=767712
Guillaume Desmottes [Thu, 14 Jul 2016 08:33:38 +0000 (10:33 +0200)]
playbin3: fix stream leak
The stream returned by gst_message_streams_selected_get_stream() is
reffed.
https://bugzilla.gnome.org/show_bug.cgi?id=768811
Guillaume Desmottes [Wed, 13 Jul 2016 14:16:21 +0000 (16:16 +0200)]
decodebin3: fix collection leak
The collection owned by GstDecodebin3 has to be unreffed when disposing.
gst_event_new_stream_collection() doesn't consume the collection passed
to it so no need to give it an extra ref.
https://bugzilla.gnome.org/show_bug.cgi?id=768811
Guillaume Desmottes [Thu, 14 Jul 2016 08:34:30 +0000 (10:34 +0200)]
decodebin3: fix stream leaks
MultiQueueSlot owns a ref on the active stream so it should release it
when being freed.
DecodebinInputStream owns ref on the active and pending stream so they
should be dropped when being freed.
https://bugzilla.gnome.org/show_bug.cgi?id=768811
Guillaume Desmottes [Thu, 14 Jul 2016 12:24:23 +0000 (14:24 +0200)]
decodebin3: fix event leaks
Returning GST_PAD_PROBE_HANDLED means we are taking care of unreffing
the probe info.
https://bugzilla.gnome.org/show_bug.cgi?id=768811
Guillaume Desmottes [Thu, 14 Jul 2016 14:29:39 +0000 (16:29 +0200)]
decodebin3: fix caps leaks
gst_stream_get_caps() returns a reffed caps.
The caps passed to gst_query_set_caps_result() are not transfered.
The caps in gst_parse_pad_stream_start_event() was either acquired
using gst_pad_get_current_caps() which returns a new ref or
explicitly reffed.
https://bugzilla.gnome.org/show_bug.cgi?id=768811
Tim-Philipp Müller [Fri, 15 Jul 2016 18:48:02 +0000 (19:48 +0100)]
rtp: rtpbasedepayload: simplify code
Remove unnecessary helper struct for callbacks. The bclass
member of the helper struct was not used, so we can just
remove it and the GET_CLASS() call and simplify the whole
affair by passing the depayloader directly to the callback.
Guillaume Desmottes [Wed, 13 Jul 2016 14:02:25 +0000 (16:02 +0200)]
playbin3: fix leaks of collection returned by message parse API
gst_message_parse_stream_collection() and
gst_message_parse_streams_selected() actually return a reffed
GstStreamCollection.
https://bugzilla.gnome.org/show_bug.cgi?id=768776
Jan Schmidt [Fri, 15 Jul 2016 12:47:02 +0000 (22:47 +1000)]
gst-play: Allow disabling audio/video/subtitle tracks
When cycling through tracks, add 'disable' to the set
of states.
Jan Schmidt [Fri, 24 Jun 2016 02:25:30 +0000 (12:25 +1000)]
alsasink: Remove unused hwparam/swparam pointers
The ALSA params structures aren't kept. The pointers
aren't used anywhere, so remove them from the struct.
Guillaume Desmottes [Wed, 13 Jul 2016 13:45:33 +0000 (15:45 +0200)]
tools: fix device leaks in gst-device-monitor
gst_message_parse_device_{added,removed} is actually returning a new ref
on the device.
https://bugzilla.gnome.org/show_bug.cgi?id=768776
Guillaume Desmottes [Tue, 12 Jul 2016 10:03:53 +0000 (12:03 +0200)]
videoscale: fix bus leak in test
gst_bus_add_signal_watch() takes a ref on the bus which should be
released using gst_bus_remove_signal_watch().
https://bugzilla.gnome.org/show_bug.cgi?id=768718
Xabier Rodriguez Calvar [Mon, 11 Jul 2016 17:17:41 +0000 (19:17 +0200)]
videoorientation: Use G_DEFINE_INTERFACE instead of a manually written get_type()
https://bugzilla.gnome.org/show_bug.cgi?id=768687
Sebastian Dröge [Mon, 11 Jul 2016 21:13:32 +0000 (00:13 +0300)]
video: Fix some compiler warnings for out-of-range enum values
https://bugzilla.gnome.org/show_bug.cgi?id=767816
Stefan Sauer [Mon, 11 Jul 2016 19:13:37 +0000 (21:13 +0200)]
Automatic update of common submodule
From f363b32 to f49c55e
Seungha Yang [Sun, 10 Jul 2016 01:28:44 +0000 (10:28 +0900)]
appsrc: Remove trailing whitespace
https://bugzilla.gnome.org/show_bug.cgi?id=768510
Sebastian Dröge [Fri, 8 Jul 2016 13:43:05 +0000 (16:43 +0300)]
encoding-profile: Remove some more fields from the caps when creating from discoverer info
parsed, framed, stream-format and alignment are only relevant for parsers and
should not matter here. We still want to be able to use an encoder that can
only output byte-stream if the input was avc.
https://bugzilla.gnome.org/show_bug.cgi?id=768566
Sebastian Dröge [Fri, 8 Jul 2016 12:45:25 +0000 (15:45 +0300)]
missing-plugins: Remove some other fields when cleaning up caps
Caps are cleaned up for missing plugins, and for creating encoding profiles
and caps descriptions.
Fields like streamheader, parsed, framed, stream-format and alignment are not
relevant here. The last ones all because a parser will take care of them.
https://bugzilla.gnome.org/show_bug.cgi?id=768566
Sebastian Dröge [Fri, 8 Jul 2016 12:44:26 +0000 (15:44 +0300)]
pbutils: Mark private functions as G_GNUC_INTERNAL
Víctor Manuel Jáquez Leal [Thu, 7 Jul 2016 15:37:51 +0000 (17:37 +0200)]
subparse: don't reset allowed tags
When a discont buffer is processed, the state is re-initialized, which
nullifies the allowed_tags.
The problem is when a subrip string with tags is processed and allowed_tags is
NULL. The function subrip_unescape_formatting() calls g_strjoinv with a
str_array as NULL, leading to a GLib-CRITICAL.
This patch removes the allowed_tags resetting, in parser_state_init(), but
move it into gst_sub_parse_format_autodetect().
https://bugzilla.gnome.org/show_bug.cgi?id=768525
Sergio Torres Soldado [Mon, 4 Jul 2016 16:19:08 +0000 (17:19 +0100)]
rtspconnection: Fix potential deadlock caused by blocking read forever
Reset the connection "may_cancel" property to avoid a potential deadlock
if there is no data to read and the socket stays blocked forever.
https://bugzilla.gnome.org/show_bug.cgi?id=768249
Wim Taymans [Thu, 7 Jul 2016 15:29:34 +0000 (17:29 +0200)]
video-converter: fix compilation on big-endian
Edward Hervey [Thu, 7 Jul 2016 15:10:17 +0000 (17:10 +0200)]
videodecoder: More trickmode fix
We need to take into account the input segment flags to know whether
we should drain the decoder after a new keyframe in trick mode.
Otherwise we would have to wait for the next frame to be outputted (and
the segment to be activated) which ... well ... kind of beats the whole
point of this draining :)
Piotr Drąg [Wed, 6 Jul 2016 19:13:19 +0000 (21:13 +0200)]
po: update POTFILES
https://bugzilla.gnome.org/show_bug.cgi?id=768495
Sebastian Dröge [Wed, 6 Jul 2016 21:27:00 +0000 (00:27 +0300)]
audio: Ship audio-resampler-neon.h
Thijs Vermeir [Wed, 6 Jul 2016 14:14:32 +0000 (16:14 +0200)]
tests: correctly print guintptr on mac
Sebastian Dröge [Wed, 6 Jul 2016 10:51:00 +0000 (13:51 +0300)]
Back to development
Sebastian Dröge [Wed, 6 Jul 2016 10:06:06 +0000 (13:06 +0300)]
Release 1.9.1
Sebastian Dröge [Wed, 6 Jul 2016 08:42:29 +0000 (11:42 +0300)]
Update .po files
Sebastian Dröge [Wed, 6 Jul 2016 07:18:00 +0000 (10:18 +0300)]
po: Update translations
Philippe Normand [Thu, 30 Jun 2016 14:36:27 +0000 (16:36 +0200)]
videodecoder: Take stream lock one time only on drain
When the drain is triggered from the chain function the lock is already
taken so there is no need to take it one more time.
https://bugzilla.gnome.org/show_bug.cgi?id=767641
Sebastian Dröge [Mon, 4 Jul 2016 09:16:55 +0000 (11:16 +0200)]
videodecoder: fix criticals fixating a non existent field
https://bugzilla.gnome.org/show_bug.cgi?id=766970
Sebastian Dröge [Mon, 4 Jul 2016 09:12:25 +0000 (11:12 +0200)]
audiodecoder: Protect samples_in/bytes_out and audio info with object lock
It might cause invalid calculations during the CONVERT query otherwise.
Sebastian Dröge [Mon, 4 Jul 2016 09:07:54 +0000 (11:07 +0200)]
audioencoder: Protect samples_in/bytes_out and audio info with object lock
It might cause invalid calculations during the CONVERT query otherwise.
Sebastian Dröge [Mon, 4 Jul 2016 09:00:51 +0000 (11:00 +0200)]
audioencoder/decoder: Move encoded audio conversion function to a common place
No need to duplicate this non-trivial function.
Vincent Penquerc'h [Mon, 4 Jul 2016 08:15:03 +0000 (09:15 +0100)]
audiodecoder: fix criticals fixating a non existent field
https://bugzilla.gnome.org/show_bug.cgi?id=766970
Sebastian Dröge [Mon, 4 Jul 2016 08:55:07 +0000 (10:55 +0200)]
videodecoder: Use the object lock to protect bytes/time tracking
And especially don't use the stream lock for that, as otherwise non-serialized
queries (CONVERT) will cause the stream lock to be taken and easily causes the
application to deadlock.
https://bugzilla.gnome.org/show_bug.cgi?id=768361
Sebastian Dröge [Mon, 4 Jul 2016 08:52:24 +0000 (10:52 +0200)]
videoencoder: Use the object lock to protect bytes/time tracking
Sebastian Dröge [Mon, 4 Jul 2016 08:47:36 +0000 (10:47 +0200)]
videoencoder/decoder: Move conversion utility functions to a common header and use consistently in encoder/decoder
Sebastian Dröge [Wed, 16 Mar 2016 22:19:18 +0000 (00:19 +0200)]
appsrc: If do-timestamp=TRUE, capture the time when the buffer was pushed to the source
... instead of the time when it was pushed further downstream.
https://bugzilla.gnome.org/show_bug.cgi?id=763630
Zaheer Abbas Merali [Fri, 29 Apr 2016 07:59:42 +0000 (00:59 -0700)]
basertpdepayload: create valid segment when given non-time segment
This will become an error in 1.10.
https://bugzilla.gnome.org/show_bug.cgi?id=765796
Tim-Philipp Müller [Thu, 30 Jun 2016 17:53:07 +0000 (18:53 +0100)]
tagdemux: fix handling of very short files in push mode
By default we'll wait for a certain amount of data before
attempting typefinding. However, if the stream is fairly
short, we might get EOS before we ever attempted any
typefinding, so at this point we should force typefinding
and output any pending data if we manage to detect the
type.
https://bugzilla.gnome.org//show_bug.cgi?id=768178
Tim-Philipp Müller [Thu, 30 Jun 2016 16:30:34 +0000 (17:30 +0100)]
tagdemux: fix erroring out if we reach EOS without detecting type
In 0.10 the source pad was a dynamic pad that was only added once
the type had been detected, but in 1.x it's an always source pad,
so checking whether it's still NULL won't work to detect if the
type has been detected.
Makes tagdemux error out when we get EOS but haven't managed to
identify the format of the data after the tag.
https://bugzilla.gnome.org//show_bug.cgi?id=768178
Edward Hervey [Thu, 30 Jun 2016 15:26:56 +0000 (17:26 +0200)]
parsebin: Fix authors and description
Edward Hervey [Thu, 30 Jun 2016 15:26:14 +0000 (17:26 +0200)]
playback: Remove uridecodebin3
This was committed by mistake. The solution forward is to use the
appropriate combination of urisourcebin and decodebin3
Edward Hervey [Wed, 29 Jun 2016 16:14:51 +0000 (18:14 +0200)]
playback: New elements
With contributions from Jan Schmidt <jan@centricular.com>
* decodebin3 and playbin3 have the same purpose as the decodebin and
playbin elements, except make usage of more 1.x features and the new
GstStream API. This allows them to be more memory/cpu efficient.
* parsebin is a new element that demuxers/depayloads/parses an incoming
stream and exposes elementary streams. It is used by decodebin3.
It also automatically creates GstStream and GstStreamCollection for
elements that don't natively create them and sends the corresponding
events and messages
* Any application using playbin can use playbin3 by setting the env
variable USE_PLAYBIN3=1 without reconfiguration/recompilation.
Sebastian Dröge [Wed, 29 Jun 2016 16:14:51 +0000 (18:14 +0200)]
audioconvert: Handle fallback channel mask for mono correctly
It's 0 and no mask should be set for mono at all.
https://bugzilla.gnome.org/show_bug.cgi?id=757472
Sebastian Dröge [Mon, 27 Jun 2016 17:53:37 +0000 (20:53 +0300)]
playsink: Don't send another step event to the audio-sink if we got step-done from there
Otherwise we would end up with a deadlock as the audio-sink emits step-done
from its streaming thread.
Sebastian Dröge [Mon, 27 Jun 2016 17:49:38 +0000 (20:49 +0300)]
playsink: Force STEP events on the video-sink for GST_FORMAT_BUFFERS
It does not make much sense for audio sinks.