gstreamer/subprojects
Michael Tretter 0563a25494 v4l2videoenc: unconditionally activate the OUTPUT pool
If the v4l2videoenc receives an QUERY_ALLOCATION, it must not propose a
currently used pool, because it cannot be sure that the allocation query came
from exactly the same upstream element. The QUERY_ALLOCATION will not contain
the internal OUTPUT pool.

The upstream element (the basesrc) detects that the newly proposed pool differs
from the old pool. It deactivates the old pool and switches to the new pool.

If there was a format change, a new OUTPUT buffer pool will be allocated in
gst_v4l2_object_set_format_full() and the CAPTURE task will be stopped to switch
the format. If there hasn't been a format change,
gst_v4l2_object_set_format_full() will not be called. The old pool will be kept
and reused.

Without a format change, the processing task continues running.

This leads to the situation that the processing task is running, but the OUTPUT
buffer pool (the old pool) is deactivated. Therefore, the encoder is not able to
get buffers from the OUTPUT pool and encoding cannot continue.

This situation can be triggered by sending a RECONFIGURE event without a format
change.

Resolve this situation by ensuring that the OUTPUT buffer pool is always
activated when frames arrive at the encoder.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4235>
2023-10-11 19:35:54 +00:00
..
gst-devtools validate: Fix error on GstTest.copy() 2023-09-05 14:16:57 +00:00
gst-docs docs: Fix line numbers in tutorials 1 and 2 2023-10-05 21:54:17 +00:00
gst-editing-services ges: project: Start making MT safe where needed 2023-10-04 09:29:04 +01:00
gst-examples examples: webrtc: rust: i64 -> u64 for session and handle ids 2023-09-11 06:21:32 +00:00
gst-integration-testsuites interaudiosink: Ensure adapters don't store buffers with audio meta 2023-09-28 10:26:33 +00:00
gst-libav avcodecmap: Add MxPEG codec ID 2023-09-21 15:03:01 +00:00
gst-plugins-bad d3d11converter: Add support for HLSL precompile and bytecode caching 2023-10-11 18:40:46 +00:00
gst-plugins-base glcolorconvert: add A422/A444 to output switch statement 2023-10-10 22:47:59 +11:00
gst-plugins-good v4l2videoenc: unconditionally activate the OUTPUT pool 2023-10-11 19:35:54 +00:00
gst-plugins-ugly x264: Check that minimum version is met 2023-09-13 10:12:44 -04:00
gst-python python: Add a GstDiscoverer example 2023-08-21 17:16:27 +00:00
gst-rtsp-server rtsp-server: Only unblock live streams when complete 2023-10-02 16:22:33 +00:00
gstreamer tests: multiqueue: Add overrun test case 2023-10-11 13:17:46 +00:00
gstreamer-sharp gst-omx: Retire the whole package 2023-07-16 19:10:03 +00:00
gstreamer-vaapi va: Lock wayland display dmabuf formats against concurrent access 2023-09-27 14:37:06 +00:00
macos-bison-binary macos-bison: Update to 3.8.2 and add an ARM64 build 2023-08-31 07:50:43 +00:00
packagefiles meson: Backport glib patch to allow pcre2 fallback 2023-08-01 06:29:39 +00:00
win-flex-bison-binaries
win-nasm
win-pkgconfig win: add new win-pkgconfig subproject 2023-07-21 06:37:45 +00:00
avtp.wrap
bindinator.wrap
cairo.wrap cairo.wrap: Bump to latest to fix MSYS2 build failure 2023-07-12 21:17:25 +00:00
dav1d.wrap
dssim.wrap
dv.wrap subprojects: add libdv wrap 2021-01-14 19:16:01 +00:00
expat.wrap
fdk-aac.wrap
FFmpeg.wrap
fontconfig.wrap meson: Provide fontconfig dep from the subproject 2023-07-20 11:00:35 +00:00
freetype2.wrap
fribidi.wrap fribidi.wrap: Move to tarball, bump, provide dep 2023-07-12 21:17:25 +00:00
gl-headers.wrap
glib-networking.wrap
glib.wrap meson: Backport glib patch to allow pcre2 fallback 2023-08-01 06:29:39 +00:00
gobject-introspection.wrap gi: add support for introspection with subprojects 2023-07-21 06:37:45 +00:00
graphene.wrap meson: Use tarball for graphene instead of git 2023-07-20 11:00:35 +00:00
gst-plugins-rs.wrap
gtk-sharp.wrap
gtk.wrap gtk: Update subproject from 4.9.2 to 4.10.3 2023-07-19 07:38:36 +00:00
harfbuzz.wrap harfbuzz.wrap: Bump to latest to fix MSYS2 build failure 2023-07-12 21:17:25 +00:00
json-glib.wrap
lame.wrap
libdrm.wrap
libffi.wrap libffi: fix wrap file to provide the libffi dependency 2023-07-21 06:37:45 +00:00
libgudev.wrap
libjpeg-turbo.wrap
liblc3.wrap lc3: fix pkg-config file lookup 2023-08-08 22:12:29 +00:00
libmicrodns.wrap
libnice.wrap libnice: disable gst tests in static mode 2023-05-31 15:17:11 +00:00
libopenjp2.wrap
libpng.wrap
libpsl.wrap meson: Ensure that soup plugin is built on Windows 2023-07-15 05:06:35 +00:00
libsoup.wrap
libsrtp2.wrap
libva.wrap subprojects: libva: Pin to 2.19.0.pre1 (1c58941) 2023-06-15 21:14:29 +00:00
libwpe.wrap
libxml2.wrap libxml2: update to 2.10.3-4 2023-06-22 08:38:22 +00:00
ogg.wrap
openh264.wrap
opus.wrap
orc.wrap orc: update subproject wrap to 0.4.34 2023-05-30 01:21:20 +00:00
pango.wrap pango.wrap: Bump to 1.50.14, remove merged patch 2023-07-12 21:17:25 +00:00
pcre2.wrap meson: Force pcre2 to be provided by a subproject on macOS 2023-07-20 11:00:35 +00:00
pixman.wrap meson: Fix pixman build on ARM64 macOS 2023-07-20 11:00:35 +00:00
proxy-libintl.wrap
pycairo.wrap
pygobject.wrap
sqlite3.wrap
vorbis.wrap
vpx.wrap subprojects: Add libvpx wrap 2023-08-08 18:08:24 +00:00
webrtc-audio-processing.wrap meson: Update webrtc-audio-processing wrap to 1.3 2023-09-05 11:27:17 -04:00
wpebackend-fdo.wrap
x264.wrap
zlib.wrap