Log in

View Full Version : TUTORIAL: Listening to XM Radio on mobile devices


Menneisyys
01-06-2008, 09:17 AM
It was yesterday that I’ve explained (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=2405&more=1&c=1&tb=1&pb=1) how you can listen to Sirius, North America’s one of the two most widely listened-to radio network.

Listening to XM Radio (http://www.xmradio.com/whatisxm/index.xmc), the other major US-based radio broadcasting company is equally easy on all mobile platforms (Windows Mobile, Symbian, Blackberry, iPhone etc.) Let’s take a look at what we have at our disposal.

1. If you have WMA playback support (currently, Windows Mobile only)

... then, just fire up your mobile browser (any browser capable of invoking external applications: Netfront, Internet Explorer or Opera Mobile; Opera Mini or Thunderhawk will NOT work!) and navigate to http://www.xstreamxm.com/mobile/. There, just fill in your login data, select the channel you’d like to listen to, the bitrate and click Go at the bottom:

http://www.winmobiletech.com/012008Sirius/xstreamxmcomMain.png

after this, you’ll be shown the currently playing song title (the Web page is automatically refreshed every 5 second so the artist / title / album metadata is always kept up-to-date) and the default WMA player (by default, on Windows Mobile, the built-in Windows Media Player) is invoked in the background:

http://www.winmobiletech.com/012008Sirius/xstreamxmcomMain2.png

http://www.winmobiletech.com/012008Sirius/xstreamxmcomMain3.jpg

(as with SiriusWM5, the WMA player isn’t passed the metadata info as can be seen in THIS (http://www.winmobiletech.com/012008Sirius/xstreamxmcomMain4.png) WMP screenshot)

2. Desktop-based transcoding

As XM Radio, unlike Sirius, defaults to high quality streams (and doesn’t require you to pay extra for high-quality streams), if you have a GPRS connection OR want to reduce your data fees, you will want to go for a desktop-based transcoding solution – even if you have a WMA streaming-capable platform (for example, Windows Mobile). The sole reason for this is as follows:

The high-quality WMA stream is broadcast at 64 kbps; the low-quality one at 32 kbps. The latter has really bad sound quality – much worse than that of Sirius. If you need to stream the radio at 32 kbps to your handset (because you’re on GPRS or you MUST reduce your data usage), a transcoder run on your desktop computer can easily transcode the original high-quality 64 kbps stream into a 24 or 32 kbps HE-AAC v2 stream, while keeping the same sound quality (YES, even at 24 kbps!). Similarly, should you want to have access to all your favorite channels in orb only (without having to navigate to another homepage), you might also want to consider “migrating” these channels to Orb. Then, however, you won’t be able to use HE-AAC v2; that is, you can’t reduce the bitrate without a major hit on sound quality.

And, of course, if you have a Symbian or iPhone device (and even the latest Blackberry ones!) currently* not being compatible with streaming WMA, your only choice is desktop-based transcoding – as is the case with listening to Sirius on these platforms.

*: as of 01/06/2008; on Symbian, CorePlayer is supposed to be compatible with WMA but is VERY buggy. The OS itself, while it supports playing back individual WMA files, doesn’t support streaming WMA. Hope the Nokia developers implement both HE-AAC v2 and WMA support in their forthcoming Nokia Internet Radio.

For transcoding, you will need / can to use exactly the same tools as with Sirius, with the only exception that, instead of uSirius, you’ll need to use uXM (http://www.millardsoftware.com/uxm) (current, tested version: 1.0RC2) as the source to either Orb or Winamp running on your desktop.

http://www.winmobiletech.com/012008Sirius/uXMMain.png

Configuring uXM, exporting / copying URL’s is done in EXACTLY the same way as with Sirius. The same stands for importing the channel list into Orb and Winamp – you need to exactly the same tricks to make them available for local transcoding. Therefore, please read the Sirius tutorial (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=2405&more=1&c=1&tb=1&pb=1) on all these questions.

Questions, of course, are welcome. Feel free to tell me if you still need a step-by-step tutorial on XM Radio. Again, as everything is done in EXACTLY the same way as with Sirius, I don’t think you’ll need any help.

Menneisyys
01-07-2008, 03:34 PM
UPDATE (01/06/2008): MoDaCo frontpage (http://www.modaco.com/content/forum/263732/View-Topic/)

UPDATE (01/08/2008): There is another, GREAT way of directly importing the full XM Radio playing back WMA streams (it will NOT work if your platform cannot play back WMA streams – that is, currently, anything else than Windows Mobile!). To do this, first, download THIS (http://www.winmobiletech.com/012008Sirius/XM Satellite Radio (High)_Template.asx) ASX file (right click and Save As). Open it with, say, Notepad and press Ctrl-H so that the search / replace dialog is activated.

In the “Find what” textfield, enter “XM_USERNAME”; in the “Replace with”, your e-mail address:

http://www.winmobiletech.com/012008Sirius/EditXMTemplate.png

Then, click the Replace All button.

Do the same mass-change to your password; then, you’ll need to enter “XM_PASSWORD” in the “Find what” textfield (and, of course, your password in the “Replace with”).

Note that you can also change all occurrences of “speed=high” to “speed=low” if you prefer listening to the low-quality stream. (But, again, it’s in no way recommended; if you do want to preserve bandwidth costs / want a GPRS-compliant stream, strongly consider running a transcoder on your desktop PC and using the vastly superior HE-AAC v2 format).

Now, just transfer the saved and modified ASX file to your handset and click it so that your WMA-capable player (WMP by default) imports it:

http://www.winmobiletech.com/012008Sirius/XMPlaylistinWMP.png

Now, you can change any channel from inside the player. Pretty cool, isn’t it?

(Thanks for HowardForums forum member volwrath for the original tip (http://www.howardforums.com/showthread.php?t=1306007)!)