GNOME Bugzilla – Bug 750404
Problem with restriction-caps
Last modified: 2015-07-09 17:13:23 UTC
So if I replace <track caps="video/x-raw" track-type="4" track-id="0" properties="properties, async-handling=(boolean)false, message-forward=(boolean)false, caps=(string)video/x-raw, restriction-caps=(string)"video/x-raw\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ framerate\=\(fraction\)25/1";" metadatas="metadatas;" /> with <track caps="video/x-raw" track-type="4" track-id="0" properties="properties, async-handling=(boolean)false, message-forward=(boolean)false, caps=(string)video/x-raw, restriction-caps=(string)"video/x-raw, width=(int)720, height=(int)576, framerate=(fraction)25/1";" metadatas="metadatas;" /> it works again.
I noted few recent changes to formatter. Maybe something is changed? What option is correct? I saw first one here: http://wiki.pitivi.org/wiki/XGES_Examples
No, it seems that second version has incorrect syntax and I should use first one. It works because restriction-caps can not be correctly parsed.
So problem seems to appear if restriction-caps were successfully parsed. I have warning: not negotiated and then error: Internal data flow error. Here's log & pipeline.
Created attachment 304639 [details] Negotiation error when restriction caps were successfully parsed
Created attachment 304640 [details] Neg
Can you provide us with a simple project with the media files so we can reproduce/debug that please?
Actually I think the problem is in my GES installation, it can not be reproduced outside one of my servers. Any XGES with parseable restriction-caps in video track causes negotiation error.
Any XGES with single video asset and with errors in restriction-caps or NULL restriction-caps works.
The problem can be in video convert element. If there is no conversion (restriction caps is absent or they aren't gonna change anything), all video assets has same dimensions / frame rate - all works good. But if something requires conversion (restriction caps is different from what we have in original assets or there are few videos of different format) - I have negotiation error.
Created attachment 305177 [details] XGES and SVG of working and failing timelines The only difference is that failing one causes conversion by specifying restriction caps
In this cases adding restrictions caps causes NleSource's caps filter to be set up according to those restrictions. GESPipeline fails to connect Type finding element to qt demurer, strange.
My problem seems to be related to videorate, not to video convert: 0:08:43.538550226 31693 0x7f68d838a370 WARN default gstvideopool.c:193:video_buffer_pool_set_config:<videobufferpool10> no caps in config Fontconfig warning: ignoring UTF-8: not a valid region tag 0:08:46.602057512 31693 0x1b18cf0 FIXME basesink gstbasesink.c:3063:gst_base_sink_default_event:<urisink> stream-start event without group-id. Consider implementing group-id handling in the upstream elements 0:08:46.637891721 31693 0x7f68d838a370 WARN basetransform gstbasetransform.c:1431:gst_base_transform_setcaps:<track-element-videorate> transform could not transform video/x-raw, format=(string)I420, width=(int)1440, height=(int)808, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)404/405, chroma-site=(string)mpeg2, colorimetry=(string)bt709, framerate=(fraction)24000/1001 in anything we support 0:08:46.637954276 31693 0x7f68d838a370 WARN basetransform gstbasetransform.c:2116:default_submit_input_buffer:<track-element-videorate> warning: not negotiated 0:08:46.637961769 31693 0x7f68d838a370 WARN basetransform gstbasetransform.c:2116:default_submit_input_buffer:<track-element-videorate> warning: not negotiated 0:08:46.638052044 31693 0x7f68d838a370 WARN queue gstqueue.c:1516:gst_queue_loop:<queue5> error: Internal data flow error. 0:08:46.638059606 31693 0x7f68d838a370 WARN queue gstqueue.c:1516:gst_queue_loop:<queue5> error: streaming task paused, reason not-negotiated (-4) 0:08:46.655536649 31693 0x7f68d838a370 WARN basetransform gstbasetransform.c:1431:gst_base_transform_setcaps:<track-element-capsfilter> transform could not transform video/x-raw, format=(string)I420, width=(int)1440, height=(int)808, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)404/405, chroma-site=(string)mpeg2, colorimetry=(string)bt709, framerate=(fraction)25/1 in anything we support 0:08:46.655589750 31693 0x7f68d838a370 WARN basetransform gstbasetransform.c:2116:default_submit_input_buffer:<track-element-capsfilter> warning: not negotiated 0:08:46.655596485 31693 0x7f68d838a370 WARN basetransform gstbasetransform.c:2116:default_submit_input_buffer:<track-element-capsfilter> warning: not negotiated
The not-negotiated issue is fixed now (update gst-plugins-bad).
I confirm. It's gone.