mbox series

[FFmpeg-devel,00/20] Matroska muxer patches

Message ID 20200405155928.9323-1-andreas.rheinhardt@gmail.com
Headers show
Series Matroska muxer patches
Related show

Message

Andreas Rheinhardt April 5, 2020, 3:59 p.m. UTC
This patchset is sort-of a revival of the part of a patchset I sent
earlier [1], but which couldn't be applied fully because the way the
webm_chunk muxer bypassed the API [2]. Now that this has been fixed [3],
I have taken the opportunity to resend this patchset in an updated form.

It does not yet completely eliminate the limit on the number of tracks
as requested in [4], but no longer counting attachments among the number
of tracks is beneficial even if said limit will be removed.

- Andreas

[1]: https://ffmpeg.org/pipermail/ffmpeg-devel/2019-November/252578.html
[2]: https://ffmpeg.org/pipermail/ffmpeg-devel/2019-December/254783.html
[3]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-March/257850.html
[4]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-April/259734.html

Andreas Rheinhardt (20):
  avformat/matroskaenc: Ensure that ChapterUID are != 0
  avformat/matroskaenc: Don't waste bytes writing durations
  avformat/matroskaenc: Use random TrackUID
  avformat/matroskaenc: Reuse random seed
  avformat/matroskaenc: Remove allocations for Attachments
  avformat/matroskaenc: Make output more deterministic
  avformat/matroskaenc: Ignore AttachedFiles for track limit
  avformat/matroskaenc: Automatically use right TrackNumber in Cues
  avformat/matroskaenc: Increase max supported tracks
  avformat/matroskaenc: Change signature of mkv_write_track()
  avformat/matroskaenc: Add check for using explicit TrackNumber
  avformat/matroskaenc: Improve Cues in case of no video
  avformat/matroskaenc: Don't use size of inexistent Cluster
  avformat/matroskaenc: Warn that WebM doesn't support Attachments
  avformat/matroskaenc: Only write Tracks if there is a track
  avformat/matroskaenc: Don't waste bytes on length fields
  avformat/matroskaenc: Add const where appropriate
  avformat/matroskaenc: Don't needlessly copy AVCodecParameters
  avformat/matroskaenc: Redo handling of FlagDefault
  avformat/matroskaenc: Cosmetics

 doc/muxers.texi                               |  19 +
 libavformat/matroskaenc.c                     | 595 ++++++++++--------
 tests/fate/matroska.mak                       |   2 +-
 tests/fate/wavpack.mak                        |   4 +-
 tests/ref/fate/aac-autobsf-adtstoasc          |   4 +-
 tests/ref/fate/binsub-mksenc                  |   2 +-
 tests/ref/fate/matroska-flac-extradata-update |   4 +-
 tests/ref/fate/rgb24-mkv                      |   4 +-
 tests/ref/lavf-fate/av1.mkv                   |   2 +-
 tests/ref/lavf/mka                            |   4 +-
 tests/ref/lavf/mkv                            |   4 +-
 tests/ref/lavf/mkv_attachment                 |   4 +-
 tests/ref/seek/lavf-mkv                       |  44 +-
 13 files changed, 384 insertions(+), 308 deletions(-)

Comments

Andreas Rheinhardt April 13, 2020, 4:19 a.m. UTC | #1
Andreas Rheinhardt:
> This patchset is sort-of a revival of the part of a patchset I sent
> earlier [1], but which couldn't be applied fully because the way the
> webm_chunk muxer bypassed the API [2]. Now that this has been fixed [3],
> I have taken the opportunity to resend this patchset in an updated form.
> 
> It does not yet completely eliminate the limit on the number of tracks
> as requested in [4], but no longer counting attachments among the number
> of tracks is beneficial even if said limit will be removed.
> 
> - Andreas
> 
> [1]: https://ffmpeg.org/pipermail/ffmpeg-devel/2019-November/252578.html
> [2]: https://ffmpeg.org/pipermail/ffmpeg-devel/2019-December/254783.html
> [3]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-March/257850.html
> [4]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-April/259734.html
> 
> Andreas Rheinhardt (20):
>   avformat/matroskaenc: Ensure that ChapterUID are != 0
>   avformat/matroskaenc: Don't waste bytes writing durations
>   avformat/matroskaenc: Use random TrackUID
>   avformat/matroskaenc: Reuse random seed
>   avformat/matroskaenc: Remove allocations for Attachments
>   avformat/matroskaenc: Make output more deterministic
>   avformat/matroskaenc: Ignore AttachedFiles for track limit
>   avformat/matroskaenc: Automatically use right TrackNumber in Cues
>   avformat/matroskaenc: Increase max supported tracks
>   avformat/matroskaenc: Change signature of mkv_write_track()
>   avformat/matroskaenc: Add check for using explicit TrackNumber
>   avformat/matroskaenc: Improve Cues in case of no video
>   avformat/matroskaenc: Don't use size of inexistent Cluster
>   avformat/matroskaenc: Warn that WebM doesn't support Attachments
>   avformat/matroskaenc: Only write Tracks if there is a track
>   avformat/matroskaenc: Don't waste bytes on length fields
>   avformat/matroskaenc: Add const where appropriate
>   avformat/matroskaenc: Don't needlessly copy AVCodecParameters
>   avformat/matroskaenc: Redo handling of FlagDefault
>   avformat/matroskaenc: Cosmetics
> 
>  doc/muxers.texi                               |  19 +
>  libavformat/matroskaenc.c                     | 595 ++++++++++--------
>  tests/fate/matroska.mak                       |   2 +-
>  tests/fate/wavpack.mak                        |   4 +-
>  tests/ref/fate/aac-autobsf-adtstoasc          |   4 +-
>  tests/ref/fate/binsub-mksenc                  |   2 +-
>  tests/ref/fate/matroska-flac-extradata-update |   4 +-
>  tests/ref/fate/rgb24-mkv                      |   4 +-
>  tests/ref/lavf-fate/av1.mkv                   |   2 +-
>  tests/ref/lavf/mka                            |   4 +-
>  tests/ref/lavf/mkv                            |   4 +-
>  tests/ref/lavf/mkv_attachment                 |   4 +-
>  tests/ref/seek/lavf-mkv                       |  44 +-
>  13 files changed, 384 insertions(+), 308 deletions(-)
> 
Will apply the initial half of the patchset (i.e. 1-10 with the
exception of 9).

- Andreas