Commit graph

227 commits

Author SHA1 Message Date
Tim-Philipp Müller
078f7874fd gst-play: pick up minus and plus also from navigation events
Makes it easier to test playback rate changes with the video
window being in focus.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/928>
2021-10-12 11:19:22 +00:00
Jan Schmidt
71c3141672 uridecodebin3/urisourcebin: Reusability fixes
Improvements to uridecodebin3 and urisourcebin so that they are
reusable across a PAUSED->READY->PAUSED transition.

Disconnect and release decodebin3 request pads when urisourcebin
removes src pads.

In urisourcebin, make sure to remove src pads that are exposed
directly (raw pads and static typefind srcpads) when
cleaning up.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/768

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1100>
2021-10-10 11:55:19 +00:00
Jan Schmidt
e06ac494b8 playbin3: Always register 'playbin3' element.
If the USE_PLAYBIN3=1 env var is set, we want to replace
playbin with playbin3, but separate to that, we always
want to register the 'playbin3' element so that applications
which explicitly use playbin3 work regardless of the env var.

This fixes `USE_PLAYBIN3=1 gst-validate-launcher`, for example.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1102>
2021-10-10 07:28:17 +00:00
Jan Schmidt
33ad1cdc5e playbin3: Avoid group deactivation deadlock.
Change locking around group deactivation to avoid deadlocks
when shutting down exactly as a buffering message arrives.

The PLAYBIN3_LOCK now protects the active field of the
source group. Everything else is still protected by the
source-group-lock.

Also properly protect group switching operations with
the PLAYBIN3_LOCK everywhere.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1049>
2021-10-08 15:49:41 +00:00
Ludvig Rappe
b099ba649e pbutils: Remove sample entry code "raw"
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1045>
2021-10-05 09:00:23 +00:00
Stéphane Cerveau
84b357dd5f typefindfunctions: differentiate h265 from h264
in some cases, the algo gives the same probability
to h264 and h265 for h26x stream resulting in a h265
stream detected as a h264.
if sps/pps/vps detected, increase the probabilty.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/957>
2021-10-02 10:03:21 +00:00
Tim-Philipp Müller
b8d6962c9b video: make GST_VIDEO_FORMAT_INFO_IS_*() macros booleans
Spotted by Stirling Westrup.

Fixes #726

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/926>
2021-09-29 23:53:12 +00:00
Tim-Philipp Müller
43ed0df54c audio: make GST_AUDIO_INFO_IS_UNPOSITIONED return a boolean
Luckily this worked right since the flag we check is the
only flag and its vale is 1, but feels more correct to
actually check for non-zeroness.

Spotted by Stirling Westrup.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/926>
2021-09-29 23:53:12 +00:00
Olivier Crête
7abd83dfea rtphdrext: Give "inherited" direction in set_attributes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
6cd483d17a rtphdrext: Use NULL-safe case insensitive comparison
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
2dd740c0c3 rtphdrext: Print warnings when trying to parse caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
5ec82c1c4e rtphdrext: Pass just the attributes to the subclass
Since the base class now does the parsing, there is no need
to reproduce that code in all the subclasses, just pass the attributes
which are the only relevant bit anyway.

Also, only store the direction if the subclass accepted the caps

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
e65053a477 rtphdrext: Use fail_unless_equals_string() to make tests easier to debug
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
674611c851 rtphdrext test: Use helper function for caps
Also, let the base class parse the direction for us.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
87a91d1387 rtphdrext: Add helper function to set fields in caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
e76dce3c6e rtphdrext: Parse direction from the caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
34a6b2b890 rtphdrext: Set the direction in the caps from the property
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
63d669e0bf rtphdrext: Store the direction in the base class
Store the direction associated wit the RTP header extension in the
base class so it can use it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
ba328fb98d rtphdrext: Set caps without attributes as the default
Most subclasses just use the simple function, so just let the base class
do it. It makes less code in subclasses.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Olivier Crête
498740fe57 rtphdrext: Put simple caps generation as the base class default
Instead of having a helper function that gets called by almost every
subclass, just let the base class set the caps fields automatically.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
2021-09-28 20:04:55 +00:00
Brad Hards
ef05946837 doc: update IRC links to OFTC
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/945>
2021-09-28 10:11:15 +10:00
Havard Graff
6d4d4edfcc videodecoder: request sync-points regularly on error
If we are not receiving a sync-point for a very long time, we need to
keep asking for them. The request-sync-point logic keeps track of how
many keyunitrequests we are allowed to send, but that would not matter
if we don't keep asking.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/930>
2021-09-27 07:02:43 +00:00
Tim-Philipp Müller
f1a169f39d Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/925>
2021-09-26 01:07:02 +01:00
Nicolas Dufresne
3037fde5eb Move commit gst-indent hook to the root
This renable at meson setup time the installation of the gst-indent
commit hook. The hooks were kept from gst-devtools as this set supports
both C checks and Python checks.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/904>
2021-09-24 17:47:01 -03:00
Thibault Saunier
c6b9c81fdd ci: Remove now useless .gitlab-ci.yml files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>
2021-09-24 16:21:18 -03:00
Thibault Saunier
e0d3a211d9 base: Fix a suppression that has a slightly different trace
For some reason making a monorepo lead to some minor stack changes

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>
2021-09-24 16:21:18 -03:00
Thibault Saunier
2fd28195ca Move files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir 2021-09-24 16:13:26 -03:00