Internet MP3 Radio
.
Below is the link for a video demo:
Code Page:
Import programlab3_Radio_design
This program plays an internet radio audio stream like Shoutcast.
This MBED internet radio project uses VS1053 MP3 decoder to decode the incoming MP3 radio stream coming from shoutcast.
Pin Diagram:
Mbed and VS1053 Refer : http://mbed.org/cookbook/VS1002-MP3-Decoder
Mbed and RJ45 ethernet adapter
Mbed adapter TD+ > P1 TD- > P2 RD+ > P7 RD- > P8
Mbed and USB board:
D+ > D+ D- > D- Vout > Vcc Gnd > Gnd
VS1053 and audio jack Gnd > Gnd Right > Rsh Left > Tsh
Issues: Playing the stream directly on the fly gives a lot of distortion as reading from the Ethernet port is much faster than the Mp3 decoding speed.Some bits from the stream are lost in the process and hence we get a distorted output. The work around we tried was to buffer the Mp3 stream to a USB Flash drive and then pass it to the decoder in chunks of 512 bytes. This leads to a finite write delay for storing the Mp3 stream to the flash drive.Hence the radio doesn't play continuously but in intervals depending on the size of stream that you write to the drive. We thought about solving this issue by using direct DMA access to the flash drive and simultaneously read the data into the decoder. But that wasn't possible as the MBED processor is the master of the SPI bus and is busy servicing the DMA routine. Another work around was to use two MBED boards, one to write and other to read. However that didn't solve it as they share the same USB drive.
3 comments on Internet MP3 Radio :
Please log in to post comments.
Hello, I have a strange problem
I have built my own MP3 project using the a SparkFun VS1033D breakout board. It works great. However, after several hours of playback, it begins to fail. I have documented the problem here http://www.instructables.com/id/Music-Playing-Alarm-Clock/step16/EMERGENCY-Fixing-the-Decoder/
Have you tested your project for prolonged period of time? Did you ever encounter a similar issue?