Details
-
Bug
-
Resolution: Fixed
-
P3: Somewhat important
-
6.7.2
-
-
425b4c89f (dev), c4995794a (6.8), 057413c7f (6.7), a64576463 (tqtc/lts-6.5)
-
Multimedia wk 31-32, Multimedia wk 35-38
Description
QMultimedia UYVY rendering is in lower image quality than other formats, for example YUV422P.
Steps to reproduce the issue:
- Run the attached example application. ( qt_bug_report_uyvy_cpp.zip )
- The application opens a raw UYVY file ( raw_uyvy.bin ) and convert it in two ways :
- Convert directly from UYVY to RGBA ( rgb_from_uyvy.png )
- Copy the packed UYVY pixel data into planar YUV422P QVideoFrame and then convert it to RGB ( rgb_from_yuv422.png ).
- rgb_from_uyvy.png will show blurry and blocky image compared to rgb_from_yuv422.png.
The original application is using QtMultimedia to display a FullHD video, with getting UYVY frames from video feed from an external camera.
Since the image quality was lower than expected, the original reporter investigated it, and reported this issue with the comments below:
Could this be caused by the shader that does the UYVY rendering?
https://github.com/qt/qtmultimedia/blob/6.8/src/multimedia/shaders/uyvy.frag
If the texture lookup uses linear interpolation, wouldn't this shader interpolate between alternating Y components in the texture?
This might also be related to the following commit:
https://github.com/qt/qtmultimedia/commit/d58b6b908ea130e9422b08b5b3b460b48da7d337
Attachments
For Gerrit Dashboard: QTBUG-128246 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
584847,4 | Fix blocky UYVY and YUYV rendering with Qt Multimedia | dev | qt/qtmultimedia | Status: MERGED | +2 | 0 |
585431,2 | Fix blocky UYVY and YUYV rendering with Qt Multimedia | 6.8 | qt/qtmultimedia | Status: MERGED | +2 | 0 |
585494,2 | Fix blocky UYVY and YUYV rendering with Qt Multimedia | 6.7 | qt/qtmultimedia | Status: MERGED | +2 | 0 |
585514,2 | Fix blocky UYVY and YUYV rendering with Qt Multimedia | tqtc/lts-6.5 | qt/tqtc-qtmultimedia | Status: MERGED | +2 | 0 |