[FFmpeg-devel] [PATCH v7 0/8] Properly decode ogg metadata in ogg/{vorbis, flac, opus} chained bitstreams

Romain Beauxis romain.beauxis at gmail.com
Wed Feb 26 00:01:13 EET 2025


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:
* Cleaned up patch series
* Reverted changes in how multiple fields are parsed in vorbis comments.

Full discussion: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/6

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 | 175 ++++++++++++++++++++++++++
 tests/fate/ogg-flac.mak               |  11 ++
 tests/fate/ogg-opus.mak               |  11 ++
 tests/fate/ogg-vorbis.mak             |  11 ++
 11 files changed, 297 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

-- 
2.39.5 (Apple Git-154)



More information about the ffmpeg-devel mailing list