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: Foobar can't play 48khz IMA ADPCM (Read 1817 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Foobar can't play 48khz IMA ADPCM

IMA ADPCM isn't exactly a format that's used anymore, but I noticed that Foobar can't play 48khz IMA ADPCM. It just says "Unsupported Format or Corrupted File". It plays 44.1khz IMA fine, as well as 32. It plays 48khz MS ADPCM fine as well. It only seems to be IMA ADPCM that has an issue, and only at 48khz. I'm not sure what to do to fix this. Windows Media Player and VLC Media Player play them back fine.

Re: Foobar can't play 48khz IMA ADPCM

Reply #1
Fixed in foobar2000 1.3.17 beta 2.
Not sure what the problem is, a custom IMA ADPCM decoder has been added - as a bonus foobar2000 mobile will decode these files as well from the next update.

*plays Westwood game music rips from the iPhone*
Microsoft Windows: We can't script here, this is bat country.

Re: Foobar can't play 48khz IMA ADPCM

Reply #2
Good that the program does not rely on Microsoft Windows for this anymore. But the decoder in Foobar 1.4.3 is not accurate at low levels, the amplitude jumps at block boundaries, which produces zipper noise during fadeout. The noise does not occur with ADPCM-xq, ACM or Sound Forge.

I see that length estimation has improved, but the output is still not gapless. An incomplete block is dropped, and blocks padded with silence produce a gap. The precise number of samples in correctly encoded files is available in the 'fact' chunk, and could be used if the number is close to the value obtained from the size of 'data'.

(dataSize - ceil(dataSize/nBlockAlign)*7/2*nChannels)*2/nChannels

Attached files encoded by ACM and David Bryant's adpcm-xq with incomplete last block.

Re: Foobar can't play 48khz IMA ADPCM

Reply #3
Noted, thanks for reporting.
Microsoft Windows: We can't script here, this is bat country.

Re: Foobar can't play 48khz IMA ADPCM

Reply #4
Fixed for the next update - output is now bit identical to what adpcm-xq produces.
Microsoft Windows: We can't script here, this is bat country.