This is a series of patches to allow proper decoding of ogg metadata in chained `ogg/vorbis, `ogg/flac` and `ogg/opus` streams.
FATE samples for the new tests can be found here: https://www.dropbox.com/scl/fo/xrtrna2rxr1j354hrtymq/AGwemlxHYecBLNmQ8Fsy--4?rlkey=lzilr4m9w4gfdqygoe172vvy8&dl=0 ## Changes since last version: * Fixed fate test run in cross-compiled environments. * Switched to av_tree to store pending metadata as pts->metadata mappings in case packets arrive in non-linear order or metadata updates are split accross multiple packets for a single frame. Romain Beauxis (8): libavcodec/decode.c: intercept `AV_PKT_DATA_METADATA_UPDATE` packet extra data, attach them to the next decoded frame with the same PTS. tests: Add stream dump test API util. tests: Add chained ogg/vorbis stream dump test. libavformat/oggdec.h, libavformat/oggparsevorbis.c: Factor out vorbis metadata update mechanism. libavformat/oggparseflac.c: Parse ogg/flac comments in new ogg packets, add them to ogg stream new_metadata. tests: Add chained ogg/flac stream dump test. libavformat/oggparseopus.c: Parse comments from secondary chained streams header packet. tests: Add chained ogg/opus stream dump test. libavcodec/decode.c | 131 +++++++++++++++ libavformat/oggdec.h | 14 ++ libavformat/oggparseflac.c | 21 +++ libavformat/oggparseopus.c | 13 +- libavformat/oggparsevorbis.c | 25 ++- tests/Makefile | 4 + tests/api/Makefile | 2 +- tests/api/api-dump-stream-meta-test.c | 175 +++++++++++++++++++++ tests/fate/ogg-flac.mak | 11 ++ tests/fate/ogg-opus.mak | 11 ++ tests/fate/ogg-vorbis.mak | 11 ++ tests/ref/fate/ogg-flac-chained-meta.txt | 13 ++ tests/ref/fate/ogg-opus-chained-meta.txt | 27 ++++ tests/ref/fate/ogg-vorbis-chained-meta.txt | 17 ++ 14 files changed, 465 insertions(+), 10 deletions(-) create mode 100644 tests/api/api-dump-stream-meta-test.c create mode 100644 tests/fate/ogg-flac.mak create mode 100644 tests/fate/ogg-opus.mak create mode 100644 tests/fate/ogg-vorbis.mak create mode 100644 tests/ref/fate/ogg-flac-chained-meta.txt create mode 100644 tests/ref/fate/ogg-opus-chained-meta.txt create mode 100644 tests/ref/fate/ogg-vorbis-chained-meta.txt -- 2.39.5 (Apple Git-154) _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".