Commit graph

112974 commits

Author SHA1 Message Date
Nicolas Dufresne
a01883013a test: camerabin: Fix buffer size calculation
We were assunming that GStreamer size for RGB (24bit packed) data was width x
height x 3, but GStreamer defaults to specific alignment. Use GstVideoInfo API
in order to obtain the buffer size.

This fixes failure seen when trying to merge: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/998
which make us negoaite 1x1 instead of 16x16 in this test.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2297>
2021-06-02 11:26:41 -04:00
Tim-Philipp Müller
577dabf7b1 Use g_memdup2() where available and add fallback for older GLib versions
g_memdup() is deprecated since GLib 2.68 and we want to avoid
deprecation warnings with recent versions of GLib.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1171>
2021-06-02 14:21:02 +00:00
He Junyan
c442c9bd5e codecs: Integrate H265 DPB full check into need_bump().
The current DPB check of H265 is not very correct. The current frame
is already in the DPB when we check whether the DPB is full.
For example, the DPB max size is 16 and we have 15 ref frames in the
DPB, so the gst_h265_dpb_delete_unused() cleans no one, and then plus
the current frame, the DPB is 16. This causes an error return, but in
fact, the stream is correct.
We now integrate the DPB full check into the need_bump() function.
We add the correct frame into to DPB and then check whether the picture
num is bigger than max_num_pics of DPB(which means there is no room for
the current picture). If true, we bump the DPB immediately.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2291>
2021-06-02 13:10:35 +00:00
Tim-Philipp Müller
e7cc4b02d5 Use g_memdup2() where available and add fallback for older GLib versions
Size is constant here, so no problem in any case, but g_memdup() is
now deprecated and we don't want deprecation warnings.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/257>
2021-06-02 12:40:31 +00:00
Tim-Philipp Müller
2614333389 Use g_memdup2() where available and add fallback for older GLib versions
Alloc size is based on existing allocations and struct sizes.

g_memdup() is deprecated since GLib 2.68 and we want to avoid
deprecation warnings with recent versions of GLib.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/431>
2021-06-02 12:40:14 +00:00
Tim-Philipp Müller
cc1a7e2c4d Use g_memdup2() where available and add fallback for older GLib versions
- x264 encoder bitrate profile manager: alloc size is based
  on existing allocation
- asfdemux: change length var to 64-bit and check for G_MAXUINT
- realmedia: opaque_data_len is read from 32 bits and then
  only subtracted upon.

g_memdup() is deprecated since GLib 2.68 and we want to avoid
deprecation warnings with recent versions of GLib.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/merge_requests/83>
2021-06-02 12:39:53 +00:00
Fernando Jimenez Moreno
883a660198 basics/elements: Correct allowed actions in PAUSED state
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-docs/-/merge_requests/156>
2021-06-02 09:03:10 +00:00
Fernando Jimenez Moreno
b87ed30b7b basics/elements: Remove references to non-existing element names
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-docs/-/merge_requests/156>
2021-06-02 09:03:10 +00:00
Guillaume Desmottes
aaaf85054f tracers: leaks: log when tracer is exiting
Useful when debugging leaks to make sure that the tracer is properly
finalized (gst_deinit() being actually called, etc).

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/828>
2021-06-02 06:11:58 +00:00
Tim-Philipp Müller
cbe89db444 Back to development 2021-06-01 15:49:48 +01:00
Tim-Philipp Müller
723478b6be Back to development 2021-06-01 15:34:41 +01:00
Tim-Philipp Müller
a671a6cdfd Back to development 2021-06-01 15:34:40 +01:00
Tim-Philipp Müller
18e3a2639e Back to development 2021-06-01 15:29:27 +01:00
Tim-Philipp Müller
fac3ca0a93 Back to development 2021-06-01 15:29:23 +01:00
Tim-Philipp Müller
f34f4b6c00 Back to development 2021-06-01 15:29:21 +01:00
Tim-Philipp Müller
936c63b4bc Back to development 2021-06-01 15:29:18 +01:00
Tim-Philipp Müller
f3dcdfbd60 Back to development 2021-06-01 15:29:16 +01:00
Tim-Philipp Müller
f9eac69d54 Back to development 2021-06-01 15:29:12 +01:00
Tim-Philipp Müller
16ef2917e2 Back to development 2021-06-01 15:29:10 +01:00
Tim-Philipp Müller
b3327b9f69 Back to development 2021-06-01 15:29:07 +01:00
Tim-Philipp Müller
2d9b73b76b Back to development 2021-06-01 15:29:04 +01:00
Tim-Philipp Müller
caae1a632a Back to development 2021-06-01 15:28:40 +01:00
Tim-Philipp Müller
af3527ce24 Back to development 2021-06-01 15:28:36 +01:00
Tim-Philipp Müller
eb47c5aa2d Back to development 2021-06-01 15:28:24 +01:00
Tim-Philipp Müller
81778f9d93 Back to development 2021-06-01 15:28:13 +01:00
Tim-Philipp Müller
7484000f99 Release 1.19.1 2021-06-01 00:27:56 +01:00
Tim-Philipp Müller
3804f23e3f Release 1.19.1 2021-06-01 00:17:06 +01:00
Tim-Philipp Müller
4d52005fd8 Release 1.19.1 2021-06-01 00:17:03 +01:00
Tim-Philipp Müller
778464f138 Release 1.19.1 2021-06-01 00:17:01 +01:00
Tim-Philipp Müller
5cbd556541 Release 1.19.1 2021-06-01 00:16:57 +01:00
Tim-Philipp Müller
da581059b0 Release 1.19.1 2021-06-01 00:16:41 +01:00
Tim-Philipp Müller
5e67efbf27 Release 1.19.1 2021-06-01 00:16:32 +01:00
Tim-Philipp Müller
474c4bea13 Release 1.19.1 2021-06-01 00:16:12 +01:00
Tim-Philipp Müller
986d0737e4 Release 1.19.1 2021-06-01 00:16:06 +01:00
Tim-Philipp Müller
a3c3afbf56 Release 1.19.1 2021-06-01 00:15:09 +01:00
Tim-Philipp Müller
6b5cacd53a Release 1.19.1 2021-06-01 00:14:53 +01:00
Tim-Philipp Müller
6d9125f01c Release 1.19.1 2021-06-01 00:14:24 +01:00
Tim-Philipp Müller
9c34c21c52 Release 1.19.1 2021-06-01 00:12:09 +01:00
Tim-Philipp Müller
0dcb2aaadc Release 1.19.1 2021-06-01 00:11:46 +01:00
Tim-Philipp Müller
36a01da1f8 Release 1.19.1 2021-06-01 00:09:55 +01:00
Tim-Philipp Müller
6fa03dd151 Release 1.19.1 2021-06-01 00:07:55 +01:00
Daniel Almeida
89bc464360 v4l2codecs: gstv4l2codecsvp8dec: implement a render delay
The v4l2 backend support delayed output for performance reasons.
It is then possible to use render delays to queue multiple requests
simultaneously, thus increasing performance.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2150>
2021-05-31 15:48:24 -04:00
Daniel Almeida
82c0005793 codecs: gstvp8decoder: add support for render delay
Some decoding APIs support delayed output for performance reasons.
One example would be to request decoding for multiple frames and
then query for the oldest frame in the output queue.

This also increases throughput for transcoding and improves seek
performance when supported by the underlying backend.

Introduce support in the vp8 base class, so that backends that
support render delays can actually implement it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2150>
2021-05-31 15:48:24 -04:00
Nicolas Dufresne
cd31689ced glcontext: Ask for an alpha channel and fallback
While this was already possible through the GLContext machinary, this simply
request an alpha channel by default and fallback if this is not possible. This
obsolete some RPi Dispmanx hack, since this is near equivalent will allow see
through when playgin WebM Alpha or other transparent files.

Application are still free to pass their own EGLContext attribute, this is
specially for the case the application let GStreamer chose (e.g. gst-launch).

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1176>
2021-05-31 13:17:37 +00:00
Daniel Knobe
7641d64825 rawbaseparse: check destination format correctly
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1181>
2021-05-31 09:14:53 +02:00
Philippe Normand
064428cb34 webrtcbin: Stop transceivers update after first SDP error
When invalid SDP is supplied, _update_transceiver_from_sdp_media() sets the
GError, so it is invalid to continue any further SDP processing, we have to exit
early when the first error is raised.

Fixes #1595

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2254>
2021-05-30 00:16:10 +00:00
Tim-Philipp Müller
aa4448cdd6 rtpjpegpay: fix image corruption when compiled with MSVC on Windows
On Windows with MSVC, jpeg_header_size would end up 2 bytes larger
than it should be. This then leads to the first 2 bytes of the
actual jpeg image data to be dropped, because we think those
belong to the header, which results in an undecodable image when
reconstructed in the depayloader.

What happens is that when the compiler evaluates

  jpeg_header_size = mem.offset + read_u16_and_inc_offset_by_2(&mem);

it actually uses the mem.offset value after it has been increased
by the function call on the right hand size of the equation.

From section 6.5 of the C99 spec:

  3. The grouping of operators and operands is indicated by the syntax [74].
     Except as specified later (for the function-call (), &&, ||, ?:, and
     comma operators), the order of evaluation of subexpressions and the
     order in which side effects take place are both unspecified.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/889

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/999>
2021-05-29 14:31:34 +01:00
Seungha Yang
b1541a7470 d3d11: Suppress some warning logs
We uses gst_d3d11_device_new() for enumerating device which can
fail for some reason. Don't print warning log for the case.
And decoding capability check is the same case as well.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2286>
2021-05-29 10:30:28 +00:00
Roman Sivriver
0b551382c4 hlssink2: Initialize debug category to prevent an assert with fatal-warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2288>
2021-05-28 17:14:43 -04:00
Seungha Yang
fed06df5f6 d3d11compositor: Reuse converter on alpha update
... instead of creating converter object

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2276>
2021-05-28 21:44:12 +09:00