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

Lynne dev at lynne.ee
Wed Feb 19 20:17:10 EET 2025


On 19/02/2025 06:24, Romain Beauxis wrote:
> 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:
> * Metadata update is now using a factored out function from the vorbis
>    decoder which includes update the underlying AVStream metadata and
>    setting AVSTREAM_EVENT_FLAG_METADATA_UPDATED on it.
> * New vorbis comment metadata erase existing ones instead of appending
> * Test utility is updated to include the stream's metadata
> * A test for chained ogg/vorbis metadata is added.
> 
> Last version and discussion: https://ffmpeg.org/pipermail/ffmpeg-devel/2025-February/339887.html
> 
> Romain Beauxis (9):
>    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.
>    libavformat/oggparsevorbis.c: Don't append new metadata.
>    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          |  29 +++--
>   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, 298 insertions(+), 13 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

I fail to see any changes. No mention of 
AVSTREAM_EVENT_FLAG_METADATA_UPDATED in any of the diffs?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xA2FEA5F03F034464.asc
Type: application/pgp-keys
Size: 624 bytes
Desc: OpenPGP public key
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20250219/1effb4d7/attachment.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20250219/1effb4d7/attachment.sig>


More information about the ffmpeg-devel mailing list