Is there any method to enable two-way voice recording in HTC HD2? Audio Notes records only my voice.
I use an app Resco Audio Recorder. It has a feature where you can set it to record all calls and it has an option whereby you can save it in several formats to either your device of SD.
It works on all win mobile devices that I have ever owned. My HTC HD2 is arriving soon, so I haven't tested in on this device yet. But it should work.
Cheers.
I also have HD & Vito Audio Notes and two-way recording works fine (after installing 2_Way_Recording.cab), but on HS2 it doesn't. I also tried to manually modify the registry, still not working.
The method before this can't be used in HD2
Revise the registration table as follows before this
--------------------------------------------------------------------------
[HKEY _ LOCAL _ MACHINE\Software\HTC\AUDIOGAIN]
" AUDIO _ DEBUG _ FLAG" =40 (16 carry, dword value (the value of double bytes) ,Same below)
There is not the original registration table, it was oneself that created
[HKEY _ LOCAL _ MACHINE\Drivers\BuiltIn\RIL]
" RingingAddressId" =0
[HKEY _ LOCAL _ MACHINE\Drivers\BuiltIn\WaveDev]
" VocRecPath" =2
-------------------------------------------------------------------
But I have thought that there are these forms in wm6.5 of HD2
May write in other places or change the name
Past master helps everybody, please
Thank you
jeffy2880 said:
The method before this can't be used in HD2
Revise the registration table as follows before this
--------------------------------------------------------------------------
[HKEY _ LOCAL _ MACHINE\Software\HTC\AUDIOGAIN]
" AUDIO _ DEBUG _ FLAG" =40 (16 carry, dword value (the value of double bytes) ,Same below)
There is not the original registration table, it was oneself that created
[HKEY _ LOCAL _ MACHINE\Drivers\BuiltIn\RIL]
" RingingAddressId" =0
[HKEY _ LOCAL _ MACHINE\Drivers\BuiltIn\WaveDev]
" VocRecPath" =2
-------------------------------------------------------------------
But I have thought that there are these forms in wm6.5 of HD2
May write in other places or change the name
Past master helps everybody, please
Thank you
Click to expand...
Click to collapse
Can this also be used for the HTC TOPAZ - TD2 - XDA - device?????
thxs
jeffy2880 said:
The method before this can't be used in HD2
Revise the registration table as follows before this
--------------------------------------------------------------------------
[HKEY _ LOCAL _ MACHINE\Software\HTC\AUDIOGAIN]
" AUDIO _ DEBUG _ FLAG" =40 (16 carry, dword value (the value of double bytes) ,Same below)
There is not the original registration table, it was oneself that created
[HKEY _ LOCAL _ MACHINE\Drivers\BuiltIn\RIL]
" RingingAddressId" =0
[HKEY _ LOCAL _ MACHINE\Drivers\BuiltIn\WaveDev]
" VocRecPath" =2
Click to expand...
Click to collapse
This fixes the voice recording problem on HD2?
I´m crazy, I look for any solution. Else?
please help 2 way recording on htc hd2
What´s the problem?. Why our devices HD2 couldn´t save the other caller?
It´s a problem of the Radio? or...
something?
Can I refer you to this thread.
http://forum.xda-developers.com/showthread.php?t=536472
Please read it all.
It's not possible on the HD2
this is the solution:
Code:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\WaveDev]
"MixModeRecord"=dword:00000001
(see http://forum.xda-developers.com/showthread.php?t=765555)
Nice, all those months and such a simple tweak sorts it out, hehe.
The Solution
JHimmelbauer said:
this is the solution:
Code:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\WaveDev]
"MixModeRecord"=dword:00000001
(see http://forum.xda-developers.com/showthread.php?t=765555)
Click to expand...
Click to collapse
Dear JHimmelbauer - did you aktualy tried it - found it working fluently?
Hallo JHimmelbauer - hast du es selbst versucht - läuft es problemlos?
I aktualy tried it - WORKS REALLY 2-WAY!!! Tested with earphones jack in!!!! (ACR 1.2.1)
Related
Hi,
I'm running PocketZenphone for profiles, and it works nice. I want to have a profile, where I have silent ringtones, and notifications for SMS/calendar.
Now the problem is, if I set Systemsound to Vol. 0 (I don't want the menu-clicking-blirps and stuff in that profile) I also don't get notifiaction sounds / vibration. Obviously this is a Windows limitation.
So is there a way, to deactivate the sounds that I get when I open menus, start apps etc. without turning off Systemsounds alltogether?
Lars
I have 'found' two noiseless systemsounds for that menuclicking and screentapping. If you copy this two files to the windows directory no clicking anymore.
I use this files since WM2002 ;-)
hope this is what you want.
I'm on o2...everytime i send a text i get my balance and it even makes a annoying sound when the Vario is on vibrate....is it possible to change this....i cant see any options in the sounds and notifications settings??
Those files work fine, thanks (no more annoyed looks at work )
You can hide any systemsound you like when you use the EVENTMASK (see MSDN "Hiding System Sound Events")
You can also create your own sound scheme, including pathnames to file storage or sd card.
Remember it must be a MULTI_SZ with 21 lines (can be empty)
I haven't found a sound scheme editor yet for wince 4.x and up.
Cheers
tweakradje said:
You can hide any systemsound you like when you use the EVENTMASK (see MSDN "Hiding System Sound Events")
Click to expand...
Click to collapse
As I can understand EventMask should be = EventMask & ( ! 0x600 ), but it doesn't disable menu clicks.
Works for me:
EventMask = EventMask & ( ! 0x600 )
EventCache = EventCache & ( ! 0x600 ) [in my case - result is 0]
clear two strings within MULTISZ value "curr0": "hwandsw" and "MenuPop". Just clear, don't delete them.
Probably modifcations of EventMask and EventCache are not necessary.
tweakradje said:
Remember it must be a MULTI_SZ with 21 lines (can be empty)
Click to expand...
Click to collapse
Be carefull. resco regedit and PHM registry editor doesn't support multisz. Use Tascalsoft TRE. Best of the best [IMHO]
Or use callvin42's "nosound.zip" above. Simple and safe.
Hello,
Does anyone know how to play a sound (preferably through the earpiece) while on a phone call? I found some code on the internet somewhere that allows me to play sound, but when I make a call, it doesn’t work. Here is the code I have now.
Code:
Public Class Sound
Private m_soundBytes() As Byte
Private m_fileName As String
Public Declare Function WCE_PlaySound Lib "CoreDll.dll" Alias "PlaySound" (ByVal szSound As String, ByVal hMod As IntPtr, ByVal flags As Integer) As Integer
Public Declare Function WCE_PlaySoundBytes Lib "CoreDll.dll" Alias "PlaySound" (ByVal szSound() As Byte, ByVal hMod As IntPtr, ByVal flags As Integer) As Integer
Private Enum Flags
SND_SYNC = &H0 ' play synchronously (default)
SND_ASYNC = &H1 ' play asynchronously
SND_NODEFAULT = &H2 ' silence (!default) if sound not found
SND_MEMORY = &H4 ' pszSound points to a memory file
SND_LOOP = &H8 ' loop the sound until next sndPlaySound
SND_NOSTOP = &H10 ' don't stop any currently playing sound
SND_NOWAIT = &H2000 ' don't wait if the driver is busy
SND_ALIAS = &H10000 ' name is a registry alias
SND_ALIAS_ID = &H110000 ' alias is a predefined ID
SND_FILENAME = &H20000 ' name is file name
SND_RESOURCE = &H40004 ' name is resource name or atom
End Enum
' Construct the Sound object to play sound data from the specified file.
Public Sub New(ByVal fileName As String)
m_fileName = fileName
End Sub
' Construct the Sound object to play sound data from the specified stream.
Public Sub New(ByVal stream As IO.Stream)
' read the data from the stream
m_soundBytes = New Byte(stream.Length) {}
stream.Read(m_soundBytes, 0, Fix(stream.Length))
End Sub 'New
' Play the sound
Public Sub Play()
' If a file name has been registered, call WCE_PlaySound,
' otherwise call WCE_PlaySoundBytes.
If Not (m_fileName Is Nothing) Then
WCE_PlaySound(m_fileName, IntPtr.Zero, Fix(Flags.SND_ASYNC Or Flags.SND_FILENAME))
Else
WCE_PlaySoundBytes(m_soundBytes, IntPtr.Zero, Fix(Flags.SND_ASYNC Or Flags.SND_MEMORY))
End If
End Sub
End Class
I am writing this for my Kaiser on WM6, but support for earlier devices would be nice if possible.
Thanks,
Jay
i'm also trying to create an application that vibrates the phone whenever call is connected but somehow the OS mutes all sounds and vibrations while you are making a call.
The code you have, IMHO, plays the sound through the loudspeaker, not the earpiece.
what you would have to do, because i have done it, is set the registry settings under the control panel (under local machine) and there is an option to set different sounds for differnt events/actions/calls/messages etc
try API PlayEventSound
this idea is already integrated in LC minutes though i didnt have much time to work it out like it should be.
It would be nice to have a complete customization of this idea.
mrpotter said:
try API PlayEventSound
Click to expand...
Click to collapse
Thank you mrpotter. PlayEventSound did what I was looking for
It may play a sound environmental background during a call to simulate being in a traffic jam or in the countryside?
Example
Can anyone post an example of how to use API playeventsound in .net ?
Hey Guys!
I need a little help in Sql Database programming in vb.net!
how can i Connect to 2 Databases and Join their queries?
Code:
Dim SQLcon As SqlCeConnection = Nothing
Dim strPDAPfad As String = AppDir & "\Catalogs\" & Config.QuestionFileName
Const strPDAPasswort As String = ""
SQLcon = New SqlCeConnection("Data Source=" & strPDAPfad & ";" & strPDAPasswort)
SQLcon.Open()
Dim SQLString As String = "SELECT * FROM QUESTIONS WHERE ID = '" & QuestionID & "'"
Dim SQLQuery As SqlCeCommand = New SqlCeCommand(SQLString, SQLcon)
i want to join 2 databases so i can order one table with the help of another!
Just Like I would have one Database with 2 Tables
"SELECT Questions.ID FROM Questions ORDER BY Stats.Wrong DESC"
I think this is not possible to to it directly. You might need to load the data of one into a temp table in the other db and then do the query.
Would be bad I need to do this very often
I will try to find out how to attach both files to an SQL Compact server and try that again
[edit] found nothing!
scilor said:
Hey Guys!
I need a little help in Sql Database programming in vb.net!
how can i Connect to 2 Databases and Join their queries?
Code:
Dim SQLcon As SqlCeConnection = Nothing
Dim strPDAPfad As String = AppDir & "\Catalogs\" & Config.QuestionFileName
Const strPDAPasswort As String = ""
SQLcon = New SqlCeConnection("Data Source=" & strPDAPfad & ";" & strPDAPasswort)
SQLcon.Open()
Dim SQLString As String = "SELECT * FROM QUESTIONS WHERE ID = '" & QuestionID & "'"
Dim SQLQuery As SqlCeCommand = New SqlCeCommand(SQLString, SQLcon)
i want to join 2 databases so i can order one table with the help of another!
Just Like I would have one Database with 2 Tables
"SELECT Questions.ID FROM Questions ORDER BY Stats.Wrong DESC"
Click to expand...
Click to collapse
Dim SQLString As String = "SELECT * FROM tbl1, tbl2 WHERE tbl1.ID = tbl2.ID and tbl1.QuestionID = '" & QuestionID & "'"
Thank you But I want to do this out of 2 Databases not out of 2 Tables!
I have not actually had the need to do so.
But I would check out LINQ, I have a feeling it should be able to do that.
I'll check it for you when I get home (at work at the moment).
LINQ how it works? I only find rare information for it!
how can I use it in VB.net 2008 ?
There is SQL Command named
UNION
which can Combined Identical Structure Database to Combine the Record from Both Table have you tried it
But how can I use that practically, i know in php is that easily because I know the alias of the Database but with my technic
New SqlCeCommand(SQLString, SQLcon)
there only can be one Database Per Connection
LINQ will read all the records from both databases into memory then do the merge join and give you the matched resultset. You could probably do it much better yourself. If you are going to repeat this join often, then for the sake of the user's patience, you should at least try to do it yourself.
If one table is known to be smaller (in KB) than the other, then I would cache that table in a Dictionary<keyColumn, DataRow> construct. Then I would open a data reader on the second table and process each of those rows by referring to the cached version of the first table.
Of course, I assume you have already ruled out the possibility of permanently merging the two databases? That would be the best solution. But perhaps there are two separate applications, to which you do not have the source code, responsible for maintaining these two databases, in which case I fully understand.
I need to Seperate both!
It is for my Driving Licence Trainer. and I want to Seperate Training Files from the Statistics
If one table is known to be smaller (in KB) than the other, then I would cache that table in a Dictionary<keyColumn, DataRow> construct. Then I would open a data reader on the second table and process each of those rows by referring to the cached version of the first table.
Click to expand...
Click to collapse
@ftruter Could you make an Example for using it for sorting?
I'll start this thread to share my knowledge aquired after many hours of testing regarding the registry settings of Microsoft Voice Command on Topaz with WM6.5 ROM from HTC although the settings may be applicable to other cooked ROM's and phone models.
First of all, I don't know why but different versions of MSVC are installed with different registry settings so I will only talk of the final result. These characters "" do not need to be completed.
Here comes the tricky part. To make MSVC work you need to alter the following registry settings:
HKLM\Software\OEM\VoiceCommand
Type: String
"Path" = "\Windows\VoiceCmd.exe"
HKCU\ControlPanel\SoundCategories\Ring
Type: Dword
(BE CAREFUL HERE, IF IT'S A STRING, YOU NEED TO FIRST DELETE THE STRING AND CREATE A DWORD WITH THE FOLLOWING VALUES)
"AttenuationCategory" = "2" (it's the setting I'm using)
(This value can be changed. It tells how much the ringtone is reduced for the voice to be heard)
The rest of the values here do not need to be altered.
Next is:
HKCU\ControlPanel\SoundCategories\VoiceCommand1
Type: Dword
(SAME HERE, IF IT'S A STRING, YOU NEED TO FIRST DELETE THE STRING AND CREATE A DWORD WITH THE FOLLOWING VALUES)
"AttenuationCategory" = "5" (it's the setting I'm using)
(This value can be changed. It tells how loud the voice in call announcements can be 1 TO 5 1=low 5=high)
The rest of the values here do not need to be altered.
Make sure that the following location's are set to:
HKCU\ControlPanel\Sounds\RingTone0
Type:String
"Category" = "Ring"
and:
HKCU\ControlPanel\Sounds\TTSAnnounce
Type:String
"Category" = "VoiceCommand1"
Type: String
"Sound" = "\Application Data\Volatile\\TTSCallerID.wav
The rest of the values here do not need to be altered.
Do not forget to set your MSVC to announce incoming calls and to announce notifications using Bluetooth hands free if available.
If you want to assign the long call button from the phone to launch MSVC without a third party software then assign it from the personal folder in settings then edit the following registry key:
HKLM\Software\Microsoft\Shell\Keys\40C6
Type: String
"" = "\windows\voicecmd.exe\" (THE LAST SLASH IS CRITICAL, SO USE IT)
Leave the rest the way they are.
This are the settings for which dll should be used to initiate bluetooth communication: BTAGTEXT.DLL , VCBTHAG.DLL (it's installed by MSVC and this is the one you should use) and OEMAGW.DLL.
You should have something like this:
ex:
HKLM\Software\Microsoft\Bluetooth\AudioGateway
Type: String
"BTAGExtModule" = "\windows\vcbthag.dll"
If you want to use your wired headset to launch your MSVC then you need to long press the hang up button.
This setting were tested on the updated WM6.5 ROM from HTC website with MSVC version 1.6.21040 which works perfectly and 1.6.21725 which also works fine except for bluetooth voice command initialization from hands-free which does not work because I don't know why this version of MSVC closes the communication between phone and hands-free.
And last you should set you phone to not use single volume, if you do, the volume of the voice will be reduced with the ringtone, if you set them separately the voice will be spoken out loud even if you reduce the ringtone volume or system volume.
I hope this helps most of you out there who are desperatly trying to use MSVC and don't know how to set it to work the way it was supposed to.
P.S. For those who are trying to get the WWE eastern european 6.5 ROM (ex. Hungaria, Romania, etc), you can get it from HTC selecting in the country selection Ceska Republic. I don't know why but seems that other countries are not updated in the ROM section.
Hi,
I will add this to the MS Voice configger app i have set up.
Thanks for this!
You're welcome
It was my pleasure, I'm glad that someone will be able to use it and not to go through the same hardship as I did.
Dword v.s. String
HKCU\ControlPanel\Sounds\TTSAnnounce
Type: Dword
"Category" = "VoiceCommand1"
In the HKCU key you mentoned above, My type in the phone showed a string, not Dword. And it seems I can't add new Dword "string" after deleting the string type.
Anything I missed?
Sorry, my mistake, I will edit it, it should be a string there.
Hi guys,
For the longest time after I upgraded my ROM, MSVC has stopped making incoming caller announcements. Everything else works, it just wouldn't make call announcement when a call comes in. Not on speaker, not on BT. I tried everything and it still didn't work.
I came across this thread and I tweaked the registry. As soon as I changed
HKCU\ControlPanel\Sounds\RingTone0\Category from "VoiceCommand1" to "Ring", then incoming call announcement worked for me!!
So i was pretty happy about it, except it only worked for a few days. The last couple days it's stopped working again.
Taking a closer look at the registry I realize what I have is identical to what's posted here, except for -
HKCY/Control Panel/Sounds/TTSAnnounce/Sound
Instead of "\Application data\Volatile\\TTSCallerID.wav" I have "\Internal Storage\Backup and Restore\Application data\Volatile\\TTSCallerID.wav"
I guess it's a case where my ROM moves all volatile files from main memory to internal storage (like a SD card ... I use TouchDiamond1 which uses internal storage instead of SD card).
When I look at that folder, a TTSCallerID.wav file IS indeed generated everytime I make a call to my phone! It is just for whatever reason it fails to play that file!!
Has anybody experienced this? Can anyone help?
Voice Command Problem
Do you use some tweaking programs which could move the temporary folders from the main memory to the storage card or a custom rom which could be tweaked that way? As long as I now, you cannot move the location in which voice command writes his voice file as it is generated within the program.
Strange enough, call announce works after I made the following changes:
HKCU\ControlPanel\Sounds\TTSAnnounce\Category
Change from "VoiceCommand1" to "Ring"
That's different from what's reported on the 1st post, but it seems to work for my phone .... ??!?!
As for moving the volatile folder to internal storage ... it's a feature of my ROM (DiaDuit 1.6.7) ... the ROM automatically does that, even if I put files inside \Application\Volatile\ it moves them to the storage automatically. But everything seems to work fine, including MSVC after I made the above registry tweaks ... so I guess that wasn't the culprit.
Hi,
So I update the config app to version 1.2.
The above mentioned registry fix was already in the config app.
Last post for Topaz test:
http://forum.xda-developers.com/showpost.php?p=5485644&postcount=44
Can someone make a cab of this. thanks
Cab file
shayan.k said:
Can someone make a cab of this. thanks
Click to expand...
Click to collapse
It seems someone already has, check the link above
Description
I had a need to play a sound and vibrate my phone in a script-like setting (specifically, actions in the amazing Rhodium Keyboard Controller app). I couldn't find a simple app to let me do this. So I wrote one! It took about 10 minutes. I now share this with you because I'm sure somebody else has had the same need.
Tip Jar
Like this app? Want more like it? Tip a buck (or Euro or Pound or whatever) or two to help the author out! Click here to make a safe donation via PayPal.
To Use
1. Copy the PlaySound.exe file somewhere, like \Windows.
2. In your script or LNK, use command line arguments to tell it what to do. A single command line argument means that you are specifying a path to a sound to play. It will only play WAV files (sorry if you want WMA or MP3 etc you will need to convert). If you specify two arguments, it means you want to vibrate the phone. The first argument is the LED index of the vibrate (usually 1), and the second is length of time to vibrate in milliseconds.
3. If you do not specify command line arguments, or specify invalid ones (wrong path, negative number, etc.), it will fail without any notice (run, then immediately quit). This app will not tell you when something goes wrong.
Examples
Play the loudest.wav sound in \Windows
playsound.exe \windows\loudest.wav
Vibrate a Touch Pro 2 for half a second
playsound.exe 1 500
Notes
Remember to enclose the path in quotes if you have spaces in the path name to your file, or else PlaySound will interpret it as multiple arguments and think you want to vibrate. (for example, playsound.exe "\Program Files\My App\Sound.wav")
License
This app is released into the public domain with no warranty. That means you can redistribute it at will and do not even have to give me credit. I would appreciate credit, though. ;-) Enjoy!
Requirements
At least WM5 (fully compatible with WM6/6.1/6.5). It should work on touchscreen and non-touchscreen devices both, but I haven't tested it on a non-touchscreen device yet.
Updates
It's highly doubtful that I will ever update this app. If you need more features, feel free to use the source and compile your own!
Downloads
Attached to this post is the app and full source code.
Hi thx1200,
i have seen the following:
if (argc >= 3)
else if (argc >= 2)
Click to expand...
Click to collapse
But not argc = 1 so as in playsound.exe 1 500. Where you have done it, or i am blind .
BTW:
good, easy and clean. Short gec
mike2nl said:
Hi thx1200,
i have seen the following:
But not argc = 1 so as in playsound.exe 1 500. Where you it done, or i am blind .
BTW:
good, easy and clean. Short gec
Click to expand...
Click to collapse
if argc is either 2 or 3 they do their thing and return 0, otherwise the routine follows and returns -1, that's the trigger
EDIT: wait, I think I just said a very stupid thing... this is my second guess: for not knowing ANYTHING about wm programming, I think that argc is the number of arguments passed to the program (as in ARGument Count), while argv[] is the (ARGument Value) index for those parameters
ephestione said:
if argc is either 2 or 3 they do their thing and return 0, otherwise the routine follows and returns -1, that's the trigger
EDIT: wait, I think I just said a very stupid thing... this is my second guess: for not knowing ANYTHING about wm programming, I think that argc is the number of arguments passed to the program (as in ARGument Count), while argv[] is the (ARGument Value) index for those parameters
Click to expand...
Click to collapse
You are correct. argc just counts the number of arguments passed to the application. argv contains the arguments. To make it more confusing, the application path is also passed in. So argv[0] is the app path, argv[1] is argument 1, argv[2] is argument 2, etc. So, argc (argument count) is 2 when there is actually one argument passed in (because the first argument is the app path and the second the first argument).
argv is a string array, so you have to convert the string into a numeric value if you want to do numeric processing, and that's what the _ttoi() function does for the LED index and wait value.
And, there you have it.