Seungha Yang [Tue, 15 Nov 2022 18:15:44 +0000 (03:15 +0900)]
codectimestamper: Remove duplicated GstSegment struct
Use the one in priv struct. And use gst_segment_is_equal()
to compare GstSegment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3380>
Matthew Waters [Wed, 9 Nov 2022 07:03:48 +0000 (18:03 +1100)]
h264/5timestamper: provide a workaround for h264/5parse producing pts=NONE buffers
A workaround for
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/649
and
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/287
which is hard to change baseparse behaviour for both video and audio
parsers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3380>
Edward Hervey [Sun, 13 Nov 2022 07:38:25 +0000 (08:38 +0100)]
rtpjitterbuffer: Unlock timer waits on flushing
If there is a pending EOS wait for example, we would never unblock on flushing
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3401>
Thibault Saunier [Wed, 9 Nov 2022 19:57:15 +0000 (16:57 -0300)]
inspect: Print default value of ValueArray properties
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3377>
Seungha Yang [Fri, 11 Nov 2022 21:16:59 +0000 (06:16 +0900)]
nvcodec: Update plugin cache
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Seungha Yang [Fri, 11 Nov 2022 20:45:15 +0000 (05:45 +0900)]
tests: cudaconvert: Update test code
Adding more formats, and rescale test with borders
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Seungha Yang [Fri, 11 Nov 2022 19:48:50 +0000 (04:48 +0900)]
cudaconvertscale, cudascale: Add "add-borders" property and support 8bits RGB planar formats
Adding "add-borders" property which is identical to that of
videoscale and this will be enabled by default.
And adding RGBP/BGRP/GBR/GBRA format support.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Seungha Yang [Fri, 11 Nov 2022 19:06:32 +0000 (04:06 +0900)]
cuda: Rewrite colorspace/rescale object
Rewriting GstCudaConverter object, since the old implementation was not
well organized and it's hard to add new features.
Moreover, the conversion operations were not very optimized.
Major change of this implementation:
* Remove redundant intermediate conversion operations such as
any RGB -> ARGB(64) conversion or any YUV -> Y444 (or 16bits Y444).
That's not required most of cases. The only required case is
converting 24bits (such as RGB/BGR) packed format to 32bits format
because CUDA texture object does not support sampling 24bits format
* Use normalized sample fetching (i.e., [0, 1] range float value)
and also normalized coordinates system for CUDA texture.
It's consistent with the other graphics APIs such as Direct3D
and OpenGL, that makes sampling operations much easier.
* Support a kind of viewport and adopt math for colorspace conversion
from GstD3D11 implementation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Seungha Yang [Thu, 10 Nov 2022 10:38:03 +0000 (19:38 +0900)]
cudaupload,cudadownload: Add support for planar 8bits RGB formats
Defines RGBP, BGRP, and GBR formats, which have the same memory
layout as already supported Y444. And defines GBRA format as well
which needs just one additional alpha plane
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Seungha Yang [Thu, 10 Nov 2022 11:47:44 +0000 (20:47 +0900)]
cudacontext: Store texture alignment
it was missed in the previous refactoring
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Seungha Yang [Fri, 11 Nov 2022 19:01:08 +0000 (04:01 +0900)]
cudaconvert, cudascale: Port to GstCudaBaseCovert baseclass
Don't need to hold duplicated code in the source tree
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Seungha Yang [Wed, 9 Nov 2022 12:31:01 +0000 (21:31 +0900)]
cuda: Add convertscale element
GstCudaConverter object can do colorspace conversion and scale at once.
Adding new element "cudaconvertscale" to do that, this can
save unnecessary GPU operation if colorspace conversion and
rescale is required for given input stream format.
Most of codes are taken from d3d11convert element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3389>
Sanchayan Maity [Mon, 31 Oct 2022 13:39:06 +0000 (19:09 +0530)]
typefindhelper: Use the new GstTypeFind * API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3296>
Sanchayan Maity [Mon, 31 Oct 2022 13:03:19 +0000 (18:33 +0530)]
typefindhelper: Introduce a new API for working with a GstTypeFind *
Introduce a new API that can return a GstTypeFind * with helper functions
and data set around buffer data.
While at it, drop factory field from GstTypeFindBufHelper. While it was
useful for logging, it was not passed through function arguments and keeping
it for logging would require an additional API increasing the API surface
and making it harder to use.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3296>
Sanchayan Maity [Tue, 15 Nov 2022 09:15:56 +0000 (14:45 +0530)]
typefindhelper: Add helpers to improve type finding given the caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3296>
Sanchayan Maity [Sun, 30 Oct 2022 07:37:14 +0000 (13:07 +0530)]
typefindhelper: Update annotation for function parameters
Fix the nullable/optional situation. allow-none is deprecated and
replaced by either or both of the others.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3296>
Edward Hervey [Mon, 14 Nov 2022 06:27:28 +0000 (07:27 +0100)]
validate-scenario: Avoid timeouts on EOS
If there is an EOS and the next action is waiting for a playback time, execute
it since we are guaranteed the position won't change anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3403>
Elliot Chen [Thu, 10 Nov 2022 06:39:12 +0000 (14:39 +0800)]
gstplay: add warning message details check before post it
For some warning message which has no detail data, need check to avoid printing critical log.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3382>
Rafał Dzięgiel [Thu, 14 Oct 2021 09:56:58 +0000 (11:56 +0200)]
tests: Add DASH MPD baseURL with query test
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1147>
Rafał Dzięgiel [Thu, 14 Oct 2021 08:12:51 +0000 (10:12 +0200)]
mpdparser: Fix missing baseURL query
When no initializationURL or mediaURL, return baseURL that also
contains original URI query if available. This fixes a problem
where URI query was being omitted in the HTTP requests.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1147>
Rafał Dzięgiel [Thu, 14 Oct 2021 08:09:31 +0000 (10:09 +0200)]
mpdparser: Be consistent about returning duplicated URL
Instead of returning a "const gchar" or a "gchar" that should not be freed, always
return a duplicated string as those functions were used together with g_strdup anyway.
This is needed to prepare support for returning modified strings in next commit.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1147>
Rafał Dzięgiel [Thu, 14 Oct 2021 08:18:40 +0000 (10:18 +0200)]
mpdparser: Return correct mediaURL value
This fixes a problem where get_mediaURL was returning NULL when segmentURL
was unavailable instead of baseURL as a fallback.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1147>
Seungha Yang [Sat, 12 Nov 2022 17:08:15 +0000 (02:08 +0900)]
d3d11converter: Fix YUY2 conversion error
Always configure shader conversion path, then fallback to the
shader path if processor is not available
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3392>
Seungha Yang [Sat, 12 Nov 2022 13:55:52 +0000 (22:55 +0900)]
d3d11: Add support for planar RGB formats
Adding RGBP, BGRP, GBR, GBR_10LE, GBR_12LE, GBRA, GBRA_10LE, and
GBRA_12LE format support
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3392>
Seungha Yang [Sat, 12 Nov 2022 17:28:42 +0000 (02:28 +0900)]
d3d11screencapturesrc: Update plugin cache
Missed in
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3360
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3392>
Edward Hervey [Mon, 14 Nov 2022 06:26:25 +0000 (07:26 +0100)]
oggdemux: Don't leak incoming EOS event
If we're going to drop it ... then do drop it :)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3400>
Víctor Manuel Jáquez Leal [Mon, 14 Nov 2022 11:51:19 +0000 (12:51 +0100)]
matroskademux: Handle element's duration query.
This is small regression from commit
f7abd81a.
When calling `gst_element_query()` no pad is associated with that query, but the
current code always forwards the query to the associated pad, which is NULL in
previous case. This patch checks for the pad before forwarding the query.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3404>
Jan Schmidt [Mon, 14 Nov 2022 13:11:15 +0000 (00:11 +1100)]
aesdec: Fix padding removal for per-buffer-padding=FALSE
When per-buffer-padding is FALSE, the OpenSSL context needs
to be told to remove any padding at the end of the ciphertext
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1243
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3406>
Rafał Dzięgiel [Sun, 13 Nov 2022 11:18:54 +0000 (12:18 +0100)]
adaptivedemux2: Fix parent object leak
gst_object_get_parent() method is transfer-full, thus unref is needed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3396>
Edward Hervey [Sat, 12 Nov 2022 10:35:58 +0000 (11:35 +0100)]
pbutils/encoding-profile: Streamline cleanup
Cleanup all local variables in one place, and ensure failure cases go through there.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 08:54:31 +0000 (09:54 +0100)]
avvidenc: Don't leak AVPacket on EOF
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 08:53:14 +0000 (09:53 +0100)]
avcfg: Don't leak the support GArray when registering flag/enums
* Only create it if we are attempting to put values in it
* If we sucessfully registered the values, only free the GArray
* IF we didn't, also free the backing memory
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 08:16:36 +0000 (09:16 +0100)]
transcodebin: Use const arguments for clarity
And rename it when it classhes with existing local variable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 08:15:23 +0000 (09:15 +0100)]
transcodebin: Don't leak GstStream
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 07:35:27 +0000 (08:35 +0100)]
transcode: Don't leak caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 07:35:12 +0000 (08:35 +0100)]
transcode: Don't leak timer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 07:18:42 +0000 (08:18 +0100)]
validate-scenario: Don't leak GFile
And use specific variables for clarity in loops.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 09:40:22 +0000 (10:40 +0100)]
validate: Don't leak discoverer information
The various streaminfo were being overwritten without being unreffed first
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Fri, 11 Nov 2022 13:37:17 +0000 (14:37 +0100)]
mpegtsbase: Don't leak GList
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Fri, 11 Nov 2022 13:19:15 +0000 (14:19 +0100)]
validate: Don't deinit too early
If we are going to use the validate functions ... do that *before*
deinit'ing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Fri, 11 Nov 2022 13:18:21 +0000 (14:18 +0100)]
streamsynchronizer: Don't leak the syncstream object
It was leaked when breaking out early when handling GST_EVENT_STREAM_START
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 09:04:39 +0000 (10:04 +0100)]
uritranscodebin: Don't leak uris, profile, sinkpad and filters
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 09:04:26 +0000 (10:04 +0100)]
transcodebin: Don't leak profile
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 09:03:48 +0000 (10:03 +0100)]
transcodebin: Actually free the TranscodingStream structure
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 09:02:53 +0000 (10:02 +0100)]
transcoder: Don't leak API bus and GMainLoop
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 09:02:15 +0000 (10:02 +0100)]
avvidenc: Don't leak filename
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 09:00:01 +0000 (10:00 +0100)]
encodebasebin: Don't leak muxer pad
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 08:58:41 +0000 (09:58 +0100)]
pbutils/encoding-profile: Don't leak string array
It was never freed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Edward Hervey [Sat, 12 Nov 2022 08:57:18 +0000 (09:57 +0100)]
streams: Reset stream id field on finalize
If debugging is activated, the parent class finalize might attempt to read it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
Seungha Yang [Wed, 9 Nov 2022 18:23:53 +0000 (03:23 +0900)]
meson: d3d11: Clarify the message for WGC support check
Even Windows10 SDK seems to have required symbols depending on installed
SDK version
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3376>
Seungha Yang [Wed, 9 Nov 2022 17:49:38 +0000 (02:49 +0900)]
d3d11screencapturesrc: Fix build error with MSVC x86
Delete the code for now. Note that the code block is unnecessary already
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3375>
Taruntej Kanakamalla [Thu, 7 Jul 2022 06:55:14 +0000 (06:55 +0000)]
Updated the Pango broken link
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2723>
Taruntej Kanakamalla [Thu, 7 Jul 2022 06:21:07 +0000 (06:21 +0000)]
Updated the GObject tutorial link
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2723>
Nicolas Dufresne [Thu, 10 Nov 2022 14:49:41 +0000 (09:49 -0500)]
rawvideoparse: Fix support for sub-sampled tile
This element was missed as it does not use the new helpers to calculate the
plane size. The code is relatively simple though, so adding support for
subsample tiles was easy enough.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3385>
Matthew Waters [Thu, 10 Nov 2022 03:31:43 +0000 (14:31 +1100)]
webrtc/datachannel: handle error messages from appsrc/sink
Fixes a possible race where closing a data channel may produce e.g.
not-linked errors.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3381>
Matthew Waters [Thu, 10 Nov 2022 03:22:30 +0000 (14:22 +1100)]
sctpdec: fix stream reset (src pad removal) if no data is ever received
If we don't receive any data from usrsctp, then there will be no src pad
for the stream id and the stream reset will fail to remove the relevant
src pad. Workaround by first attempting to add the relevant src pad, then
almost immediately removing it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3381>
He Junyan [Tue, 19 Jul 2022 09:42:12 +0000 (17:42 +0800)]
test: Correct the test suite name of the h264 and h265 bitwriter.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3384>
Colin Kinloch [Mon, 10 Oct 2022 18:58:12 +0000 (19:58 +0100)]
videocrop, videobox: Simplify navigation event handling and support touch events
Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3053>
Colin Kinloch [Fri, 23 Sep 2022 18:29:31 +0000 (19:29 +0100)]
va: Fix vapostproc navigation event co-ordinate mapping
Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3053>
Colin Kinloch [Tue, 20 Sep 2022 16:39:39 +0000 (17:39 +0100)]
vaapi: Use gst_video_orientation_from_tag to parse orientation
Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3053>
Colin Kinloch [Mon, 19 Sep 2022 17:06:44 +0000 (18:06 +0100)]
videoflip: Use gst_video_orientation_from_tag to parse orientation
Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3053>
Colin Kinloch [Mon, 19 Sep 2022 17:05:28 +0000 (18:05 +0100)]
va: Use gst_video_orientation_from_tag to parse orientation
Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3053>
Tong Wu [Wed, 7 Sep 2022 08:26:22 +0000 (16:26 +0800)]
msdkvpp: delete the macros to make video memory work on Windows
Since gst_msdk_import_to_msdk_surface has been implemented for d3d11, we
delete the macros to make it work on Windows.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Wed, 7 Sep 2022 07:29:37 +0000 (15:29 +0800)]
msdkvpp: modify the way of copying system memory to msdk surface
Replace video_copy with memcpy to fix the issue when the sizes of the
src frame and dst frame don't match. Moreover, for Windows, you have to
do the copy first and call gst_msdk_import_to_msdk_surface later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Wed, 7 Sep 2022 02:55:57 +0000 (10:55 +0800)]
msdkvpp: add d3d11 support during negotiation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Fri, 2 Sep 2022 08:03:09 +0000 (16:03 +0800)]
msdkvpp: add d3d11 video memory to sink and src caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Wed, 7 Sep 2022 02:44:16 +0000 (10:44 +0800)]
msdkvpp: delete use_sinkpad_va and use_srcpad_va
This two variables are no longer useful. Delete them for now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Fri, 26 Aug 2022 08:19:33 +0000 (16:19 +0800)]
msdkenc: modify the way of copying system memory to msdk surface
Replace video_copy with memcpy to fix the issue when the sizes of the
src frame and dst frame don't match. Moreover, for Windows, you have to
do the copy first and call gst_msdk_import_to_msdk_surface later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Mon, 17 Oct 2022 09:01:18 +0000 (17:01 +0800)]
msdkallocator_d3d: add d3d11 video memory and import it to msdk surface
This patch introduces d3d11 texture and index to GstMsdkMemoryID and
implements gst_msdk_import_to_msdk_surface in order to wrap the surface
to mfxMemId.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Fri, 26 Aug 2022 06:13:36 +0000 (14:13 +0800)]
msdkallocator_d3d: implement GetHDL callback function
During encoding process, oneVPL runtime will call GetHDL callback function.
This patch implements this function for the use of msdk.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Mon, 17 Oct 2022 08:48:15 +0000 (16:48 +0800)]
msdkallocator: add a parameter to function gst_msdk_import_to_msdk_surface
Add a flags parameter to function gst_msdk_import_to_msdk_surface and
move the function declaration to gstmsdkallcator.h to prepare for adding
Windows implementation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Fri, 19 Aug 2022 05:51:11 +0000 (13:51 +0800)]
msdkenc: add d3d11 pool during negotiation
This patch adds Windows specific set_format and propose_allocation
functions to enable creating d3d11 pools during negotiation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Fri, 19 Aug 2022 05:40:05 +0000 (13:40 +0800)]
msdkenc: add D3D11 caps for msdkenc
This patch adds D3D11 feature to sink factory for msdkenc.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Sat, 7 May 2022 09:10:34 +0000 (17:10 +0800)]
MSDK: Introduce d3d11 device to MSDK context
Currently MSDK context does not support d3d11va. Now introduce d3d11va
device to MSDK context, making it able to create msdk session with d3d11
device and to easily share with upstream and donwstream.
Add environment variable to enable user to choose GPU device in multi-GPU
environment. This variable is only valid when there's no context
returned by upstream or downstream. Otherwise it will use the device
that created by upstream or downstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Tong Wu [Sat, 7 May 2022 08:28:50 +0000 (16:28 +0800)]
MSDK: Add gst d3d11 lib into MSDK's dependency
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3231>
Víctor Manuel Jáquez Leal [Wed, 9 Nov 2022 13:59:41 +0000 (14:59 +0100)]
vafilter: Log out processed surfaces for debug.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3373>
Víctor Manuel Jáquez Leal [Wed, 9 Nov 2022 13:53:30 +0000 (14:53 +0100)]
vadeinterlace, vapostproc: Drop output buffer if process failed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3373>
Daniel [Mon, 7 Nov 2022 19:32:50 +0000 (16:32 -0300)]
debugutils: videocodectestsink: add support for more formats
Add support for more formats so as to run the libvpx high bit depth test suite.
This means the files under CONFIG_VP9_HIGHBITDEPTH
This also allows running the yuv444p 8bit file in the regular 8 bit vp9 suite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3356>
Elliot Chen [Thu, 10 Nov 2022 07:07:20 +0000 (15:07 +0800)]
gstplay: fix segmentation fault caused by subtitle info update
For subtitle stream played by subrui, gstplay will update subtitle
information before select the stream by using playbin3. Need check
the subtitle_sid value to avoid segmentation fault.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3383>
Christian Wick [Thu, 10 Nov 2022 08:00:32 +0000 (08:00 +0000)]
gst-rtsp-server: compile example for onvif backchannel testing
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3363>
Christian Wick [Wed, 9 Nov 2022 12:04:08 +0000 (12:04 +0000)]
rtspsrc: Introduce new action signal `push-backchannel-sample` with correct ownership semantics
Signals are not supposed to take ownership of their arguments but only
borrow them for the scope of the signal emission.
The old action signal `push-backchannel-buffer` is now marked deprecated.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3363>
Guillaume Desmottes [Wed, 9 Nov 2022 13:16:23 +0000 (14:16 +0100)]
gssink: add 'content-type' property
Useful when one wants to upload a video as `video/mp4` instead of
'video/quicktime` for example.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3371>
Matthew Waters [Wed, 1 Jun 2022 11:24:41 +0000 (21:24 +1000)]
cccombiner: initial implementation of using CCBuffer helper
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Wed, 1 Jun 2022 07:47:55 +0000 (17:47 +1000)]
closedcaption: move CC buffering to helper object
Move most of the interesting code from ccconverter to this new helper
object.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Mon, 30 May 2022 11:39:13 +0000 (21:39 +1000)]
closedcaption: move cdp->cc_data into shared location
So it can be used by both ccconverter and cccombiner
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Fri, 13 May 2022 05:19:43 +0000 (15:19 +1000)]
closedcaption: move cc_data->cdp to shared file
Used by both ccconverter and cccombiner
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Thu, 12 May 2022 03:22:00 +0000 (13:22 +1000)]
ccconverter: avoid different indent versions indenting !! differently.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Thu, 12 May 2022 03:19:58 +0000 (13:19 +1000)]
closedcaption: move cdp framerate table to common file
shared by both cccombiner and ccconverter
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Thu, 12 May 2022 03:15:19 +0000 (13:15 +1000)]
cccombiner: don't assume a single cea608 data packet per buffer
e.g. 24fps can have up to 3 and would include either two field0 or
field1 cea608 data.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Fri, 6 May 2022 04:00:38 +0000 (14:00 +1000)]
ccconverter: drop data when overflow on extracting cea608 from cc_data
If the buffer overflows, then drop rather than causing a failure and
fropping the output buffer indefinitely. This may have caused downstream to
be waiting for data the will never arrive.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Matthew Waters [Thu, 5 May 2022 08:27:50 +0000 (18:27 +1000)]
ccconverter: fix framerate passthrough with malformed input
If an input is malformed (only produces cea608 field 1 cc_data) then
when in passthrough we would effectively be dropping every second cea608
on output as we would not store any unused cea608 data.
Fix by having all code paths go through the framerate conversion code
which will store and retrieve any relevant data across buffers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3211>
Seungha Yang [Wed, 9 Nov 2022 20:54:18 +0000 (05:54 +0900)]
amfcodec: Fix typos
Fixing typo surfrace -> surface
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3378>
Seungha Yang [Wed, 9 Nov 2022 21:03:45 +0000 (06:03 +0900)]
mfvideosrc: Return S_OK from ISampleGrabberCB callback
The Microsoft's ISampleGrabber implementation seems to be ignoring
the HRESULT return value from the callback though,
S_OK is the right HRESULT code.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3379>
Nicolas Dufresne [Tue, 8 Nov 2022 17:47:10 +0000 (17:47 +0000)]
gstgl: Fix handling of padded tile formats
When a tile format is padded and imported as DMABuf, the stride
contains the information about the actual width and height in
number of tiles. This information is needed by the detiling shader
in order accuratly calculate the location of pixels. To fix that,
we also copy the offset and strides into the otuput format and
the converter will ensure that the shader is recompiled whenever
the stride changes.
This fixes video corruptions observed when decoding on MT8195
with videos that aren't not aligned to 64bytes in width.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3365>
Edward Hervey [Wed, 9 Nov 2022 08:28:37 +0000 (09:28 +0100)]
childproxy: Fix documentation
Warning: Gst: gst_child_proxy_get_child_by_name_recurse: unknown parameter
'parent' in documentation comment, should be 'child_proxy'
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3370>
Mengkejiergeli Ba [Fri, 29 Oct 2021 07:08:38 +0000 (15:08 +0800)]
vaapi: Add new dmabuf mem type when building caps
Media-driver will return dmabuf mem type GST_VAAPI_BUFFER_MEMORY_TYPE_DMA_BUF2
on the latest platform like Gen12. To enable build caps using dmabuf, need to
add the check for this type at gst_vaapi_build_caps_from_format.
This patch is a portion from Junyan.He@intel.com
https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/393
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1287>
Mengkejiergeli Ba [Fri, 29 Oct 2021 06:31:14 +0000 (14:31 +0800)]
vaapipostproc: Enable to use DMABuf mem at sink and src pad
Enable DMABuf mem at both sink and src pad for vaapipostproc caps which
helps to apply DMABuf for more generic use cases: such as "! vaapih264dec !
video/x-raw(memory:DMABuf) ! vaapipostproc ! video/x-raw (memory:DMABuf)
! vaapih265enc" . Or other mem converions like from DMABuf to VASurface
through vaapipostproc.
This patch is a portion from Junyan.He@intel.com
https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/393
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1287>
Seungha Yang [Tue, 8 Nov 2022 10:26:39 +0000 (19:26 +0900)]
d3d11screencapturesrc: Specify PAR 1/1 to template caps
... otherwise PAR can be wrongly signalled during the negotiation
Fixing below pipeline when desktop resolution is not 640x480
gst-launch-1.0.exe \
d3d11screencapturesrc ! videoscale !
video/x-raw,width=640,height=480,pixel-aspect-ratio=1/1 ! d3d11videosink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3360>
Víctor Manuel Jáquez Leal [Sun, 22 May 2022 10:02:15 +0000 (12:02 +0200)]
tests: examples: va: Add encoders dynamic reconfiguration.
Take the QSV encoder test and used it for VA.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2466>
Víctor Manuel Jáquez Leal [Sat, 5 Nov 2022 14:12:28 +0000 (15:12 +0100)]
va: caps: Fix raw caps for H264 encoding.
Mesa gallium and Intel i965 ill reports unsupported video formats.
This commit reverts
ecb12a05 and adds a deeper workaround, since
ecb12a05 only fix the template caps, but not when renegotation
happens.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2466>