[FFmpeg-trac] #11303(undetermined:new): AAC files are always reported as constant bitrate
FFmpeg
trac at avcodec.org
Sat Nov 16 12:50:42 EET 2024
#11303: AAC files are always reported as constant bitrate
-------------------------------------+-------------------------------------
Reporter: Me | Type: defect
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: aac | Blocked By:
variable bitrate |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
**Issue:**
The meta data of an aac audio file (.m4a) always reports the file to be
constant bitrate. This is true for variable bitrate aac audio files that
are created with ffmpeg (libfdk_aac) and aac files that are just copied
with ffmpeg.
**Commandline for creation of an m4a file:**
{{{
ffmpeg -i test_input.flac -c:a libfdk_aac -vbr 5 out_file.m4a
}}}
Check bitrate:
{{{
mediainfo out_file.m4a
}}}
{{{
General
Complete name : out_file.m4a
Format : MPEG-4
Format profile : Apple audio with iTunes info
Codec ID : M4A (M4A /isom/iso2)
File size : 7.33 MiB
Duration : 4 min 51 s
Overall bit rate mode : Constant
Overall bit rate : 211 kb/s
Album : test album
Album/Performer : test album artist
Track name : test title
Track name/Position : 1
Performer : test artist
Genre : test genre
Recorded date : 2000
Writing application : Lavf61.1.100
Comment : test comment
Audio
ID : 1
Format : AAC LC
Format/Info : Advanced Audio Codec Low
Complexity
Codec ID : mp4a-40-2
Duration : 4 min 51 s
Source duration : 4 min 51 s
Source_Duration_LastFrame : -16 ms
Bit rate mode : Constant
Bit rate : 210 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 44.1 kHz
Frame rate : 43.066 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 7.28 MiB (99%)
Source stream size : 7.28 MiB (99%)
Default : Yes
Alternate group : 1
}}}
**Commandline for copying a vbr aac audio source:**
Create a vbr m4a-file:
{{{
ffmpeg -i test_input.flac -f caf - | fdkaac -m 5 -o fdkaac.m4a -
}}}
Confirm vbr:
{{{
mediainfo fdkaac.m4a
}}}
{{{
General
Complete name : fdkaac.m4a
Format : MPEG-4
Format profile : Apple audio with iTunes info
Codec ID : M4A (M4A /mp42/isom)
File size : 7.33 MiB
Duration : 4 min 51 s
Overall bit rate mode : Variable
Overall bit rate : 211 kb/s
Album : test album
Album/Performer : test album artist
Track name : test title
Track name/Position : 1
Performer : test artist
Genre : test genre
Recorded date : 2000
Encoded date : UTC 2024-11-16 10:21:08
Tagged date : UTC 2024-11-16 10:21:08
Writing application : fdkaac 1.0.0, libfdk-aac 4.0.1,
VBR mode 5
Comment : test comment
Audio
ID : 1
Format : AAC LC
Format/Info : Advanced Audio Codec Low
Complexity
Codec ID : mp4a-40-2
Duration : 4 min 51 s
Bit rate mode : Variable
Bit rate : 210 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 44.1 kHz
Frame rate : 43.066 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 7.28 MiB (99%)
Encoded date : UTC 2024-11-16 10:21:08
Tagged date : UTC 2024-11-16 10:21:08
}}}
Copy the file with ffmpeg:
{{{
myffmpeg -i fdkaac.m4a -c:a copy copy_ffmpeg.m4a
}}}
Confirm metadata:
{{{
mediainfo copy_ffmpeg.m4a
}}}
{{{
General
Complete name : copy_ffmpeg.m4a
Format : MPEG-4
Format profile : Apple audio with iTunes info
Codec ID : M4A (M4A /isom/iso2)
File size : 7.33 MiB
Duration : 4 min 51 s
Overall bit rate mode : Constant
Overall bit rate : 211 kb/s
Album : test album
Album/Performer : test album artist
Track name : test title
Track name/Position : 1
Performer : test artist
Genre : test genre
Recorded date : 2000
Writing application : Lavf61.1.100
Comment : test comment
Audio
ID : 1
Format : AAC LC
Format/Info : Advanced Audio Codec Low
Complexity
Codec ID : mp4a-40-2
Duration : 4 min 51 s
Source duration : 4 min 51 s
Bit rate mode : Constant
Bit rate : 210 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 44.1 kHz
Frame rate : 43.066 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 7.28 MiB (99%)
Source stream size : 7.28 MiB (99%)
Default : Yes
Alternate group : 1
}}}
Without changing the actual audio stream the metadata is set to constant
bitrate even though the input is a variable bitrate.
**
The issue was observed/reproduced with:**
ffmpeg version 7.0.2
ffmpeg version N-71064-gd5e603ddc0-static
ffmpeg version 4.4.2-0ubuntu0.22.04.1
**Log file (shortend):**
{{{
ffmpeg version 7.0.2 Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 13 (Ubuntu 13.2.0-23ubuntu4)
configuration: --prefix=/home/test/ffmpeg-static/target --pkg-config-
flags=--static --extra-cflags=-I/home/test/ffmpeg-static/target/include
--extra-ldflags=-L/home/test/ffmpeg-static/target/lib --extra-
ldexeflags=-static --extra-libs='-lpthread -lm -lz' --bindir=/home/test
/ffmpeg-static/bin --enable-gpl --enable-nonfree --enable-libfdk-aac
--enable-libx264 --enable-libx265 --enable-libmp3lame --enable-libopus
--enable-libvorbis --enable-libxvid --enable-libtheora --enable-libvpx
--enable-libwebp --enable-libsvtav1 --enable-libdav1d --enable-libaom
--enable-libfreetype --enable-libass
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with
argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging
level) with argument '99'.
Reading option '-i' ... matched as input url with argument 'fdkaac.m4a'.
Reading option '-c:a' ... matched as option 'c' (select encoder/decoder
('copy' to copy stream without reencoding)) with argument 'copy'.
Reading option 'copy_ffmpeg.m4a' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Successfully parsed a group of options.
Parsing a group of options: input url fdkaac.m4a.
Successfully parsed a group of options.
Opening an input file: fdkaac.m4a.
[AVFormatContext @ 0x1ba33e40] Opening 'fdkaac.m4a' for reading
[file @ 0x1ba34440] Setting default whitelist 'file,crypto,data'
Probing mov,mp4,m4a,3gp,3g2,mj2 score:100 size:2048
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] Format mov,mp4,m4a,3gp,3g2,mj2
probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'ftyp' parent:'root' sz: 32 8
7689874
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] ISO: File Type Major Brand: M4A
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'free' parent:'root' sz: 8 40
7689874
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'mdat' parent:'root' sz:
7636157 48 7689874
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'moov' parent:'root' sz: 53677
7636205 7689874
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'mvhd' parent:'moov' sz: 108 8
53669
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] time scale = 44100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'trak' parent:'moov' sz: 52972
116 53669
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'tkhd' parent:'trak' sz: 92 8
52964
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'mdia' parent:'trak' sz: 52872
100 52964
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'mdhd' parent:'mdia' sz: 32 8
52864
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'hdlr' parent:'mdia' sz: 33 40
52864
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stype=soun
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'minf' parent:'mdia' sz: 52799
73 52864
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'smhd' parent:'minf' sz: 16 8
52791
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'dinf' parent:'minf' sz: 36 24
52791
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'dref' parent:'dinf' sz: 28 8
28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] Unknown dref type 0x206c7275 size
12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'stbl' parent:'minf' sz: 52739
60 52791
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'stsd' parent:'stbl' sz: 103 8
52731
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] size=87 4CC=mp4a codec_type=1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] audio channels 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] version =0, isom =1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'esds' parent:'stsd' sz: 51 8
51
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] MPEG-4 description: tag=0x03 len=34
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] MPEG-4 description: tag=0x04 len=20
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] esds object type id 0x40
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] MPEG-4 description: tag=0x05 len=2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] Specific MPEG-4 header len=2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] mp4a config channels 2 obj 2 ext
obj 0 sample rate 44100 ext sample rate 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'stts' parent:'stbl' sz: 24
111 52731
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] track[0].stts.entries = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] sample_count=12535,
sample_duration=1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'stsc' parent:'stbl' sz: 40
135 52731
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] track[0].stsc.entries = 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'stsz' parent:'stbl' sz: 50160
175 52731
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] sample_size = 0 sample_count =
12535
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'stco' parent:'stbl' sz: 2404
50335 52731
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 0, offset
30, dts 0, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 1, offset
38, dts 1024, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 2, offset
40, dts 2048, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 3, offset
48, dts 3072, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 4, offset
50, dts 4096, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 5, offset
58, dts 5120, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 6, offset
60, dts 6144, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 7, offset
68, dts 7168, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 8, offset
70, dts 8192, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 9, offset
78, dts 9216, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 10, offset
80, dts 10240, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 11, offset
88, dts 11264, size 8, distance 0, keyframe 1
.....
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 12530,
offset 7484bd, dts 12830720, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 12531,
offset 7484c5, dts 12831744, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 12532,
offset 7484cd, dts 12832768, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 12533,
offset 7484d5, dts 12833792, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] AVIndex stream 0, sample 12534,
offset 7484dd, dts 12834816, size 8, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'udta' parent:'moov' sz: 589
53088 53669
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'meta' parent:'udta' sz: 581 8
581
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'hdlr' parent:'meta' sz: 33 8
569
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stype=mdir
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'ilst' parent:'meta' sz: 536
41 569
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'[169]nam' parent:'ilst' sz:
34 8 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'[169]ART' parent:'ilst' sz:
35 42 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'aART' parent:'ilst' sz: 41 77
528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'[169]alb' parent:'ilst' sz:
34 118 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'[169]day' parent:'ilst' sz:
28 152 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'[169]gen' parent:'ilst' sz:
34 180 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'[169]cmt' parent:'ilst' sz:
36 214 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'trkn' parent:'ilst' sz: 32
250 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'[169]too' parent:'ilst' sz:
66 282 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] type:'----' parent:'ilst' sz: 188
348 528
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] on_parse_exit_offset=7689874
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] Before avformat_find_stream_info()
pos: 7689874 bytes read:86445 seeks:1 nb_streams:1
For transform of length 64, inverse, mdct_float, flags: [aligned,
out_of_place], found 3 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
3: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 32, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 2 matches:
1: fft32_asm_float_fma3 - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 512
2: fft32_asm_float_avx - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 480
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 64, factors[2]: [2, any],
flags: [aligned, out_of_place, inv_only]
fft32_asm_float_fma3 - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 64, inverse, mdct_float, flags: [aligned,
out_of_place], found 3 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
3: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 32, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 2 matches:
1: fft32_asm_float_fma3 - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 512
2: fft32_asm_float_avx - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 480
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 64, factors[2]: [2, any],
flags: [aligned, out_of_place, inv_only]
fft32_asm_float_fma3 - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 120, inverse, mdct_float, flags: [aligned,
out_of_place], found 6 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_pfa_15xM_inv_float_c - type: mdct_float, len: [30, ∞],
factors[2]: [15, any], flags: [unaligned, out_of_place, inv_only], prio:
304
3: mdct_pfa_5xM_inv_float_c - type: mdct_float, len: [10, ∞],
factors[2]: [5, any], flags: [unaligned, out_of_place, inv_only], prio:
144
4: mdct_pfa_3xM_inv_float_c - type: mdct_float, len: [6, ∞],
factors[2]: [3, any], flags: [unaligned, out_of_place, inv_only], prio:
112
5: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
6: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 60, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 1 matches:
1: fft_pfa_15xM_asm_float_avx2 - type: fft_float, len: [60, ∞],
factors[2]: [15, 2], flags: [aligned, inplace, out_of_place, preshuf,
asm_call], prio: 655
For transform of length 4, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 1 matches:
1: fft4_fwd_asm_float_sse2 - type: fft_float, len: 4, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf, asm_call], prio: 352
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 120, factors[2]: [2,
any], flags: [aligned, out_of_place, inv_only]
fft_pfa_15xM_asm_float_avx2 - type: fft_float, len: 60,
factors[2]: [15, 2], flags: [aligned, inplace, out_of_place, preshuf,
asm_call]
fft4_fwd_asm_float_sse2 - type: fft_float, len: 4, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 128, inverse, mdct_float, flags: [aligned,
out_of_place], found 3 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
3: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 64, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 3 matches:
1: fft_sr_asm_float_fma3 - type: fft_float, len: [64, 2097152],
factor: 2, flags: [aligned, inplace, out_of_place, preshuf, asm_call],
prio: 448
2: fft_sr_asm_float_avx2 - type: fft_float, len: [64, 2097152],
factor: 2, flags: [aligned, inplace, out_of_place, preshuf, asm_call],
prio: 447
3: fft_sr_asm_float_avx - type: fft_float, len: [64, 2097152], factor:
2, flags: [aligned, inplace, out_of_place, preshuf, asm_call], prio: 416
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 128, factors[2]: [2,
any], flags: [aligned, out_of_place, inv_only]
fft_sr_asm_float_fma3 - type: fft_float, len: 64, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 480, inverse, mdct_float, flags: [aligned,
out_of_place], found 6 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_pfa_15xM_inv_float_c - type: mdct_float, len: [30, ∞],
factors[2]: [15, any], flags: [unaligned, out_of_place, inv_only], prio:
304
3: mdct_pfa_5xM_inv_float_c - type: mdct_float, len: [10, ∞],
factors[2]: [5, any], flags: [unaligned, out_of_place, inv_only], prio:
144
4: mdct_pfa_3xM_inv_float_c - type: mdct_float, len: [6, ∞],
factors[2]: [3, any], flags: [unaligned, out_of_place, inv_only], prio:
112
5: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
6: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 240, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 1 matches:
1: fft_pfa_15xM_asm_float_avx2 - type: fft_float, len: [60, ∞],
factors[2]: [15, 2], flags: [aligned, inplace, out_of_place, preshuf,
asm_call], prio: 655
For transform of length 16, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 2 matches:
1: fft16_asm_float_fma3 - type: fft_float, len: 16, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 512
2: fft16_asm_float_avx - type: fft_float, len: 16, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 480
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 480, factors[2]: [2,
any], flags: [aligned, out_of_place, inv_only]
fft_pfa_15xM_asm_float_avx2 - type: fft_float, len: 240,
factors[2]: [15, 2], flags: [aligned, inplace, out_of_place, preshuf,
asm_call]
fft16_asm_float_fma3 - type: fft_float, len: 16, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 512, inverse, mdct_float, flags: [aligned,
out_of_place], found 3 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
3: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 256, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 3 matches:
1: fft_sr_asm_float_fma3 - type: fft_float, len: [64, 2097152],
factor: 2, flags: [aligned, inplace, out_of_place, preshuf, asm_call],
prio: 448
2: fft_sr_asm_float_avx2 - type: fft_float, len: [64, 2097152],
factor: 2, flags: [aligned, inplace, out_of_place, preshuf, asm_call],
prio: 447
3: fft_sr_asm_float_avx - type: fft_float, len: [64, 2097152], factor:
2, flags: [aligned, inplace, out_of_place, preshuf, asm_call], prio: 416
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 512, factors[2]: [2,
any], flags: [aligned, out_of_place, inv_only]
fft_sr_asm_float_fma3 - type: fft_float, len: 256, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 960, inverse, mdct_float, flags: [aligned,
out_of_place], found 6 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_pfa_15xM_inv_float_c - type: mdct_float, len: [30, ∞],
factors[2]: [15, any], flags: [unaligned, out_of_place, inv_only], prio:
304
3: mdct_pfa_5xM_inv_float_c - type: mdct_float, len: [10, ∞],
factors[2]: [5, any], flags: [unaligned, out_of_place, inv_only], prio:
144
4: mdct_pfa_3xM_inv_float_c - type: mdct_float, len: [6, ∞],
factors[2]: [3, any], flags: [unaligned, out_of_place, inv_only], prio:
112
5: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
6: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 480, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 1 matches:
1: fft_pfa_15xM_asm_float_avx2 - type: fft_float, len: [60, ∞],
factors[2]: [15, 2], flags: [aligned, inplace, out_of_place, preshuf,
asm_call], prio: 655
For transform of length 32, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 2 matches:
1: fft32_asm_float_fma3 - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 512
2: fft32_asm_float_avx - type: fft_float, len: 32, factor: 2, flags:
[aligned, inplace, out_of_place, preshuf, asm_call], prio: 480
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 960, factors[2]: [2,
any], flags: [aligned, out_of_place, inv_only]
fft_pfa_15xM_asm_float_avx2 - type: fft_float, len: 480,
factors[2]: [15, 2], flags: [aligned, inplace, out_of_place, preshuf,
asm_call]
fft32_asm_float_fma3 - type: fft_float, len: 32, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 1024, inverse, mdct_float, flags: [aligned,
out_of_place], found 3 matches:
1: mdct_inv_float_avx2 - type: mdct_float, len: [16, ∞], factors[2]:
[2, any], flags: [aligned, out_of_place, inv_only], prio: 511
2: mdct_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, inv_only], prio: 96
3: mdct_naive_inv_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, inv_only], prio: -130976
For transform of length 512, inverse, fft_float, flags: [aligned, inplace,
preshuf, asm_call], found 3 matches:
1: fft_sr_asm_float_fma3 - type: fft_float, len: [64, 2097152],
factor: 2, flags: [aligned, inplace, out_of_place, preshuf, asm_call],
prio: 448
2: fft_sr_asm_float_avx2 - type: fft_float, len: [64, 2097152],
factor: 2, flags: [aligned, inplace, out_of_place, preshuf, asm_call],
prio: 447
3: fft_sr_asm_float_avx - type: fft_float, len: [64, 2097152], factor:
2, flags: [aligned, inplace, out_of_place, preshuf, asm_call], prio: 416
Transform tree:
mdct_inv_float_avx2 - type: mdct_float, len: 1024, factors[2]: [2,
any], flags: [aligned, out_of_place, inv_only]
fft_sr_asm_float_fma3 - type: fft_float, len: 512, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf, asm_call]
For transform of length 1024, forward, mdct_float, flags: [aligned,
out_of_place], found 2 matches:
1: mdct_fwd_float_c - type: mdct_float, len: [2, ∞], factors[2]: [2,
any], flags: [unaligned, out_of_place, fwd_only], prio: 96
2: mdct_naive_fwd_float_c - type: mdct_float, len: [2, ∞], factors[2]:
[2, any], flags: [unaligned, out_of_place, fwd_only], prio: -130976
For transform of length 512, forward, fft_float, flags: [aligned, inplace,
preshuf], found 5 matches:
1: fft_sr_ns_float_fma3 - type: fft_float, len: [64, 2097152], factor:
2, flags: [aligned, inplace, out_of_place, preshuf], prio: 448
2: fft_sr_ns_float_avx2 - type: fft_float, len: [64, 2097152], factor:
2, flags: [aligned, inplace, out_of_place, preshuf], prio: 447
3: fft_sr_ns_float_avx - type: fft_float, len: [64, 2097152], factor:
2, flags: [aligned, inplace, out_of_place, preshuf], prio: 416
4: fft_pfa_ns_float_c - type: fft_float, len: [6, ∞], factors[2]: [7,
5, 3, 2, any], flags: [unaligned, inplace, out_of_place, preshuf], prio:
112
5: fft512_ns_float_c - type: fft_float, len: 512, factor: 2, flags:
[unaligned, inplace, out_of_place, preshuf], prio: 96
Transform tree:
mdct_fwd_float_c - type: mdct_float, len: 1024, factors[2]: [2, any],
flags: [unaligned, out_of_place, fwd_only]
fft_sr_ns_float_fma3 - type: fft_float, len: 512, factor: 2,
flags: [aligned, inplace, out_of_place, preshuf]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 0, dts 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] demuxer injecting skip 2048 /
discard 0
[aac @ 0x1ba34e40] skip 2048 / discard 0 samples due to side data
[aac @ 0x1ba34e40] skip whole frame, skip left: 1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0: start_time: 0.0464399
duration: 291.062132
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] format: start_time: 0.04644
duration: 291.062132 (estimate from stream) bitrate=211 kb/s
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] After avformat_find_stream_info()
pos: 56 bytes read:119213 seeks:2 frames:1
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'fdkaac.m4a':
Metadata:
major_brand : M4A
minor_version : 0
compatible_brands: M4A mp42isom
creation_time : 2024-11-16T10:21:08.000000Z
title : test title
artist : test artist
album_artist : test album artist
album : test album
date : 2000
genre : test genre
comment : test comment
track : 1
encoder : fdkaac 1.0.0, libfdk-aac 4.0.1, VBR mode 5
iTunSMPB : 00000000 00000800 000002B4 0000000000C3D14C
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Duration: 00:04:51.06, start: 0.046440, bitrate: 211 kb/s
Stream #0:0[0x1](und), 1, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D),
44100 Hz, stereo, fltp, 209 kb/s (default)
Metadata:
creation_time : 2024-11-16T10:21:08.000000Z
vendor_id : [0][0][0][0]
Successfully opened the file.
Parsing a group of options: output url copy_ffmpeg.m4a.
Applying option c:a (select encoder/decoder ('copy' to copy stream without
reencoding)) with argument copy.
Successfully parsed a group of options.
Opening an output file: copy_ffmpeg.m4a.
[out#0/ipod @ 0x1ba3be40] No explicit maps, mapping streams
automatically...
[aost#0:0/copy @ 0x1ba37700] Created audio stream from input stream 0:0
[file @ 0x1ba37b00] Setting default whitelist 'file,crypto,data'
Successfully opened the file.
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Output #0, ipod, to 'copy_ffmpeg.m4a':
Metadata:
major_brand : M4A
minor_version : 0
compatible_brands: M4A mp42isom
iTunSMPB : 00000000 00000800 000002B4 0000000000C3D14C
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
title : test title
artist : test artist
album_artist : test album artist
album : test album
date : 2000
genre : test genre
comment : test comment
track : 1
encoder : Lavf61.1.100
Stream #0:0(und), 0, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100
Hz, stereo, fltp, 209 kb/s (default)
Metadata:
creation_time : 2024-11-16T10:21:08.000000Z
vendor_id : [0][0][0][0]
[out#0/ipod @ 0x1ba3be40] Starting thread...
[in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33b80] Starting thread...
Press [q] to stop, [?] for help
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 1, dts 23220
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 2, dts 46440
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 3, dts 69660
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 4, dts 92880
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 5, dts 116100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 6, dts 139320
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 7, dts 162540
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 8, dts 185760
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 9, dts 208980
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 10, dts 232200
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 11, dts 255420
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 12, dts 278639
...
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 12530, dts
290946032
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 12531, dts
290969252
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 12532, dts
290992472
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 12533, dts
291015692
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33e40] stream 0, sample 12534, dts
291038912
[in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33b80] EOF while reading input
[in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33b80] Terminating thread with return
code 0 (success)
[out#0/ipod @ 0x1ba3be40] All streams finished
[out#0/ipod @ 0x1ba3be40] Terminating thread with return code 0 (success)
[AVIOContext @ 0x1ba37bc0] Statistics: 7687474 bytes written, 2 seeks, 33
writeouts
[out#0/ipod @ 0x1ba3be40] Output file #0 (copy_ffmpeg.m4a):
[out#0/ipod @ 0x1ba3be40] Output stream #0:0 (audio): 12535 packets
muxed (7636149 bytes);
[out#0/ipod @ 0x1ba3be40] Total: 12535 packets (7636149 bytes) muxed
[out#0/ipod @ 0x1ba3be40] video:0KiB audio:7457KiB subtitle:0KiB other
streams:0KiB global headers:0KiB muxing overhead: 0.672080%
size= 7507KiB time=00:04:51.01 bitrate= 211.3kbits/s speed=2.7e+03x
[in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33b80] Input file #0 (fdkaac.m4a):
[in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33b80] Input stream #0:0 (audio):
12535 packets read (7636149 bytes);
[in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ba33b80] Total: 12535 packets
(7636149 bytes) demuxed
[AVIOContext @ 0x1ba3c600] Statistics: 7754157 bytes read, 2 seeks
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/11303>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list