platform/upstream/gstreamer.git
7 years agomeson: require orc 0.4.24 here too
Tim-Philipp Müller [Mon, 3 Oct 2016 07:56:55 +0000 (08:56 +0100)]
meson: require orc 0.4.24 here too

Needed for some video stuff. Same requirement as in
the autotools build.

7 years agomeson: Enable SSE intrinsics in audio-resampler
Arun Raghavan [Mon, 3 Oct 2016 05:29:37 +0000 (10:59 +0530)]
meson: Enable SSE intrinsics in audio-resampler

This files need to be built with the specific C flags for the
corresponding processor optimisations.

7 years agomeson: Enable Orc in build
Arun Raghavan [Mon, 3 Oct 2016 05:28:09 +0000 (10:58 +0530)]
meson: Enable Orc in build

Top-level meson.build code updated from gst-plugins-good.

7 years agomeson: Setup pre commit hook and fix getpluginsdir for standalone case
Thibault Saunier [Fri, 30 Sep 2016 14:35:37 +0000 (11:35 -0300)]
meson: Setup pre commit hook and fix getpluginsdir for standalone case

7 years agomeson: update version
Tim-Philipp Müller [Fri, 30 Sep 2016 10:41:10 +0000 (11:41 +0100)]
meson: update version

7 years agoRelease 1.9.90
Sebastian Dröge [Fri, 30 Sep 2016 10:01:53 +0000 (13:01 +0300)]
Release 1.9.90

7 years agoUpdate .po files
Sebastian Dröge [Fri, 30 Sep 2016 09:12:12 +0000 (12:12 +0300)]
Update .po files

7 years agopo: Update translations
Sebastian Dröge [Fri, 30 Sep 2016 08:42:21 +0000 (11:42 +0300)]
po: Update translations

7 years agoaudio-resampler: Add a missing header to noinst_HEADERS
Arun Raghavan [Thu, 29 Sep 2016 14:24:52 +0000 (19:54 +0530)]
audio-resampler: Add a missing header to noinst_HEADERS

7 years agoaudiorsample: Fix build on 32-bit x86
Arun Raghavan [Thu, 29 Sep 2016 14:15:16 +0000 (19:45 +0530)]
audiorsample: Fix build on 32-bit x86

Turns out _mm_cvtsi128_si64() isn't available on 32-bit, so only build
SSE 4.1 optimisations on x86-64 for now.

7 years agoaudioresample: Separate out CFLAGS used for SSE* code
Arun Raghavan [Wed, 28 Sep 2016 12:07:38 +0000 (17:37 +0530)]
audioresample: Separate out CFLAGS used for SSE* code

This makes sure that we only build files that need explicit SIMD support
with the relevant CFLAGS. This allows the rest of the code to be built
without, and specific SSE* code is only called after runtime checks for
CPU features.

https://bugzilla.gnome.org/show_bug.cgi?id=729276

7 years agoaudioresample: Fix some gobject introspection warnings
Arun Raghavan [Wed, 28 Sep 2016 13:38:52 +0000 (19:08 +0530)]
audioresample: Fix some gobject introspection warnings

7 years agoplaybin3: Remove fallback properties/signals
Edward Hervey [Mon, 26 Sep 2016 08:01:08 +0000 (10:01 +0200)]
playbin3: Remove fallback properties/signals

These can all be used via the GstStream API

https://bugzilla.gnome.org/show_bug.cgi?id=769079

7 years agotests: playbin-complex test needs oggdemux
Tim-Philipp Müller [Sun, 25 Sep 2016 21:02:22 +0000 (22:02 +0100)]
tests: playbin-complex test needs oggdemux

7 years agotests: videotimecode: fix floating point comparisons
Tim-Philipp Müller [Sat, 24 Sep 2016 20:11:32 +0000 (21:11 +0100)]
tests: videotimecode: fix floating point comparisons

Comparing floats for equality is not necessarily going to
work reliably, so use fail_unless_equals_float() for this.
Test would fail on x86 (Intel Atom x5-Z8300).

7 years agotests: adder: disable racy flush_start_flush_stop test
Tim-Philipp Müller [Sun, 25 Sep 2016 15:22:16 +0000 (16:22 +0100)]
tests: adder: disable racy flush_start_flush_stop test

It's been broken for years, and it's unlikely it will ever
be fixed for collectpads/adder now that there's audiomixer
which works fine. So let's disable it, since all it does
is that it creates noise that distracts from other failures.

https://bugzilla.gnome.org/show_bug.cgi?id=708891

7 years agovideo-scaler: take number of bits into account when copying
Wim Taymans [Thu, 22 Sep 2016 14:15:54 +0000 (16:15 +0200)]
video-scaler: take number of bits into account when copying

Copy twice the amount of pixels for 16 bits formats.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=747225

7 years agostreamsynchronizer: Correctly calculate group start times in reverse playback mode
Sebastian Dröge [Tue, 20 Sep 2016 19:12:22 +0000 (15:12 -0400)]
streamsynchronizer: Correctly calculate group start times in reverse playback mode

We have to calculate from the segment.stop, not the segment.start, as
playback goes from stop to start. This fix works around another race
condition in streamsynchronizer in my testcase.

See https://bugzilla.gnome.org/show_bug.cgi?id=771479

7 years agoexamples: seek: fix build with MSVC
Tim-Philipp Müller [Tue, 20 Sep 2016 16:31:55 +0000 (17:31 +0100)]
examples: seek: fix build with MSVC

Use G_PI instead of M_PI. Could also have defined
_USE_MATH_DEFINES or included gst/math-compat.h but
this seems simplest.

7 years agodoc: Add missing map flag to gst_video_frame_map()
Nicolas Dufresne [Mon, 19 Sep 2016 15:27:10 +0000 (11:27 -0400)]
doc: Add missing map flag to gst_video_frame_map()

Add missing map flag, and also add unmap call.

7 years agoaudiotestsrc: Fix segment boundary checking for reverse playback
Sebastian Dröge [Sat, 17 Sep 2016 10:42:46 +0000 (12:42 +0200)]
audiotestsrc: Fix segment boundary checking for reverse playback

7 years agoaudiotestsrc: Don't adjust segment time in seek handler
Sebastian Dröge [Wed, 14 Sep 2016 14:51:30 +0000 (16:51 +0200)]
audiotestsrc: Don't adjust segment time in seek handler

basesrc already did that very well for us, adjusting it again on top of
that just breaks various non-standard seeks.

7 years agoconfigure: Depend on gstreamer 1.9.2.1
Sebastian Dröge [Wed, 14 Sep 2016 09:29:59 +0000 (11:29 +0200)]
configure: Depend on gstreamer 1.9.2.1

7 years agovideooverlaycomposition: document required map flags
Víctor Manuel Jáquez Leal [Wed, 14 Sep 2016 08:14:18 +0000 (10:14 +0200)]
videooverlaycomposition: document required map flags

Fix documentation for gst_video_overlay_composition_blend(). The video frame
needs to be mapped with GST_MAP_READWRITE flag.

https://bugzilla.gnome.org/show_bug.cgi?id=771382

7 years agoplayback: Use new gst_bin_set_suppressed_flags() API instead of worrying about the...
Sebastian Dröge [Mon, 12 Sep 2016 16:37:21 +0000 (18:37 +0200)]
playback: Use new gst_bin_set_suppressed_flags() API instead of worrying about the flags in multiple places

7 years agoAutomatic update of common submodule
Jan Schmidt [Sat, 10 Sep 2016 10:50:56 +0000 (20:50 +1000)]
Automatic update of common submodule

From b18d820 to f980fd9

7 years agotests: videoscale: split test into multiple ones
Tim-Philipp Müller [Sat, 10 Sep 2016 09:05:28 +0000 (10:05 +0100)]
tests: videoscale: split test into multiple ones

The videoscale test takes eternities to run, that's not
great. Split the test into multiple ones. That way they
can be run in parallel. Reduces time to run all tests in
-base from 29 secs to 12 secs when using meson/ninja.

7 years agoAutomatic update of common submodule
Jan Schmidt [Fri, 9 Sep 2016 23:53:49 +0000 (09:53 +1000)]
Automatic update of common submodule

From f49c55e to b18d820

7 years agomeson: Raise test timeout to 3 minutes
Thibault Saunier [Wed, 7 Sep 2016 20:02:23 +0000 (17:02 -0300)]
meson: Raise test timeout to 3 minutes

The videoscale testsuite (with 50 tests) last almost 2 minutes here

7 years agovideo/test: Coding style fix
Nicolas Dufresne [Wed, 7 Sep 2016 18:24:54 +0000 (14:24 -0400)]
video/test: Coding style fix

7 years agomeson: Workaround the qt5 module not letting us now the preprocessor is not avalaible
Thibault Saunier [Mon, 5 Sep 2016 22:55:58 +0000 (19:55 -0300)]
meson: Workaround the qt5 module not letting us now the preprocessor is not avalaible

If moc-qt5 is not avalaible, meson breaks:
https://github.com/mesonbuild/meson/issues/758

7 years agomeson: tests: Do not pull qt5 as a hard dependency
Thibault Saunier [Mon, 5 Sep 2016 21:40:19 +0000 (18:40 -0300)]
meson: tests: Do not pull qt5 as a hard dependency

7 years agomeson: Properly find where GStreamer plugins are when using subprojects
Thibault Saunier [Mon, 5 Sep 2016 20:43:13 +0000 (17:43 -0300)]
meson: Properly find where GStreamer plugins are when using subprojects

And fix building with meson 0.34

7 years agomeson: Bump version to 1.9.2
Thibault Saunier [Mon, 5 Sep 2016 15:22:36 +0000 (12:22 -0300)]
meson: Bump version to 1.9.2

7 years agooggdemux: safety for failing to determine time length in push mode
Vincent Penquerc'h [Fri, 26 Aug 2016 10:30:16 +0000 (11:30 +0100)]
oggdemux: safety for failing to determine time length in push mode

If we can't find a valid granule near the end of the file, we
disable seeking. This guards against the whole file being then
read and never going to PLAYING.

https://bugzilla.gnome.org/show_bug.cgi?id=770314

7 years agooggdemux: increase EOS granpos detection chunk size
Vincent Penquerc'h [Fri, 26 Aug 2016 10:27:17 +0000 (11:27 +0100)]
oggdemux: increase EOS granpos detection chunk size

This can be too small on some files to find a valid granule.

https://bugzilla.gnome.org/show_bug.cgi?id=770314

7 years agomeson: fix joystick header check for jseek example
Tim-Philipp Müller [Sun, 4 Sep 2016 20:41:04 +0000 (21:41 +0100)]
meson: fix joystick header check for jseek example

7 years agopbutils: store missing-plugin structure in current_info->misc again
Jonathan Matthew [Sat, 3 Sep 2016 01:57:22 +0000 (11:57 +1000)]
pbutils: store missing-plugin structure in current_info->misc again

This allows gst_discoverer_info_get_misc to work again, until it
finally gets removed.

https://bugzilla.gnome.org/show_bug.cgi?id=770643

7 years agotools: gst-play: cycle between video tracks without disabling video
Tim-Philipp Müller [Sun, 4 Sep 2016 15:04:00 +0000 (16:04 +0100)]
tools: gst-play: cycle between video tracks without disabling video

7 years agowin32: Update exports
Sebastian Dröge [Thu, 1 Sep 2016 14:56:24 +0000 (17:56 +0300)]
win32: Update exports

7 years agovideo-frame: Expand the range of caps for extended buffer flags
Jan Schmidt [Thu, 1 Sep 2016 12:48:40 +0000 (22:48 +1000)]
video-frame: Expand the range of caps for extended buffer flags

The video buffer flags can be applied to encoded video streams,
such as video/x-h264 marked up by a demuxer or parser.

7 years agoplayback: Mark internal functions as G_GNUC_INTERNAL
Sebastian Dröge [Thu, 1 Sep 2016 10:07:07 +0000 (13:07 +0300)]
playback: Mark internal functions as G_GNUC_INTERNAL

7 years agoplaybackutils: Move compare_factories_func
Wonchul Lee [Thu, 1 Sep 2016 05:47:02 +0000 (14:47 +0900)]
playbackutils: Move compare_factories_func

Move _decode_bin_compare_factories_func function to playbackutils

https://bugzilla.gnome.org/show_bug.cgi?id=770692

7 years agovideo-frame: GST_VIDEO_BUFFER_FLAG are only valid for video/x-raw caps
Havard Graff [Thu, 1 Sep 2016 07:59:06 +0000 (09:59 +0200)]
video-frame: GST_VIDEO_BUFFER_FLAG are only valid for video/x-raw caps

https://bugzilla.gnome.org/show_bug.cgi?id=769771

7 years agortpbuffer: Add buffer flag RETRANSMISSION
Havard Graff [Thu, 1 Sep 2016 07:57:33 +0000 (09:57 +0200)]
rtpbuffer: Add buffer flag RETRANSMISSION

Useful for elements to know if a buffer is a retransmitted RTP packet.

https://bugzilla.gnome.org/show_bug.cgi?id=769771

7 years agoconfigure: Require orc >= 0.4.24
Sebastian Dröge [Thu, 1 Sep 2016 09:38:14 +0000 (12:38 +0300)]
configure: Require orc >= 0.4.24

Needed for being able to compile video.orc

https://bugzilla.gnome.org/show_bug.cgi?id=770698

7 years agoBack to development
Sebastian Dröge [Thu, 1 Sep 2016 09:26:40 +0000 (12:26 +0300)]
Back to development

7 years agoRelease 1.9.2
Sebastian Dröge [Thu, 1 Sep 2016 09:26:20 +0000 (12:26 +0300)]
Release 1.9.2

7 years agopo: Update translations
Sebastian Dröge [Thu, 1 Sep 2016 08:23:10 +0000 (11:23 +0300)]
po: Update translations

7 years agotest-colorkey: #define GDK_DISABLE_DEPRECATION_WARNINGS
Sebastian Dröge [Thu, 1 Sep 2016 07:53:35 +0000 (10:53 +0300)]
test-colorkey: #define GDK_DISABLE_DEPRECATION_WARNINGS

We use gdk_cairo_create() which is deprecated since 3.22.

7 years agomeson: build examples
Tim-Philipp Müller [Sat, 27 Aug 2016 10:22:11 +0000 (11:22 +0100)]
meson: build examples

7 years agomeson: enable tests
Tim-Philipp Müller [Sat, 27 Aug 2016 00:17:25 +0000 (01:17 +0100)]
meson: enable tests

At least on non-Windows platforms.

7 years agoUse the new API to post flow ERROR messages on the bus
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

7 years agobuild: silence error about pthread for 'make check' in osx
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'"

7 years agomeson: update for new files in video lib
Tim-Philipp Müller [Thu, 25 Aug 2016 11:19:52 +0000 (12:19 +0100)]
meson: update for new files in video lib

7 years agodecodebin: forward sticky events on multiqueue
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

7 years agowin32: Update libgstvideo.def
Sebastian Dröge [Thu, 25 Aug 2016 08:56:11 +0000 (11:56 +0300)]
win32: Update libgstvideo.def

7 years agovideodirection: interface for rotation and flip
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

7 years agoparsebin: do not set global tags to stream
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

7 years agoAdd support for Meson as alternative/parallel build system
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.

7 years agotests: ignore new videotimecode test binary
Tim-Philipp Müller [Sat, 20 Aug 2016 10:01:04 +0000 (11:01 +0100)]
tests: ignore new videotimecode test binary

7 years agovideotimecode: Fix false positive coverity issues
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

7 years agovideorate: Implement basic support for reverse playback
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

7 years agogstfft: Use stdint.h instead of _stdint.h
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.

7 years agofdmemory: add flag to avoid close of the fd
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.

7 years agovideotimecode: Fix various coverity issues
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

7 years agoplaybin3: add "element-setup" signal
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

7 years agooggdemux: remove eos avoidance workaround
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

7 years agovideotimecode: Add to docs and exports list
Sebastian Dröge [Thu, 4 Aug 2016 16:06:45 +0000 (19:06 +0300)]
videotimecode: Add to docs and exports list

7 years agotimeoverlay: Add support to display timecode
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

7 years agovideometa: Added video time code meta
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

7 years agovideotimecode: Added support for SMPTE time code metadata
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

7 years agodecodebin3: don't leak alternate inputs
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

7 years agoogg: check return values in gst_ogg_parse_new_stream
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

7 years agoogg: fix memory leak in gst_ogg_parse_new_stream
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

7 years agodecodebin3: fix output->decoder_{sink,src} leak
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

7 years agodecodebin3: fix tag list leak
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

7 years agodecodebin3: consume select-streams event
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

7 years agodecodebin_next: fix caps and tags leaks
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

7 years agodecodebin3: fix collection ref handling
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

7 years agodecodebin3: handle full removal of streams
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

7 years agoriff: Remove sample rate and channel count boundaries in caps
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

7 years agopbutils: Add more h264 scalable profiles
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

7 years agortpbuffer: Add some const qualifiers
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.

7 years agoparsebin: maintain original order when creating fallback stream collection
Tim-Philipp Müller [Sat, 26 Dec 2015 13:19:01 +0000 (13:19 +0000)]
parsebin: maintain original order when creating fallback stream collection

7 years agodecodebin: Send stream-group-done to unblock downstream
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

7 years agoplaybin3: fix collection leak
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

7 years agodecodebin3: fix collection refcounting
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

7 years agoAdd more files to .gitignore
Tim-Philipp Müller [Sat, 23 Jul 2016 13:42:30 +0000 (14:42 +0100)]
Add more files to .gitignore

7 years agodocs: urisourcebin: fix typo
Tim-Philipp Müller [Fri, 22 Jul 2016 13:42:31 +0000 (14:42 +0100)]
docs: urisourcebin: fix typo

7 years agoplayback: Flesh out docs a bit for new elements
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

7 years agodocs: add playbin3, decodebin3, parsebin, urisourcebin to docs
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.

7 years agoRevert "vorbisenc: push an updated segment stop time when we know it"
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

7 years agooggdemux: fix unknown duration playing Ogg over HTTP
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

7 years agoaudioclock: use GST_STIME_FORMAT for the correct argument
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

7 years agoaudioresample: after a reset, recalculate the ouput size
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.

7 years agosubparse: fix some leaks
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.

7 years agotests: appsink: add minimal test for new pull with timeout functions
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

7 years agoappsink: add _pull_sample/preroll() variants with timeout
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

7 years agodecodebin3: actually check result of accept caps query
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