Skip to content
onoffpt edited this page Jan 25, 2022 · 2 revisions

Format

YUView can detect the resolution from the filename in various ways. Firstly, YUView is looking for info in the form: 'width'x'height''framerate''bitDepth':

Something_2160x1440_60_8_somethingMore.yuv
Something_2160x1440_60_8b_somethingMore.yuv
Something_2160x1440_60_somethingMore.yuv
Something_2160x1440_somethingMore.yuv

YUView also detect the following format indications like:

1080p50, 720p24
_cif, _qcif, _4cif, UHD, HD, 1080p, 720p
24fps, 50fps, 24FPS, 50FPS
24Hz, 50Hz, 24HZ, 50HZ
10bit, 10BIT, 10-bit, 10-BIT

YUV format

YUView will also try to guess the YUV format from the file name and the extension. Firstly, the FFMpeg style of format definitions are tested. First the YUV order, then the subsampling, then a 'p' if the format is planar, then the number of bits (if > 8), finally 'le' or 'be' if bits is > 8. E.g: yuv420p, yuv420p10le, yuv444p16be.

Packed formats are also detected by the YUV order, followed by the subsampling format and the bit depth and endianess (if greater 8). E.g: yuv42010be, VYUY420 , YVYU42016le.

If all of this fails, YUView will try to find a subsampling string (444, 420, 400...) in the filename and check (for various bit depths) if it matches the file size.

Format from correlation

If all guessing from the file name fails, YUView will test a set of common candidates by correlation (MSE) of the first two frames. The candidate with the lowest MSE which is also higher than a threshold, wins. The tested formats are:

Resolution: (176, 144), QSize(352, 240), QSize(352, 288), (480, 480), (480, 576), (704, 480), (720, 480), (704, 576), (720, 576), (1024, 768), (1280, 720), (1280, 960), (1920, 1072), (1920, 1080)
Bit depth: 8, 10, 16
YUV subsampling: 444, 422, 420, 440, 410, 411, 400