platform/upstream/gstreamer.git
2 years agoscte-section: add support for parsing splice components
Mathieu Duponchelle [Tue, 13 Apr 2021 21:38:16 +0000 (23:38 +0200)]
scte-section: add support for parsing splice components

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agoscte-section: add support for SCHEDULE commands
Mathieu Duponchelle [Tue, 13 Apr 2021 18:51:09 +0000 (20:51 +0200)]
scte-section: add support for SCHEDULE commands

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agoscte-section: fix typo
Mathieu Duponchelle [Tue, 13 Apr 2021 18:47:36 +0000 (20:47 +0200)]
scte-section: fix typo

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agogst-scte-section: implement partial parsing
Mathieu Duponchelle [Tue, 13 Apr 2021 18:44:54 +0000 (20:44 +0200)]
gst-scte-section: implement partial parsing

In cases where either the SIT is encrypted, or an unknown
command is encountered, we still want to send an event downstream.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agoscte35-section: semantic API break
Mathieu Duponchelle [Tue, 6 Apr 2021 15:57:42 +0000 (17:57 +0200)]
scte35-section: semantic API break

Document that the constructors for the splice events expect
a running time, as users of the API can not be expected to
predict the appropriate local PTS.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agoscte-section: add support for packetizing time_signal splices
Mathieu Duponchelle [Tue, 6 Apr 2021 15:37:28 +0000 (17:37 +0200)]
scte-section: add support for packetizing time_signal splices

time_signal splices are trivial, they only contain a splice_time()
and all the relevant information is carried in descriptors.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agobasetsmux: extend SCTE 35 support
Mathieu Duponchelle [Mon, 5 Apr 2021 22:58:33 +0000 (00:58 +0200)]
basetsmux: extend SCTE 35 support

Makes it possible to support passing SCTE 35 cue points from
demuxer to muxer, while preserving correct timing.

This will also improve ex nihilo cue points injection, as splice
times and durations are now interpreted as running time values,
and may trigger key unit requests.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agotsdemux: Expose send-scte35-events property
Mathieu Duponchelle [Mon, 5 Apr 2021 22:36:43 +0000 (00:36 +0200)]
tsdemux: Expose send-scte35-events property

When enabled, SCTE 35 sections (eg ad placement opportunities)
are forwarded as events donwstream.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agompegtsbase: expose vmethod to let subclass handle sections
Mathieu Duponchelle [Mon, 5 Apr 2021 22:26:50 +0000 (00:26 +0200)]
mpegtsbase: expose vmethod to let subclass handle sections

This can be used by tsdemux to handle and forward SCTE 35
sections.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agompegtssection: expose event constructor
Mathieu Duponchelle [Mon, 5 Apr 2021 22:23:09 +0000 (00:23 +0200)]
mpegtssection: expose event constructor

This allows the demuxer to forward sections of interest downstream,
for example SCTE 35 splice information. These can then be reinjected
appropriately by a muxer for example.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agoscte-section.h: fix type macros
Mathieu Duponchelle [Mon, 5 Apr 2021 22:21:58 +0000 (00:21 +0200)]
scte-section.h: fix type macros

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913>

2 years agoMove commit gst-indent hook to the root
Nicolas Dufresne [Fri, 24 Sep 2021 18:11:13 +0000 (14:11 -0400)]
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>

2 years agoAdd gst-integration-testsuites files as a submodule
Thibault Saunier [Fri, 24 Sep 2021 19:28:39 +0000 (16:28 -0300)]
Add gst-integration-testsuites files as a submodule

2 years agoImport gst-integration-testsuites
Thibault Saunier [Fri, 24 Sep 2021 19:22:10 +0000 (16:22 -0300)]
Import gst-integration-testsuites

2 years agoci: Remove now useless .gitlab-ci.yml files
Thibault Saunier [Thu, 23 Sep 2021 15:26:50 +0000 (12:26 -0300)]
ci: Remove now useless .gitlab-ci.yml files

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>

2 years agoCleanup .gitignore
Thibault Saunier [Fri, 10 Sep 2021 20:23:53 +0000 (17:23 -0300)]
Cleanup .gitignore

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>

2 years agoci: Port CI to the new monorepo
Thibault Saunier [Sat, 24 Oct 2020 17:56:22 +0000 (14:56 -0300)]
ci: Port CI to the new monorepo

Main differences with previous setup are:
- No manifest creation
- gst-indent is executed only when the bot is assigned (instead of the manifest task)
- Cerbero jobs are triggered in the cerbero repo
- Remove cerbero and android related files as they now are in cerbero
  itself.
- Update `container.ps1` to the new file layout

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>

2 years agoCleanup root directory from misc files
Thibault Saunier [Sat, 31 Oct 2020 02:51:16 +0000 (23:51 -0300)]
Cleanup root directory from misc files

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>

2 years agobase: Fix a suppression that has a slightly different trace
Thibault Saunier [Fri, 30 Oct 2020 23:45:26 +0000 (20:45 -0300)]
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>

2 years agoUpdate README.md now that all modules have been merged in `gstreamer`
Thibault Saunier [Fri, 30 Oct 2020 21:58:58 +0000 (18:58 -0300)]
Update README.md now that all modules have been merged in `gstreamer`

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>

2 years agoRemove git-update and git-worktree as they do not make sense anymore
Thibault Saunier [Fri, 30 Oct 2020 21:58:35 +0000 (18:58 -0300)]
Remove git-update and git-worktree as they do not make sense anymore

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>

2 years agoRemove local gst wrap
Thibault Saunier [Fri, 23 Oct 2020 22:15:28 +0000 (19:15 -0300)]
Remove local gst wrap

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>

2 years agoMerging gst-build
Thibault Saunier [Fri, 24 Sep 2021 19:16:32 +0000 (16:16 -0300)]
Merging gst-build

2 years agoMove files from gstreamer-sharp into the "subprojects/gstreamer-sharp/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:16:29 +0000 (16:16 -0300)]
Move files from gstreamer-sharp into  the "subprojects/gstreamer-sharp/" subdir

2 years agoMerging gstreamer-sharp
Thibault Saunier [Fri, 24 Sep 2021 19:16:14 +0000 (16:16 -0300)]
Merging gstreamer-sharp

2 years agoMove files from gst-python into the "subprojects/gst-python//" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:16:05 +0000 (16:16 -0300)]
Move files from gst-python into  the "subprojects/gst-python//" subdir

2 years agoMerging gst-python
Thibault Saunier [Fri, 24 Sep 2021 19:16:03 +0000 (16:16 -0300)]
Merging gst-python

2 years agoMove files from gst-examples into the "subprojects/gst-examples/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:15:58 +0000 (16:15 -0300)]
Move files from gst-examples into  the "subprojects/gst-examples/" subdir

2 years agoMerging gst-examples
Thibault Saunier [Fri, 24 Sep 2021 19:15:54 +0000 (16:15 -0300)]
Merging gst-examples

2 years agoMove files from gst-docs into the "subprojects/gst-docs/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:15:51 +0000 (16:15 -0300)]
Move files from gst-docs into  the "subprojects/gst-docs/" subdir

2 years agoMerging gst-docs
Thibault Saunier [Fri, 24 Sep 2021 19:15:41 +0000 (16:15 -0300)]
Merging gst-docs

2 years agoMove files from gst-devtools into the "subprojects/gst-devtools/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:15:38 +0000 (16:15 -0300)]
Move files from gst-devtools into  the "subprojects/gst-devtools/" subdir

2 years agoMerging gst-devtools
Thibault Saunier [Fri, 24 Sep 2021 19:15:34 +0000 (16:15 -0300)]
Merging gst-devtools

2 years agoMove files from gst-editing-services into the "subprojects/gst-editing-services...
Thibault Saunier [Fri, 24 Sep 2021 19:15:30 +0000 (16:15 -0300)]
Move files from gst-editing-services into  the "subprojects/gst-editing-services/" subdir

2 years agoMerging gst-editing-services
Thibault Saunier [Fri, 24 Sep 2021 19:15:25 +0000 (16:15 -0300)]
Merging gst-editing-services

2 years agoMove files from gst-rtsp-server into the "subprojects/gst-rtsp-server/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:15:21 +0000 (16:15 -0300)]
Move files from gst-rtsp-server into  the "subprojects/gst-rtsp-server/" subdir

2 years agoMerging gst-rtsp-server
Thibault Saunier [Fri, 24 Sep 2021 19:15:18 +0000 (16:15 -0300)]
Merging gst-rtsp-server

2 years agoMove files from gst-ci into the "subprojects/gst-ci/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:15:13 +0000 (16:15 -0300)]
Move files from gst-ci into  the "subprojects/gst-ci/" subdir

2 years agoMerging gst-ci
Thibault Saunier [Fri, 24 Sep 2021 19:15:12 +0000 (16:15 -0300)]
Merging gst-ci

2 years agoMove files from gst-libav into the "subprojects/gst-libav/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:15:08 +0000 (16:15 -0300)]
Move files from gst-libav into  the "subprojects/gst-libav/" subdir

2 years agoMerging gst-libav
Thibault Saunier [Fri, 24 Sep 2021 19:15:07 +0000 (16:15 -0300)]
Merging gst-libav

2 years agoMove files from gst-omx into the "subprojects/gst-omx/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:15:01 +0000 (16:15 -0300)]
Move files from gst-omx into  the "subprojects/gst-omx/" subdir

2 years agoMerging gst-omx
Thibault Saunier [Fri, 24 Sep 2021 19:14:59 +0000 (16:14 -0300)]
Merging gst-omx

2 years agoMove files from gstreamer-vaapi into the "subprojects/gstreamer-vaapi/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:14:54 +0000 (16:14 -0300)]
Move files from gstreamer-vaapi into  the "subprojects/gstreamer-vaapi/" subdir

2 years agoMerging gstreamer-vaapi
Thibault Saunier [Fri, 24 Sep 2021 19:14:50 +0000 (16:14 -0300)]
Merging gstreamer-vaapi

2 years agoMove files from gst-plugins-ugly into the "subprojects/gst-plugins-ugly/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:14:45 +0000 (16:14 -0300)]
Move files from gst-plugins-ugly into  the "subprojects/gst-plugins-ugly/" subdir

2 years agoMerging gst-plugins-ugly
Thibault Saunier [Fri, 24 Sep 2021 19:14:42 +0000 (16:14 -0300)]
Merging gst-plugins-ugly

2 years agoMove files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:14:36 +0000 (16:14 -0300)]
Move files from gst-plugins-bad into  the "subprojects/gst-plugins-bad/" subdir

2 years agoMerging gst-plugins-bad
Thibault Saunier [Fri, 24 Sep 2021 19:14:03 +0000 (16:14 -0300)]
Merging gst-plugins-bad

2 years agoMove files from gst-plugins-good into the "subprojects/gst-plugins-good/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:13:50 +0000 (16:13 -0300)]
Move files from gst-plugins-good into  the "subprojects/gst-plugins-good/" subdir

2 years agoMerging gst-plugins-good
Thibault Saunier [Fri, 24 Sep 2021 19:13:37 +0000 (16:13 -0300)]
Merging gst-plugins-good

2 years agoMove files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:13:26 +0000 (16:13 -0300)]
Move files from gst-plugins-base into  the "subprojects/gst-plugins-base/" subdir

2 years agoMerging gst-plugins-base
Thibault Saunier [Fri, 24 Sep 2021 19:13:17 +0000 (16:13 -0300)]
Merging gst-plugins-base

2 years agoMove files from gstreamer into the "subprojects/gstreamer/" subdir
Thibault Saunier [Fri, 24 Sep 2021 19:13:07 +0000 (16:13 -0300)]
Move files from gstreamer into  the "subprojects/gstreamer/" subdir

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:36:20 +0000 (01:36 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:36:17 +0000 (01:36 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:36:15 +0000 (01:36 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:36:10 +0000 (01:36 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:36:02 +0000 (01:36 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:35:54 +0000 (01:35 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:35:45 +0000 (01:35 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:35:39 +0000 (01:35 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:35:27 +0000 (01:35 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:35:17 +0000 (01:35 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:34:47 +0000 (01:34 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:34:00 +0000 (01:34 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:33:39 +0000 (01:33 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:33:08 +0000 (01:33 +0100)]
Release 1.19.2

2 years agoRelease 1.19.2
Tim-Philipp Müller [Thu, 23 Sep 2021 00:32:32 +0000 (01:32 +0100)]
Release 1.19.2

2 years agoscripts/release: fix license files paths
Mathieu Duponchelle [Wed, 22 Sep 2021 23:20:22 +0000 (01:20 +0200)]
scripts/release: fix license files paths

The previous version only worked when the script was run from
the root source directory

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-docs/-/merge_requests/165>

2 years agoaudiobuffersplit: Remove unneeded buffer_clip wrapper
Nicolas Dufresne [Wed, 22 Sep 2021 18:17:35 +0000 (14:17 -0400)]
audiobuffersplit: Remove unneeded buffer_clip wrapper

This is just a small cleanup noticed while reading.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2544>

2 years agoopencv: cvtracker: add draw property
Vivek R [Fri, 10 Jul 2020 14:01:13 +0000 (19:31 +0530)]
opencv: cvtracker: add draw property

This property controls the drawing of rectangle around the tracked object.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2454>

2 years agoopencv: add cvtracker plugin
Vivek R [Sun, 24 May 2020 18:07:25 +0000 (23:37 +0530)]
opencv: add cvtracker plugin

This adds an object tracker plugin.
Tracker implementations from https://docs.opencv.org/3.4/d0/d0a/classcv_1_1Tracker.html

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2454>

2 years agoopencv: patch to ensure headers are detected
Vivek R [Mon, 25 May 2020 05:05:30 +0000 (10:35 +0530)]
opencv: patch to ensure headers are detected

This patch is used to ensure opencv headers are detected.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2454>

2 years agortph263pdepay: flag keyframes on output buffers
Tim-Philipp Müller [Wed, 22 Sep 2021 13:03:57 +0000 (14:03 +0100)]
rtph263pdepay: flag keyframes on output buffers

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1091>

2 years agoclocksync: Add some debug output to the clock waiting code
Sebastian Dröge [Wed, 23 Jun 2021 13:41:20 +0000 (16:41 +0300)]
clocksync: Add some debug output to the clock waiting code

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/841>

2 years agompegtsmux, mpegpsmux: remove GPL from choice of licenses and add SPDX license identifiers
Tim-Philipp Müller [Sun, 19 Sep 2021 00:18:00 +0000 (01:18 +0100)]
mpegtsmux, mpegpsmux: remove GPL from choice of licenses and add SPDX license identifiers

Some people need to avoid inclusion of GPL code for their use cases and thus
get easily spooked by GPL license headers. This code is actually licensed
under different licenses, only one of which is GPL, and it's already possible
to just upgrade from LGPL to GPL anyway so having the GPL listed explicitly
as one of the choices doesn't really add anything. So remove GPL from the list
and also add SPDX license identifiers while we're at it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2539>

2 years agopbutils: codec-utils: fix g-ir-scanner warning
Tim-Philipp Müller [Tue, 21 Sep 2021 21:39:46 +0000 (22:39 +0100)]
pbutils: codec-utils: fix g-ir-scanner warning

Warning: GstPbutils: gst_codec_utils_h264_get_profile_flags_level:
unknown parameter 'codec_data' in documentation comment, should be 'codecs_data

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1279>

2 years agowasapideviceprovider: Add support for dynamic device add/remove
Seungha Yang [Mon, 23 Aug 2021 18:54:27 +0000 (03:54 +0900)]
wasapideviceprovider: Add support for dynamic device add/remove

Adding IMMDeviceEnumerator::RegisterEndpointNotificationCallback
in order to support device monitoring.
On OnDeviceAdded(), OnDeviceRemoved(), and OnDefaultDeviceChanged()
callback, wasapi device provider implementation will enumerate
devices again and will notify newly added and removed device
via GstDeviceProvider API.

As a bonus point, this IMMDeviceEnumerator abstraction object
will spawn a dedicated internal COM thread, so various COM thread
related issues of WASAPI plugin can be resolved by this commit.

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1649
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1110
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2484>

2 years agox264enc: Strip trailing whitespace from x264's log messages
Jan Alexander Steffens (heftig) [Tue, 21 Sep 2021 13:05:58 +0000 (15:05 +0200)]
x264enc: Strip trailing whitespace from x264's log messages

x264 has linebreaks at the end of its log messages that we should
ignore.

Add G_GNUC_PRINTF to the callback to make sure GCC lets us forward the
format string to another function marked as printf (g_strdup_vprintf)
without triggering -Wformat-nonliteral.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/merge_requests/85>

2 years agox264enc: Add the func/line info to the log callback
Jan Alexander Steffens (heftig) [Tue, 21 Sep 2021 12:57:29 +0000 (14:57 +0200)]
x264enc: Add the func/line info to the log callback

It looks awkward when it's missing. At least point us at the callback
function.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/merge_requests/85>

2 years agox264enc: Reduce log spam about bit depth support
Jan Alexander Steffens (heftig) [Tue, 21 Sep 2021 12:56:23 +0000 (14:56 +0200)]
x264enc: Reduce log spam about bit depth support

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/merge_requests/85>

2 years agoalsasink: Allow stop() function to happen during failing writes
Nicolas Dufresne [Tue, 24 Aug 2021 19:27:32 +0000 (15:27 -0400)]
alsasink: Allow stop() function to happen during failing writes

In ALSA, there is possible temporary failures that may require a retry,
though in certain situation, this may leak to the write() function
holding on a lock forever preventing the pipeline from going to pause
or stop. Fix this by shortly dropping the lock between retries.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1261>

2 years agoalsasink: Improve logging in write() function
Nicolas Dufresne [Tue, 24 Aug 2021 19:26:12 +0000 (15:26 -0400)]
alsasink: Improve logging in write() function

This moves the "written X frames" lower so that we don't trace
confusing negative values on errors and add the error code in the
"Write error" log.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1261>

2 years agoopenjpeg: add unit test
Stéphane Cerveau [Mon, 1 Feb 2021 15:21:59 +0000 (16:21 +0100)]
openjpeg: add unit test

Test various format supported with subframes.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agojpeg2000parse + openjpeg: Switch striped mode to its own caps
Stéphane Cerveau [Fri, 22 Jan 2021 09:39:56 +0000 (10:39 +0100)]
jpeg2000parse + openjpeg: Switch striped mode to its own caps

It's not compatible with any other element that use the non-striped
mode. In addition, in this mode, we require that every frame have the
same number of stripes or that the MARKER bit be present, which is
different from the other
formats too.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agoopenjpegdec: Fix crash with AYUV64 in subframe mode
Stéphane Cerveau [Wed, 23 Dec 2020 10:03:34 +0000 (11:03 +0100)]
openjpegdec: Fix crash with AYUV64 in subframe mode

Remove useless generic fill_frame methods to use
the packed one for AYUV and AYUV64.

Fix gst-launch-1.0 -v videotestsrc  !
video/x-raw,width=640,height=480,format=AYUV64  !  openjpegenc
num-stripes=8   !  openjpegdec max-threads=8  ! videoconvert !
autovideosink sync=false

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agoopenjpegdec: support for a multithreaded decoding.
Stéphane Cerveau [Fri, 24 Apr 2020 14:15:42 +0000 (16:15 +0200)]
openjpegdec: support for a multithreaded decoding.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agoopenjpegdec: enable sub frame mode
Aaron Boxer [Mon, 13 Jan 2020 19:02:39 +0000 (14:02 -0500)]
openjpegdec: enable sub frame mode

Rebuild output frame from multiple stripes input.

Keep the first frame and fill it with the following stripes to finish
a complete frame only once.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agompegtsmux: Require frame alignment for JPEG 2000
Olivier Crête [Tue, 22 Dec 2020 23:19:40 +0000 (18:19 -0500)]
mpegtsmux: Require frame alignment for JPEG 2000

We have yet to implement stripe alignment with the required descriptor.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agoopenjpegdec: Reject stripes for now
Olivier Crête [Tue, 22 Dec 2020 23:15:52 +0000 (18:15 -0500)]
openjpegdec: Reject stripes for now

They're not implemented.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agoopenjpegenc: Only allow stripe with image/x-jpc format
Olivier Crête [Tue, 22 Dec 2020 23:20:35 +0000 (18:20 -0500)]
openjpegenc: Only allow stripe with image/x-jpc format

It's the only format that our MPEG-TS muxer allows and the carriage of
JPEG 2000 stripes is only defined for MPEG-TS as far as I know.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agoopenjpegenc: support for a multithreaded encoding.
Stéphane Cerveau [Tue, 21 Apr 2020 18:56:03 +0000 (20:56 +0200)]
openjpegenc: support for a multithreaded encoding.

This commit introduces a multithreaded encoder allowing
to encode mulitple stripes or subframes in separated threads.
This feature aims to enhance the overall latency of a codec
pipeline.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2 years agowpe: context thread dispatch fixes
Philippe Normand [Sat, 18 Sep 2021 11:02:15 +0000 (12:02 +0100)]
wpe: context thread dispatch fixes

Use dedicated mutex/cond/flag for jobs being dispatched in the context thread.
The previous code was signalling the thread startup condition, which is wrong.
When WPEContextThread::dispatch() is invoked it means the thread has already
correctly been started up.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2533>

2 years agowpe: Properly wait on context thread startup condition
Philippe Normand [Sat, 18 Sep 2021 11:01:39 +0000 (12:01 +0100)]
wpe: Properly wait on context thread startup condition

Fixes #1661

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2533>

2 years agodoc: Update kmssink caps cache
Nicolas Dufresne [Mon, 20 Sep 2021 13:41:32 +0000 (09:41 -0400)]
doc: Update kmssink caps cache

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2 years agokmssink: Add RGB16/BGR16 support
Nicolas Dufresne [Fri, 17 Sep 2021 20:21:39 +0000 (16:21 -0400)]
kmssink: Add RGB16/BGR16 support

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2 years agokmssink: Sort format according to GST_VIDEO_FORMATS_ALL
Nicolas Dufresne [Fri, 17 Sep 2021 20:14:36 +0000 (16:14 -0400)]
kmssink: Sort format according to GST_VIDEO_FORMATS_ALL

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2 years agokmssink: Remove big endian format inversion
Nicolas Dufresne [Fri, 17 Sep 2021 19:42:25 +0000 (15:42 -0400)]
kmssink: Remove big endian format inversion

This has been a bad interpretation of the DRM docuemntation. The formats are
fixed regardless the CPU, but for some formats, they expressed in the opposite
order as GStreamer. Same change was done in waylandsink 2 years ago.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/commit/b393b650ab9bfb9654fc116163ab331907216d74

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2 years agokmssink: Add NV61 support
Nicolas Dufresne [Fri, 17 Sep 2021 19:41:41 +0000 (15:41 -0400)]
kmssink: Add NV61 support

This identically handled to NV16, so no reason not to inclue it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>