mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-27 05:00:37 +00:00
avformat/matroskadec: export Content Light Level metadata
Based on a patch by Hendrik Leppkes Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
parent
d61f93bf04
commit
095147ae06
@ -1869,6 +1869,21 @@ static int mkv_parse_video_color(AVStream *st, const MatroskaTrack *track) {
|
||||
avcodec_chroma_pos_to_enum((color->chroma_siting_horz - 1) << 7,
|
||||
(color->chroma_siting_vert - 1) << 7);
|
||||
}
|
||||
if (color->max_cll && color->max_fall) {
|
||||
size_t size = 0;
|
||||
int ret;
|
||||
AVContentLightMetadata *metadata = av_content_light_metadata_alloc(&size);
|
||||
if (!metadata)
|
||||
return AVERROR(ENOMEM);
|
||||
ret = av_stream_add_side_data(st, AV_PKT_DATA_CONTENT_LIGHT_LEVEL,
|
||||
(uint8_t *)metadata, size);
|
||||
if (ret < 0) {
|
||||
av_freep(&metadata);
|
||||
return ret;
|
||||
}
|
||||
metadata->MaxCLL = color->max_cll;
|
||||
metadata->MaxFALL = color->max_fall;
|
||||
}
|
||||
|
||||
if (has_mastering_primaries || has_mastering_luminance) {
|
||||
// Use similar rationals as other standards.
|
||||
|
Loading…
Reference in New Issue
Block a user