Opened 12 months ago

Last modified 11 months ago

#2412 new defect

AAC length not detected properly

Reported by: superbonaci Owned by: beastd
Priority: low Component: undetermined
Version: unspecified Severity: minor
Keywords: Cc:
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

Summary of the bug: AAC duration detected as 12:36.4 while originally it is 13:20.3
How to reproduce:

% mplayer -v fools-the-north-wind.aac
MPlayer 1.5-14.0.0 (C) 2000-2022 MPlayer Team
get_path('codecs.conf') -> '/Users/stephan/.mplayer/codecs.conf'
Reading optional codecs config file /Users/stephan/.mplayer/codecs.conf: No such file or directory
Reading optional codecs config file /opt/homebrew/Cellar/mplayer/1.5_1/etc/mplayer/codecs.conf: No such file or directory
Using built-in default codecs.conf.
init_freetype
Using Unoptimized OnScreenDisplay
get_path('fonts') -> '/Users/stephan/.mplayer/fonts'
Configuration: --cc=clang --host-cc=clang --disable-cdparanoia --prefix=/opt/homebrew/Cellar/mplayer/1.5_1 --disable-x11 --enable-caca --enable-freetype --disable-libbs2b
CommandLine: '-v' 'fools-the-north-wind.aac'
Using Darwin accurate timing
get_path('input.conf') -> '/Users/stephan/.mplayer/input.conf'
Reading optional input config file /Users/stephan/.mplayer/input.conf: No such file or directory
Reading optional input config file /opt/homebrew/Cellar/mplayer/1.5_1/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
Can't init Apple Remote.
get_path('fools-the-north-wind.aac.conf') -> '/Users/stephan/.mplayer/fools-the-north-wind.aac.conf'

Playing fools-the-north-wind.aac.
get_path('sub/') -> '/Users/stephan/.mplayer/sub/'
[file] File size is 1729060 bytes
STREAM: [file] fools-the-north-wind.aac
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
libavformat version 59.17.102 (internal)
Configuration: --enable-gpl --enable-postproc
LAVF_check: raw ADTS AAC (Advanced Audio Coding)
Checking for YUV4MPEG2
ASF_check: not ASF guid!
Checking for REAL
Checking for SMJPEG
Searching demuxer type for filename fools-the-north-wind.aac ext: .aac
Checking for Nullsoft Streaming Video
Checking for MOV
Checking for VIVO
Checking for PVA
Checking for MPEG-TS...
TRIED UP TO POSITION 68591, FOUND 47, packet_size= 0, SEEMS A TS? 0
Checking for LMLM4 Stream Format
Invalid packet in LMLM4 stream: ch=65521 size=25164792
LMLM4 Stream Format not found
sync_mpeg_ps: seems to be MP3 stream...
MPEG Stream reached EOF
MPEG packet stats: p100: 1  p101: 1 p1B6: 0 p12x: 0 sli: 1 a: 0 b: 1 c: 0 idr: 0 sps: 0 pps: 0 PES: 2  MP3: 111, synced: 0
Not MPEG System Stream format... (maybe Transport Stream?)
sync_mpeg_ps: seems to be MP3 stream...
MPEG Stream reached EOF
MPEG packet stats: p100: 1  p101: 1 p1B6: 0 p12x: 0 sli: 1 a: 0 b: 1 c: 0 idr: 0 sps: 0 pps: 0 PES: 2  MP3: 111, synced: 0
Not MPEG System Stream format... (maybe Transport Stream?)
==> Found video stream: 0
ds_fill_buffer: EOF reached (stream: video)
LAVF_check: raw ADTS AAC (Advanced Audio Coding)
libavformat file format detected.
[aac @ 0x1032b3e40]Before avformat_find_stream_info() pos: 0 bytes read:65696 seeks:4 nb_streams:1
[aac @ 0x1032b3e40]All info found
[aac @ 0x1032b3e40]Estimating duration from bitrate, this may be inaccurate
[aac @ 0x1032b3e40]After avformat_find_stream_info() pos: 5307 bytes read:65696 seeks:4 frames:50
==> Found audio stream: 0
======= WAVE Format =======
Format Tag: 20557 (0x504D)
Channels: 1
Samplerate: 22050
avg byte/sec: 2285
Block align: 1
bits/sample: 0
cbSize: 0
==========================================================================
[lavf] stream 0: audio (aac), -aid 0
LAVF: 1 audio and 0 video streams found
LAVF: build 3871078
Load subtitles in ./
get_path('sub/') -> '/Users/stephan/.mplayer/sub/'
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
dec_audio: Allocating 1536000 + 131072 = 1667072 bytes for output buffer.
FFmpeg's libavcodec audio codec
libavcodec version 59.21.100 (internal)
Configuration: --enable-gpl --enable-postproc
INFO: libavcodec "aac" init OK!
AUDIO: 22050 Hz, 1 ch, floatle, 18.3 kbit/2.59% (ratio: 2285->88200)
Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4 Audio))
==========================================================================
Building audio filter chain for 22050Hz/1ch/floatle -> 0Hz/0ch/??...
[libaf] Adding filter dummy
[dummy] Was reinitialized: 22050Hz/1ch/floatle
[dummy] Was reinitialized: 22050Hz/1ch/floatle
Trying every known audio driver...
AO: [coreaudio] init([22050Hz][1ch][floatle][0])
AO: [coreaudio] got audio output device ID: 75 Name: External Headphones
AO: [coreaudio] source: 22050.0Hz 32bit [lpcm][9][4][1][4][1] float LE U packed
AO: [coreaudio] using   173 chunks of 512 bytes (buffer len 88576 bytes)
AO: [coreaudio] 22050Hz 1ch floatle (4 bytes per sample)
AO: Description: Darwin/Mac OS X native audio output
AO: Author: Timothy J. Wood & Dan Christiansen & Chris Roccati
Building audio filter chain for 22050Hz/1ch/floatle -> 22050Hz/1ch/floatle...
[dummy] Was reinitialized: 22050Hz/1ch/floatle
[dummy] Was reinitialized: 22050Hz/1ch/floatle
Video: no video
Freeing 0 unused video chunks.
Starting playback...
Increasing filtered audio buffer size from 0 to 90624
A:   2.8 (02.7) of 756.4 (12:36.4)  0.1%
Uninit audio filters...
[libaf] Removing filter dummy
Uninit audio: ffmpeg

Exiting... (Quit)

Patches should be submitted to the mplayer-dev-eng mailing list and not this bug tracker.

Attachments (1)

fools-the-north-wind.aac.zip (1.5 MB ) - added by superbonaci 12 months ago.

Download all attachments as: .zip

Change History (2)

by superbonaci, 12 months ago

comment:1 by reimar, 11 months ago

I don't think MPlayer is really involved.
[aac @ 0x1032b3e40]Estimating duration from bitrate, this may be inaccurate
This comes from FFmpeg, saying it can't find any info on how long it actually is, so it estimates, which of course will not be accurate.
Any reason to believe the file should provide an accurate duration that FFmpeg should be able to read? Could report a FFmpeg bug in this case. But otherwise I would say this is a case of "works as designed/expected" I am afraid.

Note: See TracTickets for help on using tickets.