Víctor Manuel Jáquez Leal
89b0a6fa23
va: refactor buffer import
...
This patch removes the code duplication of input buffer importation, in all the
va elements that import video frames. It defines a synthetic object whose
members are required to create a new input buffer and do the importation of the
upstream buffer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5257 >
2023-08-31 12:41:48 +00:00
Jordan Petridis
94593735d3
ci: Update ci-templates ref
...
Needed primarily for the fix in:
https://gitlab.freedesktop.org/freedesktop/ci-templates/-/merge_requests/188
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5266 >
2023-08-31 12:04:17 +03:00
Nirbheek Chauhan
4b586a809e
macos-bison: Update to 3.8.2 and add an ARM64 build
...
Also includes a shell script to build bison and match pycodestyle.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5261 >
2023-08-31 07:50:43 +00:00
Sebastian Dröge
a0522c8193
ptp: Fix compilation with rustc 1.48
...
That's currently the minimum version we declare in meson.build but the
latest changes introduced some usage of 1.62 features.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5265 >
2023-08-31 06:05:18 +00:00
Matthew Waters
9d867356df
gl/bufferpool: add configuration to extend buffer lifetime before reuse
...
Fixes a potential GPU stall if an immediately freed texture/buffer is
attempted to be reused immediately by the CPU, e.g. when uploading.
Problematic scenario is this:
1. element does GPU processing reading from texture
2. frees the buffer back to the pool
3. pool acquire returns the just released buffer
4. GPU processing then has to wait for the previous GPU operation to
complete causing a stall
If there was a reliable way to know whether a buffer had been finished
with across all GPU drivers, we would use it. However as that does not
exist, this workaround is to keep the released buffer unusable until the
next released buffer.
This is the same approach as is used in the qml (Qt5) elements.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5144 >
2023-08-31 01:24:38 +00:00
Nicolas Dufresne
cd9ac137d2
x264enc: Add monochrome 8bit support
...
This is mapped to GStreamer GRAY8 format. This allow producing files with
the chroma_format_idc 0 (monochrome). This is only availbable to high profile.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4812 >
2023-08-30 16:54:01 -04:00
Nicolas Dufresne
0b648f9a2d
waylandsink: Crop surfaces to their display width height
...
Setting the surface source rectangle has been omitted so far. As a side effect
surface created with padded width/height are being scaled down. Fix this using
the viewporter source rectangle configuration. This can later be enhanced
to support crop meta.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5259 >
2023-08-30 18:58:45 +00:00
Seungha Yang
ce922a413c
qt6d3d11: Add plugin docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5258 >
2023-08-30 15:45:12 +00:00
Seungha Yang
51218c3c9c
bad: Update Windows plugin docs
...
Updating wasapi, wasapi2, mediafoundation, and winks plugin docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5258 >
2023-08-30 15:45:12 +00:00
Seungha Yang
cc713f9075
qsv: Update plugin docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5258 >
2023-08-30 15:45:12 +00:00
Seungha Yang
9a5f5304f8
dwrite: Add plugin docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5258 >
2023-08-30 15:45:12 +00:00
Seungha Yang
560faa38c5
d3d11: Update plugin docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5258 >
2023-08-30 15:45:12 +00:00
Sebastian Dröge
967aa2abca
ptp: Listen with different sockets on individual interfaces
...
This allows us to portably know on which interface a multicast packet
arrived, and to send back any packets for that clock on the correct
interface.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2728
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5232 >
2023-08-30 12:19:46 +00:00
Felix Yan
c161eb973d
fuzzing: correct typos in README.txt
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5260 >
2023-08-30 10:55:56 +00:00
He Junyan
e81a40cb72
va: baseenc: Add the DMA buffer input support
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5189 >
2023-08-29 15:31:09 +00:00
He Junyan
5e6c91579f
va: encoder: Add in_info field to base encoder
...
When we consider the DMA kind caps as input, the input_state->info
only contains the video format of GST_VIDEO_FORMAT_DMA_DRM, which
is not enough for va plugins. The new info in base encoder contains
the correct video info after the DMA caps parsing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5189 >
2023-08-29 15:31:09 +00:00
Seungha Yang
1e381dc1cc
d3d11convert: Passthrough allocation query on same caps
...
Since d3d11convert and its variant elements does not enable basetransform's
passthrough, passthrough allocation query needs to be handled
manually in order to respect downstream element's min/max buffer
requirement.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5255 >
2023-08-29 19:46:00 +09:00
Jordan Petridis
3db2159fc4
ci: Add ca-certificates to the indent image
...
This is needed to rebuild the image
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5235 >
2023-08-27 07:58:09 +03:00
Jordan Petridis
182fa11c0e
ci: Check the formatting of rust files
...
Part of #2930
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5235 >
2023-08-27 07:58:09 +03:00
Jordan Petridis
25c9ca2d24
ci: space out the variables in .gitlab-image-tags.yml
...
This should make it easier to avoid git conflicts when changing
a single variable.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5235 >
2023-08-27 07:57:26 +03:00
Stephan Seitz
9d3b57f362
sdp: fix wrong error message for missing clock-rate in caps
...
When using `gst_sdp_media_set_media_from_caps` on `application/x-rtp` caps
without `clock-rate` it wrongly reports missing payload type even if `payload`
is present in the caps.
This seems to be a copy&paste error from the error message for missing payload
type.
When using payload=10, both `clock-rate` and some other media properties are
defined by the RTP standard so I was wondering whether I could omit `clock-rate`
and was confused about the error message.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5250 >
2023-08-26 18:01:38 +00:00
Olivier Crête
e2d7fbe94f
gst-stats: Add argument for a custom regexp
...
This is to use gst-stats against GStreamer logs that went through
some other logging system.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3935 >
2023-08-25 21:43:36 +00:00
Seungha Yang
ff435c80a2
d3d11videosink: Use premultiplied-alpha swapchain
...
Don't ignore alpha component if it's present
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5242 >
2023-08-25 16:54:29 +00:00
Seungha Yang
de07c44183
codec2json: Fix plugin loading on Windows
...
* Library versioning should not be used for plugins since it will add
-{version}.dll suffix (and versioned libraries on Linux with symlink).
Then the library file name and plugin init function name mismatch
will result in blacklisted plugin.
* Don't define BUILDING_GST_CODECS, makes no sense
* Don't define G_LOG_DOMAIN, which should be used only for libraries,
not plugins
* Depends on gstcodecparsers libary, not gstcodecs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5249 >
2023-08-25 16:08:39 +00:00
Sebastian Dröge
d50c842d87
video: Fix ordering of video formats in GST_VIDEO_FORMATS_ALL_STR
...
This now follows the algorithm again that is described in the
documentation and implemented in gstreamer-rs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5243 >
2023-08-25 15:27:02 +00:00
Nirbheek Chauhan
46a4b07fe5
docs: Update docs for installing on windows
...
This page has been only sporadically updated for a decade, and it is
unlikely to be updated properly anytime soon. Update the top half, and
add a note about the tutorial section being out of date.
The trigger for this was a question on the mailing list about Windows
11 support, since it's not listed in the supported platforms list.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5239 >
2023-08-25 15:16:07 +00:00
Seungha Yang
6fa405c1e2
cudaipcclient: Protect IPC handle import/close with global lock
...
Protect import/close with signle lock to avoid importing a IPC handle
while it's being closed by another cudaipcsrc from other thread.
Also fixing cuda context leak
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5230 >
2023-08-25 10:06:58 +00:00
Jan Alexander Steffens (heftig)
14c097e87d
rtmp2: Allow NULL flash version, omitting the field
...
rtmpsink omits it by default. Allow us to do the same.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5241 >
2023-08-25 09:50:39 +02:00
Sebastian Dröge
8ebdefcbb7
ci: Update to Rust 1.72
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5238 >
2023-08-24 22:45:23 +00:00
Víctor Manuel Jáquez Leal
c1f99f4005
va: Fix in error logs functions mismatches
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5236 >
2023-08-24 17:54:32 +00:00
Víctor Manuel Jáquez Leal
bcee96020f
vabasedec: Remove assertion for resolution change in input state
...
This is reported from https://bugs.webkit.org/show_bug.cgi?id=259032
Though I couldn't reproduce the issue, it looks to me unneeded to assert for
resolution changes in old frames, since renegotiation is carried out.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5237 >
2023-08-24 16:21:14 +00:00
Seungha Yang
315cfaf2d8
nvencoder: Fix negotiation error when interlace-mode is unspecified
...
Use GST_PAD_SET_ACCEPT_INTERSECT() to accept caps without interlace-mode
field
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5229 >
2023-08-24 14:58:25 +00:00
He Junyan
c927159f21
va: compositor: Use va_get_surface_usage_hint() to get the usage hint
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5210 >
2023-08-24 11:03:59 +00:00
He Junyan
1b43baf3c8
va: baseenc: Use va_get_surface_usage_hint() to get the usage hint
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5210 >
2023-08-24 11:03:59 +00:00
He Junyan
696d81f6f8
va: Use va_get_surface_usage_hint() to detect the modifiers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5210 >
2023-08-24 11:03:59 +00:00
He Junyan
8399bc2521
va: basedec: Use va_get_surface_usage_hint() to get the usage hint
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5210 >
2023-08-24 11:03:59 +00:00
He Junyan
bb350138af
va: basetransform: Use va_get_surface_usage_hint() to get the usage hint
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5210 >
2023-08-24 11:03:59 +00:00
He Junyan
0e500ee084
va: Add helper function va_get_surface_usage_hint()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5210 >
2023-08-24 11:03:59 +00:00
Matthew Waters
a49cd5f94d
gl: add support for 16-bit A420/A422/A444
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5233 >
2023-08-24 12:13:19 +10:00
Matthew Waters
faf404a938
video: add support for A420/A422/A444 16-bit formats
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5233 >
2023-08-24 12:03:39 +10:00
Matthew Waters
e67bdaf4d5
glcolorconvert: fix writing to subsampled yuv formats >8-bit
...
It's not quite enough to have the GstVideoInfo use a RGBA64 format, the
GstGLFormat (texture format) also needs to match as that's what actually
is used for allocation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5226 >
2023-08-24 00:56:44 +00:00
Matthew Waters
4c627ea2bb
gl: add support for 12-bit A444/A422/A420
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5226 >
2023-08-24 00:56:44 +00:00
Matthew Waters
202309fa2c
video: add support for 12-bit A420/A422/A444
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5226 >
2023-08-24 00:56:43 +00:00
Nicolas Dufresne
a795c9bc6a
waylandsink: Restore support for render-rectangle
...
Fixes #2519
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5221 >
2023-08-23 19:24:47 +00:00
Guillaume Desmottes
0ae230c8be
uridecodebin3: proxy urisourcebin::download-dir property
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5227 >
2023-08-23 13:52:19 +00:00
Guillaume Desmottes
8263ce2a31
urisourcebin: add 'download-dir' property
...
The directory were buffers are downloaded was not documented and not
configurable. Users may want to ensure buffers are saved to a specific
partition for example.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5227 >
2023-08-23 13:52:19 +00:00
Seungha Yang
d84c13ab0d
h265parser: Allow partially broken hvcC data
...
Ignores parsing error on the last nalu of the array if the nalu type
is not VPS/SPS/PPS
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2905
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5188 >
2023-08-23 10:43:18 +00:00
Seungha Yang
f058eda798
win32ipc: Fix pipe handle leak
...
Named pipe handle must be closed if it's no longer needed
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2923
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5228 >
2023-08-23 18:33:04 +09:00
Matthew Waters
746d99b932
gl: add support A422/A444
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5224 >
2023-08-23 15:00:05 +10:00
Matthew Waters
9a56945173
video: add support for 8-bit A422/A444
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5213 >
2023-08-23 01:00:24 +00:00