Yeongjin Jeong
8ebd854454
x264enc: Don't assume the order of nal unit
...
Just for extra safety, let's check the index of the nal unit
through the enum value of the nal type provided by x264.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3014 >
2022-09-11 23:34:46 +01:00
Xavier Claessens
a9ae28d10b
doc: Clarify that gst_buffer_pool_acquire_buffer() blocks by default
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2955 >
2022-09-11 19:29:19 +00:00
Thibault Saunier
64010bb1f8
testsrcbin: Add a way to specify caps for the output of the sources
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
19e33a6c5e
testsrcbin: Plug some leaks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
7f34b5610f
testsrcbin: Add an 'expose-sources-async' property
...
Which allows simluating usual source which require decoding etc in decodebin for example
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
04f036edc4
validate:scenario: Some minor fixes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
879ae5ba02
validate: Add a 'check-current-pad-caps' check action type
...
Allowing to check that a specific pad has some specific caps set
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
15e76aa7d6
validate: Add a 'check' field to waits to allow running check actions after it get executed
...
Adding the notion of 'check' action types
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Filip Hanes
29aec57ef6
pngenc: lower minimum width and height to 1x1
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3003 >
2022-09-09 09:59:56 +00:00
Seungha Yang
11e4eb5490
video-format: Workaround MSVC build error
...
../gst-libs/gst/video/video-format.c(6779): error C2219: syntax error:
type qualifier must be after '*'
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2719 >
2022-09-08 21:01:37 +00:00
Edward Hervey
855dabb578
dashdemux2: Remove bogus limitation checks for duration fields
...
Just like for the seconds field, there are no limitations on the hours and
minutes fields. The specification for xml schema duration fields doesn't forbid
specifying durations with only (huge) minutes or hours values.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2951 >
2022-09-07 12:48:28 +00:00
Matthew Waters
1e269a3c6d
subparse: fix crash when parsing invalid timestamps in mpl2
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49245
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2989 >
2022-09-07 07:20:53 +00:00
Víctor Manuel Jáquez Leal
1c69fe3fc8
vajpegdec: Enhance explanation comment.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2948 >
2022-09-07 05:57:40 +00:00
Víctor Manuel Jáquez Leal
230e1e6bb4
va: caps: Use G_STMT_START / END
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2948 >
2022-09-07 05:57:40 +00:00
Víctor Manuel Jáquez Leal
44fe871534
vajpegdec: Check if driver has internal color conversion.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2948 >
2022-09-07 05:57:40 +00:00
Mathieu Duponchelle
b454ec972f
webrtcbin: fix picking available payload types
...
When picking an available payload type, we need to pick one that is
available across all media.
The previous code, when multiple media were present, looked at the first one,
noticed it had pt 96 as the media pt, then simply looked at the next media,
noticed it didn't, and decided 96 was available.
Instead, check if the pt is used by any of the media, if it is, decide
it is not available and go to the next pt. I'm fairly sure that was the
original intent.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2984 >
2022-09-07 03:22:34 +00:00
Stéphane Cerveau
0c96e838e8
docs: update to mono repo locations
...
Some links/repos in the documentation were still pointing to old
repositories, change to mono repository
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2982 >
2022-09-06 14:20:49 +02:00
Jordan Petridis
a7f9c97454
fluidsynth: correctly version guard methods
...
We bumped the minimum version to 2.1 but the api we used
wasn't introduced till version 2.2 of fluidsynth
Follow-up to gstreamer/gstreamer!2718
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2718
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2835 >
2022-09-05 17:48:27 +00:00
Jan Schmidt
43209d0ee6
dashdemux2: Preserve current representation on live manifest updates
...
When updating a manifest during live playback, preserve the current
representation for each stream.
During update_fragment_info, if the current representation changed
because it couldn't be matched, trigger a caps change and new
header download.
This reverts commit e0e1db212f
and reapplies "dashdemux: Fix issue when manifest update sets slow start
without passing necessary header & caps changes downstream" with
changes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2920 >
2022-09-05 16:07:00 +00:00
Jan Schmidt
4e25c519de
dashdemux: Preserve current representation on live manifest updates
...
When updating a manifest during live playback, preserve the current
representation for each stream.
During update_fragment_info, if the current representation changed
because it couldn't be matched, trigger a caps change and new
header download.
This reverts commit e0e1db212f
and reapplies "dashdemux: Fix issue when manifest update sets slow start
without passing necessary header & caps changes downstream" with
changes.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/507
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1729
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2920 >
2022-09-05 16:07:00 +00:00
Nirbheek Chauhan
a5ef7e2781
examples: Disable bitcode support in iOS examples
...
For explanation, see:
https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/879
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2978 >
2022-09-03 18:04:34 +05:30
Sebastian Dröge
cc454f0fc3
rtpjitterbuffer: Add test for crash caused by removing timers twice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2973 >
2022-09-03 09:26:24 +00:00
Sebastian Dröge
648b8f3362
rtpjitterbuffer: Make it more explicit that update_rtx_timers() takes ownership of the passed in timer
...
It is not valid anymore afterwards and must not be used, otherwise an
already freed pointer might be used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2973 >
2022-09-03 09:26:24 +00:00
Sebastian Dröge
e66f5e2423
rtpjitterbuffer: Don't shadow variable
...
While this didn't cause any problems in this context it is simply
confusing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2973 >
2022-09-03 09:26:24 +00:00
Sebastian Dröge
0b19c457ca
rtpjitterbuffer: Change RTX timer availability checks to assertions
...
It's impossible to end up in the corresponding code without a timer for
RTX packets because otherwise it would be an unsolicited RTX packet and
we would've already returned early.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2973 >
2022-09-03 09:26:24 +00:00
Sebastian Dröge
2ca849499e
rtpjitterbuffer: Only unschedule timers for late packets if they're not RTX packets and only once
...
Timers for RTX packets are dealt with later in update_rtx_timers(), and
timers for non-RTX packets would potentially also be unscheduled a
second time from there so avoid that.
Also don't shadow the timer variable from the outer scope but instead
make use of it directly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2973 >
2022-09-03 09:26:24 +00:00
Tim-Philipp Müller
034faeae31
subprojects: update openh264 wrap to v2.3.0
...
.. and use tarball instead of git checkout.
Also bump ci image tags so the images cache the new tarball.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2968 >
2022-09-02 18:41:32 +01:00
Bruce Liang
657cc3e6d6
gst-rtsp-server: Fix pushing backlog to client
...
Check back pressure of a stream transport before popping buffer from its backlog.
If the stream transport is not experiencing back pressure, the buffer can be popped from backlog and pushed to client.
Fixes:#1298
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2936 >
2022-09-02 16:04:06 +00:00
Xavier Claessens
ef6f157205
meson: Subprjects can define both "plugins" and "gst_plugins"
...
If "gst_plugins" is defined we can ignore the value of legacy "plugins"
variable, subprojects could be using it for something else, which is the
case of gst-plugin-rs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2976 >
2022-09-02 15:01:45 +00:00
Sebastian Dröge
57a6e48ed1
rtsp-server: stream: Don't loop forever if binding to the multicast address fails
...
The address/port is pre-defined by the caller of the function, so
retrying is only going to loop forever.
Ideally the multicast address should be checked after allocating but
this doesn't happen currently, so it's better to error out cleanly then
to loop forever trying the same address.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2975 >
2022-09-02 14:28:26 +00:00
Florian Zwoch
a1b60be22b
va: Fix log message when registering H264 encoder.
...
The log message would report an error for the H264 decoder when
registering failed, but we tried to register the H264 encoder instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2974 >
2022-09-02 10:29:11 +00:00
Olivier Crête
4b3b234f72
webrtcbin: Allow locked mlines with no caps, as the last ones
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2439 >
2022-09-02 11:52:58 +02:00
Olivier Crête
0930c467d4
webrtcbin: Reject creating an offer if a locked mline has no caps
...
This avoids getting in a bunch of corner cases. We'd have to insert
a "rejected" line from the start as a place-holder to get around this,
but the rest of the code just becomes more complicated, so just
disallow it for now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2439 >
2022-09-02 11:52:58 +02:00
Olivier Crête
3503599e0a
webrtcbin: Store pending mid to make create-offer idempotent
...
If the mid is not stored in the transceiver, but it is stored in
last_offer, then a further create-offer call will just ignore that
transceiver.
Also include unit test for ensure it doesn't regress.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2439 >
2022-09-02 11:52:58 +02:00
Patricia Muscalu
3c9e4f4886
rtph265: keep delta unit flag
...
Without this patch all buffers that pass the payloader
are marked as non-delta-unit buffers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2969 >
2022-09-02 08:56:13 +00:00
Mengkejiergeli Ba
da9479a034
msdkvpp: Add va memory when fixating src caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
bb79853d20
msdkvpp : Use va pool at linux path and system pool for windows
...
We use msdkvpp's own pool to allocate buffers instead of external frame
allocator mfxFrameAllocator.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
4c6b719445
msdkvpp: Import buffer to msdk_surface
...
If the buffer is not msdk_buffer, we can try to directly import the
attached memory (i.e. va mem and dmabuf mem) by applying the common
uitl function: import_to_msdk_function ().
Here add a flag "from_qdata" in GstMsdkSurface to handle the cropping case,
we should avoid updating the crop values when msdk_surface is from the
memory's qdata, because the crop info from this surface is the already
updated one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
45819899c3
msdkvpp: Add va caps at sink and src pad
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
966a2c3754
msdkenc: Apply common util func to import mem as msdk_surface
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
2854af85fd
msdk: Add help functions to get mfxFrameSurface1 from GstBuffer and wrap it as GstMsdkSurface
...
Note that the memory abstraction for system memory is for windows path.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
23f5bdcee7
msdkenc: Use va pool on linux and system pool for windows
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
956dc40fb8
msdkenc: Directly import dmabuf memory as mfx surface
...
When input buffer is of dmabuf memory but not a msdk buffer (i.e., the
allocator is not msdk_allocator), then we can try to get fd of this mem,
create the corresponding va surface and wrap it as mfx surface.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
b2e18f7f88
msdkenc: Directly import va memory as mfx surface
...
If input buffer is of va memory, we can directly obtain va surface from
the buffer and wrap it as mfx surface.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Mengkejiergeli Ba
a8c1cec051
msdk: Use va libs API to get VA surface from buffer
...
Direct apply gst_va_buffer_get_surface to get VASurface from a buffer,
so remove corresponding functions which are not used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2498 >
2022-09-02 11:06:29 +08:00
Thibault Saunier
6a4425e46a
meson: Call pkgconfig.generate in the loop where we declare plugins dependencies
...
Removing some copy pasted code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +00:00
Thibault Saunier
bc9c1e3956
meson: Namespace the plugins_doc_dep/libraries variables
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +00:00
Thibault Saunier
c971a6d71f
cuda: meson: Fix generating GstCuda gir file against gstreamer-full
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +00:00
Thibault Saunier
b5e90fe579
meson: Rename plugins list and make them "dependency" objects
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +00:00
Raul Tambre
e1d3612321
rtpjitterbuffer: remove lost timer for out of order packets
...
When receiving old packets remove the running lost timer if present.
This fixes incorrect reporting of a lost packet even if it arrived in time.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2922 >
2022-09-01 09:01:31 +00:00