EmbeddedRelated.com
Forums

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.