[FFmpeg-devel,v2,0/2] Support for stream dispositions in MP4

Message ID 20210830111407.5655-1-jeebjp@gmail.com
Headers show


Jan Ekström Aug. 30, 2021, 11:14 a.m. UTC
First patch implements the CMAF specified way of flagging what in FFmpeg
are are called stream dispositions. Other identifiers such as HTML media track
kinds are allowed, but if there is a DASH identifier for something, it should
be utilized in stead.

Second patch is a compatibility patch for one of the vendors that supports this
feature. If this is considered a too bad of a hack, we can drop it from being
upstreamed, but at least I wanted to bring it up :) . The compatibility mode
is not the default, so it should also not proliferate such behavior.

Compared to first version:
* Missed unused variables causing additional warnings were removed.

Best regards,

Jan Ekström (2):
  avformat/{isom,mov,movenc}: add support for CMAF DASH roles
  avformat/{isom,movenc}: add kind box compatibility mode for Unified

 libavformat/isom.c                            | 32 ++++++++
 libavformat/isom.h                            | 18 +++++
 libavformat/mov.c                             | 67 +++++++++++++++
 libavformat/movenc.c                          | 57 +++++++++++++
 libavformat/movenc.h                          |  2 +
 tests/fate/mov.mak                            | 17 ++++
 .../ref/fate/mov-mp4-disposition-mpegts-remux | 81 +++++++++++++++++++
 ...p4-disposition-unified-origin-mpegts-remux | 81 +++++++++++++++++++
 8 files changed, 355 insertions(+)
 create mode 100644 tests/ref/fate/mov-mp4-disposition-mpegts-remux
 create mode 100644 tests/ref/fate/mov-mp4-disposition-unified-origin-mpegts-remux