Sending Audio Over Wifi


#1

Hi
Does anyone know of a way to send one channel of audio over the network, with low enough bitrate to support a wifi network? I would like to send audio from a desktop to a tablet/mobile device.
And it would need to be non proprietary, and possible to implement in a juce app.
Does anyone have experience with something like this?


#2

You would need to write up some kind of client/server interaction. JUCE provides several classes to achieve this:

I believe the JUCE demo provides examples of each.


#3

I think binary websockets might be the way to do this without having to open ports etc


#4

Thank you both for responding.
I’m relatively aware of the basics here, but is it really that trivial?
Simply pushing sample buffers through a socket. Is there no need to do data compression, or add error checking etc?
I guess a relatively large buffer would be needed to account for lost packages and connection issues. And you would need to resample at both ends.
And converting to 16 bit samples + dither seems like a good idea to save bandwidth.
But there is no “turn-key” solution out there then as far as you know.
Guess I have to get my hands dirty and make some tests :slight_smile:


#5

Is there no need to do data compression, or add error checking etc?

Error checking - that’s a given.

Data compression? Well, probably! In fact, it’s very likely that you will need to, but it’s entirely dependant on your needs! Looking at your first message:

send one channel of audio over the network, with low enough bitrate to support a wifi network?

How performant should this be - in what kind of context? Real-time? Offline - so uploading to a server and waiting for something back, like in a P2P-style setting?

The concepts we have provided cover both cases at rudimentary levels, but it’s up to you to create and configure systems as per your needs.