Author |
|
gcamp0730 Intermediate
Joined: June 12 2006 Location: United States Posts: 35
|
Posted: August 25 2006 at 2:28pm | IP Logged
|
|
|
Hello,
I'm running v5.12.3.6 and when our application is run on my machine (either in Debug or Release mode) everything works as expected. However, when the same application is run on a deployment machine, about 5 seconds into a call the machine will lock up and will have to be power-cycled. For those few seconds where the call is connected, audio is passed back and forth successfully.
The development machine is Windows XP SP2 w/all updates. The deployment machine is Windows 2K SP4 w/all updates.
Once a call is connected, our application just sits there waiting for the call to end. I've debugged and turned off/on everything I can think of.
Any ideas?
Thanks,
Greg
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 25 2006 at 3:43pm | IP Logged
|
|
|
Hi Greg,
Whew… That sounds like a tough one. Short of getting your application executable and testing it here, we can only take an educated guess at what might be going on.
We have not had any customer problem reports even close to what you are describing. A standard Windows 2000 sp4 machine should operate as expected.
When something like this occurs it’s possible that it’s due to memory corruption in the process space but this is only a wild guess.
Note: You may have tried all or some of the following suggestions so bear with us.
Have you tried any of the following?
1)
Use another Windows 2000 sp4 machine – did you get the same behavior? Is the problem repeatable only on Win 2k machines?
2)
Check to make sure that the Media engine DLL on the win2k deployment machine is bit-for-bit identical to the dll image on your development machine.
3) We are assuming you are using the redistribution image of the media engine on the deployment machine. Uninstall the deployment version of the media engine on the win2k machine and install the full development version. Execute your app and see if same behavior exists.
4)
Is it possible the application code is causing memory corruption somewhere? Tools like Compuware’s Devpartner (BoundsChecker) can help to locate problems like this.
5)
Does the SIP log file for the incoming call your app answers look OK? Post a complete SIP call log to this thread if you can. Use the SipLogD.exe utility on another host to record this SIP log data.
6)
Like all good debugging techniques, isolating the culprit is key. Try pairing down the functionality and features in your app and what the media engine is doing so we can isolate the cause.
7)
From what we know of your application, it seems straight forward. Try disabling your code that streams audio data to the phone line and to the local audio playback output and see what this does. It may be the problem. We assume the call connects properly and dies shortly after IVR streaming takes place.
8)
If the machine is locking up, it indicates a massive failure that most times can be isolated quickly. Normally a corrupt process will become unresponsive (and can be terminated via task manager) but the host machine should not “lock up”.
We can assist to whatever level you feel comfortable with. Get us your application executable or preferably your app’s source code image that we can build and test at this location. We can execute a mutual NDA beforehand if required.
Support
|
Back to Top |
|
|
gcamp0730 Intermediate
Joined: June 12 2006 Location: United States Posts: 35
|
Posted: August 25 2006 at 4:04pm | IP Logged
|
|
|
I appreciate your troubleshooting list. I had tried most of them, but it was good validation for my techniques!
1) yes, I tried another machine with duplicate results (we image our workstations, so I know they were identical with respect to software)
2) I did a binary compare of the .dll and they were identical
3) I was just testing this when I saw your post. Installing the developer version appears to have fixed the problem.
<skip a few here>
7) I had the same thought; same results with or without the audio playback code.
8) I agree completely.
Since using the developer install appears to have fixed the issue, is it possible that a registry key somewhere (or any other file that may be copied to the system) isn't correct? I ran the full code (with audio playback) and the call worked as expected. I left it up for about a minute before disconnecting. Previously the machine would lock up after 10-15 seconds at most, usually sooner.
Let me know if I can assist you in any way with this issue.
Thanks!
Greg
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 25 2006 at 4:42pm | IP Logged
|
|
|
Greg,
Good work. It’s good to be on the same page as the developer at the other end. :)
Things like this can be a nightmare to find and you did it quickly.
Where to go from here:
Let’s assume the redistribution image is the culprit. Your suggestion that some critical registry data is foobar is possible. We just finished testing this last week but it’s possible we missed something. Imaging from a master hard drive image should not matter.
We are going to assume that your machines are imaged from a master hard drive image (using Norton Ghost or similar) that has all your software installed in addition to the redistribution image of the VOIP Media Engine. Correct us if this is not the case.
A few additional questions and tasks:
1)
Using regedit on the virgin imaged win2k box, export the following registry key and all sub keys/values:
HKLM\Software\LanScape
Export it to a registry file format that is text based so we can read it. Please send this file to support ‘at’ lanscapecorp.com
2)
We assume that the win2k deployment machine is imaged from the master and this fails as you initially described. Will your application execute properly if you uninstall the redist media engine and then reinstall the redist media engine on the win2k test machine?
Please perform this test for us and export the registry values as in step 1 to a 2nd registry file. Also send this registry file to our support email.
If the DLL on your dev box and on the win2k deployment box are identical, then we must be facing a registry issue. We should be able to locate the issue quickly with your assistance.
Good work.
Support
|
Back to Top |
|
|
gcamp0730 Intermediate
Joined: June 12 2006 Location: United States Posts: 35
|
Posted: August 25 2006 at 5:55pm | IP Logged
|
|
|
Well, I believe I've figured it out. You're going to love this. (By the way, I performed some more testing and it appears that I am in error - as long as the audio playback code is not used the application works fine.)
I followed the Redistribution guide and placed the LMEVoip.dll file in my application folder. On a whim I created C:\Program Files\LanScape\VOIP Media Engine\5.12\Bin and placed another copy of LMEVoip.dll there. I can enable the audio playback and everything works like it should.
I did *not* place that directory in the search path, so it seems that maybe some code is expecting the DLL to live in that predefined location? That would certainly explain why installing the developer edition allowed the application to work correctly.
Greg
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 25 2006 at 9:01pm | IP Logged
|
|
|
Hi Greg,
Ok. Good investigative work. That is interesting and at the same time a bit weird. We use the Windows installer service to install the development package and the redistribution package. They are created from the same installer project (MSI tables). I think you've hit the nail on the head. There must be a path dependency involved between the dev install and the redistribution install that we missed during testing.
We are going to look into this right away and figure out what the issue is. From what you describe, we should be able to emulate this here with one of our own VOIP applications that use the redist media engine.
We will repost with our test results. You have probably put your finger right on it.
Support
|
Back to Top |
|
|
gcamp0730 Intermediate
Joined: June 12 2006 Location: United States Posts: 35
|
Posted: August 25 2006 at 10:52pm | IP Logged
|
|
|
While you are looking into this, I have uncovered something else. Since copying the dll to the "developer location" seemed to fix the issue, I decided to try to log in as a normal user (i.e. non-Administrator access to the machine) and test the application.
The app reported that the engine would not start due to invalid microcode, or something like that. I can get the exact error code if it will help. But it appears that it's an issue with the installer only registering for the user who installed the dll instead of for all users.
I installed the redist package with this command "msiexec /i redistsetup.msi /q".
Thanks,
Greg
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 28 2006 at 7:58am | IP Logged
|
|
|
Greg,
We will look into the issues you described this morning (8-28-06).
You >>>
The app reported that the engine would not start due to invalid microcode, or something like that. I can get the exact error code if it will help.
<<< Support
Yes, please tell us the error return value.
We will repost when we have something new.
Support
|
Back to Top |
|
|
gcamp0730 Intermediate
Joined: June 12 2006 Location: United States Posts: 35
|
Posted: August 28 2006 at 8:29am | IP Logged
|
|
|
The status returned from StartSipTelephony() is SipCallFailure.
Thanks,
Greg
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 29 2006 at 7:46am | IP Logged
|
|
|
Hi Greg,
Here is an update:
There is an installer issue with the redistribution install image that has to do with default permissions assigned to registry values the VOIP Media Engine requires for operation. The permissions of media engine registry keys need to be changed when installing for all users using an Administrator account.
We are in the process of adding this change to the redistribution installer and adding an additional test to our software QA procedures used to verify VOIP Media Engine functionality.
Please be patient as we complete the above change.
Regarding the “C:\Program Files\LanScape\VOIP Media Engine\5.12\Bin” fixed path symptom: We are investigating this further and will report our findings
Support
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 29 2006 at 7:22pm | IP Logged
|
|
|
Hi Greg,
We just sent you an email with updated information. We will wait for your response.
Support
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: September 06 2006 at 5:22pm | IP Logged
|
|
|
Greg,
Did the last update meet our installation needs? Repost your findings so we can close this support issue.
Thanks!
Support
|
Back to Top |
|
|
gcamp0730 Intermediate
Joined: June 12 2006 Location: United States Posts: 35
|
Posted: September 08 2006 at 9:54am | IP Logged
|
|
|
Sorry for the delayed response; I took some vacation time earlier this week.
Yes, the full version appears to have solved the issue regarding installing as an administrator and running the app as a lower priviledged user.
Also, the issue I had where I had to copy the dll to the default install directory (c:\progra~1\LanScape\...\Bin) appears to have gone away as well. I know you mentioned that you could not find anything in code related to that issue, so it is a strange anomaly.
Thanks,
Greg
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: September 08 2006 at 10:18am | IP Logged
|
|
|
Thank you Greg for that updated information. Your feedback is appreciated and very important. We will consider this support issue closed.
As you continue with your VOIP product development, ping us using this forum as needed. We are particularly interested in our customer’s applications and would like to understand them as much as possible.
Fitz recently posted a support question regarding recording VOIP audio data in conjunction with recording GUI video.
Video/Voice Recording with LanScape
Feel free to email us some background info on what you are trying to do. We are curious that’s all. You may help us identify another need that we may want to offer to customers.
We are working hard on the next release of the Media Engine in addition to our other VOIP products. Some cool capabilities are being added that will make the Media Engine even more useful to VOIP developers.
Vacation time sounds good. :)
Support
|
Back to Top |
|
|