[General Topics] Menneisyys:
3.1 LineSpeed

HKEY_LOCAL_MACHINE\SOFTWARE\Widcomm\Plugin\AV\LineSpeed

(Registry import script available here)

This registry value is very similar to the above-introduced MS BT stack-specific BitPool. The difference is that it allows Widcomm users to directly supply the bit transfer speed between the PDA and the headphones – no multiplication is necessary.

The valid values start with 64 (that is, 64 kbit/s), which results in intolerably bad sound quality. 128 is still very bad; it’s with 192 that the sound quality starts to become acceptable. With 256, it’s already pretty hard to distinguish from the sound quality higher values result in – that is, you’ll want to start with the value 256 (and only slightly decrease to see whether it helps get rid of the problems).

I’ve even tested my Pocket PC’s with extremely high (400-600 kbps) values; they haven’t delivered noticeably (or at all) better sound quality than, say, the 320 kbps setting and they rendered the transmission far more unreliable / unstable, if working at all. For example, even at 400 kbps, my iPAQ hx4700 paused and skipped from time to time; at 600 kbps, it only played for some 20 secs and, then, went quiet. The Pocket Loox 720 fared a bit better at even 460 kbps but, again, the sound quality gain (if any) wasn’t worth the trouble and the additional BT communication load.

Speaking of the PL720, I’ve also tested whether a slightly lower, but still very good transmission speed (256 kbps) completely gets rid of the need for the FlowControl hack (again, see my previous article on the latter). While it played music for more than two hours, around the third hour, it stopped playing. Furthermore, it still had slight pauses (albeit I haven’t noticed playback at a higher pitch in the following 8-10 seconds). That is, you won’t want to completely get rid of the FlowControl hack. (I’ve also tested the PL720 with the FlowControl hack disabled and at 460 kbps – as opposed to the pretty stable 256 kbps. It shuts down itself after 3-4 minutes and, therefore, is useless, as I’ve expected.)

3.2 Blocks and SubBand

HKEY_LOCAL_MACHINE\SOFTWARE\WIDCOMM\Plugin\AV\Blocks

and

HKEY_LOCAL_MACHINE\SOFTWARE\WIDCOMM\Plugin\AV\SubBands

(Registry import script available here)

These two values can also be used to fine-tune your transmission parameters under the Widcomm BT stack. They are settable between 4 and 16. With higher values that 16, the Pocket PC won’t connect to the headphones; with lower values than 4, nothing will be heard (not even system sounds – clicks and the like). The lower the value, the worse the sound quality.

Of the two, the second, ‘SubBands’ parameter has a much less effect on the sound quality as the first (Blocks). For example, if you leave Blocks at (the best) 16 and set SubBands to 4, the sound quality will degrade only slightly (and, with the SubBands value of 8, it’ll be almost impossible to notice any quality difference). It will be in no way as bad as, say, using 128 kbps LineSpeed and will still be much better than the A2DP sound quality of the HTC Wizard.

If, on the other hand, you set Blocks to be 4 and leave SubBands at (the best) 16, the sound quality will be considerably worse. It’ll be, say, as setting the line speed (see section 3.1) to 96 kbps.

That is, first, start play with the SubBands value. Decrease it to, first, 8 and if it doesn’t help, 4. Then, if the latter doesn’t result in any usable result, start decreasing Blocks. Again, descreasing Blocks will have a very bad effect on the sound quality.

Note that Blocks only seems to have effect on 1.7 Widcomm versions; 1.5 versions (like the PDA2k upgrade usable on the Pocket Loox 720) don’t take this value into account at all. (Haven’t tested it with 1.6 like the HP update usable on WM2003 and some WM2003SE devices.)

(These three hacks were originally discovered by the well-known mikespikel in this thread.)

3.3 Other additional registry values available in desktop Widcomm implementations and some forum posts

I’ve also thoroughly tested the desktop Windows values listed here. They allow for tuning the bits-per-sample ("BitsPerSample"), setting the sampling frequency ("SamplesPerSec"; the case is similar to the “SampleRate” case of the MS BT stack) and setting the number of channels (mono or stereo; "Channels"). None of them seems to have any effect. If you still want to give it a try, the registry import script is available here.