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 750404 - Problem with restriction-caps
Problem with restriction-caps
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-editing-services
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-06-04 15:44 UTC by Kyrylo V. Polezhaiev
Modified: 2015-07-09 17:13 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Negotiation error when restriction caps were successfully parsed (231.23 KB, image/svg+xml)
2015-06-05 11:35 UTC, Kyrylo V. Polezhaiev
Details
Neg (6.91 KB, text/plain)
2015-06-05 11:35 UTC, Kyrylo V. Polezhaiev
Details
XGES and SVG of working and failing timelines (56.92 KB, application/zip)
2015-06-12 20:13 UTC, Kyrylo V. Polezhaiev
Details

Description Kyrylo V. Polezhaiev 2015-06-04 15:44:08 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)&quot;video/x-raw\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ framerate\=\(fraction\)25/1&quot;;" 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)&quot;video/x-raw, width=(int)720, height=(int)576, framerate=(fraction)25/1&quot;;" metadatas="metadatas;" />

it works again.
Comment 1 Kyrylo V. Polezhaiev 2015-06-05 09:55:19 UTC
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
Comment 2 Kyrylo V. Polezhaiev 2015-06-05 11:30:31 UTC
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.
Comment 3 Kyrylo V. Polezhaiev 2015-06-05 11:34:41 UTC
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.
Comment 4 Kyrylo V. Polezhaiev 2015-06-05 11:35:39 UTC
Created attachment 304639 [details]
Negotiation error when restriction caps were successfully parsed
Comment 5 Kyrylo V. Polezhaiev 2015-06-05 11:35:58 UTC
Created attachment 304640 [details]
Neg
Comment 6 Thibault Saunier 2015-06-05 21:08:16 UTC
Can you provide us with a simple project with the media files so we can reproduce/debug that please?
Comment 7 Kyrylo V. Polezhaiev 2015-06-12 17:53:10 UTC
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.
Comment 8 Kyrylo V. Polezhaiev 2015-06-12 17:54:57 UTC
Any XGES with single video asset and with errors in restriction-caps or NULL restriction-caps works.
Comment 9 Kyrylo V. Polezhaiev 2015-06-12 20:12:41 UTC
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.
Comment 10 Kyrylo V. Polezhaiev 2015-06-12 20:13:54 UTC
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
Comment 11 Kyrylo V. Polezhaiev 2015-06-12 20:25:17 UTC
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.
Comment 12 Kyrylo V. Polezhaiev 2015-06-12 20:39:15 UTC
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
Comment 13 Tim-Philipp Müller 2015-07-09 14:34:45 UTC
The not-negotiated issue is fixed now (update gst-plugins-bad).
Comment 14 Kyrylo V. Polezhaiev 2015-07-09 17:13:23 UTC
I confirm. It's gone.