From: James Almer <jamrial@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH 4/4] fate: add raw IAMF tests
Date: Thu, 11 Jan 2024 09:02:06 -0300
Message-ID: <d403ffc1-77bd-4d4c-b58c-c0ca30440ab4@gmail.com> (raw)
In-Reply-To: <20240111031717.GW6420@pb2>
On 1/11/2024 12:17 AM, Michael Niedermayer wrote:
> On Wed, Jan 10, 2024 at 09:52:28AM -0300, James Almer wrote:
>> On 1/10/2024 12:05 AM, Michael Niedermayer wrote:
>>> On Sun, Jan 07, 2024 at 06:31:00PM -0300, James Almer wrote:
>>>> Covers muxing from raw pcm audio input into FLAC, using several scalable layouts,
>>>> and demuxing the result.
>>>>
>>>> Signed-off-by: James Almer <jamrial@gmail.com>
>>>> ---
>>>> tests/Makefile | 7 +-
>>>> tests/fate/iamf.mak | 31 ++++++
>>>> tests/filtergraphs/iamf_5_1 | 4 +
>>>> tests/filtergraphs/iamf_5_1_2 | 5 +
>>>> tests/filtergraphs/iamf_5_1_4 | 6 ++
>>>> tests/filtergraphs/iamf_7_1_4 | 7 ++
>>>> tests/ref/fate/iamf-5_1_4 | 98 ++++++++++++++++++
>>>> tests/ref/fate/iamf-7_1_4 | 114 +++++++++++++++++++++
>>>> tests/ref/fate/iamf-stereo | 18 ++++
>>>> tests/streamgroups/audio_element-5_1_4 | 7 ++
>>>> tests/streamgroups/audio_element-7_1_4 | 6 ++
>>>> tests/streamgroups/audio_element-stereo | 3 +
>>>> tests/streamgroups/mix_presentation-5_1_4 | 2 +
>>>> tests/streamgroups/mix_presentation-7_1_4 | 2 +
>>>> tests/streamgroups/mix_presentation-stereo | 3 +
>>>> 15 files changed, 312 insertions(+), 1 deletion(-)
>>>> create mode 100644 tests/fate/iamf.mak
>>>> create mode 100644 tests/filtergraphs/iamf_5_1
>>>> create mode 100644 tests/filtergraphs/iamf_5_1_2
>>>> create mode 100644 tests/filtergraphs/iamf_5_1_4
>>>> create mode 100644 tests/filtergraphs/iamf_7_1_4
>>>> create mode 100644 tests/ref/fate/iamf-5_1_4
>>>> create mode 100644 tests/ref/fate/iamf-7_1_4
>>>> create mode 100644 tests/ref/fate/iamf-stereo
>>>> create mode 100644 tests/streamgroups/audio_element-5_1_4
>>>> create mode 100644 tests/streamgroups/audio_element-7_1_4
>>>> create mode 100644 tests/streamgroups/audio_element-stereo
>>>> create mode 100644 tests/streamgroups/mix_presentation-5_1_4
>>>> create mode 100644 tests/streamgroups/mix_presentation-7_1_4
>>>> create mode 100644 tests/streamgroups/mix_presentation-stereo
>>>
>>> Iam probably missing some dependancies but, reporting anyway
>>> this fails fate:
>>>
>>> [aist#0:0/pcm_s16le @ 0x5645f5820680] Guessed Channel Layout: stereo
>>> Input #0, wav, from 'ffmpeg/tests/data/asynth-44100-2.wav':
>>> Duration: 00:00:06.00, bitrate: 1411 kb/s
>>> Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s
>>> [in#0/wav @ 0x5645f5812400] Codec AVOption idct (select IDCT implementation) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some decoder which was not actually used for any stream.
>>> [out#0/iamf @ 0x5645f585af80] Codec AVOption dct (DCT algorithm) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
>>> [out#0/iamf @ 0x5645f585af80] Codec AVOption idct (select IDCT implementation) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
>>> [out#0/iamf @ 0x5645f585af80] Invalid or missing stream group index in submix element specification "stg=0:parameter_id=100:headphones_rendering_mode=stereo:annotations=en-us=Scalable_Submix"
>>> Error opening output file ffmpeg/tests/data/fate/iamf-stereo.iamf.
>>> Error opening output files: Invalid argument
>>> threads=1
>>> tests/Makefile:317: recipe for target 'fate-iamf-stereo' failed
>>> make: *** [fate-iamf-stereo] Error 234
>>>
>>> thx
>>
>> I can't reproduce this. Tried with these four patches using current master
>> and it works.
>> Could it be strtoll misbehaving? Can you check what values are in idx,
>> oc->nb_stream_groups, and endptr?
>
> didnt had time to look its 4am i need to eat and go to bed :)
> but a quick test with this:
> diff --git a/fftools/ffmpeg_mux_init.c b/fftools/ffmpeg_mux_init.c
> index 1b42ac9a1d7..224e9e8268e 100644
> --- a/fftools/ffmpeg_mux_init.c
> +++ b/fftools/ffmpeg_mux_init.c
> @@ -2113,8 +2113,10 @@ static int of_parse_iamf_submixes(Muxer *mux, AVStreamGroup *stg, char *ptr)
> char *endptr = NULL;
> int64_t idx = -1;
>
> - if (e = av_dict_get(dict, "stg", NULL, 0))
> + if (e = av_dict_get(dict, "stg", NULL, 0)) {
> idx = strtoll(e->value, &endptr, 0);
> + av_log(0,0, "B idx:%"PRId64" NSG:%d endptr: %p endptr:%s value:%s\n", idx, oc->nb_stream_groups, endptr, endptr, e->value);
> + }
> av_dict_set(&dict, "stg", NULL, 0);
I guess this called before the checks is what's wrong.
> if (!endptr || *endptr || idx < 0 || idx >= oc->nb_stream_groups - 1 ||
> oc->stream_groups[idx]->type != AV_STREAM_GROUP_PARAMS_IAMF_AUDIO_ELEMENT) {
> @@ -2245,6 +2247,7 @@ static int of_parse_group_token(Muxer *mux, const char *token, char *ptr)
> while (e = av_dict_get(dict, "stg", e, 0)) {
> char *endptr;
> int64_t idx = strtoll(e->value, &endptr, 0);
> + av_log(0,0, "idx:%"PRId64" NSG:%d endptr:%s\n", idx, oc->nb_stream_groups, endptr);
> if (*endptr || idx < 0 || idx >= oc->nb_stream_groups - 1) {
> av_log(mux, AV_LOG_ERROR, "Invalid stream group index %"PRId64"\n", idx);
> ret = AVERROR(EINVAL);
>
>
> i get:
> [aist#0:0/pcm_s16le @ 0x55ae216e6680] Guessed Channel Layout: stereo
> Input #0, wav, from 'ffmpeg/tests/data/asynth-44100-2.wav':
> Duration: 00:00:06.00, bitrate: 1411 kb/s
> Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s
> [in#0/wav @ 0x55ae216d8400] Codec AVOption idct (select IDCT implementation) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some decoder which was not actually used for any stream.
> [out#0/iamf @ 0x55ae21720f80] Codec AVOption dct (DCT algorithm) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
> [out#0/iamf @ 0x55ae21720f80] Codec AVOption idct (select IDCT implementation) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
> idx:0 NSG:2 endptr:
> B idx:0 NSG:2 endptr: 0x55ae21728b81 endptr: value:0
> [out#0/iamf @ 0x55ae21720f80] Invalid or missing stream group index in submix element specification "stg=0:parameter_id=100:headphones_rendering_mode=stereo:annotations=en-us=Scalable_Submix"
> Error opening output file ffmpeg/tests/data/fate/iamf-stereo.iamf.
> Error opening output files: Invalid argument
> threads=1
> tests/Makefile:317: recipe for target 'fate-iamf-stereo' failed
> make: *** [fate-iamf-stereo] Error 234
>
> i also see other failures:
> make: *** [fate-iamf-stereo] Error 234
> make: *** [fate-iamf-5_1_4] Error 234
> make: *** [fate-iamf-7_1_4] Error 234
>
> thx
>
> [...]
>
>
> _______________________________________________
> 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".
_______________________________________________
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".
prev parent reply other threads:[~2024-01-11 12:02 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-07 21:30 [FFmpeg-devel] [PATCH 1/4] avformat/iamfenc: don't write empty packets James Almer
2024-01-07 21:30 ` [FFmpeg-devel] [PATCH 2/4] fftools/cmdutils: add OPT_TYPE_FILE James Almer
2024-01-07 21:30 ` [FFmpeg-devel] [PATCH 3/4] fftools/ffmpeg_opt: add a stream_group_script option James Almer
2024-01-08 1:43 ` Steven Liu
2024-01-08 1:44 ` James Almer
2024-01-07 21:31 ` [FFmpeg-devel] [PATCH 4/4] fate: add raw IAMF tests James Almer
2024-01-10 3:05 ` Michael Niedermayer
2024-01-10 12:52 ` James Almer
2024-01-11 3:17 ` Michael Niedermayer
2024-01-11 12:02 ` James Almer [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d403ffc1-77bd-4d4c-b58c-c0ca30440ab4@gmail.com \
--to=jamrial@gmail.com \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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