AcademySoftwareFoundation / AcademySoftwareFoundation/EncodingGuidelines

Ffmpeg colour bugs

Open
#10 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Dockerfile
Stars
55
Forks
8
PR merge metrics
No merged PRs in 30d

Description

So.. Pretty nice guide you have here, but I think you slightly misunderstood *the situation*.
It is true that "all unspecified things the same" they stick to bt601, but the problem isn't really that there are assumptions about unknown still image formats (or better yet \*videos\*, because from png to jpg and webp I'm really skeptical any of them wouldn't have pretty rigorously documented default properties).
Everything is kind of a disaster because despite all of this, the program is then completely silent about such decisions (including within the final metadata) - and it is ***then*** the video players that have to try to guess what the color matrix is for yuv-rgb conversion.
And this is only one of the many shortcomings.

Long story short we have:
* files aren't [tagged](https://trac.ffmpeg.org/ticket/9167) with their colorspace information (and I'd like to remember the SD=601 and HD=709 convention otherwise)
* unless using [zscale](https://trac.ffmpeg.org/ticket/9693), forget about extracting videos to jpeg (unsure about the other way around?)
* output pngs have [wrong](https://trac.ffmpeg.org/ticket/10000) gamma (in one of the tags at least? depending on the software you may be good)
* colorspace and scale are also [busted](https://trac.ffmpeg.org/ticket/9772) in their own ways with linear gamma conversions

There are too what you could call "slight rounding errors" (the last three links [here](https://github.com/n00mkrad/flowframes/issues/157#issuecomment-1171774927)), but for once they seem pretty minor.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the encoding guide and the linked FFmpeg tickets 9167, 9693, 10000, and 9772, plus the linked Flowframes discussion. The issue covers several color-tagging, extraction, gamma, and colorspace concerns but names no repository files or tests; a contribution would need a decided scope and an agreed definition of done.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.