EmbeddedRelated.com
Forums
The 2025 Embedded Online Conference

PIC MP3 Decoder

Started by bmearns June 16, 2006
I'm looking for code for any of Microchip's dsPICs that will decode an
MP3 file stream into PCM data. C is preferable, but asm will work fine,
as well.

Does anyone have any leads on this?
Thanks.

bmearns wrote:
> I'm looking for code for any of Microchip's dsPICs that will decode an > MP3 file stream into PCM data. C is preferable, but asm will work fine, > as well. > > Does anyone have any leads on this? > Thanks.
Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz for stereo. Of course, float point multiplers are needed as well.
linnix wrote:
> bmearns wrote: > > I'm looking for code for any of Microchip's dsPICs that will decode an > > MP3 file stream into PCM data. C is preferable, but asm will work fine, > > as well. > > > > Does anyone have any leads on this? > > Thanks. > > Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz > for stereo. Of course, float point multiplers are needed as well.
But it's a dsPIC. Probably won't make much of a difference I guess. I think you can do MP3 decode in fixed point can't you?
In article <1150486387.869819.79290@u72g2000cwu.googlegroups.com>, 
me@linnix.info-for.us says...
> > bmearns wrote: > > I'm looking for code for any of Microchip's dsPICs that will decode an > > MP3 file stream into PCM data. C is preferable, but asm will work fine, > > as well. > > > > Does anyone have any leads on this? > > Thanks. > > Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz > for stereo. Of course, float point multiplers are needed as well. > >
And you arrived at those number how, exactly?
James Beck wrote:
> In article <1150486387.869819.79290@u72g2000cwu.googlegroups.com>, > me@linnix.info-for.us says... > > > > bmearns wrote: > > > I'm looking for code for any of Microchip's dsPICs that will decode an > > > MP3 file stream into PCM data. C is preferable, but asm will work fine, > > > as well. > > > > > > Does anyone have any leads on this? > > > Thanks. > > > > Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz > > for stereo. Of course, float point multiplers are needed as well. > > > > > And you arrived at those number how, exactly?
Based on a 32 bits x86, unless the PIG (sorry, PIC) is faster than the x86.
linnix schrieb:
> bmearns wrote: >> I'm looking for code for any of Microchip's dsPICs that will decode an >> MP3 file stream into PCM data. C is preferable, but asm will work fine, >> as well. >> >> Does anyone have any leads on this? >> Thanks. > > Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz > for stereo. Of course, float point multiplers are needed as well.
No, even an ARM7TDMI with ~30 MHz and 50 kB ROM can decode MP3.
bmearns wrote:
> I'm looking for code for any of Microchip's dsPICs that will decode an > MP3 file stream into PCM data. C is preferable, but asm will work fine, > as well. > > Does anyone have any leads on this? > Thanks. >
Seems that dsPIC based MP3 player was an entry in Microchip's 2004 dsPIC contest: http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2018&mcparam=en021873 but cannot find anywhere any article describing it.
Andreas Schwarz wrote:
> linnix schrieb: > > bmearns wrote: > >> I'm looking for code for any of Microchip's dsPICs that will decode an > >> MP3 file stream into PCM data. C is preferable, but asm will work fine, > >> as well. > >> > >> Does anyone have any leads on this? > >> Thanks. > > > > Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz > > for stereo. Of course, float point multiplers are needed as well. > > No, even an ARM7TDMI with ~30 MHz and 50 kB ROM can decode MP3.
Yes, ARM7 or 9 would be a better choice. 30MHz would be tight and fitting a floating point C library in 50 K is impossible. Don't know about asm, and never want to try anyway. I would settle with 50MHz 128K flash.
In article <1150583554.893825.313680@c74g2000cwc.googlegroups.com>,
linnix <me@linnix.info-for.us> wrote:

> Andreas Schwarz wrote: > > linnix schrieb: > > > bmearns wrote: > > >> I'm looking for code for any of Microchip's dsPICs that will decode an > > >> MP3 file stream into PCM data. C is preferable, but asm will work fine, > > >> as well. > > >> > > >> Does anyone have any leads on this? > > >> Thanks. > > > > > > Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz > > > for stereo. Of course, float point multiplers are needed as well. > > > > No, even an ARM7TDMI with ~30 MHz and 50 kB ROM can decode MP3. > > Yes, ARM7 or 9 would be a better choice. 30MHz would be tight and > fitting a floating point C library in 50 K is impossible. Don't know > about asm, and never want to try anyway. I would settle with 50MHz > 128K flash.
I may be an old fogey, but I remember when computers came with a 4k ROM for integer BASIC or 8k for floating-point BASIC (and we LIKED it!). An adequate, if stripped down, floating point library shouldn't require 50k. On the other hand, I believe I've seen a design article for a PIC (or similar class) MP3 player. Decoding was done by a dedicated commercial MP3 ASIC. -- David M. Palmer dmpalmer@email.com (formerly @clark.net, @ematic.com)
On Sat, 17 Jun 2006 19:25:04 -0600, "David M. Palmer"
<dmpalmer@email.com> wrote:

>In article <1150583554.893825.313680@c74g2000cwc.googlegroups.com>, >linnix <me@linnix.info-for.us> wrote: > >> Andreas Schwarz wrote: >> > linnix schrieb: >> > > bmearns wrote: >> > >> I'm looking for code for any of Microchip's dsPICs that will decode an >> > >> MP3 file stream into PCM data. C is preferable, but asm will work fine, >> > >> as well. >> > >> >> > >> Does anyone have any leads on this? >> > >> Thanks. >> > > >> > > Sure, just need a PIC with 500K program space, 50MHz for mono and 80MHz >> > > for stereo. Of course, float point multiplers are needed as well. >> > >> > No, even an ARM7TDMI with ~30 MHz and 50 kB ROM can decode MP3. >> >> Yes, ARM7 or 9 would be a better choice. 30MHz would be tight and >> fitting a floating point C library in 50 K is impossible. Don't know >> about asm, and never want to try anyway. I would settle with 50MHz >> 128K flash. > >I may be an old fogey, but I remember when computers came with a 4k ROM >for integer BASIC or 8k for floating-point BASIC (and we LIKED it!). >An adequate, if stripped down, floating point library shouldn't require >50k. >
You could always have a look at http://yampp.com/ Alan
>On the other hand, I believe I've seen a design article for a PIC (or >similar class) MP3 player. Decoding was done by a dedicated commercial >MP3 ASIC.
-- Sell your surplus electronic components at http://ozcomponents.com Search or browse for that IC, capacitor, crystal or other component you need.

The 2025 Embedded Online Conference