John Terenzio

Rdio Bitrate Uncovered

JT on 20120523

Lately I've been enjoying Rdio's streaming music service. I am, however, somewhat of an audiophile and was curious as to what codec and bitrate Rdio uses for streaming their songs. I did some searching in the Rdio help forums and on Google and came up empty-handed. Apparently Rdio is rather tight-lipped about audio quality and prefers not to give any details. They also claim to be constantly experimenting with settings. It should also go without saying that they adjust the bitrate depending on the client's bandwidth.

Today I decided to figure it out myself. I wanted to determine the maximum bitrate Rdio offers so I picked three songs at random from popular albums and played them using my wired office connection (which is commercial-grade fiber). It wasn't too difficult to get an answer.

Through the use of Chrome Developer Tools and cURL I was able to download the three audio files from Rdio's servers for closer examination. My first hint came when I saw that every file was named "full-192.mp3". I'm guessing that there is a "full" and "preview" version for each song in multiple bitrates. To confirm the bitrate I used both the file command and iTunes to inspect each file. As I suspected they were all in fact 192kbps CBR. I was also interested in which encoder was used. The files had no ID3 tags but a hex dump revealed a hard-coded tag indicating the files were encoded with LAME 3.98.2.

I have mixed feelings about my findings. I'm happy to see that Rdio uses a very recent version of LAME, which is considered to be the highest quality MP3 encoder, but if 192kbps is indeed the best bitrate available that is somewhat disappointing. I'd personally like to see at least 256kbps and ideally 320. Competitors Mog and Spotify both offer 320kbps, but I strongly prefer Rdio's experience to these other services. I hope that in the near future they catch up.

Comment on HN