[Icecast] streaming to dialup users gives low quality audio

Geoff Shang geoff at hitsandpieces.net
Fri Dec 30 17:46:35 PST 2005


Dave wrote:

> Hello,
>   I've got two streams, one for broadband, one for dialup. Well, having had 
> occation to use a dialup connection recently i checked the dialup stream. 
> Although it was streaming what the broadband stream was, the audio quality 
> was audibly worse. It didn't buffer, but it didn't sound as clear as the 
> broadband stream.

This is expected.  If dialup streams sounded as good as broadband streams, 
everyone would just use dialup streams.

> I used lame to encode the tracks to mp3 and used it's 
> standard preset while doing it. In my ices.conf file for the dialup stream i 
> originally had a samplerate of 22050, two chanels, and a bitrate of 24.

This is going to sound pretty horrible, since MP3 can't really do 22.05kHz 
at 24kbps stereo.

> I 
> changed the bitrate up to 56, which resulted in a noticeable audio increase 
> in quality but the buffering was unacceptable. If anyone has settings that 
> work i would be interested in hearing about them.

You're not going to be able to send 56kbps over a modem, as has been stated 
already.  IMHO, 40kbps would probably be your absolute top for a 56k modem. 
If you want to be accessible to 33.6/28.8k modems, don't go any higher than 
24kbps.

At this rate, you hit the stereo vs mono argument.  If you want clearer 
audio, go mono.  But if you want stereo, you'll have poorer audio.

In my experience, you can get acceptable audio at 24kbps mono with 22.05kHz 
or 24kbps stereo with 11.025kHz.  Note that these aren't the LAME default 
sampling rates for these bit rates.

If you want to go 40kbps, some quick informal testing gives the following 
results:

Stereo: LAME default is 16kHz, but to my ears, you can get acceptable 
results at 22.05kHz.

Mono. LAME default is 24kHz, but 32kHz sounds just fine.  44.1kHz is 
starting to push it, but since it gets rolled off anyway, there's really no 
point in going that high.

At 32kbps, LAME's defaults are 16kHz stereo and 22.05kHz mono, and these 
are what I'd probably recommend.

This is just from some quick informal testing, you should probably listen 
yourself and see what you like.

For quick and dirty testing, I used:

lame --quiet -b <bitrate> [-a] [--resample <samplerate>] <infile.wav> - 
|mpg123 -

Where -a is for mono, and --resample is for changing the sample rate from 
the default.

Oh and you should use a relatively recent LAME release like 3.96.  Versions 
prior to 3.93 or so had noticeably poorer audio at lower sampling rates.

Of course, other codecs will perform better.  I'd advocate for Ogg Vorbis 
myself.

Hope this helps,

Geoff.



More information about the Icecast mailing list