Okay, I looked into this from C/C++ about 2 years ago, and the only way to play mp3's was to license a very expense decoder. I'm wondering if the state of that situation has changed since then... how hard is it to play mp3's from code anymore?


Posted on 2002-05-02 12:28:14 by Chalain
You could try FMOD (www.fmod.org). I had some problems with it playing several mp3s after each other (weird unexpected crashes, delays before playing etc) but that may be something else. It does require you to add a 150 (?) kb dll to your program.

The easiest way is to use the MCI control, have a look at baZiK's movie player (search the board for it), it plays almost anything the system can play (including mp3s).

Posted on 2002-05-02 12:42:45 by Thomas
Well I did this about hmm 5 years ago? The site for the SDK I used is still active but it looks like they are not done with the next version... and I dont see links to any of the previous.

Anywho check back occationally.

We will have the following SDKs available for evaluation by the end of Q1 2002.

Posted on 2002-05-02 13:29:16 by Graebel
It would be nice to see one developed for the community :)

Im not sugesting this would be an easy task. Does anyone know of 1) any 'technical' info on how the format is encrypted? and 2) how to spend 'data' to the sound card reliably on all OS's?

To me these would be the two biggest hurdles. Afte this, is just time and effort.

I would be interested on working on something like this as a side project with someone. ... (who isnt expecting to get it done in a month ;) )

Posted on 2002-05-02 17:48:37 by NaN
Actually there's one MP3 Player written in assembly at Icz site ;)
Posted on 2002-05-02 18:04:45 by JimmyClif
This Don't seem to work fine with mp3 files
like the '****ing MCI'
but it's playing wave (even if it's not PCM but Mp3')
Posted on 2002-05-02 20:27:46 by Thor0Asgard
NaN, mp3 is compressed ('encoded'), not encrypted :). There ought
to be quite some information available on the format, after all it's
a pretty open format. The ISO source should still be available on
the net (legally and everything). Last time I looked around, all it
took was a little googling. Never got around to actually using the
sourcecode though :).
Posted on 2002-05-02 20:52:48 by f0dder
That was my thoughts as well, since there is alot of different MP3 walkmans on the market. I kinda figured it would be open knowledge. However, im in no hurry to embark on such a project, so i thought i would ask if anyone had already done the 'google' searching for technical info.

I want to get my edit control going first :)

But I will still work in it on the side with someone if they are interested. If not, no biggy, i got enough work to do ;)

PS: I suppose you think masm is still an asssembler too :grin: (its a compiler *lol*).

Posted on 2002-05-02 22:05:17 by NaN

writing an MP3 player from crash (not using MCI, DirectMedia Filters etc.) is a reasonable hard task to solve.

To understand the whole idea behind the scenes you'll need to get ISO/IEC 11172-3 which is 'normally' not available for free. In addition the Fraunhofer Institute reference code can be helpfull.
After that ISO/IEC 13813-3 may be of interest if you want to support LFE (lower frequency extenions) and AAC (adavanced audio coding).

Regarding the license fees you have to pay for each decoder and encoder in general. As far as I remember Thomson and Fraunhofer are the patent holders. But there are certain cases where implementations of decoders aka. decompressors were not be charged.
Bye Miracle
Posted on 2002-05-03 04:15:32 by miracle

PS: I suppose you think masm is still an asssembler too (its a compiler *lol*).

It's an assembler alright ;). While there might be some discussion
whether to call masm an assembler or a compiler (since it's a rather
"highlevel" assembler with all the macros and fluffystuff), there's
no way whatsoever you can say that MP3 is an "encrypted" format.
There's nothing done to hide/obfuscate the data, no cryptographical
code involved (etc). Yes, sound data is *encoded*, but not *encrypted*.
Posted on 2002-05-03 05:42:18 by f0dder