Author Topic: AccessViolationException at SpeechLib.ISpeechVoice.Speak  (Read 1788 times)

0 Members and 1 Guest are viewing this topic.

Telorast

  • $upporter
  • Jr. Member
  • *****
  • Posts: 28
  • Karma: 0
    • View Profile
AccessViolationException at SpeechLib.ISpeechVoice.Speak
« on: January 28, 2022, 01:33:47 PM »
I recently upgraded from 2.3.0.8 to 2.3.1.1b and now VC keeps crashing.
I'm trying to run a SpeakSync command and half the sentence will be read correctly, then the crash happens.

The last entry in the logfile is:
Code: [Select]
2022-01-28 17:59:08 849 Action from plugin: C:\Dropbox\Apps\Vox Commando\Plugins\TTS\TTS.dll
2022-01-28 17:59:08 913 Action RESULT:
2022-01-28 17:59:08 913 Action claims to be threadsafe.
2022-01-28 17:59:08 913 action repeat set to: 1
2022-01-28 17:59:08 913 Action:  TTS.SpeakSync
2022-01-28 17:59:08 913 Param1:Friday: minus 4 degrees. Up to 2 degrees and Clear.
2022-01-28 17:59:08 913 addHistoryItem [action] TTS.SpeakSync:Friday: minus 4 degrees. Up to 2 degrees and Clear.

2022-01-28 17:59:08 913 Action from plugin: C:\Dropbox\Apps\Vox Commando\Plugins\TTS\TTS.dll

Event viewer shows the following exception:

Code: [Select]
Application: VoxCommando32.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
   at SpeechLib.ISpeechVoice.Speak(System.String, SpeechLib.SpeechVoiceSpeakFlags)
   at vcPlugin.ttsObj.mySpeak(System.String, Boolean, Boolean)
   at vcPlugin.Plugin.doAction(System.String[], System.String[])
   at eval_g.eval_ᜃ(VoxCommando.macroElement, System.Collections.Generic.List`1<System.String>, Int32)
   at eval_g.eval_ᜂ(VoxCommando.macroElement, System.Collections.Generic.List`1<System.String>, Int32)
   at eval_g.eval_ᜁ(VoxCommando.macroElement, System.Collections.Generic.List`1<System.String>, Int32)
   at eval_g+eval_ᜂ.eval_ᜀ()
   at System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[[eval_g+eval_ᜂ, VoxCommando, Version=2.3.1.1, Culture=neutral, PublicKeyToken=null]](eval_ᜂ ByRef)
   at eval_g.eval_ᜁ(VoxCommando.activeCommand)
   at eval_g.eval_ᜂ(VoxCommando.activeCommand)
   at eval_g.eval_ᜀ(VoxCommando.activeCommand, System.String, Boolean)
   at eval_g.eval_ᜀ(System.String, System.Collections.Generic.List`1<System.String>)
   at eval_g.eval_ᜇ(System.String)
   at eval_g.eval_ᜃ(VoxCommando.macroElement, System.Collections.Generic.List`1<System.String>, Int32)
   at eval_g.eval_ᜂ(VoxCommando.macroElement, System.Collections.Generic.List`1<System.String>, Int32)
   at eval_g.eval_ᜁ(VoxCommando.macroElement, System.Collections.Generic.List`1<System.String>, Int32)
   at eval_g+eval_ᜂ.eval_ᜀ()
   at System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[[eval_g+eval_ᜂ, VoxCommando, Version=2.3.1.1, Culture=neutral, PublicKeyToken=null]](eval_ᜂ ByRef)
   at eval_g.eval_ᜁ(VoxCommando.activeCommand)
   at eval_g.eval_ᜂ(VoxCommando.activeCommand)
   at eval_g.eval_ᜀ(VoxCommando.activeCommand, System.String, Boolean)
   at eval_g.eval_ᜀ(System.Object, System.Speech.Recognition.SpeechRecognizedEventArgs)
   at System.Speech.Recognition.SpeechRecognitionEngine.SpeechRecognizedProxy(System.Object, System.Speech.Recognition.SpeechRecognizedEventArgs)

Exception Info: System.Reflection.TargetInvocationException
   at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
   at System.Delegate.DynamicInvokeImpl(System.Object[])
   at System.Speech.Internal.AsyncSerializedWorker.WorkerProc(System.Object)

Exception Info: System.Reflection.TargetInvocationException
   at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
   at System.Delegate.DynamicInvokeImpl(System.Object[])
   at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry)
   at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(System.Object)
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
   at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry)
   at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
   at System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)
   at System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)
   at System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG ByRef)
   at System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)
   at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32, System.Windows.Forms.ApplicationContext)
   at System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32, System.Windows.Forms.ApplicationContext)
   at System.Windows.Forms.Application.Run(System.Windows.Forms.Form)
   at eval_᜖.ᜀ()

I don't get any crash logs in VC folder.

I have tried doing a fresh install in a different folder as well as testing with both 32b and 64b versions. Also tried 2.3.1.0 but same problem.

Reinstalling 2.3.0.8 fixes the problem so I'll just stay there for now.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: AccessViolationException at SpeechLib.ISpeechVoice.Speak
« Reply #1 on: January 30, 2022, 11:05:08 AM »
Hmm.  That's a tough one.  I'm using 2.3.1.1. and do not have that issue.

Can you send me the command XML please.

Are you using the SP version?

Which TTS engine and voice are you using?  Have you tried with different voices?

Are you running VC in a dropbox?  I don't know if that is a problem or not, except that it will be uploading your log files all the time.

Telorast

  • $upporter
  • Jr. Member
  • *****
  • Posts: 28
  • Karma: 0
    • View Profile
Re: AccessViolationException at SpeechLib.ISpeechVoice.Speak
« Reply #2 on: January 30, 2022, 01:07:39 PM »
I usually don't have logging active to avoid them being uploaded. I just like the automatic version control of the configuration files.

I was playing around with a fresh install to see if I could find the minimum required configuration to reproduce the problem but after a few crashes I'm having trouble reproducing the problem even with the original configuration files. Maybe some faulty Windows setting I accidentally fixed in the process?

Since it's currently working I'll just leave it alone for now and do some more testing if the problem returns.
« Last Edit: January 30, 2022, 01:09:55 PM by Telorast »

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: AccessViolationException at SpeechLib.ISpeechVoice.Speak
« Reply #3 on: January 31, 2022, 02:05:39 PM »
I hope you fixed it for good.  That sort of thing can be difficult to diagnose.  Let me know if I can help.