[Wine] AudioToolbox version too old

Ryan Woodsmall rwoodsmall at mac.com
Wed Apr 28 20:24:18 CDT 2010


>> configure: AudioToolbox version too old, mp3 codec won't be supported.

>No, this is something called a regression.  This is good to know, but 
>the problem is that someone updated the Sound API code and did not take 
>into account the older Intel Macs that cannot or should not run 
>Leopard/Snow Leopard.

No, this is not something called a regression.  And all Intel Macs can run Leopard or Snow Leopard; Apple started shipping Intel machines in January 2006, stopped shipping new PowerPC Macs in August 2006, and Leopard came out in October 2007.  10.5 and 10.6 have now been out longer than the entire PowerPC to Intel transition PLUS the time only Tiger was available on Intel Macs.  Tiger's dead.

No sound API changes have been made that should cause this.  It's probably new code introduced recently to make MP3 decoding on OS X easier to support using OS-supplied APIs.  From http://www.winehq.org/announce/1.1.41 :

Aric Stewart (2):
      winemp3.acm: Support mp3 decoding on Mac OS/X Leopard systems.
      . . .

If you're building against the 10.4 SDK, it's probably exactly what it appears to be; i.e., the AudioToolbox API is too old on Tiger.  From there's an ifdef in dlls/winemp3.acm that basically short circuits the checks on CoreAudio/AudioToolbox if you have valid mpg123 headers installed:

**
#ifdef HAVE_MPG123_H
# include <mpg123.h>
#else
# ifdef HAVE_COREAUDIO_COREAUDIO_H
#  include <CoreFoundation/CoreFoundation.h>
#  include <CoreAudio/CoreAudio.h>
# endif
# ifdef HAVE_AUDIOTOOLBOX_AUDIOCONVERTER_H
#  include <AudioToolbox/AudioConverter.h>
# endif
# ifdef HAVE_AUDIOTOOLBOX_AUDIOFILE_H
#  include <AudioToolbox/AudioFile.h>
# endif
# ifdef HAVE_AUDIOTOOLBOX_AUDIOFILESTREAM_H
#  include <AudioToolbox/AudioFileStream.h>
# endif
#endif
**

You can probably use mpg123 (if you can get it to build against the 10.4 SDK) to provide MP3 decoding support:

http://www.mpg123.de/

That's what I'm doing.  Again, Tiger is basically dead too, so you could target Leopard+Snow Leopard and avoid that altogether.



More information about the wine-users mailing list