1
0
mirror of https://github.com/mpv-player/mpv synced 2025-02-19 06:17:00 +00:00
mpv/test/ref
wm4 27e5416c12 video: add pixel component location metadata
I thought I'd probably want something like this, so the hardcoded stuff
in repack.c can be removed eventually. Of course this has no purpose at
all, and will not have any. (For now, this provides only metadata, and
nothing uses it, apart from the "test" that dumps it as text.)

This adds full support for AV_PIX_FMT_UYYVYY411 (probably out of spite,
because the format is 100% useless). Support for some mpv-only formats
is missing, ironically.

The code goes through _lengths_ to try to make sense out of the FFmpeg
AVPixFmtDescriptor data. Which is even more amazing that the new
metadata basically mirrors pixdesc, and just adds to it. Considering
code complexity and speed issues (it takes time to crunch through all
this shit all the time), and especially the fact that pixdesc is very
_incomplete_, it would probably better to have our own table to all
formats. But then we'd not scramble every time FFmpeg adds a new format,
which would be annoying. On the other hand, by using pixdesc, we get the
excitement to see whether this code will work, or break everything in
catastrophic ways.

The data structure still sucks a lot. Maybe I'll redo it again. The text
dump is weirdly differently formatted than the C struct - because I'm
not happy with the representation. Maybe I'll redo it all over again.

In summary: this commit does nothing.
2020-05-18 01:54:59 +02:00
..
draw_bmp.txt draw_bmp: add integer blending for 8 bit formats 2020-05-12 23:10:14 +02:00
img_formats.txt video: add pixel component location metadata 2020-05-18 01:54:59 +02:00
repack_sws.log
repack_zimg.log zimg: add support for big endian input and output 2020-04-13 15:56:27 +02:00
repack.txt test: explicitly test repacking for all packed RGB variants 2020-05-18 01:54:59 +02:00
zimg_formats.txt video: add yuv float formats 2020-05-09 18:02:57 +02:00