Bug 97261 - vaapi u/v wrong order since vl/util: add copy func for yv12image to nv12surface
Summary: vaapi u/v wrong order since vl/util: add copy func for yv12image to nv12surface
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-08-09 13:51 UTC by Andy Furniss
Modified: 2016-09-13 20:04 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
small test vid (567.69 KB, application/x-matroska)
2016-08-09 13:51 UTC, Andy Furniss
Details

Description Andy Furniss 2016-08-09 13:51:39 UTC
Created attachment 125638 [details]
small test vid

As noted st the time, though Boyuan said he couldn't reproduce, for me

vl/util: add copy func for yv12image to nv12surface

gets u and v for both yv12 and I420 inputs reversed whether encoding or playing.

Both gstreamer and mpv affected.

Testing playback using attached small test vid that instantly shows the issue either

VAAPI_DISABLE_INTERLACE=true mpv --vo=vaapi uvtest.mkv

or

gst-launch-1.0 filesrc location=uvtest.mkv ! matroskademux ! avdec_h264 ! vaapisink

Of course any test that outputs nv12 works OK as it avoids the conversion.

It seems that the new util function expects input to be yuv, but it actually gets yvu.

I sent a patch to the list for this -

https://lists.freedesktop.org/archives/mesa-dev/2016-July/124695.html

Filing bug/test to see if anyone else reproduce.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.