[General Topics] Menneisyys:
Anyone having had a O2 XDA Flame have already seen SRS WOW HD, which helps at both widening the stereo (a particularly useful technology on handsets with stereo speakers like the Flame, the HTC Wizard or the HTC Universal) and enhancing / modifying the sound in other ways as well. For example, it adds the, for lon-time audiophiles / Hi-Fi geeks, the well-known loudness-based bass control.

One of the reasons I love the Nokia N95 are the built-in, loud speakers with extremely good frequency response. In the N95, the built-in Music Player has a dedicated stereo widening mode, which can be en/disabled from inside the player:

Its results, when used together with the built-in stereo speakers, are simply phenomenal. It really widens their stereo, making listening to music via the built-in speakers a true pleasure (also taking the very good quality speakers into account, unmatched by any Windows Mobile device so far). This has been one of the main strengths of the N95.

Up until now, there wasn’t a generic, non-OEM, similar solution for Windows Mobile-based devices, except for the built-in applet in the already-mentioned O2 XDA Flame. The multimedia players available haven’t really supported stereo widening either, the only exception being Conduits’ excellent Pocket Player, which does support stereo widening at External Pitch/Echo/Stereo Wide DSP (listed as “DSP Stereo Example”). While it lets for the settable widening of the stereo:

it’s in no way as good as on the N95. It certainly makes the stereo a bit wider. No effect at all on mono sounds (as opposed to Nokia’s widening). (Note that, in Pocket Player, there’s another, similar DPS, but it doesn’t do any widening, just makes the center far quieter than the two sides. It’s, strangely, a bit more useful than the first DSP with the built-in speaker.)

Now, the plug-in that has only been available for the Flame has been released for the entire public. It can be installed on any WM5+ Pocket PC and Pocket PC Phone Edition. I’ve tested it with the following Pocket PC (phones):

Dell Axim x51v (A12 official ROM)

HP iPAQ hx4700 (WM5 AKU3.5.2 ROM)

HTC Universal (Midget’s WM6 AKU0.2.0 ROM)

HTC Wizard (mfrazzz’s XDA Mobile 6 Release 3)

and it worked just great on them.

Note that it isn’t compatible with MS Smartphones (WM6 Standard) and Pocket PC’s with operating systems prior to WM5.

(screenshot of the 3D parameter setter tab)

(screenshot of the Truebass tab – it’s here that you can set the bass level)

Additional screenshots:

it’s HERE that you can switch between headphones and internal speaker output. The two have entirely different stereo widening characteristics: while headphones, in general, don’t benefit much from stereo widening, especially built-in stereo speakers benefit a lot from them.

Unfortunately, the switching isn’t automatic – that is, the controller doesn’t notice when you switch back to either wired or A2DP headphones from using the built-in stereo speakers and vice versa.

The lack of the automatic switching is indeed pretty annoying: the contraphase effects are, in general, are pretty bad when played back in headphones and it’s only with fully mono signals that they don’t have any bad effect on.

This is also a problem with the Nokia N95, even as of firmware v20, by the way. In there, enabled stereo widening has a definitely nice effect if and only if you play back mono contents. Then, it prettily widens it so that it is no longer in the center of your head, but somewhere in there. Stereo sources, of course, are pretty much messed up when played back via headphones.

HERE and HERE, you can see two (of the several) pre-defined profiles. Of course, you can also play with the sliders yourself.

Resource usage

Based on my past articles (see for example THIS), you may already know that

software-based equalizers can require a lot of additional CPU time and, consequently, radically decrease the battery life on older and, in this respect, inferior platforms (most importantly, Windows Mobile devices based on the Intel Xscale PXA-2xx CPU series - see THIS for more info on how they compare to other CPU's; most importantly, Samsungs and TI OMAP's)

hardware equalizers (see for example THIS) don’t result in a decreased battery life (not even on the PXA-2xx CPU’s) but aren’t compatible with several models and can only be used with wired (!) headphones. Finally, unless the player plays special attention to NOT closing the channel between songs, you will end up having to re-enable some of them manually (!) after a song switching. (See the "Hardware equalizers (HTC Equalizer) keep their settings when switching songs? Tested on HTC Universal" row in the chart of THIS article for more info if interested in which players do this.)

Fortunately, this app, while it has pretty nice equalizer capabilities, doesn’t really cause any really bad CPU usage increase. I’ve measured the following results (these figures were largely independent of the active profile / output used):

HTC Universal (520 MHz): CorePlayer: +5%; WMP: ~7-8%

Dell Axim x51v (forced down to 208 MHz) CorePlayer: +5%; WMP: +13%

HP iPAQ hx4700 (624 MHz): WMP: +5%

HTC Wizard (195 MHz TI): WMP: +14%

As can clearly be seen, the music player will have a somewhat increased CPU usage but it’s in no way as drastic as with some players out there. As a rule of thumb, the already CPU- and battery-friendly players like CorePlayer fare definitely better than the built-in WMP.

Getting, installing

If you have a XDA-Devs forum account, you can download the CAB file right from the related thread (which is, BTW, worth reading!). If you don’t have an account and won’t bother to register one, download it from my mirror. Transfer it to your handset, tap the CAB file and soft reset the device. After rebooting, go to Start / Settings / System / WOW HD Settings and you’re set.

Using, tips

If you have stereo headphones, make sure you only use it in the Headphones mode (see the upper drop-down menu; it’s activated in THIS screenshot). Otherwise, the sound quality will be plain awful. Again, there’s no sound source type it can enhance when it’s in speaker enhancement mode and you listen to it via headphones, unlike with the Nokia N95, where strictly mono sources become definitely more pleasing to listen to (again, via headphones) with widening enabled.

If you have a handset with only one (mono) speaker (the vast majority of current Windows Mobile handsets belong to this category, excluding for example the HTC Universal, Wizard and the O2 XDA Flame), there isn’t much point in using it at all.

If you have external speakers, you may want to give it a try. Note that if they aren’t close to each other, you may want to refrain from using the loudspeaker mode – switch to either the headphones mode (if you need for example the support for extra bass) or deactivate it entirely.

Evaluation on the HTC Wizard / Universal, using the built-in stereo speakers – compared to…

… the Nokia N95: there isn’t much competition: the Nokia N95 has still better stereo, is much louder (when it needs to be) and has much better frequency response.

… Conduits Pocket Player: on both the test devices, WOW HD delivered better (wider) stereo than Conduits Pocket Player, even with the latter set to 100% stereo widening. You, however, will want to make sure you, in some way, decrease the treble level. With the thin, bass-less speakers of both the Wizard and the Universal, the treble-rich sound of WOW HD will quickly become really tiring.

the default mode: the Wizard has almost no stereo sound – only when you have a (not very close; for example, a wall) surface reflecting the sound back to your ears. WOW HD definitely helps this – again, better than Conduits Pocket Player. The difference between the default (non-WOW HD’ed) and the widened mode isn’t that articulated with the Universal, which, particularly if you keep it pretty close to your face, was already able to generate some kind of a stereo field.

(Note that, naturally, in this test, I’ve only tested handsets that do have stereo speakers as it’s mostly on them that, unless you have headphones, you’ll want to use this tool.)