He Junyan
242401915f
av1parse: Correct the pts for frames and OBUs inside a TU.
...
When the output alignment is smaller than the input alignment, for
example, When the output alignment is "FRAME" and the parse is likely
connecting to a decoder, the current PTS setting for AV1 frames inside
a TU is not very correct.
For example, a TU may begin with non-displayed frames and end with a
displayed frame. The current way will assign the PTS to the first
non-displayed frame, which is a decode-only frame and the PTS will be
discarded in the video decoder. While the last displayed frame has
invalid PTS, and so the video decoder needs to guess its PTS based on
the frame rate and previous frame's PTS. This is not a decent and
robust way. And more important, when the previous frames provide DTS,
the video decoder will also guess the PTS based on the previous frames'
DTS and trigger the warning like:
gstvideodecoder.c:3147:gst_video_decoder_prepare_finish_frame: \
<vavp9dec0> decreasing timestame
It sets the reordered_output and makes the decoder in free run mode.
We should correct the PTS for a TU, let the non-displayed frames have
no PTS while set the correct PTS to the displayed one. Also, when the
AV1 stream has multi spatial layers, there are more than one displayed
frames inside one TU with the same PTS.
Note: If the input alignment is not TU aligned, we can not know the
exact PTS of this TU, and so we just clear the PTS of the decode only
frame and leave others unchanged.
We also correct all the PTS if the output is OBU aligned. All their
PTS and DTS are set to the input buffer's PTS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3182 >
2022-10-21 11:16:13 +00:00
He Junyan
a1f352196f
av1parse: Only check the TU bound when the alignment is TU.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3182 >
2022-10-21 11:16:13 +00:00
He Junyan
ee5d7ce075
av1parse: push all data once when input alignment not smaller than output.
...
When the incoming data has big alignment than the output, we do not need to
call finish_frame() and exit the current handle_frame() for each splitted
frame. We can push them all at one shot with in one handle_frame(), whcih
may improve the performance and can help us to find the edge of TU.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3182 >
2022-10-21 11:16:13 +00:00
He Junyan
b7d3a219ab
av1parse: Set the output buffer flags correctly.
...
The current code forgets to clear some flags and has some typo.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3182 >
2022-10-21 11:16:13 +00:00
Thibault Saunier
dbed9978ac
docs: plugins-scanner: Handle interface used for plugin API properties
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3236 >
2022-10-21 09:14:25 +00:00
Matthew Waters
a633f5d287
webrtcbin: also add rtcp-fb ccm fir for video mlines by default
...
In addition to the 'nack pli' already added. Both are supported by
rtpbin/rtpsession by default already.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3235 >
2022-10-21 01:02:34 +00:00
Matthew Waters
5ddb347a23
build/gl: fix automatic dispmanx detection for rpi4
...
rpi4 doesn't contain dispmanx but still contains bcm_host.pc which
confuses the configure detection. Add an explicit check for
EGL_DISPMANX_WINDOW_T to ensure that we only build with dispmanx when
the types are available.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/893
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/952
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3230 >
2022-10-20 22:29:16 +00:00
Sangchul Lee
0f05be382b
webrtcbin: Improve documentation of 'turn-server' property
...
Description about how to set time-limited credentials is added.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3229 >
2022-10-20 15:30:07 +00:00
Seungha Yang
09fc6f14f3
docs: plugin-scanner: Stop updating "long-name" metadata
...
The "long-name" value can be environment dependent, and it's not
actually used by our documentation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3208 >
2022-10-20 10:38:19 +00:00
Seungha Yang
fcde6af7df
parse: Adjust debug log level
...
That's not an error case at all
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3228 >
2022-10-19 18:43:53 +00:00
Matthew Waters
5fed85c465
docs/glcontextconfig: rename title to not be GstGLContext
...
Can be confusing havint two pages that both have GstGLContext as the
title.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3227 >
2022-10-19 13:01:06 +00:00
Sebastian Dröge
c7080b1626
{element,deviceprovider}factory: g_object_new() can't ever return NULL
...
So treat it as the assertion it is.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3226 >
2022-10-19 12:09:45 +00:00
Sebastian Dröge
4f03dbd37c
elementfactory: Handle element factory loading failure in gst_element_factory_create_valist() not as assertion
...
In gst_element_factory_create_with_properties() it is a normal error
path so let's keep this consistent.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3226 >
2022-10-19 12:09:45 +00:00
Sebastian Dröge
3ceee904dc
gst: Use G_TYPE_INVALID instead of 0 for GTypes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3226 >
2022-10-19 12:09:45 +00:00
Mathieu Duponchelle
f0598767f0
tests: parse-launch: remove assignment order tests
...
These tests relied on setting the name of an element twice to verify
that the last one set took precedence, however name is a CONSTRUCT property
and the parser now errors out when such properties are set twice, in
g_object_new_with_properties .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3026 >
2022-10-19 11:21:04 +00:00
Mathieu Duponchelle
c2f890aba7
parse: refactor to make use of gst_element_factory_make_with_properties
...
Instead of creating the element first, then setting properties and
presets, we gather those and construct the element with the properties.
This means users of gst_parse_launch can now set construct-only
properties.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1380
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3026 >
2022-10-19 11:21:04 +00:00
Bunio_FH
095bca9bdb
gstminiobject: shares capacity increase
...
during the MSE (WebKit) tests from Apple suite:
https://hls-streaming.cdn-apple.com/hls_conformance/dist/v1.1/index.html?pretty=true&whitelist=MSE%20Suite
webkit attempts to add a single audio buffer containing ~35.5k frames.
when corresponding GstSamples are pulled buffer is being referenced
more than object capacity allows: 2^15-1. since the case could be considered
malformed a surgical patch is applied to increase the capacity.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3221 >
2022-10-19 10:16:05 +00:00
Mathieu Duponchelle
11c74ccec6
fake{video|audio}sink: don't proxy properties at instance init.
...
Instead proxy properties from the GstBaseSink class at class_init time,
and duplicate the rest of the fakesink properties manually.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1442
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3073 >
2022-10-19 09:12:11 +00:00
Jordan Petridis
75872c802b
cdparanoia: Ignore compiler warning coming from the cdparanoia header
...
When trying to build the plugin, GCC starts complaining about issues
with one of the cdparanoia headers and it block us from being able
to build the plugin with Werror.
The current warning in the header look like this:
```
[1/2] Compiling C object subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so.p/gstcdparanoiasrc.c.o
In file included from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.h:37,
from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.c:31:
/usr/include/cdda/cdda_interface.h:164:3: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
164 | "Success",
| ^~~~~~~~~
...
/usr/include/cdda/cdda_interface.h:163:14: warning: ‘strerror_tr’ defined but not used [-Wunused-variable]
163 | static char *strerror_tr[]={
| ^~~~~~~~~~~
[2/2] Linking target subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so
```
Last release of cdparanoia was in 2008, so our best bet for the
time is to ignore the warnings.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2722 >
2022-10-19 08:18:45 +00:00
Alba Mendez
4810008afa
webrtcbin: support adding TURN servers after pipeline start
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1680
When a TURN server is added for the first time, propagate
the change to all nice streams that already exist. This
lets us add servers after the pipeline has been started
(and streams have been added).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3217 >
2022-10-19 07:23:42 +00:00
Nirbheek Chauhan
698503f5a7
meson: Use run_command check: true for windows binary subprojects
...
Fixes a warning about using the check kwarg
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3224 >
2022-10-19 04:05:05 +00:00
Sam Van Den Berge
094b251901
examples: webrtc: mp-sendrecv: add bus handler
...
Without this bus handler, messages posted to the bus will keep a ref to
their source elements, preventing them from being disposed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3219 >
2022-10-19 00:51:44 +00:00
Sam Van Den Berge
93ed51cbb2
examples: webrtc: mp-sendrecv: set element states to NULL after removing them from pipeline
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3219 >
2022-10-19 00:51:44 +00:00
Sam Van Den Berge
17c111d2b9
examples: webrtc: mp-sendrecv: remove wrong gst_object_unrefs
...
In !2958 some gst_object_unrefs were added. However these two don't
belong there because ownership is transfered due to the gst_bin_add_many
call a bit above.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3219 >
2022-10-19 00:51:44 +00:00
Fabian Orccon
50c6c54675
srtp: Fix test skipping when plugin option is disabled
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3200 >
2022-10-18 22:12:41 +00:00
Seungha Yang
573a0489f6
d3d11videosink: Add "emit-present" property
...
Controls the decision for "present" signal use, and
allows delayed "present" signal handler install via the property
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3176 >
2022-10-18 21:19:01 +00:00
Sebastian Dröge
f6898303a0
play: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
2650bba844
sdp: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
4617b63b5f
tag: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
2b91f7e165
allocators: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
2f0e195709
vulkan: Add/fix various annotations
...
And fix a memory leak in gst_vulkan_display_wayland_new() in error
cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
b57c07d5a7
d3d11: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
73557fe093
cuda: Add/fix various annotations
...
And fix a memory leak when creating a CUDA context fails.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
f821ddc108
codecs: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:17 +03:00
Sebastian Dröge
3d528b25d1
badaudio: Add/fix annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:16 +03:00
Sebastian Dröge
f705da7131
ges: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:16 +03:00
Sebastian Dröge
502eddfc36
rtsp-server: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:16 +03:00
Sebastian Dröge
749423bb7f
core: Add/fix various annotations
...
And fix memory leaks/null pointer dereferences in GstUri in error cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 13:51:16 +03:00
Sebastian Dröge
0a513e9168
check: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
3e7f684609
net: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
07f8c012c7
base: Add/fix annotations in GstQueueArray
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
39591cb13d
gl: Add/fix various annotations
...
And fix a memory leaks in gst_gl_display_egl_new() error cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
3827f94574
validate: Add/fix various annotations
...
And fix monitor constructors to correctly check for valid arguments.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
533ea9bd7c
pbutils: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
47e4110a1b
rtp: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
84ab8c9e12
rtsp: Add/fix various annotations
...
Also initialize out parameters so that they don't have an undefined
value in case of errors.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
2ede719b4b
controller: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
75731aec53
app: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
e0b06df223
audio: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Sebastian Dröge
2e5c73fff7
video: Add/fix various annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00