OpenVisualCloud / SVT-HEVC

SVT HEVC encoder. Scalable Video Technology (SVT) is a software-based video coding technology that is highly optimized for Intel® Xeon® processors. Using the open source SVT-HEVC encoder, it is possible to spread video encoding processing across multiple Intel® Xeon® processors to achieve a real advantage of processing efficiency.
Other
508 stars 169 forks source link

Is there any way to preserve the color matrix/primary/transfer properties during encoding? #148

Open jsunintel opened 5 years ago

jsunintel commented 5 years ago

@hassount

When trying to upstream the plugin to ffmpeg community, got a feature request. Please review and inform us if there is a plan to implement it.

From Vittorio Giovara vittorio.giovara@gmail.com:

When you encode an HEVC stream you should be able to signal how the color properties of the video buffers should be rendered. This is usually conveyed with three parameters, the matrix coefficients, the color primaries and the transfer characteristics. Without such information, the data stored in the video may be interpreted differently and often incorrectly by modern video players, causing image degradation, wrong rendering and off colors.

For HEVC they are usually expressed in the stream itself, under the VUI, and it is kinda expected that modern encoder allow to set them to any of the applicable values. In ffmpeg-land, they are represented by the colorspace, color_primaries and color_transfer options in AVCodecContext and carried over through the whole video processing.

Selur commented 4 years ago

would be nice if one could not only specify these with ffmpeg but also when using the commandline interface. (so not a ffmpeg issue on it's own)