Víctor Manuel Jáquez Leal
ece5feeb8d
va: basetransform: Update documentation.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495 >
2021-09-10 14:41:27 +02:00
Víctor Manuel Jáquez Leal
1b30920464
va: basetransform: Add autoptr clean up function.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495 >
2021-09-10 14:34:32 +02:00
Víctor Manuel Jáquez Leal
ef3f53428d
va: basetransform: Use copy_metadata() at buffer import.
...
Instead of using only gst_buffer_copy_into() use copy_metadata()
vmethod to copy what's needed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495 >
2021-09-10 10:52:13 +02:00
Víctor Manuel Jáquez Leal
51e446345f
vapostproc: don't chain up transform_meta()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495 >
2021-09-10 10:52:13 +02:00
Daniel Almeida
b8c826afe3
codecs: gstvp9statefulparser: feature_data should be 0 if feature_enable is 0
...
The spec says in 6.2.11 that feature_data[i][j] should be zero if
feature_enabled[i][j] is zero. Instead we retained the old value in the parser.
Fix it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2449 >
2021-09-09 18:32:42 +00:00
Marek Vasut
8239ff343f
gsth264parser: Fix handling of NALs with emulation byte set
...
In case a set of NALs with emulation_prevention_three_byte is decoded using
hardware decoder like Hantro G1, wrong struct v4l2_ctrl_h264_decode_params
.dec_ref_pic_marking_bit_size is passed into the kernel, which results in
decoding artifacts. Subtract the number of emulation three bytes from the
.dec_ref_pic_m->bit_size to get the correct bit size and avoid having these
artifacts. Apply the exact same fix to slice->pic_order_cnt_bit_size as well.
The following NALs (7, 8, 6, 5) decode with artifacts,
.dec_ref_pic_marking_bit_size is set to 10 without this patch.
00000000 00 00 00 01 27 4d 00 20 89 8b 60 3c 04 bf 2e 02 |....'M. ..`<....|
00000010 d4 18 04 18 c0 c0 01 77 00 00 5d c1 7b df 05 00 |.......w..].{...|
00000020 00 00 01 28 ee 1f 20 00 00 01 06 05 10 b9 ed b9 |...(.. .........|
00000030 30 5d 21 4b 71 83 71 2c 10 a3 14 bb 29 80 00 00 |0]!Kq.q,....)...|
00000040 01 25 b8 00 05 00 00 03 03 7f fa 78 1e e7 fd fe |.%.........x....|
^^^^^^^^^^^^--- emulation 3 byte
00000050 b4 62 7a 31 ff 7d 81 fd 26 d8 62 b6 d6 25 46 ae |.bz1.}..&.b..%F.|
The following NALs (7, 8, 6, 5) decode fine,
.dec_ref_pic_marking_bit_size is set to 2 without this patch.
00000000 00 00 00 01 27 4d 00 20 89 8b 60 3c 04 bf 2e 02 |....'M. ..`<....|
00000010 d4 18 04 18 c0 c0 01 77 00 00 5d c1 7b df 05 00 |.......w..].{...|
00000020 00 00 01 28 ee 1f 20 00 00 01 06 05 10 b9 ed b9 |...(.. .........|
00000030 30 5d 21 4b 71 83 71 2c 10 a3 14 bb 29 80 00 00 |0]!Kq.q,....)...|
00000040 01 25 b8 00 04 c0 00 03 7f fa 78 1e e7 fd fe b4 |.%........x.....|
00000050 62 7a 31 ff 7d 81 fd 26 d8 62 b6 d6 25 46 ae ce |bz1.}..&.b..%F..|
Fixes: d0d65fa875
("codecparsers: h264: record dec_ref_pic_marking() size")
Fixes: 0cc7d6f093
("codecparsers: h264: record pic_order_cnt elements size")
Signed-off-by: Marek Vasut <marex@denx.de>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2517 >
2021-09-09 16:49:41 +00:00
Aaron Boxer
15d724e671
gsth264parser: reject memory management control op greater than 6
...
This prevents assertion from being thrown in
gst_h264_dpb_perform_memory_management_control_operation
if corrupt NAL has a control op greater than 6
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2508 >
2021-09-09 15:32:14 +00:00
Matthew Waters
f6aea043f9
gl/buffer_storage: re-enable GL_ARB_buffer_storage
...
The extension version doesn't have the ARB suffix.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1273 >
2021-09-09 07:29:37 +00:00
Tobias Ronge
3ec9795a28
rtspconnection: Only reset timeout when socket is unused
...
After sending or retrieving data, gstrtspconnection resets the socket's
timeout to 0 (infinite). This could cause problems if sending and
receiving at the same time. For example, if RTCP data is sent from the
streaming thread while gstrtspsrc is already retrieving data.
With this patch, timeout is only reset to 0 if there is no other
thread using the socket.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1260 >
2021-09-09 06:45:04 +00:00
Ung, Teng En
580ac55194
msdk: Adjust the plugin and factories description based on MFX_VERSION.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2485 >
2021-09-09 13:06:06 +08:00
Andika Triwidada
b6147e6037
add missing space
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/884 >
2021-09-09 04:08:22 +00:00
Mathieu Duponchelle
846cf3b20c
vulkan: don't link to XOpenDisplay in documentation
...
hotdoc doesn't know about that symbol
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2518 >
2021-09-08 15:34:09 +00:00
Ludvig Rappe
92338e3d80
pbutils: Add mjpg to MIME codecs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1270 >
2021-09-07 14:49:52 +00:00
Seungha Yang
2c69544d0c
jpegdec: Fix crash when interlaced field height is not DCT block size aligned
...
In case of interlaced JPEG file, we are doubling stride.
The scratch scan line should take account of it as well.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1042 >
2021-09-07 12:15:34 +00:00
Jan Schmidt
640aad2b46
mpeg2enc: Only allow 1 pending frame for encoding
...
Having an unlimited input queue is very bad if the
encoder can't run at real-time. Eventually it will
consume all RAM. I don't really see any reason to
have more than 1 outstanding encoded frame, so
remove the queue and limit things to 1 pending frame.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2499 >
2021-09-06 14:14:50 +00:00
Jan Schmidt
5eba408071
multiqueue: Use running time of gap events for wakeups.
...
Use gap events to update the next_time of a queue the same
as buffers or segment events. Fixes problems where a group
consisting only of sparse streams primarily driven by
gap events would stall with a full multiqueue because
unlinked streams in the group were not being woken to
push data.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/879 >
2021-09-06 01:43:57 +10:00
Thibault Saunier
cd3aa029d6
wpe: Fix race condition on teardown
...
There was a race when going to PAUSED while pushing a buffer to the
pipeline process (where we weren't even cancelling anything).
This rework base all the cancellation around the GCancellable
"cancelled" signal trying to ensure that the streaming thread will not
block once a cancel operation happens.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2504 >
2021-09-03 15:56:31 +00:00
Thibault Saunier
f7cbbb5d9a
wpe: Use the new element.get_current_running_time API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2504 >
2021-09-03 15:56:31 +00:00
Thibault Saunier
0531eebf51
wpe: Mark first buffer as starting at 0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2504 >
2021-09-03 15:56:31 +00:00
Mathieu Duponchelle
f5cdb2d002
decodebin3: fix unblocking on input gap events
...
Initial gap events should not be discarded on the input streams,
but instead cause unblocking just as buffers do.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1239 >
2021-09-03 13:46:19 +00:00
Philippe Normand
8ad1ea0297
parsebin: Guess subtitle/ caps as text streams
...
The subtitles in ogg/kate are identified using subtitle/ caps names.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1213 >
2021-09-02 17:29:51 +00:00
Seungha Yang
f2fa75accb
videoparseutils: Fix for wrong CEA708 minimum size check
...
The minimum possible size of valid CEA708 data is 3 bytes, not 7 bytes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2505 >
2021-09-02 23:17:58 +09:00
Sebastian Dröge
fedd6c2a28
avidemux: Also detect 0x000001 as H264 byte-stream start code in codec_data
...
This works around some AVI files storing byte-stream data in the
codec_data. The previous workaround was only checking for
0x00000001 (4 bytes) instead of 0x000001 (3 bytes).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1072 >
2021-09-02 12:07:52 +00:00
Philippe Normand
cfc80e5168
wpevideosrc: Uniformise default value for draw-background property
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2498 >
2021-08-31 17:59:06 +00:00
Philippe Normand
2b6f0404a7
wpevideosrc: Implement basic heuristic for raw caps negotiation
...
Before this patch raw caps could be negotiated already with a capsfilter, but in
cases where wpesrc is being auto-plugged this approach can't be used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2498 >
2021-08-31 17:59:06 +00:00
Philippe Normand
edc04df13c
wpevideosrc: Ensure debug category is set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2498 >
2021-08-31 17:59:06 +00:00
Philippe Normand
ab6cb4c2c7
qt: Fix build for Qt 5.9
...
The QQuickItem::size() method was introduced in 5.10, so use direct width() and
height() access instead.
Fixes #908
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1069 >
2021-08-31 11:15:24 +00:00
Matthew Waters
e43bbaf3d9
rtp: add some additional rtcp sdes values
...
Matches the current list at
https://www.iana.org/assignments/rtp-parameters/rtp-parameters.xhtml#rtp-parameters-5
as of 2021-September.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1267 >
2021-08-31 06:09:47 +00:00
Mathieu Duponchelle
20483c3449
cccombiner: fix scheduling with interlaced video buffers
...
The initial code was written with the misunderstanding that
IS_TOP_FIELD indicated that an interlaced buffer contained
a top field, not that it contained only a top field
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2413 >
2021-08-30 21:27:44 +00:00
Olivier Crête
aa3d2c3369
rtphdrext-rfc6464: Add test for inserting in payloader using the API
...
This makes it clearer how to use the plugin in an API driven application.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058 >
2021-08-30 17:01:15 +00:00
Olivier Crête
f70ccd6d86
rtphdrext-rfc6464: Put max level if the audio is beyond it
...
Otherwise, it just fails to add the extension, which makes no
sense. And our level element produces levels higher than 127 in some
cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058 >
2021-08-30 17:01:15 +00:00
Olivier Crête
23d07f3c7b
rtphdrext-rfc6464: Add example pipeline
...
This makes it a bit easier to understand how to use it in an application.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058 >
2021-08-30 17:01:15 +00:00
Olivier Crête
9ff052d5be
rtphdrext-rfc6464: Add test for inserting it based on caps
...
Tests adding the extension based on the caps.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058 >
2021-08-30 17:01:15 +00:00
Ludvig Rappe
75c44583ee
pbutils: Add function to convert caps to MIME codec
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1265 >
2021-08-30 08:49:33 +00:00
Ludvig Rappe
4a1d8eac31
pbutils: Add function for parsing H.264 extradata
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1265 >
2021-08-30 08:49:33 +00:00
Nicolas Dufresne
52fff41aae
Revert "kmssink: Fix fallback path for driver not able to scale scenario"
...
This reverts commit d2a7b763be
.
After this change, non-scaled rendered were not centred as expected.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2496 >
2021-08-27 19:54:52 +00:00
Mengkejiergeli Ba
702e69e841
codecs: av1dec: Fix to output frame with highest spatial layer
...
During the output process, if there are multiple frames in a TU (i.e. multi-spatial
layers case), only one frame with the highest spatial layer id should be selected
according to av1 spec. The highest spatial layer id is obtained from idc value of
the operating point.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2475 >
2021-08-27 15:27:31 +00:00
Edward Hervey
1fe15bb61c
qtdemux: Force stream-start push when re-using EOS'd streams
...
When re-using streams, we *do* need to push a `stream-start` event downstream if
we previously were EOS'd. Failure to do that would never remove the EOS status
on all downstream elements and cause weird issues.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1067 >
2021-08-27 14:40:02 +02:00
Alex Ashley
fd1e75900d
dashdemux: copy ContentProtection element including xml namespaces
...
Commit bc09d8cc
changed gstmpdparser to put the entire
<ContentProtection> element in the "value" field, so that DRMs
other than PlayReady could make use of the data inside this
element.
However, the data in the "value" field does not include any
XML namespace declarations that are used within the element. This
causes problems for a namespace aware XML parser that wants to
make use of this data.
This commit modifies the way the XML is converted to a string
so that XML namespaces are preserved in the output.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2487 >
2021-08-27 10:47:06 +00:00
Vivia Nikolaidou
43199bc883
errorignore: Add ignore-eos mode
...
It's otherwise very complicated to ignore GST_FLOW_EOS without a
ghostpad's chain function to rewrite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2492 >
2021-08-27 09:40:50 +00:00
Brad Hards
dee294809f
gsth264parser: fix typo in debug message
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2493 >
2021-08-27 17:43:44 +10:00
Brad Smith
7db1040346
deinterlace: Use proper ASM output format for *BSD OS
...
FreeBSD/NetBSD/OpenBSD amd64 use the ELF binary format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1066 >
2021-08-27 06:41:41 +00:00
Matthew Waters
c906ccb79f
element: NULL the lists of contexts in dispose()
...
If dispose() is called more than once, we may double unref the list of
GstContext's.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/875 >
2021-08-27 05:40:55 +00:00
Matthew Waters
50661c1aa9
qmlgl: don't critical on input events before input format has been set
...
Accessing the unset GstVideoInfo would result in criticals
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1065 >
2021-08-27 13:34:01 +10:00
Mathieu Duponchelle
5bd31b8cce
timecodestamper: add support for closedcaption input
...
Some closedcaption elements like sccenc except input buffers
to have timecode metas. The original use case is to serialize
closed captions extracted from a video stream, in that case
ccextractor copies the video time code metas to the closed
caption buffers, but no such mechanism exists when creating
a CC stream ex nihilo.
Remedy that by having timecodestamper accept closedcaption
input caps, as long as they have a framerate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2490 >
2021-08-26 16:03:23 +00:00
Aaron Boxer
5cf4dc2b82
aes: add aes encryption and decryption elements
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1505 >
2021-08-25 21:16:09 -04:00
Johan Sternerup
1a919a1e41
webrtcbin: Return typed "sctp-transport"
...
With GstWebRTCSCTPTransport type exposed we can now define
"sctp-transport" property as being of this type.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2214 >
2021-08-25 13:20:22 +00:00
Johan Sternerup
607ef6db60
webrtc: Split sctptransport into lib and implementation parts
...
GstWebRTCSCTPTransport is now made into into an abstract base class
that only contains property specifications matching the
RTCSctpTransport interface of the W3C WebRTC specification, see
https://w3c.github.io/webrtc-pc/#rtcsctptransport-interface . This
class is put into the WebRTC library to expose it for applications and
to allow for generation of bindings for non-dynamic languages using
GObject introspection.
The actual implementation is moved to the subclass WebRTCSCTPTransport
located in the WebRTC plugin.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2214 >
2021-08-25 13:20:22 +00:00
Johan Sternerup
7f9bb15055
webrtcbin: Expose SCTP Transport
...
Being able to access the SCTP Transport object from the application
means the application can access the associated DTLS Transport object
and its ICE Transport object. This means we can observe the ICE state
also for a data-channel-only session. The collated
ice-connection-state on webrtcbin only includes the ICE Transport
objects that resides on the RTP transceivers (which is exactly how it
is specified in
https://w3c.github.io/webrtc-pc/#rtciceconnectionstate-enum ).
For the consent freshness functionality (RFC 7675) to work the ICE
state must be accessible and consequently the SCTP transport must be
accessible for enabling consent freshness checking for a
data-channel-only session.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2214 >
2021-08-25 13:20:22 +00:00
Sebastian Dröge
5472252688
docs: Add Since
marker to "twcc-feedback-interval" property
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927 >
2021-08-25 11:53:58 +03:00