@@ -2213,10 +2213,12 @@ int ff_parse_mpeg2_descriptor(AVFormatContext *fc, AVStream *st, int stream_type
if (desc_end - *pp >= 1) { // 8 bits
buf = get8(pp, desc_end);
dovi->dv_bl_signal_compatibility_id = (buf >> 4) & 0x0f; // 4 bits
+ dovi->dv_md_compression = (buf >> 2) & 0x03; // 2 bits
} else {
// 0 stands for None
// Dolby Vision V1.2.93 profiles and levels
dovi->dv_bl_signal_compatibility_id = 0;
+ dovi->dv_md_compression = AV_DOVI_COMPRESSION_NONE;
}
if (!av_packet_side_data_add(&st->codecpar->coded_side_data,
@@ -2228,14 +2230,16 @@ int ff_parse_mpeg2_descriptor(AVFormatContext *fc, AVStream *st, int stream_type
}
av_log(fc, AV_LOG_TRACE, "DOVI, version: %d.%d, profile: %d, level: %d, "
- "rpu flag: %d, el flag: %d, bl flag: %d, dependency_pid: %d, compatibility id: %d\n",
+ "rpu flag: %d, el flag: %d, bl flag: %d, dependency_pid: %d, "
+ "compatibility id: %d, compression: %d\n",
dovi->dv_version_major, dovi->dv_version_minor,
dovi->dv_profile, dovi->dv_level,
dovi->rpu_present_flag,
dovi->el_present_flag,
dovi->bl_present_flag,
dependency_pid,
- dovi->dv_bl_signal_compatibility_id);
+ dovi->dv_bl_signal_compatibility_id,
+ dovi->dv_md_compression);
}
break;
default:
From: Niklas Haas <git@haasn.dev> --- libavformat/mpegts.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)