gstreamer/subprojects
Chao Guo dfa8661334 bin: Fix bin won't post async done message to parent while nothing pending in state changing
When we run Cheese 41.1 on our imx platform, Cheese preview freeze
at first frame.

During pipeline state changing from NULL to PLAYING, if there are
both elements that state change asynchronously and state change
with no preroll in the bin, the element inside may send ASYNC_DONE
message to it, while the bin's pending state is VOID_PENDING.

In this case, the bin will not post ASYNC_DONE message to parent
bin, which makes parent bin thinks that there are still elements
in it that haven't completed state changing, causing the pipeline
freeze in an intermediate state.

This commit modifies the bin_handle_async_done() function. When the
bin, whose pending state is VOIDING_PENDING, receives the ASYNC_DONE
message, it will also post this message to its parent bin.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3490>
2023-03-03 12:22:08 +00:00
..
gst-devtools validate: Protect init function with a recursive mutex 2023-03-02 02:50:45 +00:00
gst-docs docs: iOS tutorials: update for pending ivorbisdec plugin removal 2023-02-27 17:24:16 +00:00
gst-editing-services meson: Cleanup and avoid installing python bindings if python is not found 2023-02-16 19:43:12 +00:00
gst-examples examples: iOS: GstPlay: update for pending ivorbisdec plugin removal 2023-02-27 17:40:43 +00:00
gst-integration-testsuites tests: Move srtp test known issue def to the 'check' testuite 2023-02-16 02:39:05 +00:00
gst-libav ffmpeg: avauddec/avviddec: Free packet side data after usage 2023-02-28 12:01:57 +00:00
gst-omx gst-omx: drop use of GSlice allocator 2023-02-03 17:48:10 +00:00
gst-plugins-bad cccombiner: fix s334-1a in place conversion 2023-03-02 22:52:39 +00:00
gst-plugins-base alsasink: Fix stall when going from PLAYING to NULL (stucked at PAUSED) with uac1 gadget 2023-03-02 03:41:25 +00:00
gst-plugins-good qtdemux: Add MSE-style flush 2023-03-02 17:54:41 +00:00
gst-plugins-ugly mpeg2dec: drop use of GSlice 2023-01-24 15:25:06 +00:00
gst-python python: Use arch-specific install dir 2023-03-01 12:40:07 +00:00
gst-rtsp-server rtsp-server: test-launch: added the argument mount/m to specify the mountpoint 2023-02-12 09:21:19 +01:00
gstreamer bin: Fix bin won't post async done message to parent while nothing pending in state changing 2023-03-03 12:22:08 +00:00
gstreamer-sharp Back to development 2023-01-23 23:04:53 +00:00
gstreamer-vaapi vaapi: Fix some code defects 2023-02-27 11:38:18 +00:00
macos-bison-binary macos-bison-binary: Remove warning when running on arm64 2022-12-16 23:58:07 +00:00
packagefiles/pango-1.50.12 meson: Add a patch that fixes pangocairo usage in gst-plugins-rs 2022-12-17 07:37:03 +05:30
win-flex-bison-binaries meson: Use run_command check: true for windows binary subprojects 2022-10-19 04:05:05 +00:00
win-nasm meson: Use run_command check: true for windows binary subprojects 2022-10-19 04:05:05 +00:00
avtp.wrap
bindinator.wrap
cairo.wrap subprojects: cairo: bump to 1.17.6 2022-09-17 22:41:40 +00:00
dav1d.wrap meson: Switch dav1d wrap to a tarball 2023-02-24 15:28:29 +02:00
dssim.wrap
dv.wrap
expat.wrap meson: Update some more wraps 2022-12-10 15:13:09 +00:00
fdk-aac.wrap
FFmpeg.wrap
fontconfig.wrap subprojects: fontconfig: bump to 2.14.0 2022-09-17 22:41:40 +00:00
freetype2.wrap Update all wraps from WrapDB 2022-09-23 11:08:06 -04:00
fribidi.wrap subprojects: fribidi: bump to 1.0.12 2022-09-17 22:41:40 +00:00
gl-headers.wrap
glib-networking.wrap subprojects: update glib-networking to 2.74.0 and switch to file wrap 2022-11-18 00:51:48 +00:00
glib.wrap subprojects: update glib to 2.74.1 2022-11-18 00:50:56 +00:00
graphene.wrap
gst-plugins-rs.wrap gst-plugins-rs: Track main branch again 2023-01-24 19:08:50 +00:00
gtk-sharp.wrap
gtk.wrap meson: Use gtk tarball for the subproject wrap 2023-02-01 06:29:11 +00:00
harfbuzz.wrap subprojects: harfbuzz: bump to 5.2.0 2022-09-17 22:41:40 +00:00
json-glib.wrap Update all wraps from WrapDB 2022-09-23 11:08:06 -04:00
lame.wrap meson: Update lame to -7 which contains the def file fix 2022-12-19 01:43:08 +05:30
libdrm.wrap Update all wraps from WrapDB 2022-09-23 11:08:06 -04:00
libffi.wrap subprojects: libffi: pin to meson-3.2.9999.4 tag 2022-12-31 13:49:17 +00:00
libjpeg-turbo.wrap Update all wraps from WrapDB 2022-09-23 11:08:06 -04:00
libmicrodns.wrap subprojects: libmicrodns: bump to 0.2.0 + meson fixes 2022-09-17 22:41:40 +00:00
libnice.wrap webrtc: Change requirement to libnice 0.1.20 2023-01-07 16:03:23 +00:00
libopenjp2.wrap meson: Update some more wraps 2022-12-10 15:13:09 +00:00
libpng.wrap
libpsl.wrap
libsoup.wrap subprojects: switch libsoup to a file wrap 2022-11-18 00:56:25 +00:00
libsrtp2.wrap subprojects: Update libsrtp2 wrap to v2.5.0 2023-02-01 10:34:35 +00:00
libwpe.wrap
libxml2.wrap libxml2.wrap: update to latest version 2023-01-25 11:38:52 +00:00
ogg.wrap Update all wraps from WrapDB 2022-09-23 11:08:06 -04:00
openh264.wrap Update all wraps from WrapDB 2022-09-23 11:08:06 -04:00
opus.wrap
orc.wrap subprojects: orc: bump to 0.4.33 2022-10-31 23:50:28 +00:00
pango.wrap meson: Add a patch that fixes pangocairo usage in gst-plugins-rs 2022-12-17 07:37:03 +05:30
pixman.wrap meson: Update some more wraps 2022-12-10 15:13:09 +00:00
proxy-libintl.wrap Update proxy-libintl wrap to 0.4 2022-04-22 15:36:40 +00:00
pycairo.wrap
pygobject.wrap meson: Allow sysdeps to be forced as fallback subprojects 2023-02-06 09:26:02 +00:00
sqlite3.wrap meson: Update some more wraps 2022-12-10 15:13:09 +00:00
vorbis.wrap meson: Update some wraps, remove unused wraps 2022-07-16 06:16:17 +00:00
webrtc-audio-processing.wrap
wpebackend-fdo.wrap
x264.wrap
zlib.wrap meson: Update some more wraps 2022-12-10 15:13:09 +00:00