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 747790 - videoscale method=bilinear2 and UYVY/YUY2 distortion
videoscale method=bilinear2 and UYVY/YUY2 distortion
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Mac OS
: Normal normal
: 1.5.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-04-13 17:43 UTC by Florian Zwoch
Modified: 2015-04-21 11:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
error illustration (69.57 KB, image/png)
2015-04-21 09:02 UTC, Florian Zwoch
Details

Description Florian Zwoch 2015-04-13 17:43:15 UTC
Videoscale element with new method=bilinear2 is buggy with UYVY/YUY2 (maybe other 4:2:2(?) modes as well?).

Sample pipeline as follows:

gst-launch-1.0 videotestsrc ! video/x-raw,width=1920,height=1200,format=UYVY ! videoscale method=bilinear2 ! video/x-raw,width=960,height=600 ! videoconvert ! autovideosink

On the right hand side there are a few pixel columns with distorted colors - most likely uninitialized memory.

I could not easily track down where the problem originates from :/ else I would have tried to fix it myself. I really like the new "bilinear2" moden, it offers a nice performance / quality ratio.
Comment 1 Florian Zwoch 2015-04-21 09:02:31 UTC
Created attachment 302056 [details]
error illustration

Additional information. The same happens for method=lanczos as well. Also I _think_ that it also makes no difference if compiled with or without liborc. Maybe that helps to narrow down the code location.
Comment 2 Wim Taymans 2015-04-21 11:17:24 UTC
commit 8f82ee70f92d791c54a529bfbea0a6fa5b20b14d
Author: Wim Taymans <wtaymans@redhat.com>
Date:   Tue Apr 21 13:16:29 2015 +0200

    video-scaler: scale enough pixels in YUY2 (and friends) mode
    
    Fixes https://bugzilla.gnome.org/show_bug.cgi?id=747790
Comment 3 Wim Taymans 2015-04-21 11:33:47 UTC
This actually fixes it completely:

commit 0588c9a53f187304afb20559634eb82cda7f696a
Author: Wim Taymans <wtaymans@redhat.com>
Date:   Tue Apr 21 13:31:44 2015 +0200

    video-scaler: fix YUY2 scaling some more
    
    Take into account the different steps between Y and UV when calculating
    the line size for vertical resampling or else we might not resample
    enough pixels and leave bad lines.
    
    Fixes https://bugzilla.gnome.org/show_bug.cgi?id=747790