aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNiklas Haas <git@haasn.dev>2024-07-16 13:19:51 +0200
committerNiklas Haas <git@haasn.dev>2024-07-28 12:20:07 +0200
commitce8166a19c368486c9df665b43adceedf42fb897 (patch)
tree6da355a8e80c1e58d4900d9e15dfdb6caedf3019
parentb3a9fab9da08ac0bdb8476c73f369a90141d7a2c (diff)
downloadffmpeg-ce8166a19c368486c9df665b43adceedf42fb897.tar.gz
avformat/mpegts: implement dv_md_compression
-rw-r--r--libavformat/mpegts.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index c66a1ea6ed..6b02187eb1 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -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: