We did it!
Thanks to the efforts of Jonpry, (with special thanks to [ACL] and Wozzer) we finally have sound on the TP2!
please visit
http://forum.xda-developers.com/showthread.php?t=627997 for more information.
Also, please consider donating to Jonpry via paypal at his email address: jonpry [at] gmail *dot* com
For Historical Purposes
I'm posting this thread because I noticed there's a lot of confusion regarding the status of sound in the Rhod android port, information on the exact reason why sound doesn't work is hard to come by and complicated; so hopefully this thread will clear some of that up.
The Rhodium, like most modern smartphones, has more than one processor, it has four to be exact. Of these processors, two of them are general purpose and two are media processors as follows:
- 1 ARM9 processor that handles the communications stack.
- 1 ARM11 processor upon which the OS (winmo or android) runs on.
- 2 DSP processors that handle the sound and camera functions, they are the QDSP5000 and QDSP4000, they are under the control of the ARM9 processor.
Whenever the phone's OS (WinMo or Android) wants to play sound, it needs to invoke the QDSP5000 chip from the ARM9 processor through a special communications channel between the ARM11 and ARM9 processors. Because this is such a common arrangement in smartphones we already have a standardized way of doing this in the Linux kernel, unfortunately when we attempt to invoke the QDSP5000 chip through this method,
it simply does not respond.
This has absolutely stumped developers, there is no reason it shouldn't work, there is nothing wrong with it and it works on every other HTC phone with this chipset, except the Rhodium and Topaz.
How come sound during calls works then?
We have absolutely no idea, it's theorized that WinMo somehow sets it up so that sound during calls is handled exclusively by the ARM9 chip, so when we boot up Android via HaRET, this carries over and in-call sounds are handled all by themselves. Unfortunately this does not carry over to application sounds like the ringer, music and other app sounds.
What can we do to help?
The issue is quite complicated, and at this time it's agreed that the only way to make headway on the issue is to decompile the Rhodium's WinMo sound driver: wavedev.dll. Without the crucial information in this driver,
we will never be able to get sound working in the TP2, decompiling drivers is a very tedious, time-consuming and complicated task, and none of the current devs are able to do it at the moment.
If you, or someone you know, has experience in reverse-engineering and decompiling as well as strong C++ and C skills, please take a look at the code. The only way we are going to crack this is by having more eyeballs look at the code.
~ALERT!~(07/16/2010)
Jonpry has developed a wrapper that loads the WinCE "wavedev.dll" driver, eliminating the need to reverse engineer it. Unfortunately loading the wince driver in Android is still not giving us sound, so we need people to help test and develop Jonpry's new 'Vial' wrapper system. The git repository for the source is at
http://gitorious.org/vial, please contact Jonpry so he can bring you up to speed on the project.
Thanks for all your hard work bringing sound (et al.) to Android Jonpry!