After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 796927 - compositor pipeline stalling pipeline at "Redistribute latency"
compositor pipeline stalling pipeline at "Redistribute latency"
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2018-08-07 13:42 UTC by Florent Thiéry
Modified: 2018-11-03 14:29 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Florent Thiéry 2018-08-07 13:42:59 UTC
I am facing an unclear stall of a pipeline involving a raw h264 file source, vaapi decoding and compositor. This affects 1.14.2 and master.

1) generate a sample

gst-launch-1.0 videotestsrc num-buffers=30 ! "video/x-raw, format=(string)I420, width=(int)1920, height=(int)1080, framerate=(fraction)30/1" ! vaapih264enc bitrate=16000 keyframe-period=30 rate-control=2 aud=true ! "video/x-h264,profile=baseline" ! filesink location=/tmp/sample.h264


2) launch this:

gst-launch-1.0 filesrc location=/tmp/sample.h264 ! h264parse ! vaapih264dec ! vaapipostproc ! queue ! vmix. compositor name=vmix ! "video/x-raw, format=(string)NV12, width=(int)3840, height=(int)2160, framerate=(fraction)30, colorimetry=(string)bt709" ! tee name=tvmix tvmix. ! queue name=qmain1080p ! videorate ! queue name=qscale1080p ! videoscale ! queue name=qcsp1080 ! videoconvert ! "video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1080, framerate=(fraction)30, pixel-aspect-ratio=(fraction)1/1" ! fakesink tvmix. ! queue ! fakesink sync=False
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'vaapipostproc0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0";
Got context from element 'vaapipostproc0': gst.vaapi.Display=context, gst.vaapi.Display=(GstVaapiDisplay)"\(GstVaapiDisplayGLX\)\ vaapidisplayglx0";
Redistribute latency...
Redistribute latency...
[STALLED]

I can work around it by:
- inserting identity or videorate right after vaapipostproc
- setting drop-only=true to videorate
- removing the trailing tvmix. ! queue ! fakesink sync=False
- replacing vaapih264dec and postproc by software components (like avdec_h264 or openh264dec)

The last items in the debug log are:
0:00:01.131839487  6613 0x5599f71268a0 DEBUG               GST_PADS gstpad.c:4072:gst_pad_query:<qmain1080p:sink> sent query 0x7f0f84006de0 (allocation), result 1
0:00:01.131852946  6613 0x5599f71268a0 DEBUG                    tee gsttee.c:637:gst_tee_query_allocation:<tvmix> Aggregating AllocationParams align=15 prefix=0 padding=0
0:00:01.131863008  6613 0x5599f71268a0 DEBUG                    tee gsttee.c:659:gst_tee_query_allocation:<tvmix> Aggregating allocation pool size=12441600 min_buffers=1
0:00:01.131878205  6613 0x5599f71268a0 DEBUG                    tee gsttee.c:595:gst_tee_query_allocation:<tvmix> Aggregating allocation from pad tvmix:src_1
0:00:01.131889278  6613 0x5599f71268a0 DEBUG                  query gstquery.c:678:gst_query_new_custom: creating new query 0x7f0f84006d40 allocation
0:00:01.131900974  6613 0x5599f71268a0 DEBUG               GST_PADS gstpad.c:4049:gst_pad_query:<queue4:sink> doing query 0x7f0f84006d40 (allocation)
[STALLED]
Comment 1 GStreamer system administrator 2018-11-03 14:29:15 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/763.