Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: fb2k 1.6.6 & bugs with M4A files (Read 1931 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

fb2k 1.6.6 & bugs with M4A files

When I move the slider on seekbar playing M4A files, fb2k stop playing.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #1
When I move the slider on seekbar playing M4A files, fb2k stop playing.

I use 1.6.6 also and have no problems with the seekbar on M4A files.  Does it happen with only certain M4A files, or all of them?

Re: fb2k 1.6.6 & bugs with M4A files

Reply #2
Can I upload my sample to check it yourself?

Re: fb2k 1.6.6 & bugs with M4A files

Reply #3
Sure go ahead.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #4
The sample file actually isn't a "M4A", it's a dash-wrapped AAC with an MP4 extension, which is why it won't seek in Foobar.

What you need to do is extract the AAC and re-wrap it into a M4A container.  You can do this easy in one "go" if you have ffmpeg.exe, if you don't you can download a 64-bit copy here: https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z ;  extract ffmpeg.exe from the "bin" subfolder inside the 7z.

Then, put all the files with an *.mp4 extension you wish to change into a separate folder, and from within that folder run this command (change the path to ffmpeg.exe to wherever yours is):

Code: [Select]
FOR %F IN (*.mp4) DO C:\ffmpeg\ffmpeg.exe -i "%F" -codec copy "%~nF.m4a"

This will re-wrap all the MP4 files as M4A losslessly;  the original MP4 files will be kept (you can delete those later if you choose).  Now they can be played normally in Foobar with seek.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #5
MPC-HC plays these files fine & I can seek these files without issues, even with Groove Music!

Re: fb2k 1.6.6 & bugs with M4A files

Reply #6
foobar2000 intentionally does not support seeking for these formats, by omission of support for brute force walking the entire file to determine the length on every open.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #7
It is a waste that fb2k still has this problem after all this time. Can I request to fix it? (I don't want to use 2 players for playing audio files)

Re: fb2k 1.6.6 & bugs with M4A files

Reply #8
AFAIUnderstand, the problem is that the file is not what the extension claims it to be? It should be an .aac, but someone has just renamed it? (If you replace the extension by ".wav", some players will refuse to play it and others will dig through and identify it.)

So the fix for a ".MP4" that isn't MP4, is to put it in an MP4 container, and then it should work. (.m4a is just an audio-only MP4). That repair is fully lossless.

@sveakul : This is not one of those that need the -bsf:aac_adtstoasc filter?

Re: fb2k 1.6.6 & bugs with M4A files

Reply #9
Format                         : dash
Codec ID                       : dash (iso6/mp41)
File size                      : 4.95 MiB
Duration                       : 5 min 20 s
Overall bit rate               : 130 kb/s
Encoded date                   : UTC 2019-12-02 01:18:21
Tagged date                    : UTC 2019-12-02 01:18:21

Audio
ID                             : 1
Format                         : AAC LC
Format/Info                    : Advanced Audio Codec Low Complexity
Codec ID                       : mp4a-40-2
Duration                       : 5 min 20 s
Bit rate                       : 128 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                    : 4.89 MiB (99%)
Title                          : ISO Media file produced by Google Inc.
Encoded date                   : UTC 2019-12-02 01:18:21
Tagged date                    : UTC 2019-12-02 01:18:21

The format is: .DASH, but renaming it to .M4A fixed it & all players (Including defaults on Android & iOS. Seeking is OK.) play it fine, except fb2k.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #10
Where can I get the offending file?
I have some DASH samples but no trouble with seeking within those.
Microsoft Windows: We can't script here, this is bat country.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #11
Hi Peter.
Check your DMs. You know Google!

 

Re: fb2k 1.6.6 & bugs with M4A files

Reply #12
AFAIUnderstand, the problem is that the file is not what the extension claims it to be? It should be an .aac, but someone has just renamed it? (If you replace the extension by ".wav", some players will refuse to play it and others will dig through and identify it.)

So the fix for a ".MP4" that isn't MP4, is to put it in an MP4 container, and then it should work. (.m4a is just an audio-only MP4). That repair is fully lossless.

@sveakul : This is not one of those that need the -bsf:aac_adtstoasc filter?
Hi Porcus, the file OP PM'd me was not just an extension rename but did spec out as a dash wrapped AAC that wouldn't seek even when renamed.  You're right that extracting the AAC and putting it into a M4a container fixed the seek.

I'm afraid I have no knowledge of the -bsf:aac_adtstoasc filter you asked about, I just ran with what I posted as my command line and trusted ffmpeg to make a direct copy of the codec content and re-wrap, which fixed the seek.  Can you describe its function?

Re: fb2k 1.6.6 & bugs with M4A files

Reply #13
Duplicate post, please delete.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #14
I'm afraid I have no knowledge of the -bsf:aac_adtstoasc filter you asked about, I just ran with what I posted as my command line and trusted ffmpeg to make a direct copy of the codec content and re-wrap, which fixed the seek.  Can you describe its function?

https://ffmpeg.org/ffmpeg-bitstream-filters.html#aac_005fadtstoasc
Convert MPEG-2/4 AAC ADTS to an MPEG-4 Audio Specific Configuration bitstream.
This filter creates an MPEG-4 AudioSpecificConfig from an MPEG-2/4 ADTS header and removes the ADTS header.
This filter is required for example when copying an AAC stream from a raw ADTS AAC or an MPEG-TS container to MP4A-LATM, to an FLV file, or to MOV/MP4 files and related formats such as 3GP or M4A. Please note that it is auto-inserted for MP4A-LATM and MOV/MP4 and related formats.

So, no need to insert it manually in this case.

Re: fb2k 1.6.6 & bugs with M4A files

Reply #15
Thanks Rollin!