Low bandwidth radio


When I’m on fieldwork I sometimes have to do lab work back in the city, grinding soils, or weighing grass biomass samples. A lot of this work is quite mindless, repeating the same protocol hundreds of times. It’s nice to have some music, podcasts, or an audiobook to listen to while I’m doing this work, to pass the time. I also like listening to the radio, mainly through internet radio stations. I wrote a post a while back demonstrating a small fzf script I use to play radio stations through mpv .

Often when I’m doing the lab work in the field, my internet connection is not that great. I’m either on very low bandwidth wifi, or using my mobile data connection, tethered to my laptop. I have been doing some research to find internet radio stations which offer very low bandwidth streams. I was also curious about the patterns of internet radio station quality and geographic location.

There are a few internet radio station databases available on the web, for example:

However, I had difficulty finding a database with an open API or where I could download the full database. I settled with the database available at radio-browser.info , which has a JSON endpoint where you can return all records.

The database has 31894 records, though 159 of these hadn’t been online for over a week at the time when I downloaded the database (2022-05-06), so I discarded those. The data in the database are a bit messy in terms of bitrate. A number of stations supposedly have a bitrate of 34400400 kbps (34.4 gbps) for example. I decided to discard any stations with a recorded bitrate higher than 4500 kbps, as I don’t think I’d ever listen to these streams if the bitrate is as high as it is actually recorded. This removed 37 stations. Of those stations with the highest bitrates, 16 are from Russia, 5 are from Spain, 5 are from the USA, and 11 from the rest of the world. I also discarded stations where the bitrate was recorded as 0, which removed 5880 stations. After all this filtering, I was left with 25863 records.

The lowest bandwidth stream I could find was 3 kbps, from http://live.japanesemusicid.com:8000/japanesemusic . It’s an AAC+ encoded stream, and when I listened, it seemed like the audio quality was mostly fine.

I found that for talk radio especially, I could listen to anything as low as 16 kbps without really even noticing the difference from a high quality stream. The quality of sound is absolutely fine, even if the volume is turned up or I’m listening through headphones.

For music, my minimum threshold for enjoyment is a tiny bit higher, but still, a low bitrate stream is perfectly adequate for listening to stuff in the background while I’m doing lab work. I found that 48 kbps was fine for most music, though for listening on my big speakers I could tell the difference up to about 128 kbps.

As I had the data, I did a bit more light analysis to see if there were any patterns.

I found that there wasn’t really any correlation between bitrate and click count.

Scatter plot of bitrate vs. click count.

The USA and Germany had the highest number of stations recorded. Geographically, many stations originate from Europe and North America, also Russia. Africa has very few stations overall. In South America, Brazil and Argentina have lots of stations, but nearby Bolivia, Paraguay, Guyana and Venezuela have very few.

Bar graph of number of stations per country.
Map of number of stations per country.

128 kbps is by far the most common bitrate, with MP3 being the most common format. Interestingly, for 64, 48, and 32 kbps streams, AAC+ is more common than MP3.

Number of stations by bitrate and codec.

For my cut-off of low-bitrate as 64 kbps, I found that the USA (which also had the most stations overall) and Mexico had the most low-bitrate streams.

Bar graph of stations by country split by high and low bitrate.

As a percentage of total number of streams, many of the countries with the lowest bitrates were in Africa or South America, but this is likely because they had few streams in th database to begin with.

Low bitrate streams per country as a percentage of the total number of streams.

I read some other blog and forum posts about internet radio streaming. It seems like other people also want access to low bitrate radio streams, but consistently radio stations are shutting down those URLs. Maybe the radio stations would prefer that you download their dedicated app or visit their website to listen. Maybe it’s simply that only a small portion of users actually stream via a URL now, and it’s not worth the maintenance to keep them up and running.