Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH 1/2] avformat/iamf_writer: update extradata from packet side data
@ 2024-02-29 17:41 James Almer
  2024-02-29 17:41 ` [FFmpeg-devel] [PATCH 2/2] avformat/iamfenc: ensure updated extradata is written James Almer
  0 siblings, 1 reply; 5+ messages in thread
From: James Almer @ 2024-02-29 17:41 UTC (permalink / raw)
  To: ffmpeg-devel

Some encoders, like flac, propagate updated extradata at the end of encoding
as packet side data. Use it to update the relevant codec_config.

Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavformat/iamf.h                      | 13 +++++++++
 libavformat/iamf_parse.c                | 12 +--------
 libavformat/iamf_writer.c               | 35 ++++++++++++++++++++++---
 tests/ref/fate/mov-mp4-iamf-5_1_4       | 14 +++++-----
 tests/ref/fate/mov-mp4-iamf-7_1_4       | 16 +++++------
 tests/ref/fate/mov-mp4-iamf-ambisonic_1 | 10 +++----
 tests/ref/fate/mov-mp4-iamf-stereo      |  4 +--
 7 files changed, 68 insertions(+), 36 deletions(-)

diff --git a/libavformat/iamf.h b/libavformat/iamf.h
index d8715b7333..d662f6e76b 100644
--- a/libavformat/iamf.h
+++ b/libavformat/iamf.h
@@ -165,6 +165,19 @@ struct IAMFSoundSystemMap {
 extern const AVChannelLayout ff_iamf_scalable_ch_layouts[10];
 extern const struct IAMFSoundSystemMap ff_iamf_sound_system_map[13];
 
+static inline IAMFCodecConfig *ff_iamf_get_codec_config(const IAMFContext *c,
+                                                        unsigned int codec_config_id)
+{
+    IAMFCodecConfig *codec_config = NULL;
+
+    for (int i = 0; i < c->nb_codec_configs; i++) {
+        if (c->codec_configs[i]->codec_config_id == codec_config_id)
+            codec_config = c->codec_configs[i];
+    }
+
+    return codec_config;
+}
+
 static inline IAMFParamDefinition *ff_iamf_get_param_definition(const IAMFContext *iamf,
                                                                 unsigned int parameter_id)
 {
diff --git a/libavformat/iamf_parse.c b/libavformat/iamf_parse.c
index 50b53aa5e9..cb49cf0a57 100644
--- a/libavformat/iamf_parse.c
+++ b/libavformat/iamf_parse.c
@@ -580,16 +580,6 @@ static int param_parse(void *s, IAMFContext *c, AVIOContext *pb,
     return 0;
 }
 
-static IAMFCodecConfig *get_codec_config(IAMFContext *c, unsigned int codec_config_id)
-{
-    for (int i = 0; i < c->nb_codec_configs; i++) {
-        if (c->codec_configs[i]->codec_config_id == codec_config_id)
-            return c->codec_configs[i];
-    }
-
-    return NULL;
-}
-
 static int audio_element_obu(void *s, IAMFContext *c, AVIOContext *pb, int len)
 {
     const IAMFCodecConfig *codec_config;
@@ -627,7 +617,7 @@ static int audio_element_obu(void *s, IAMFContext *c, AVIOContext *pb, int len)
     audio_element_type = avio_r8(pbc) >> 5;
     codec_config_id = ffio_read_leb(pbc);
 
-    codec_config = get_codec_config(c, codec_config_id);
+    codec_config = ff_iamf_get_codec_config(c, codec_config_id);
     if (!codec_config) {
         av_log(s, AV_LOG_ERROR, "Non existant codec config id %d referenced in an audio element\n", codec_config_id);
         ret = AVERROR_INVALIDDATA;
diff --git a/libavformat/iamf_writer.c b/libavformat/iamf_writer.c
index 9ed20fc562..dd82ba5b82 100644
--- a/libavformat/iamf_writer.c
+++ b/libavformat/iamf_writer.c
@@ -1013,6 +1013,21 @@ int ff_iamf_write_parameter_blocks(const IAMFContext *iamf, AVIOContext *pb,
     return 0;
 }
 
+static IAMFAudioElement *get_audio_element(const IAMFContext *c,
+                                           unsigned int audio_substream_id)
+{
+    for (int i = 0; i < c->nb_audio_elements; i++) {
+        IAMFAudioElement *audio_element = c->audio_elements[i];
+        for (int j = 0; j < audio_element->nb_substreams; j++) {
+            IAMFSubStream *substream = &audio_element->substreams[j];
+            if (substream->audio_substream_id == audio_substream_id)
+                return audio_element;
+        }
+    }
+
+    return NULL;
+}
+
 int ff_iamf_write_audio_frame(const IAMFContext *iamf, AVIOContext *pb,
                               unsigned audio_substream_id, AVPacket *pkt)
 {
@@ -1027,15 +1042,29 @@ int ff_iamf_write_audio_frame(const IAMFContext *iamf, AVIOContext *pb,
     int ret;
 
     if (!pkt->size) {
+        IAMFAudioElement *audio_element;
+        IAMFCodecConfig *codec_config;
+        size_t new_extradata_size;
         uint8_t *new_extradata = av_packet_get_side_data(pkt,
                                                          AV_PKT_DATA_NEW_EXTRADATA,
-                                                         NULL);
+                                                         &new_extradata_size);
 
         if (!new_extradata)
             return AVERROR_INVALIDDATA;
+        audio_element = get_audio_element(iamf, audio_substream_id);
+        if (!audio_element)
+            return AVERROR(EINVAL);
+        codec_config = ff_iamf_get_codec_config(iamf, audio_element->codec_config_id);
+        if (!codec_config)
+            return AVERROR(EINVAL);
 
-        // TODO: update FLAC Streaminfo on seekable output
-        return 0;
+        av_free(codec_config->extradata);
+        codec_config->extradata = av_memdup(new_extradata, new_extradata_size);
+        if (!codec_config->extradata)
+            return AVERROR(ENOMEM);
+        codec_config->extradata_size = new_extradata_size;
+
+        return update_extradata(codec_config);
     }
 
     side_data = av_packet_get_side_data(pkt, AV_PKT_DATA_SKIP_SAMPLES,
diff --git a/tests/ref/fate/mov-mp4-iamf-5_1_4 b/tests/ref/fate/mov-mp4-iamf-5_1_4
index 2f29a83cf4..1b6db58ee2 100644
--- a/tests/ref/fate/mov-mp4-iamf-5_1_4
+++ b/tests/ref/fate/mov-mp4-iamf-5_1_4
@@ -1,11 +1,11 @@
-65421714a3fd372d2babc9c6400ff00b *tests/data/fate/mov-mp4-iamf-5_1_4.mp4
+5585ed23481b6f28437b3707a1ed632d *tests/data/fate/mov-mp4-iamf-5_1_4.mp4
 86340 tests/data/fate/mov-mp4-iamf-5_1_4.mp4
-#extradata 0:       34, 0x40a802c6
-#extradata 1:       34, 0x40a802c6
-#extradata 2:       34, 0x407c02c4
-#extradata 3:       34, 0x407c02c4
-#extradata 4:       34, 0x40a802c6
-#extradata 5:       34, 0x40a802c6
+#extradata 0:       34, 0xafa70d5e
+#extradata 1:       34, 0xafa70d5e
+#extradata 2:       34, 0xaf7b0d5c
+#extradata 3:       34, 0xaf7b0d5c
+#extradata 4:       34, 0xafa70d5e
+#extradata 5:       34, 0xafa70d5e
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
diff --git a/tests/ref/fate/mov-mp4-iamf-7_1_4 b/tests/ref/fate/mov-mp4-iamf-7_1_4
index 891803470a..1b88d362bd 100644
--- a/tests/ref/fate/mov-mp4-iamf-7_1_4
+++ b/tests/ref/fate/mov-mp4-iamf-7_1_4
@@ -1,12 +1,12 @@
-9a0cd5cc7ca09da36f08c6ae2aa44a73 *tests/data/fate/mov-mp4-iamf-7_1_4.mp4
+690d2b7a15b5489c59a9148fcd7975be *tests/data/fate/mov-mp4-iamf-7_1_4.mp4
 100588 tests/data/fate/mov-mp4-iamf-7_1_4.mp4
-#extradata 0:       34, 0x40a802c6
-#extradata 1:       34, 0x40a802c6
-#extradata 2:       34, 0x407c02c4
-#extradata 3:       34, 0x407c02c4
-#extradata 4:       34, 0x40a802c6
-#extradata 5:       34, 0x40a802c6
-#extradata 6:       34, 0x40a802c6
+#extradata 0:       34, 0xafa70d5e
+#extradata 1:       34, 0xafa70d5e
+#extradata 2:       34, 0xaf7b0d5c
+#extradata 3:       34, 0xaf7b0d5c
+#extradata 4:       34, 0xafa70d5e
+#extradata 5:       34, 0xafa70d5e
+#extradata 6:       34, 0xafa70d5e
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
diff --git a/tests/ref/fate/mov-mp4-iamf-ambisonic_1 b/tests/ref/fate/mov-mp4-iamf-ambisonic_1
index c4af88ce10..30c8edb14c 100644
--- a/tests/ref/fate/mov-mp4-iamf-ambisonic_1
+++ b/tests/ref/fate/mov-mp4-iamf-ambisonic_1
@@ -1,9 +1,9 @@
-fa740a4e2b84453c4e84908190094e28 *tests/data/fate/mov-mp4-iamf-ambisonic_1.mp4
+2b3517591f7bf20e0f74f3ec1381af1e *tests/data/fate/mov-mp4-iamf-ambisonic_1.mp4
 57743 tests/data/fate/mov-mp4-iamf-ambisonic_1.mp4
-#extradata 0:       34, 0x3615025b
-#extradata 1:       34, 0x3615025b
-#extradata 2:       34, 0x3615025b
-#extradata 3:       34, 0x3615025b
+#extradata 0:       34, 0xad120cfe
+#extradata 1:       34, 0xad120cfe
+#extradata 2:       34, 0xad120cfe
+#extradata 3:       34, 0xad120cfe
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
diff --git a/tests/ref/fate/mov-mp4-iamf-stereo b/tests/ref/fate/mov-mp4-iamf-stereo
index 5c66c3e188..2fdc31776b 100644
--- a/tests/ref/fate/mov-mp4-iamf-stereo
+++ b/tests/ref/fate/mov-mp4-iamf-stereo
@@ -1,6 +1,6 @@
-7df5cc61ee480e558389051a83040dd2 *tests/data/fate/mov-mp4-iamf-stereo.mp4
+88c2b547f069f2d4a11d24f7f922251a *tests/data/fate/mov-mp4-iamf-stereo.mp4
 15163 tests/data/fate/mov-mp4-iamf-stereo.mp4
-#extradata 0:       34, 0x40a802c6
+#extradata 0:       34, 0xafa70d5e
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
-- 
2.44.0

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [FFmpeg-devel] [PATCH 2/2] avformat/iamfenc: ensure updated extradata is written
  2024-02-29 17:41 [FFmpeg-devel] [PATCH 1/2] avformat/iamf_writer: update extradata from packet side data James Almer
@ 2024-02-29 17:41 ` James Almer
  2024-03-03  0:27   ` Michael Niedermayer
  0 siblings, 1 reply; 5+ messages in thread
From: James Almer @ 2024-02-29 17:41 UTC (permalink / raw)
  To: ffmpeg-devel

Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavformat/iamfenc.c           | 30 +++++++++++++++++++++++++++++-
 tests/ref/fate/iamf-5_1_4       | 14 +++++++-------
 tests/ref/fate/iamf-7_1_4       | 16 ++++++++--------
 tests/ref/fate/iamf-ambisonic_1 | 10 +++++-----
 tests/ref/fate/iamf-stereo      |  4 ++--
 5 files changed, 51 insertions(+), 23 deletions(-)

diff --git a/libavformat/iamfenc.c b/libavformat/iamfenc.c
index 72a7555c9a..ebf0c2fd67 100644
--- a/libavformat/iamfenc.c
+++ b/libavformat/iamfenc.c
@@ -35,6 +35,9 @@
 typedef struct IAMFMuxContext {
     IAMFContext iamf;
 
+    int64_t descriptors_offset;
+    int update_extradata;
+
     int first_stream_id;
 } IAMFMuxContext;
 
@@ -124,6 +127,7 @@ static int iamf_write_header(AVFormatContext *s)
     IAMFContext *const iamf = &c->iamf;
     int ret;
 
+    c->descriptors_offset = avio_tell(s->pb);
     ret = ff_iamf_write_descriptors(iamf, s->pb, s);
     if (ret < 0)
         return ret;
@@ -135,7 +139,7 @@ static int iamf_write_header(AVFormatContext *s)
 
 static int iamf_write_packet(AVFormatContext *s, AVPacket *pkt)
 {
-    const IAMFMuxContext *const c = s->priv_data;
+    IAMFMuxContext *const c = s->priv_data;
     AVStream *st = s->streams[pkt->stream_index];
     int ret = 0;
 
@@ -143,10 +147,33 @@ static int iamf_write_packet(AVFormatContext *s, AVPacket *pkt)
         ret = ff_iamf_write_parameter_blocks(&c->iamf, s->pb, pkt, s);
     if (!ret)
         ret = ff_iamf_write_audio_frame(&c->iamf, s->pb, st->id, pkt);
+    if (!ret && !pkt->size)
+        c->update_extradata = 1;
 
     return ret;
 }
 
+static int iamf_write_trailer(AVFormatContext *s)
+{
+    const IAMFMuxContext *const c = s->priv_data;
+    const IAMFContext *const iamf = &c->iamf;
+    int64_t pos;
+    int ret;
+
+    if (!c->update_extradata || !(s->pb->seekable & AVIO_SEEKABLE_NORMAL))
+        return 0;
+
+    pos = avio_tell(s->pb);
+    avio_seek(s->pb, c->descriptors_offset, SEEK_SET);
+    ret = ff_iamf_write_descriptors(iamf, s->pb, s);
+    if (ret < 0)
+        return ret;
+
+    avio_seek(s->pb, pos, SEEK_SET);
+
+    return 0;
+}
+
 static void iamf_deinit(AVFormatContext *s)
 {
     IAMFMuxContext *const c = s->priv_data;
@@ -178,6 +205,7 @@ const FFOutputFormat ff_iamf_muxer = {
     .deinit            = iamf_deinit,
     .write_header      = iamf_write_header,
     .write_packet      = iamf_write_packet,
+    .write_trailer     = iamf_write_trailer,
     .p.codec_tag       = (const AVCodecTag* const []){ iamf_codec_tags, NULL },
     .p.flags           = AVFMT_GLOBALHEADER | AVFMT_NOTIMESTAMPS,
 };
diff --git a/tests/ref/fate/iamf-5_1_4 b/tests/ref/fate/iamf-5_1_4
index e6eb356ff0..030765ecee 100644
--- a/tests/ref/fate/iamf-5_1_4
+++ b/tests/ref/fate/iamf-5_1_4
@@ -1,11 +1,11 @@
-c447cbbc8943cfb751fdf1145a094250 *tests/data/fate/iamf-5_1_4.iamf
+7749af0b8f37c91e4cc0dbc6f31d7f67 *tests/data/fate/iamf-5_1_4.iamf
 85603 tests/data/fate/iamf-5_1_4.iamf
-#extradata 0:       34, 0x40a802c6
-#extradata 1:       34, 0x40a802c6
-#extradata 2:       34, 0x407c02c4
-#extradata 3:       34, 0x407c02c4
-#extradata 4:       34, 0x40a802c6
-#extradata 5:       34, 0x40a802c6
+#extradata 0:       34, 0xafa70d5e
+#extradata 1:       34, 0xafa70d5e
+#extradata 2:       34, 0xaf7b0d5c
+#extradata 3:       34, 0xaf7b0d5c
+#extradata 4:       34, 0xafa70d5e
+#extradata 5:       34, 0xafa70d5e
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
diff --git a/tests/ref/fate/iamf-7_1_4 b/tests/ref/fate/iamf-7_1_4
index c176f4a1cd..39cbd6d840 100644
--- a/tests/ref/fate/iamf-7_1_4
+++ b/tests/ref/fate/iamf-7_1_4
@@ -1,12 +1,12 @@
-157c3185684e12cc8385ee7c3ef2fb4c *tests/data/fate/iamf-7_1_4.iamf
+5d9fcee2b9b2ad3c802c40bb1147016e *tests/data/fate/iamf-7_1_4.iamf
 99851 tests/data/fate/iamf-7_1_4.iamf
-#extradata 0:       34, 0x40a802c6
-#extradata 1:       34, 0x40a802c6
-#extradata 2:       34, 0x407c02c4
-#extradata 3:       34, 0x407c02c4
-#extradata 4:       34, 0x40a802c6
-#extradata 5:       34, 0x40a802c6
-#extradata 6:       34, 0x40a802c6
+#extradata 0:       34, 0xafa70d5e
+#extradata 1:       34, 0xafa70d5e
+#extradata 2:       34, 0xaf7b0d5c
+#extradata 3:       34, 0xaf7b0d5c
+#extradata 4:       34, 0xafa70d5e
+#extradata 5:       34, 0xafa70d5e
+#extradata 6:       34, 0xafa70d5e
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
diff --git a/tests/ref/fate/iamf-ambisonic_1 b/tests/ref/fate/iamf-ambisonic_1
index 928a9c6cf2..ed73dd4d09 100644
--- a/tests/ref/fate/iamf-ambisonic_1
+++ b/tests/ref/fate/iamf-ambisonic_1
@@ -1,9 +1,9 @@
-0b66877e65e3e5bae46887aced977593 *tests/data/fate/iamf-ambisonic_1.iamf
+c3751e6a2d85bd6a8318fe93b5754309 *tests/data/fate/iamf-ambisonic_1.iamf
 57006 tests/data/fate/iamf-ambisonic_1.iamf
-#extradata 0:       34, 0x3615025b
-#extradata 1:       34, 0x3615025b
-#extradata 2:       34, 0x3615025b
-#extradata 3:       34, 0x3615025b
+#extradata 0:       34, 0xad120cfe
+#extradata 1:       34, 0xad120cfe
+#extradata 2:       34, 0xad120cfe
+#extradata 3:       34, 0xad120cfe
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
diff --git a/tests/ref/fate/iamf-stereo b/tests/ref/fate/iamf-stereo
index 65d6b506d4..82206f84bf 100644
--- a/tests/ref/fate/iamf-stereo
+++ b/tests/ref/fate/iamf-stereo
@@ -1,6 +1,6 @@
-ace731a4fbc302e24498d6b64daa16e7 *tests/data/fate/iamf-stereo.iamf
+4000d96f7363212c5a75c6f7fa5756f5 *tests/data/fate/iamf-stereo.iamf
 14426 tests/data/fate/iamf-stereo.iamf
-#extradata 0:       34, 0x40a802c6
+#extradata 0:       34, 0xafa70d5e
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac
-- 
2.44.0

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [FFmpeg-devel] [PATCH 2/2] avformat/iamfenc: ensure updated extradata is written
  2024-02-29 17:41 ` [FFmpeg-devel] [PATCH 2/2] avformat/iamfenc: ensure updated extradata is written James Almer
@ 2024-03-03  0:27   ` Michael Niedermayer
  2024-03-03  0:31     ` James Almer
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Niedermayer @ 2024-03-03  0:27 UTC (permalink / raw)
  To: FFmpeg development discussions and patches


[-- Attachment #1.1: Type: text/plain, Size: 1568 bytes --]

On Thu, Feb 29, 2024 at 02:41:22PM -0300, James Almer wrote:
> Signed-off-by: James Almer <jamrial@gmail.com>
> ---
>  libavformat/iamfenc.c           | 30 +++++++++++++++++++++++++++++-
>  tests/ref/fate/iamf-5_1_4       | 14 +++++++-------
>  tests/ref/fate/iamf-7_1_4       | 16 ++++++++--------
>  tests/ref/fate/iamf-ambisonic_1 | 10 +++++-----
>  tests/ref/fate/iamf-stereo      |  4 ++--
>  5 files changed, 51 insertions(+), 23 deletions(-)

seems to break fate here

--- ./tests/ref/fate/iamf-7_1_4	2024-03-03 01:24:48.462539621 +0100
+++ tests/data/fate/iamf-7_1_4	2024-03-03 01:25:31.762992374 +0100
@@ -1,12 +1,12 @@
-5d9fcee2b9b2ad3c802c40bb1147016e *tests/data/fate/iamf-7_1_4.iamf
+157c3185684e12cc8385ee7c3ef2fb4c *tests/data/fate/iamf-7_1_4.iamf
 99851 tests/data/fate/iamf-7_1_4.iamf
-#extradata 0:       34, 0xafa70d5e
-#extradata 1:       34, 0xafa70d5e
-#extradata 2:       34, 0xaf7b0d5c
-#extradata 3:       34, 0xaf7b0d5c
-#extradata 4:       34, 0xafa70d5e
-#extradata 5:       34, 0xafa70d5e
-#extradata 6:       34, 0xafa70d5e
+#extradata 0:       34, 0x40a802c6
+#extradata 1:       34, 0x40a802c6
+#extradata 2:       34, 0x407c02c4
+#extradata 3:       34, 0x407c02c4
+#extradata 4:       34, 0x40a802c6
+#extradata 5:       34, 0x40a802c6
+#extradata 6:       34, 0x40a802c6
 #tb 0: 1/44100
 #media_type 0: audio
 #codec_id 0: flac


-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

In a rich man's house there is no place to spit but his face.
-- Diogenes of Sinope

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [FFmpeg-devel] [PATCH 2/2] avformat/iamfenc: ensure updated extradata is written
  2024-03-03  0:27   ` Michael Niedermayer
@ 2024-03-03  0:31     ` James Almer
  2024-03-03  1:02       ` Michael Niedermayer
  0 siblings, 1 reply; 5+ messages in thread
From: James Almer @ 2024-03-03  0:31 UTC (permalink / raw)
  To: ffmpeg-devel

On 3/2/2024 9:27 PM, Michael Niedermayer wrote:
> On Thu, Feb 29, 2024 at 02:41:22PM -0300, James Almer wrote:
>> Signed-off-by: James Almer <jamrial@gmail.com>
>> ---
>>   libavformat/iamfenc.c           | 30 +++++++++++++++++++++++++++++-
>>   tests/ref/fate/iamf-5_1_4       | 14 +++++++-------
>>   tests/ref/fate/iamf-7_1_4       | 16 ++++++++--------
>>   tests/ref/fate/iamf-ambisonic_1 | 10 +++++-----
>>   tests/ref/fate/iamf-stereo      |  4 ++--
>>   5 files changed, 51 insertions(+), 23 deletions(-)
> 
> seems to break fate here
> 
> --- ./tests/ref/fate/iamf-7_1_4	2024-03-03 01:24:48.462539621 +0100
> +++ tests/data/fate/iamf-7_1_4	2024-03-03 01:25:31.762992374 +0100
> @@ -1,12 +1,12 @@
> -5d9fcee2b9b2ad3c802c40bb1147016e *tests/data/fate/iamf-7_1_4.iamf
> +157c3185684e12cc8385ee7c3ef2fb4c *tests/data/fate/iamf-7_1_4.iamf
>   99851 tests/data/fate/iamf-7_1_4.iamf
> -#extradata 0:       34, 0xafa70d5e
> -#extradata 1:       34, 0xafa70d5e
> -#extradata 2:       34, 0xaf7b0d5c
> -#extradata 3:       34, 0xaf7b0d5c
> -#extradata 4:       34, 0xafa70d5e
> -#extradata 5:       34, 0xafa70d5e
> -#extradata 6:       34, 0xafa70d5e
> +#extradata 0:       34, 0x40a802c6
> +#extradata 1:       34, 0x40a802c6
> +#extradata 2:       34, 0x407c02c4
> +#extradata 3:       34, 0x407c02c4
> +#extradata 4:       34, 0x40a802c6
> +#extradata 5:       34, 0x40a802c6
> +#extradata 6:       34, 0x40a802c6
>   #tb 0: 1/44100
>   #media_type 0: audio
>   #codec_id 0: flac

Did you apply the first patch before this one?
_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [FFmpeg-devel] [PATCH 2/2] avformat/iamfenc: ensure updated extradata is written
  2024-03-03  0:31     ` James Almer
@ 2024-03-03  1:02       ` Michael Niedermayer
  0 siblings, 0 replies; 5+ messages in thread
From: Michael Niedermayer @ 2024-03-03  1:02 UTC (permalink / raw)
  To: FFmpeg development discussions and patches


[-- Attachment #1.1: Type: text/plain, Size: 2014 bytes --]

On Sat, Mar 02, 2024 at 09:31:09PM -0300, James Almer wrote:
> On 3/2/2024 9:27 PM, Michael Niedermayer wrote:
> > On Thu, Feb 29, 2024 at 02:41:22PM -0300, James Almer wrote:
> > > Signed-off-by: James Almer <jamrial@gmail.com>
> > > ---
> > >   libavformat/iamfenc.c           | 30 +++++++++++++++++++++++++++++-
> > >   tests/ref/fate/iamf-5_1_4       | 14 +++++++-------
> > >   tests/ref/fate/iamf-7_1_4       | 16 ++++++++--------
> > >   tests/ref/fate/iamf-ambisonic_1 | 10 +++++-----
> > >   tests/ref/fate/iamf-stereo      |  4 ++--
> > >   5 files changed, 51 insertions(+), 23 deletions(-)
> > 
> > seems to break fate here
> > 
> > --- ./tests/ref/fate/iamf-7_1_4	2024-03-03 01:24:48.462539621 +0100
> > +++ tests/data/fate/iamf-7_1_4	2024-03-03 01:25:31.762992374 +0100
> > @@ -1,12 +1,12 @@
> > -5d9fcee2b9b2ad3c802c40bb1147016e *tests/data/fate/iamf-7_1_4.iamf
> > +157c3185684e12cc8385ee7c3ef2fb4c *tests/data/fate/iamf-7_1_4.iamf
> >   99851 tests/data/fate/iamf-7_1_4.iamf
> > -#extradata 0:       34, 0xafa70d5e
> > -#extradata 1:       34, 0xafa70d5e
> > -#extradata 2:       34, 0xaf7b0d5c
> > -#extradata 3:       34, 0xaf7b0d5c
> > -#extradata 4:       34, 0xafa70d5e
> > -#extradata 5:       34, 0xafa70d5e
> > -#extradata 6:       34, 0xafa70d5e
> > +#extradata 0:       34, 0x40a802c6
> > +#extradata 1:       34, 0x40a802c6
> > +#extradata 2:       34, 0x407c02c4
> > +#extradata 3:       34, 0x407c02c4
> > +#extradata 4:       34, 0x40a802c6
> > +#extradata 5:       34, 0x40a802c6
> > +#extradata 6:       34, 0x40a802c6
> >   #tb 0: 1/44100
> >   #media_type 0: audio
> >   #codec_id 0: flac
> 
> Did you apply the first patch before this one?

I thought i did, but i retested with a clean branch and
with that it passes
thx


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Good people do not need laws to tell them to act responsibly, while bad
people will find a way around the laws. -- Plato

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-03-03  1:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-29 17:41 [FFmpeg-devel] [PATCH 1/2] avformat/iamf_writer: update extradata from packet side data James Almer
2024-02-29 17:41 ` [FFmpeg-devel] [PATCH 2/2] avformat/iamfenc: ensure updated extradata is written James Almer
2024-03-03  0:27   ` Michael Niedermayer
2024-03-03  0:31     ` James Almer
2024-03-03  1:02       ` Michael Niedermayer

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git