first off I have already found a wealth of information here so thank you! I am hoping to get some general feedback on a project I'd like to work on. Here is an outline.
I'd like to be able to transmit 8 channels of 24 bit 48KHz audio over ethernet to a collection of 6 to 8 receivers all connected through a switch. Here is my thought process.
Network Speed - 8 channels * 24 bits = 24 bytes. That is below the minimum of 46 bytes (non 802.1Q) so we'll just work with that minimum. Our minimum frame size then is 84 bytes. At 48KHz this would imply an average throughput of ~32.3 mbit/s on the network. Given this result a fast ethernet network with appropriate switches would seem to be OK. Does this analysis seem accurate?
Note that I'm not too too concerned with perfect playback so an occasionally dropped packet isn't a big deal. Given this I don't think I want to get into sample rate conversion for the network transmission.
Sidenote - originally I wanted to work on a 10Base-T network because a lot of MCUs had integrated 10Base-T MAC/PHY. Given the minimum 84 byte frame size though... this would restrict sample rates to a little less than 15KHz yuck!
Just to be sure I'm thinking about this correctly, I cannot violate the 84 byte frame minimum if I want to be able to use commercial switches correct?
a. Ethernet Controller - I'd like a 100Base-T ethernet controller with built in MAC/PHY. The problem though is, it needs to be able to communicate with the MCU fast enough to push all the audio data through. 8 channels * 24 bits * 48KHz = 9.22 mbit/s. I'm thinking this is going to be too fast for SPI. The ENC424J600, in addition to SPI, has a parallel interface which seems to be useful for faster speeds. Page 53, gives some theoretical performance figures.
b. MCU - Which ever one I choose will need to be beefy enough to read in all 8 channels of audio data from the Ethernet controller, do some very basic DSP on then (channel mixing), and send out the data to a stereo 24 bit DAC at 48KHz. In addition to this it also needs to do some basic interfacing with panel I/O. Any suggestions on a suitable MCU?
Note that I'm looking at using this DAC.
Any comments or thoughts you guys have that might be useful to this project would be very much appreciated!