The stream demuxer or the video decoder often knows the video output's color space. (Of course, only if appropriately encoded)
To make it more accurate to handle the decoded video frame's "color space", there are two methods:
1. If there is such MetaData embedded in the decoded video frame, the video post-processor / renderer can handle this by itself.
2. If it is not embedded in the decoded video frame, this relies on the player program to grab video stream's color space info from stream demuxer or video decoder, and instruct the video post-processor/renderer to do the right conversion. Of course the video processor needs to provide an API for the player to adjust the setting dynamically.
|