When the base videodecoder class re-attempts a negotiation after flush, the
vabasedec `need_negotiation` flag isn't necessarily set to TRUE, because in that
situation the input state hasn't changed.
By always chaining up we are sure that buffer pool negotiation will always be
attempted.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9457>
When the base videodecoder class re-attempts a negotiation after flush, the
vabasedec `need_negotiation` flag isn't necessarily set to TRUE, because in that
situation the input state hasn't changed.
By always chaining up we are sure that buffer pool negotiation will always be
attempted.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9457>
When the base videodecoder class re-attempts a negotiation after flush, the
vabasedec `need_negotiation` flag isn't necessarily set to TRUE, because in that
situation the input state hasn't changed.
By always chaining up we are sure that buffer pool negotiation will always be
attempted.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9457>
When the base videodecoder class re-attempts a negotiation after flush, the
vabasedec `need_negotiation` flag isn't necessarily set to TRUE, because in that
situation the input state hasn't changed.
By always chaining up we are sure that buffer pool negotiation will always be
attempted.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9457>
This is needed if the LCEVC enhancement data is part of the video stream as SEI
and the demuxer outputs 'lcevc=false' src caps because LCEVC enhancement data is
not stored as a separate stream in the container.
To clarify, 'lcevc=true' just means that the video buffers have LCEVC metadata
attached. Therefore, it is valid to have a stream with LCEVC enhancement data as
SEI with 'lcevc=false' as long as it is not attached as metadata.
This will be needed once we add support for the demuxer to attach LCEVC metadata
to video buffers if it is stored in a separate track.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9427>
Add d3d12fisheyedewarp element that performs fisheye image dewarping
using D3D12. A UV remap LUT texture is generated via a compute shader,
and the actual remapping is performed in a pixel shader using this LUT
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9441>
If enabled, wasapi2src/sink will post a warning message instead of an error,
when device failures occur, such as open failure, I/O error,
or device removal.
The element will continue to produce/consume audio buffers and behave as if
a capture/render device were active, allowing pipeline to keep running even when
no audio endpoint is available
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9326>
Upon RTCP timeout, rtpsession emits a signal that we catch to set a
timed_out private field, this also exposes it as a property of the
transport in order for users (such as rtspclientsink) to get notified
about it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9124>
... even if hardware does not support interlaced encoding at bitstream level.
Although interlacing information is not written in the bitstream,
that information can be signalled via container, thus allow interlaced
stream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9328>
Add a new action signal to allow applications to capture
the most recently rendered frame directly from the swapchain
back buffer.
Unlike the existing "last-sample" property, which exposes
the raw input sample before any sink-side processing, this
signal captures the final displayed image after any internal
image processing (e.g., UV remap, color balance, overlay) has been
applied.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9423>
- Add a videoconvert element before the videosink so that the output
works no matter what format gets negotiated (A444_16LE for me)
- Specify a reasonable video format and size with a capsfilter, so
we don't default to something silly like A444_16LE @ 240p.
- Add a timeoverlay element, so it's obvious when stoppping/restarting
the pipeline that the input stream is just picked up again from the
moment the consumer pipeline is restarted.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9422>
Modify the API to retrieve the tensor meta to check for the dimensions
as well.
Also fix an API mistake, the buffer whose dimensions should be checheck
is the one inside the GstTensor, not another buffer some outside.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9411>