software audio during phone call - Advantage X7500, MDA Ameo General

I hope someone can help... I write software for disabled users which runs on CE machines (mostly HTC) Some of our users do use the machine as a phone. We have a problem on the Athena however, unlike the other machines. Our users require auditory feedback due to their disabilities. On the Athena whenever a phone call is received all audio from software is blocked for several seconds or even a minute or two. This includes the system screen click. On the other HTC machines we have always been able to reenable audio output during phone calls so that users can use the machines.
So there is something different on the Athena. It makes no difference whether the system answers the call or whether I use TAPI (some of our users cannot cope with the system phone screen) I have fiddled with secondary gain, volume, and all the other things that we've used on the other machines. But it makes no difference, there is just no sound output at all from the machine for a while after the call is answered.
Can anyone help please? Is there any way to reenable audio from applications?
TIA
Stuart

Related

answering machine software???

hi guys, i couldnt help noticing that when i previously used nokia 6600 (symbian s60) they had few 3rd party that is able to make use of their audio mechanism during callls. for example, one software can make selected background noise for opposite callers so they think that u are at a train station for example when infact u r silently at home. another software is an on board answering machine, which after the phone rang for a few times it answer the fonecall with your automated recorded voice and recorded a msg left by the caller on the fone. this is convenient for us so we dont need to call back our voicemail and reduce cost as well as some telco charge to use their voicemail service. im surprised these kind of software have not came out for our windows mobile device when its already available for symbian. im sure it shouldnt be that hard to make it. any coder expert wanna give it a go??
cutefox, what kind of searches have you made for this software on this board? Did you have much luck?
V
i already tried commercial such as handango and pocket gear.. even freeware sites also no luck.. jus dun understand why no 1 made one yet.. shouldnt b too hard to make one.. it will be a big market to sell such a software for our ppc phone device now that more devices is coming out..
Cutefox: have you tried searching this board? Let me save you the effort, but it'll be a good idea next time. It's not generally considered possible, at least on WM2003 devices because of both hardware and software limitations. It's not that no one has thought of it before: someone seems to think of it approximately every two days... but there are many many threads on this issue.
V
Look at what I said here...
http://forum.xda-developers.com/viewtopic.php?t=9761
That sums up why we can't do it using the api's available to us now. The funny thing is the way bluetooth sends the audio stream to a headset. Obviously the data is getting there somehow but I suspect it is not (directly) via windows. Dose anyone know if the radio hardware for bluetooth is connected to the radio hardware for the phone? My guess is that if you could write a program that windows "sees" as a headset then you could get the audio that way. But thats a problem in itself.
I would love this kind of program myself. How is it that such usefull devices with so many capeabilities can be kept secret from us. We can't use the camera, we can't get the cell id on towers, we can't programatically controll the partnerships in blutooth, we cant get the audio stream of our own phone, the events on some ppc's that control brightness are secret..... the list goes on. This kind of #@!!$$ is going to hurt the future of these devices which I otherwise love.
OdeeanRDeathshead: I had read your previous posts, and as ever, very interesting and informative reading. I had the same idea regarding a "dummy" bluetooth device a while back, but mamaich put me in my place!
http://forum.xda-developers.com/viewtopic.php?p=179839#179839
V
thanks vijay555, thats what I have suspected about the hardware. What I want to do is a bit different. The bluetooth can communicate to many devices at once. If your program could appear to be a headset to the os, then the phone bluetooth hardware could transmit the audio to the headset at the same time your program uses bluetooth to receive it. Kind of like a loop out of the box to bridge the lack of functionality. This shifts the problem to how dose a hardware bluetooth headset communicate. Emulate this and we are on a winner. I don't think I have the willingness to pull my devices appart. I also do not have the money for some of the hardware (eg good digital oscilliscope) that I would need to measure whats going on. I did read that microsoft are about to expose some new api to allow control over the pairing process (but not the audio stream). I hope that we get some soon.
Is there going to be any new (for 2005) free development tools like the evc versions used today?
OdeeanRDeathshead: re eVC, I don't think so. The "express editions" are free, but they specifically omit the functionality to develop "mobile solutions".
Re the loop back. That's a good idea. I think mamaich is our best bet on schematics, I think that would be very helpful. As you "rave", it's mindboggling that Microsoft still haven't revealed or implemented a way to interact with the audio channels. It must have been one of the first things one could imagine doing once you develop a PDA with a phone stuck on the back of it.
Any idea if the bluetooth stacks could support transmitting and receiving simultaneously in this manner? I know some of the boys are working on alternative bluetooth support for the stereo headset profiles, so they might be able to shed some light on the issues involved. I guess the processor overhead could be hefty, but for the benefit it would be beneficial.
V

answering machine (without recording, I have read others)

Well from reading other threads I learned that an answering machine software is not possible due to lacking ability to record from the radio audio output (on most phones, possible on univ?).
Well then how about not recording, but automatic pickup and sending prerecorded audio? Would that be possible? Like in: someone calls my phone->software picks up and plays back prerecorded message to caller "I'm in a meeting, please call back at 5pm" ->software hangs up.
Possible or not? Who would be willing to write something like this?
I think there's the same issue - the phone audio path is seperated from the PDA audio path. Read Odeean's posts on TAPI and his frustrations. However, the http://teksoftco.com boys seem to have hinted that this may in fact be possible anyway.
It may be possible I suppose, by writing specific drivers, but I don't think any of us have ever tried I guess.
V
We'll keep you updated with what can be done altough the system is not built to support this kind of features. Firstly because in the US recording audio on phone conversation is ilegal so MSFT doesn't supports this and onestly i don't see HTC being able to offer this kind of support.
Also what Vijay outlined is correct... but we have a few more ideas that we are curently testing...as i said we'll post it if we succeded.
Cheers,
Raul
i believe that it is not a hardware limitation.
The sound from the gsm is not analogue. It passes through the OS somehow, otherwise how is the audio transmitted to the bt hfree?
I don't believe that the transmition of audio (from gsm) to the bt hfree is done only by hardware.
Please comment
andrew_sh is making a good point there. Maybe something can be done by "faking" bluetooth data input?
We have a working answering machine on Himalaya.
See last ROM from TofClock...
Good point made by Andrew. A new bluetooth headset driver or a fake one might do the trick. Cross your fingers guys.
The OS has evolved since Himalaya and HTC has restricted access to drivers by creating a locking mechanism and also the signing process is a hop to pass.
Guys, from my understanding and a poll I've run:
http://forum.xda-developers.com/viewtopic.php?t=40100&highlight=telephone+poll
it doesn't seem like many people have succeeded in recording calls, and those that have are generally using the Himalaya only. The gigabyte can, but it has custom hardware.
We've discussed spoofing the bluetooth audio path before by using a dummy driver and receiver, but mamaich has stated that the audio path for the bluetooth is in hardware only, and seperated from the interceptable paths in the OS.
Rain (for those who don't know, is one of the genii at http://teksoftco.com) - if you have any new ideas, may I ask you to PM me?
Odeean, Mamaich and I have had numerous discussions about this and I'd be interested to know how your research is going. I read that you guys have experience at low level audio driver work (great work on the speakerphone btw!), and I think that might be a good way to go. There is certainly some OS control of the audio path (speakerphone, mute, headset<>bluetooth etc), so I've thought about this way...
V

VoIP: SJPhone & TyTN | solution for choppy audio

Having installed SJPhone 3.20b for Windows Mobile 5.0 (download from: http://www.sjphone.org/preview/ce/) I experienced very choppy inbound audio.
The solution is changing SJPhone's advanced audio settings as follows:
buffer size: 80 ms
input queue length: 10
output queue length: 5
RTP jitter queue length: 5
Audio quality through WLAN is quite okay now. As soon I'm in a place with 3G coverage I'll try to place a VoIP call over 3G, if O2 Germany hasn't blocked VoIP ports yet.
I am getting better resutls with these settings:
Driver buffer size, msec: 100
Driver input queue length: 10
Driver output queue length: 10
RTP jitter queue length: 32
Btw, x-lite ce 1.01 has better quality than SJphone, at least on my TyTN, download here:
http://forum.xda-developers.com/viewtopic.php?t=58154
Also, calls must be done using the USB headset otherwise you get horrybly echo.
I do have the sound coming from the rear speaker...is that what you have?
Further, the sound with SJphone is absolutely horrible...whatever the audio settings....
I tried X-lite..gives same effects...
It s really unusable.
When I call the same correspondant with my PC, it s seemless..
Any clues?
Thx
use the usb headset
No sound...
Hi. I am using HTC X01HT (Softbank) which is supposed to be equivalent to TyTN. I installed SJphone but for some reason no sound is coming. Seemingly, even though I don't hear any sound, the recipient phone is normally ringing. Of course, even if the recipient picks up the phone, still silence on both sides. Any solution? Thank you in advance.
Check your SIP and NAT settings. You'll have problems if your internet connection or the voip server you are connecting to are behind a NAT.
You should use a STUN-server!
@Poof
Hi Poof,
Sorry for the trivial question but I geuss that answer isn't that obvious as it seems. YOu've mentioned that you're using X-Lite with some specific settings. I've downloaded the software using the link you had provided. I did manage to specify the SIP proxy and other SIP related settings during the first run of X-Light.
My question is: HOW DO YOU CHANGE OTHER SETTINGS? In case I need to change SIP IP HOW DO I DO THAT? I didn't succeed with finding searate file responsible for configuration nor I cold find settings changes option in the application itself.
I'd appreciate if you could advice me on these mattares.
TyTN and SJPhone
Hi,
I get horrible sound delays with SJPhone + TyTN. I tried all the settings from this forum and many others and although the sound quality seems OK (I didn't see any significant improvement because of the USB headsed) the delay is 2 to 3 times bigger (up to 1.5-2 s) than on my Wizard.
Please let me know if the above mentioned settings don't give you any delay. If there's no delay, could you please let me know the ROM (and any possible improvements) that you're using?
Please follow this thread also for news:
http://forum.labs.softjoys.com/viewtopic.php?t=409&postdays=0&postorder=asc&start=20
As for the X-Lite application - I get also delays and bad sound quality. As for its interface - it makes you go nuts, and even more. I never managed to find out how to change the settings for one SIP-account. (through the registry ? this is a joke, right?) Even the PC version is made as if that guy wanted to make a patience testing quiz, not a softphone.
Thank you all.
USB headset
It seems it has something to do wih the USB headset. If I use it - SJPhone gets stuck. If I don't use it - SJPhone runs fine and even the sound quality is acceptable
realn said:
Hi,
I get horrible sound delays with SJPhone + TyTN. I tried all the settings from this forum and many others and although the sound quality seems OK (I didn't see any significant improvement because of the USB headsed) the delay is 2 to 3 times bigger (up to 1.5-2 s) than on my Wizard.
Please let me know if the above mentioned settings don't give you any delay. If there's no delay, could you please let me know the ROM (and any possible improvements) that you're using?
Please follow this thread also for news:
http://forum.labs.softjoys.com/viewtopic.php?t=409&postdays=0&postorder=asc&start=20
As for the X-Lite application - I get also delays and bad sound quality. As for its interface - it makes you go nuts, and even more. I never managed to find out how to change the settings for one SIP-account. (through the registry ? this is a joke, right?) Even the PC version is made as if that guy wanted to make a patience testing quiz, not a softphone.
Thank you all.
Click to expand...
Click to collapse
You can change the settings in the X-Lite app by dialing *311 and *611, these take you to the settings pages. I have however not been able to connect to the network in any way, perhaps you can shed light on the right settings, pof? I am using a voipstunt account, but I have no idea what settings I should use to get a connection to the internet. I have entered the voipstunt settings I found on their website and my account data, but for some reason the app wil not connect.
edit: For some reason when dialing a fixed line phone numer, the Caller is is displayed on the screen as the whole phone numer followed by @voipstunt.com, e.g [email protected]. It looks like the app is trying to reach a voipstunt subsciber instead of a fixed line. How did you get this to work pof? The app keeps trying for a while and then reports Call failed: 480, temporarily not available.
edit 2: Duh, I really have to learn to try more before I post here. I think that by editting the right options and using it over 3G instead of AS I have been able to connect. I cannot try any calls however, none of my contacts with fixed lines appears to be home at the moment (Or they are refusing my calls, also a likely possibility)
Really annoying though is that the app does not sound the waiting tone when it is calling a no., so you have no idea wether or not it is dialing or the connection is just not being made.
I've just installed the latest sjphone beta for ce, to use with fwd. I can't find where to change the advanced audio options. In fact the only audio control I can find is the audio wizard. Can anyoine help me.
In addition my usb headphones long since stopped working, would sound and mic be better with a bluetooth headset (in my case the itech r35) or through the phone itself?
Currently audio is unuseable using the phone, and apparently not working at all with the bluetooth headset.
Your assistance appreciated.

Reqiuem for VoIP in WM6

Hi,
I decided to post this after 100+ hrs of struggling with so called native VoIP feature in WM6.
Firstly, there are some extremely valuable threads in this forum already, the best of which being probably:
http://forum.xda-developers.com/showthread.php?t=299950
Secondly and lastly: the marketing trick about "Built-in VoIP in WM6" is nothing more than that (google the Web and you'll see what kind of proud statements can be found).
Someone out there in MS completely disrespect the customers saying all this. A more truthfull statement could look like: "Integration of VoIP features in Windows Mobile has been attempted for the first time (ever). However, so far it is all unreleased, alpha-stage development which may come to a business-grade usable outcome somewhere late 2008".
Reasons for that are very simple:
Even WHEN someone by any chance, luck or more by black crafts manages to make a test call with this integrated VoIP-crap (which is neither too easy nor really reproducible - I made it - 3 times in more than 200 attempts with various configs and DLLs and reg settings), the results leave A LOT to wish.
Available "features" cover - at most - usage of G711 codec (some users cracked the GSM one as well, with mixed results). No voicemail. No conference call. No call forwarding. No STUN (!!! - and I thought Symbian S60 was behind WM6). Not even a user-friendly interface to configure a SIP-provider (a user-unfriendly interface does not exist either, to be precise). Only one provider can be configured. Documentation incomplete and inaccurate if any (MSDN contains some - buggy like hell). Right, no debugging anyway. No logging. Have I missed something? Oh yes, without a headset the sound is wonderfully coming out of the external speaker. Power saving mode cutting the talks due to power outage at the WiFi. So much for integration.
If anyone disagrees just please take a look at SJPhone. Just ONE single look. Honestly, if it was possible to put SJPhone in the Today list (maybe it is but I have not figured it out yet how) I would NEVER bother with the "marvels" of integrated voip.
For me personally, the subject of the "integrated", MS-made VoIP is burried - requiescat in pace. At least until a more reasonable version (at least beta-grade) is available.
Regards
wiktro
Yes I do agree that more can be done to it but at the moment, I am pretty happy with what is available.
Sure the call quality can be much improved with the addition of several codecs but at the moment, it is something that is not bothering me and the call quality, while not great, is something usable.
I am currently using VoIP with an Eten Glofiish X500 which allows me to make calls as a normal phone, thanks to a switch. The audio comes out of the ear piece instead of the loudspeaker. I am using VoipStunt as my service provider and the quality is not too bad. Sure it is not as good as the desktop but then again, a Pocket PC does not have the crunching power of a desktop.
Am I saying that it is sufficient? For my own needs, yes. But I would sure love to see it further improved. I am not saying that just because we have a less powerful device that there is no hope for VoIP because there are even less powerful ones out there that can do an even better job.
Let's just hope Microsoft improves on this. Or that SjLabs can come up with a much needed updated version of their software that integrates with the Today screen.

Looking for a specific program/piece of code

Hi,
I am currently looking for a piece of software that will do a specific job, or possibly a better solution to what I am trying to do. Let me give you a little bit of background...
I have got an O2 XDA Mini S, and a Parrot hands-free kit that does not support the A2DP bluetooth profile (only the handsfree profile). I am currently using TomTom 6 on my XDA with a bluetooth GPS unit. Everything works really nicely together, except I cannot get instructions from TomTom through my parrot (which is ultimately my goal).
The only way I can see of getting the TT instructions through my Parrot is to make use of the programs floating about that allow you to turn on and off redirection of sound through bluetooth. The idea I had was that if there was a program about (or maybe even write something myself) that would be able to signal when the sound coming out of the XDA exceeded and then dropped back below a threshold level, and then somehow link that into the bluetooth redirection programs, I could basically have any sound that is produced go through the Parrot only when they occur (including obviously the TT instructions).
Does anybody have any ideas on this? Any help would be greatly appreciated.
Thanks.
Point UI, a UI wrapper, has a feature similar to what you're describing. It's used just to save battery power by turning on BT only when an incoming call is detected, and then killing BT after the call is ended. I don't know if it's open source, but you might want to head over to their forums and see if you can find out how they did it.
You probably also want to haunt any TomTom forum sites (if any even exist).
As a final option, look into Mortscripts. People have done amazing tricks with Mortscripts, and this might be just the ticket. Mort haunts these boards, and may pipe in with an "I can (or cannot) do that with Mortscript" too...
I have a question, though. What's wrong with using the Wizard's built-in speakers for getting directions?
Myrddin Wyllt said:
I have a question, though. What's wrong with using the Wizard's built-in speakers for getting directions?
Click to expand...
Click to collapse
To be honest, it's not too bad through the speakers although if I have my radio on which I usually do, sometimes it can be a little bit hard to hear, and it would be nice to just have the radio mute while it gives me the directions.
It's more of a "want" than a "need" really.
Thanks very much for the info
Myrddin Wyllt said:
Point UI, a UI wrapper, has a feature similar to what you're describing. It's used just to save battery power by turning on BT only when an incoming call is detected, and then killing BT after the call is ended. I don't know if it's open source, but you might want to head over to their forums and see if you can find out how they did it.
Click to expand...
Click to collapse
It is quite easy for programs to detect when you're in a call - MortScript, I presume, probably can detect that quite easily as it's an overall Windows feature and will probably have a readily available part in the API.
The problem is not with turning the bluetooth on and off, it's actually detecting when TomTom is giving an instruction. To be honest I think I'll look into MortScript and if that can't do it then I'll probably just give up.
Detecting phone calls isn't that easy, and it's especially not easy to make a check in a simple procedural script language like MortScript (up to WM5, there's no way to check whether a call is active, you have to monitor all the time if a call is accepted or hung up).
Detecting sound output of another application is entirely impossible - at least for most applications. If the app opens the output channel only during output (which most don't because it takes valuable time and causes ugly "click" noises on some devices), one could maybe query the number of free output channels - but that would need a CPU hog monitoring all the time, or half of the message would be over until it's detected.
And even if that would work, there's simply no way to redirect output to a BT headset (except with A2DP). At least on most devices. Once there was a simple way to do that (you just had to open a virtual port, and as long as it's open, everything was redirected similar to the A2DP way nowadays), but most manufacturers didn't implement it, and nowadays it seems like no modern device supports it anymore. (Had it for test purposes in a MortPlayer beta, no user reported it works...)
So, to put it short: Currently it's impossble. Maybe WM8 might change that... (Few hope for WM7, it's proposed to have the same kernel as WM5 and WM6.x)

Categories

Resources