Log in

View Full Version : ROUNDUP: Bluetooth remote control (AVRCP) compatible media players


Menneisyys
10-10-2006, 08:52 PM
Audio/Video Remote Control Profile (AVRCP) is a very nice feature of Bluetooth. Accessible on Advanced Audio Distribution Profile (A2DP) (http://en.wikipedia.org/wiki/A2DP)-capable Bluetooth Hi-Fi stereo headphones, they allow for remote controlling your media player on the Pocket PC: going straight to the next or back to the previous song or pause/resume or stop/restart the current one.

Now that I’m working on a big roundup of Bluetooth Hi-Fi stereo headphones, I’ve also thoroughly scrutinized the AVRCP capabilities of current Pocket PC multimedia players. In this article (which will be followed a lot of similar articles discussing AVCRP (and, naturally, A2DP) compliance of different stereo BT headphones), I elaborate on what you need to know about remote controlling your Pocket PC-based media player from the Plantronics Pulsar 590A stereo headset.

Unfortunately, current headsets are far from being compatible with all multimedia players and Pocket PC's. There are several multimedia players and Pocket PC's (more precisely, specific Bluetooth stack / A2DP / AVCRP implementations) not compatible with the Pulsar while it's compatible with other models and vice versa (for example, the built-in A2DP of the WM5-upgraded 2.01 hx4700 works just great with the 590A while it's almost useless with the Moto HT820). Therefore, what you read here mostly applies to the Pulsar only. Still, if you have (or, plan to purchase) a different model, this article will be really worth reading because it discusses a lot of additional hacks and tips - not only related to the Pulsar headset. For example, in addition to a lot of "which is the best media player I should look for", I also provide some dependable CPU usage statistics (playing a 112 kbps MP3 (Värttinä – Oi Dai / Oi Dai (http://www.varttina.com/main.site?action=siteupdate/view&id=46))) so that you will be able to compare the battery usage of each application (with and without the equalizer enabled – it’s only with TCPMP that enabling the equalizer caused some visible CPU usage increase. The CPU usage data was measured on my Pocket Loox 720; with WMP10, on my WM5 hx4700).

The, currently, four remote controllable third-party applications (the built-in Windows Media Player (WMP) is AVRCP-compliant in both version 9 and 10) are as follows:


The free, excellent Mortplayer (http://www.sto-helit.de/modules/edito/content.php?id=28) (current, tested version: 3.31RC6 released slightly over a month ago). Its only downside is the lack for WMA support (the other three alternate clients support WMA.) I also recommend this thread (http://www.aximsite.com/boards/showthread.php?t=135737) on the AVRCP support of MortPlayer.
The free, also excellent TCPMP (http://tcpmp.corecodec.org/) (current, tested version: 0.72RC1 released about half a year ago)
Pocket Player (http://www.conduits.com/products/player/) 3.0 by Conduits (current, tested version: 3.0 released two weeks ago; no build data available)
The fourth Pocket PC multimedia application to support AVRCP is 40iPlay (current, tested version: 10/01/2006 released two weeks ago), which should be accessible here (http://40th.com/). If you get a screen with a simple link when you visit the page like this (http://www.winmobiletech.com/sekalaiset/40thforbidden.png), then, you’re out of luck: your IP address is banned off the site as is the case with many people having tried to access the page. Unfortunately, the developer doesn’t seem to be wanting to remove the ban of, it seems, half of the world (I also recommend this thread (http://pocketpcmag.com/forum/topic.asp?TOPIC_ID=14815) on this problem). If you also encounter this problem, I recommend trying it via alternate means; for example, accessing the page via your dial-up / mobile account. It’s via my GPRS account that I access the page.

It’s worth noting that, while 40iPlay runs flawlessly on my considerably older, PXA255-based WM2003 iPAQ 2210, it refuses to work on my (newer, PXA272-based) WM2003SE Pocket Loox 720 complaining about it not having an XScale CPU (http://www.winmobiletech.com/sekalaiset/iPlayDoesntRunOnPL720.bmp.png). This is certainly a bug in the current version; the older versions I’ve tested didn’t have this problem. Unfortunately, the hack PM'ed by FirstLoox forum member androabo (thanks for that!), that is, depressing “?” during loading the program, didn't work either.

Note that I’ve scrutinized the recording capabilities of the application in the Sound Recorder Bible (http://www.pocketpcmag.com/blogs/menneisyys/112005SoundRecorderApps.asp).

I really recommend this media player because


it has one of the lowest CPU usage of all the applications (even slightly lower than that of TCPMP!) and has even in-app CPU speed setting capabilities to further reduce CPU consumption (please read this article (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=1219&more=1&c=1&tb=1&pb=1) (and all the past articles linked from it) for more on this subject: there, I've shown some nice examples of this fact.)

I've played a lot with the latter and found it to be highly useful and reliable. While it doesn't offer automatic scaling (unlike XCPUScalar), it's good to have it built-in on devices that otherwise, "out of the box" don't offer CPU speed setting capabilities (iPAQ hx4700 and 2210, HTC Wizard, Universal etc). It's really easy to use: you just click the Turbo ON/OFF and, then, SET icon when you want to switch back and forth between a downclocked and the original mode.

I've found playing stuff worked pretty OK with the following parameters:

h2210: 100 MHz (via wired headset!)
x51v: 208 MHz (via Widcomm A2DP) - note that the x51v also has a system-level CPU speed setter capabilities, but they're well-buried under the Power applet and you need to click a lot to access it
hx4700: 208 MHz (via A2DP)

Unfortunately, it's unable to underclock the HTC Wizard as can also be seen in this screenshot (http://www.winmobiletech.com/sekalaiset/40iplayWizardClockControls.bmp.png) showing the CPU controls shown on the Wizard (example screenshots of running it on other devices follow: x51v (http://www.winmobiletech.com/sekalaiset/40iplayx51vClockControls.bmp.png), hx4700 (http://www.winmobiletech.com/sekalaiset/40iplayhx4700ClockControls.bmp.png) and 2210 (http://www.winmobiletech.com/sekalaiset/40iplay2210ClockControls.bmp.png)).

its "Reverb" effect (accessible here (http://www.winmobiletech.com/sekalaiset/iPlayReverb.bmp.png)) is by far the best I've ever heard on Pocket PC and is indeed industry-strength. I really recommend it - you'll love it

The compatibility / CPU usage can be found here (http://www.winmobiletech.com/sekalaiset/AVRCPChart.html) - CLICK THE LINK!

The hacks I've used / referred to:

Adding A2DP (and AVRCP) support to WM2003 devices

WM2003 devices should use the Widcomm 1.6 HP Bluetooth AV upgrade (http://h18007.www1.hp.com/support/files/handhelds/us/download/22475.html?jumpid=reg_R1002_USEN) to gain A2DP / AVRCP support. The update is officially only meant for HP iPAQ 5550 devices but it works (to some degree) on other Widcomm-based WM2003 devices too (you can install it on any device – the installer isn’t locked to the particular PPC model). Note that you shouldn’t except miracles: for example, on my HP iPAQ 2210, the sound sometimes stops for 1-2 seconds and, what is worse, it gets a considerably lower, really annoying pitch for some 10-15 seconds before this. That is, it’s highly possible you’ll find it useless on your particular WM2003 model too - it's only certified to work on the 5550.

Adding A2DP (and AVRCP) support to WM2003SE devices

(Widcomm-based) WM2003SE devices should use the hack CAB available here (http://www.pdagold.com/files/forums/en/0000009238/PDA2K_BroadcomCorp_BTUpdate.cab). See this (http://www.firstloox.org/forums/showthread.php?t=2922) and this (http://www.pocketpcthoughts.com/forums/viewtopic.php?p=319797) for a generic discussion. Note that you shouldn’t try updating your WM2003SE device with the Widcomm 1.6 HP Bluetooth AV upgrade (see the WM2003-related section above) meant for plain WM2003 devices (you can, however, give it a try - it may work - or not). At least on my Pocket Loox 720, it would never stop discovering the services of my Plantronics and, therefore, seems to be useless.

Unfortunately, this update has severe problems: no matter what model it’s installed on, the sound transfer will just stop after some dozens of minutes and can only be restarted by explicitly disabling Bluetooth on the PDA and, then, reconnecting to the headphone (fortunately, no soft reset is necessary). This makes listening to music wirelessly really painful on the long run.

Note that exactly the same applies to the (current) Widcomm version 0.50 “hack” (http://www.aximsite.com/boards/showthread.php?t=122247) for the WM5-upgraded Dell Axim x50(v) and the entire x51(v) series: from time to time, the sound transfer will just stop and, then, you'll need to reconnect to the headset. (This problem may be only related to the 590A only - I haven't really seen similar bug reports in the above-linked thread - neither have I seen here (http://www.aximsite.com/boards/showthread.php?t=114983).) This won't be a problem with most x51(v) users as the built-in A2DP / AVRCP support in AKU2.3 works with most headphones without making it necessary to install the Widcomm BT stack. It seems, however, it doesn't work with the 590A - using the standard, built-in A2DP support of WM5 AKU2, the music transfer to my 590A would stop after some 0.2-0.3 seconds. The case is exactly the same with the AKU 2.0 HTC Universal. Interestingly, FirstLoox owner Duncan hasn't run into this problem with his 590A, using the built-in A2DP support on his F-S N560 (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=1304&more=1&c=1&tb=1&pb=1).

Adding A2DP (and AVRCP) support the HTC Wizard

The HTC Wizard, unfortunately, which doesn’t have support for A2DP at all even in AKU2+ ROMs. Therefore, you'll need the CAB file available here (http://forum.xda-developers.com/attachment.php?attachmentid=27772&d=1145947232) (linked from this post (http://forum.xda-developers.com/showpost.php?p=931819&postcount=19) in this thread (http://forum.xda-developers.com/showthread.php?t=263775); to be on the safe side, I’ve also made it available here (http://www.winmobiletech.com/sekalaiset/WizardA2dpHack.cab). Note that it’s highly recommended that you also import this registry file (http://www.winmobiletech.com/sekalaiset/WizardA2DPHackImport.reg) after installing the CAB file (the latter is discussed here (http://forum.xda-developers.com/showpost.php?p=969570&postcount=151), here (http://forum.xda-developers.com/showthread.php?t=277937), here (http://forum.xda-developers.com/showpost.php?p=970265&postcount=155) and here (http://forum.xda-developers.com/showpost.php?p=971096&postcount=158)).

Note that, even with the registry hack, the sound quality of the Wizard over A2DP has remained considerably worse (it has pretty bad compression effects) than with my other test Pocket PC’s (with all media player apps - this means it's not a media player issue but that of the A2DP hack). Give it a try to see if you can live with the (comparatively) lower sound quality. Furthermore, unlike with the other solutions, after finishing a call, the music doesn’t automatically restart – you must manually press the Pause button on the headset.

Making the Pocket Player AVRCP work under WM5

(Big thanks to PPCT / AximSite forum member Haesslich for summarizing it (http://www.aximsite.com/boards/showpost.php?p=1214611) so that I didn’t need to look / experiment with it up myself much.)


Get the Conduits WMP Plugin Adapter 1.1 from the plug-in page (http://www.conduits.com/products/player/plugins.asp) (I really recommend it if you, for example, want to get FLAC or MOD support for your Pocket Player) (direct link to the download (http://www.conduits.com/products/player/plugins/gen_wmhost.zip)).

Unzip gen_wmhost.dll from the archive and put it in the home directory of your installed application ([Storage card name]\Program Files\Conduits\Pocket Player).

Go to Menu/More/Options (in 3.0; in 2.8, Menu/Options) and select the Plugins tab (it’ll be on the far right)

Single-click “Conduits WM Plugin Adapter”, when the context menu comes up, select “Configure” (http://www.winmobiletech.com/sekalaiset/PoketPlayerRemoteConf1.bmp.png).

Click the “Configure WM plugins to load” button (http://www.winmobiletech.com/sekalaiset/PoketPlayerRemoteConf2.bmp.png).

Under version 2.8, it’ll ask four questions; under 3.0, two. Click “Yes” in all cases.

Click OK and restart Pocket Player. Now, remote controlling should work OK.

The results shown in the comparison chart

As can clearly be seen, with the Plantronics Pulsar 590A stereo headset, none of the four third-party applications supported it under all OS’es flawlessly. For example,

MortPlayer only supported AVRCP on WM5 devices with the Widcomm BT stack; it won’t work on WM5 devices with the Microsoft BT stack or on any pre-WM5 device
Pocket Player only supported pre-WM5 devices without additional hacking; it doesn’t work under WM5 (with neither of the two most common Bluetooth stacks). Fortunately, with the above-explained "hack" it's working just great on all my WM5 devices.
Finally, the case is just the opposite with TCPMP, which only supports WM2003SE devices, AVRCP-wise. It doesn’t work on WM2003 / WM5 devices at all.
The most AVRCP-compliant multimedia player is iPlay - it worked flawlessly on all my test devices, except for the Widcomm 1.6-based WM2003 ones. In there, previous / next wasn't available.

As can also be seen, you don’t need to be afraid of the CPU usage (battery consumption) figures of these applications. While Pocket Player uses about two times more CPU cycles than TCPMP or iPlay (the latter two without the equalizer), it’s still way better than some other, non-AVRCP-capable (and, therefore, not reviewed) multimedia players like ViTO SoundExplorer, which (at least in older versions) consumed way more CPU time when playing plain MP3 files as can also be seen in these benchmarks (http://www.winmobiletech.com/mp3/). Enabling the really nice Reverb feature on 40iPlay “only” doubles its CPU usage – then, it’s still not much worse than that of players that otherwise consume considerably more CPU cycles even without any DSP’s or equalizers enabled (MortPlayer, Pocket Player). That is, if you need the reverb effect (give it a try – it’s really cool), you can safely enable it.

N.B. Once again, the compatibility chart is based on my compliance tests with the Plantronics Pulsar 590A. With other headsets, you may have (slightly) different results (as has also been mentioned in the chart – see my comments in parentheses). I will continue posting compatibility information with other stereo headsets hopefully as early as next week.

Menneisyys
10-10-2006, 09:57 PM
Note that I'll post an updated version of this article tomorrow - iPlay has also turned out to be supporting remote controlling. Stay tuned :)

haesslich
10-11-2006, 03:30 AM
I've got PocketPlayer 3.0 working fine on both an Axim x51v and an hx2490 with AVCRP and the HT820's (BT and Widcomm stacks). The key to this is that you have to configure the Windows Media Plugin loader first, then set it to load the BT plugin from WMP, including the AVRCP fix for the play/pause bug. Once you've done that with a paired headset, AVRCP controls will work normally on WM5 with both stacks.

manywhere
10-11-2006, 11:29 AM
Oh no! Not Värttinä again! :D

Werner, I can also recommend that you try out Poets of The Fall's "Maybe Tomorrow Is A Better Day" available at the bottom of this page at MP3s and FLAC: http://potfmedia.com/media/audio/

I noticed with the Plantronics Pulsars bluetooth stereo headphones + included transmitter that the intro and outro on that song is quite "compressed away" and that the intro seems to start in the left channel first, and later comes into both channels. I don't know if it is a bug or a feature of the A2DP profile or the Plantronics transmitter.

Menneisyys
10-12-2006, 08:53 AM
Article heavily updated: a lot of new, 40iPlay-related info; added a completely new section on making Pocket Player 2.8/3.0 work under WM5 (thanks to Haesslich) and other changes.

Menneisyys
10-12-2006, 03:15 PM
Oh no! Not Värttinä again! :D

Werner, I can also recommend that you try out Poets of The Fall's "Maybe Tomorrow Is A Better Day" available at the bottom of this page at MP3s and FLAC: http://potfmedia.com/media/audio/

I noticed with the Plantronics Pulsars bluetooth stereo headphones + included transmitter that the intro and outro on that song is quite "compressed away" and that the intro seems to start in the left channel first, and later comes into both channels. I don't know if it is a bug or a feature of the A2DP profile or the Plantronics transmitter.

Strange. I've carefully listened to the music (the 192 kbps MP3, played in both WMP10 and iPlay (hx4700)) via built-in A2DP, the transmitter and directly connected with the audio cable.

I haven't really heard compression effects, unlike with, say, the A2DP on the HTC Wizard. (The generic distortion, particulrly in the highs, also noticable during the entire music are because the headphone unit itself is pretty bandwitdth-limited compared to even cheapo headphones like the Pana RP-HT6)

I haven't heard the "music starts from the left" you've described either - the intro started from the right. This in all the three modes.

What I'm thinking we're having a device with a different firmware. For example, Duncan stated he had never had any problem with the MS AKU2 Hi-Fi support (on his N560) while I haven't been able to make it work on my x51v / Universal. This may also be explained with different firmware versions.

The "date code" on my transmitter and headphones is A06; the "SW" version is "SB" on the latter. What about yours?

Menneisyys
10-14-2006, 10:59 AM
UPDATE (10/14/2006): thanks to FirstLoox and AximSite forum member androabo, now I know how iPlay can be started on the Pocket Loox 720 (or on any device that it refuses to run on because of the incompatible CPU type): just click the “info” button, http://www.winmobiletech.com/kuvat/iPlayinfobutton.png, two times immediately after starting the application so that it displays the CPU/battery info panel (screenshot of the latter here (http://www.winmobiletech.com/kuvat/iPlayCPUInfoPanel.bmp.png)).

Note that I've just heavily updated my generic Plantronics Pulsar 590-related article (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=1304&more=1&c=1&tb=1&pb=1) (the current one is the AVRCP-specific, not a generic, one). Make sure you read it for further information on the headphones.