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: APE command line tool (mac.exe) decoding error since version 7.78 (Read 6380 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: APE command line tool (mac.exe) decoding error since version 7.78

Reply #25
AIFF-C adds a data type to the COMM chunk. That is for PCM either NONE (which means big-endian) or sowt (which means little-endian). sowt is twos mirrored. See https://www.mmsp.ece.mcgill.ca/Documents/AudioFormats/AIFF/AIFF.html for details.
Music: sounds arranged such that they construct feelings.

Re: APE command line tool (mac.exe) decoding error since version 7.78

Reply #26
Thanks.

It looks like sometimes there's a four byte compression type after the COMM header.  Some of my AIFF files don't have four extra bytes.

So if I read four more bytes and they're sowt, I'll switch the endian-ness next build.  I'll cut in a couple days.

Thanks for the help!

Re: APE command line tool (mac.exe) decoding error since version 7.78

Reply #27
As far as I understand all this ... and that's a big disclaimer:

AIFC must have COMM with "compressionType" (and "compressionName").
And the Monkey's encoder should reject AIFC with compressionType not being "NONE" or "sowt".  Otherwise you will get files that play back wrong, say alaw/ulaw being played as if they were plain LPCM. (This presuming that the .ape format cannot convey the information from the compression type to the player?)

And at the risk of kicking in open doors, apologies for that: there have been players that do not know that 8-bit sowt is a thing. It is (call it dumb or not, but if an application has decided to use sowt then why make an exception just because it is 8 bits?). Because 8 bit sowt is a thing (and is signed), it means you cannot outright refer sowt to "be treated as WAVE".

Re: APE command line tool (mac.exe) decoding error since version 7.78

Reply #28
Thanks.

I'll try this next build:
Changed: AIFF files other than sowt or NONE for the compression are rejected.

Hopefully there won't be posts here about files I no longer support :))