[FFmpeg-devel] [PATCH v8 0/8] Properly decode ogg metadata in ogg/{vorbis, flac, opus} chained bitstreams
Romain Beauxis
romain.beauxis at gmail.com
Tue Mar 11 18:56:37 EET 2025
Le mar. 11 mars 2025 à 11:55, Romain Beauxis
<romain.beauxis at gmail.com> a écrit :
>
> This is a series of patches to allow proper decoding of ogg metadata in chained
> `ogg/vorbis, `ogg/flac` and `ogg/opus` streams.
>
> ## Changes since last version:
> * Moved textual reference output for tests to test/ref/fate
> * Updated test binary to only output stream metadata when
> AVSTREAM_EVENT_FLAG_METADATA_UPDATED flag is set.
Again, forgot to add that test samples are available here:
https://www.dropbox.com/scl/fo/xrtrna2rxr1j354hrtymq/AGwemlxHYecBLNmQ8Fsy--4?rlkey=lzilr4m9w4gfdqygoe172vvy8&dl=0
> Romain Beauxis (8):
> libavcodec/decode.c: intercept `AV_PKT_DATA_METADATA_UPDATE` packet
> extra data, attach them to the next decoded frame.
> 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 | 20 +++
> 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 | 179 +++++++++++++++++++++
> 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, 358 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)
>
More information about the ffmpeg-devel
mailing list