From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 753EF4D273 for ; Wed, 19 Feb 2025 05:25:06 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7E9D968BF5B; Wed, 19 Feb 2025 07:25:01 +0200 (EET) Received: from mail-yw1-f173.google.com (mail-yw1-f173.google.com [209.85.128.173]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A6E0B68AD2E for ; Wed, 19 Feb 2025 07:24:54 +0200 (EET) Received: by mail-yw1-f173.google.com with SMTP id 00721157ae682-6fb7d64908fso25540447b3.3 for ; Tue, 18 Feb 2025 21:24:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739942692; x=1740547492; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=1q+J6mP40iBAHCrtaBV1a7wApeDDctARffEZ7jET1co=; b=Zc/u+wSK4HawxNTFnFOCAF//CBiLe6orIdJJUvVjaHV4qXHq27HO8sdgXqYm7tEEp/ hkKVV4KmWfDC2nz3kUxXB354TnhP09VM3b8RSHCFBqsSdQW+LscmoYkhmkpSJQXgxssX XNiCAfUHqnNBK2uVQih1fHL33LV7VlSInpPTEmoL8tk6fq5xNiFQU7x9n9siZk+BWlFI COXPSQTbaCrSJ63/9M0h1g5u0Gyd5jWnZQYIEgBlTSHzKSekjhLLkQsPXAMCfPPkqeQM JNFh2vT1N8CyGBpTgjFwEEfJPw7X3dNXQecKp1Gy4/qMUQPucziNEqxDeX7aPIbRhRfj Xobw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739942692; x=1740547492; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=1q+J6mP40iBAHCrtaBV1a7wApeDDctARffEZ7jET1co=; b=LBaYtHkKGSJf5+qIW+VgacvCRNx+1THcyFuJh8gVfxO0Z2t6bbuj7LU8FQcssHe/hi sp0GHru5nRfYQoB3q46i50O8Nv2BFuzmQJ7W4PHNtJDkMkbK25AWM8nrmw904KpIm6SV fR2nYlaPyObsDfCRAZDAop0OptH5fNrdWnJqbXieS2eQ4ffXjCrEz1yMTdJc+ZYpOONv +aIkNwL602SNupfXb61o1ettOgSPlRPMuWnx0n1r5AtiBIu31l5SZrCeLEKksnYPRfD4 t1O867U8qVKXopAt48hTqKPr+abe5u5mt7oR6A8jZvlc9tbjgDykcQi2JodoZg0BjK0f onQg== X-Gm-Message-State: AOJu0YxpxZ/JbSjxujnYdXagsKJD5RU/B+pexxJZtFBAV8EQLosloXU5 rAsA/Mnt/eKUOluebVbUJVx5rMJhJpQMTH14r7lNPXEIwRfSbtkVcYu7Jg== X-Gm-Gg: ASbGncvsr1uuAi3DTKPFqz/bzxLAqM2ztyhABAmdnHpXpOSA1OPZwZmm/DMqPGzZ5bs IYaP4/LTONGbcgDUPQMoW96VU5+HREP+BhBn8zCoX43QRXP1aHIKxymehaC1tL5Mt1FJymmcvn4 4tLY8pZmWSxp2WLUx7ogDALXZEUyXbY8pAF41wUzyn0PtlX2yEgT6mfDzdBxoLyMb5ZhRLt6dAV 1Ep98lztZtTom16avbDz5vCXJtIRoavgoz1AyWsqvY38tf9Qc9dhYdfI/Qo7QxQ31Bj5yYVSksL VCTPMy7gqtj1Tcq4EO3rHsDZCU7XRSTuPMsL9EEiDSBm0JuhFhnT X-Google-Smtp-Source: AGHT+IHCV26Il/Wq2pSN2WahZrov0Ssvf8fGedLP/ed+ZMl3QUWTMz5Mkz+M8GG/tblr/8IVLnJQ1A== X-Received: by 2002:a05:690c:6281:b0:6fb:3e32:1a01 with SMTP id 00721157ae682-6fba57a5e5fmr21805347b3.37.1739942691852; Tue, 18 Feb 2025 21:24:51 -0800 (PST) Received: from localhost.localdomain ([2607:fb91:fe2:71a6:2854:c007:54e:fca]) by smtp.gmail.com with ESMTPSA id 00721157ae682-6fb5a15f082sm20783537b3.54.2025.02.18.21.24.49 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 18 Feb 2025 21:24:50 -0800 (PST) From: Romain Beauxis To: ffmpeg-devel@ffmpeg.org Date: Tue, 18 Feb 2025 23:24:36 -0600 Message-Id: <20250219052445.86383-1-romain.beauxis@gmail.com> X-Mailer: git-send-email 2.39.5 (Apple Git-154) MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v6 0/9] Properly decode ogg metadata in ogg/{vorbis, flac, opus} chained bitstreams X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Romain Beauxis Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: 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 -- 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-request@ffmpeg.org with subject "unsubscribe".