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 762924 - interlace: negotiation fails unexpectedly
interlace: negotiation fails unexpectedly
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: 1.8.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-03-01 13:52 UTC by Heinrich Fink
Modified: 2016-03-25 10:05 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
fix negotiation with fixed framerate downstream (5.30 KB, patch)
2016-03-17 13:50 UTC, Vincent Penquerc'h
committed Details | Review

Description Heinrich Fink 2016-03-01 13:52:43 UTC
The following launch-line fails with a negotiation error: 

gst-launch-1.0 videotestsrc is-live=TRUE ! capsfilter caps="video/x-raw,framerate=50/1,interlace-mode=progressive" ! interlace field-pattern=0 ! capsfilter caps="video/x-raw,framerate=25/1,interlace-mode=interleaved" ! fakesink

Looking at the debug log, you'll find the following conflict:

0:00:00.076040227  1195      0x109aa00 DEBUG               GST_CAPS gstpad.c:2192:gst_pad_link_check_compatible_unlocked:<interlace0:src> src caps video/x-raw, framerate=(fraction)50/1, interlace-mode=(string)interleaved, format=(string){ I420, YV12, YUY2, UYVY, AYUV, Y42B, Y444, NV12, NV21 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ]
0:00:00.076044830  1195      0x109aa00 DEBUG               GST_CAPS gstpad.c:2194:gst_pad_link_check_compatible_unlocked:<capsfilter1:sink> sink caps video/x-raw, framerate=(fraction)25/1, interlace-mode=(string)interleaved
0:00:00.076048207  1195      0x109aa00 DEBUG               GST_CAPS gstpad.c:2212:gst_pad_link_check_compatible_unlocked: caps are not compatible

It is strange that interlace reports a frame rate of 50/1 here, and the above launch-line shouldn't fail to negotiate.
Comment 1 Vincent Penquerc'h 2016-03-17 13:50:18 UTC
Created attachment 324183 [details] [review]
fix negotiation with fixed framerate downstream

Hard to fix, until I had the idea of looking at deinterlace, which had already solved it, so mostly a copy of the interlace method, inverted.
Comment 2 Sebastian Dröge (slomo) 2016-03-18 09:52:55 UTC
Comment on attachment 324183 [details] [review]
fix negotiation with fixed framerate downstream

Seems correct but the negotiation in interlace probably has to be cleaned up in general, similar like in deinterlace recently.
Comment 3 Sebastian Dröge (slomo) 2016-03-24 12:56:54 UTC
commit 5b786ce5b731cabd990c96051d217f7aa760a748
Author: Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Date:   Thu Mar 17 13:44:13 2016 +0000

    interlace: fix negotiation with fixed framerate downstream
    
    https://bugzilla.gnome.org/show_bug.cgi?id=762924