Below is a post from xda. Anyone here want to give it a crack? It seems as if all that needs to be done is trick the Pandora server into thinking our application is running on a device which would get the higher bitrate. I can't listen to this horrible stream quality anymore.
Originally Posted by
RustyGrom
I'm far from a 'talented decompiler' but I just looked into the app and took a packet capture and found some things...
It's sending a HTTP user agent of "Pandora-WindowsMobile-0.9" to the server. The initial request is just...
http://tuner.pandora.com/services/aj...OQ9C&type=full
to which they respond "HTTPPayloadLine: {"stat":"ok","result":{"upgradeRequired":false} }"
then a bunch of https traffic gets bounced around (can't see in it).
We then get a url for the graphic of the artist (just a jpg).
Then it starts the stream.
Here's an example of one such stream...
http://208.85.41.38/access/?version=...266S4Z4w%3D%3D
The stream we get back is a WMA stream
Windows Media Audio 9
32 kbps, 44 kHz, stereo 1-pass CBR
and there's your problem... 32kbps!!!!!!! ugh. I tried some basic flips of the "version" string but didn't work, no clue what valid options are.
Grabbing similar info from the browser player on a windows machine returns a URL like...
http://audio-sjl-t1-2.pandora.com/ac...o8BLo26nA8s%3D
which is a 64kbps AAC stream.
So is WM even capable of playing the latter stream? not sure. But looking in the binary, I don't see a real easy way of just changing a 32 to a higher number to get a higher bitrate. Looks like the pandora server is deciding for us based on the client and I'm not sure how easy it would be to 'fake' a different client.