OpenASR / idiolect

🎙️ Handsfree Audio Development Interface
https://arxiv.org/pdf/2305.03089.pdf
Apache License 2.0
93 stars 10 forks source link

The plugin doesn't seem to work when installing from the jetbrains repo #49

Closed brmc closed 1 year ago

brmc commented 6 years ago

This looks like a very interesting project, but I'm having trouble getting started. Installing the plugin works, but after restarting, nothing seems to happen.

Are there any prerequisite steps before installing? I have cmu sphix installed

No errors appear in the Event log, but various errors can be found in idea.log. I'll post the tracebacks at the end of the post.

Environment details:

java.lang.IllegalStateException: Expected state READY actual state DEALLOCATED
    at edu.cmu.sphinx.recognizer.Recognizer.checkState(Recognizer.java:134)
    at edu.cmu.sphinx.recognizer.Recognizer.recognize(Recognizer.java:103)
    at edu.cmu.sphinx.recognizer.Recognizer.recognize(Recognizer.java:122)
    at edu.cmu.sphinx.api.AbstractSpeechRecognizer.getResult(AbstractSpeechRecognizer.java:60)
    at org.openasr.idear.asr.cmusphinx.CMUSphinxASR.waitForUtterance(CMUSphinxASR.kt:12)
    at org.openasr.idear.asr.ASRControlLoop.run(ASRControlLoop.kt:39)
    at java.lang.Thread.run(Thread.java:745)
2018-05-16 07:40:47,002 [1092778]  ERROR - ij.components.ComponentManager - Expected state READY actual state RECOGNIZING 
java.lang.IllegalStateException: Expected state READY actual state RECOGNIZING
    at edu.cmu.sphinx.recognizer.Recognizer.checkState(Recognizer.java:134)
    at edu.cmu.sphinx.recognizer.Recognizer.deallocate(Recognizer.java:177)
    at org.openasr.idear.asr.cmusphinx.CustomLiveSpeechRecognizer.stopRecognition(CustomLiveSpeechRecognizer.kt:61)
    at org.openasr.idear.asr.cmusphinx.CMUSphinxASR.stopRecognition(CMUSphinxASR.kt:33)
    at org.openasr.idear.asr.ASRControlLoop.stopRecognition(ASRControlLoop.kt:27)
    at org.openasr.idear.asr.ASRService.terminate(ASRService.kt:41)
    at org.openasr.idear.asr.ASRService.dispose(ASRService.kt:47)
    at org.openasr.idear.Idear.disposeComponent(Idear.kt:15)
    at com.intellij.openapi.components.impl.ComponentManagerImpl.disposeComponents(ComponentManagerImpl.java:135)
    at com.intellij.openapi.application.impl.ApplicationImpl.dispose(ApplicationImpl.java:485)
    at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:48)
    at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:44)
    at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:138)
    at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:107)
    at com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:169)
    at com.intellij.openapi.util.objectTree.ObjectNode.execute(ObjectNode.java:107)
    at com.intellij.openapi.util.objectTree.ObjectTree.executeAll(ObjectTree.java:144)
    at com.intellij.openapi.util.Disposer.dispose(Disposer.java:129)
    at com.intellij.openapi.util.Disposer.dispose(Disposer.java:125)
    at com.intellij.openapi.application.impl.ApplicationImpl.c(ApplicationImpl.java:244)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1010)
    at com.intellij.openapi.application.impl.ApplicationImpl.b(ApplicationImpl.java:244)
    at com.intellij.openapi.application.impl.ApplicationImpl.a(ApplicationImpl.java:772)
    at com.intellij.openapi.application.impl.ApplicationImpl.exit(ApplicationImpl.java:748)
    at com.intellij.openapi.application.impl.ApplicationImpl.exit(ApplicationImpl.java:737)
    at com.intellij.openapi.application.impl.ApplicationImpl.exit(ApplicationImpl.java:714)
    at com.intellij.openapi.application.impl.ApplicationImpl.exit(ApplicationImpl.java:709)
    at com.intellij.openapi.wm.impl.IdeFrameImpl$3.windowClosing(IdeFrameImpl.java:272)
    at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
    at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
    at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
    at java.awt.Window.processWindowEvent(Window.java:2054)
    at javax.swing.JFrame.processWindowEvent(JFrame.java:305)
    at java.awt.Window.processEvent(Window.java:2013)
    at java.awt.Component.dispatchEventImpl(Component.java:4897)
    at java.awt.Container.dispatchEventImpl(Container.java:2295)
    at java.awt.Window.dispatchEventImpl(Window.java:2746)
    at java.awt.Component.dispatchEvent(Component.java:4719)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
    at java.awt.EventQueue.access$500(EventQueue.java:98)
    at java.awt.EventQueue$3.run(EventQueue.java:715)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
    at java.awt.EventQueue$4.run(EventQueue.java:737)
    at java.awt.EventQueue$4.run(EventQueue.java:735)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
    at com.intellij.ide.IdeEventQueue.q(IdeEventQueue.java:779)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:720)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:395)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

I'm not sure if they are relevant, but it's the only thing I could find in the logs

Any help would be appreciated. thanks

breandan commented 6 years ago

Hmm, this should have been fixed in the last release. Are you running the latest version 1.3.3? Can you try building the plugin following the build instructions and report if the issue still occurs? Thanks!

brmc commented 6 years ago

thanks for the quick response.

yes, i'm running 1.3.3

I forgot to write earlier that I already tried building from source. i got the following error:

* What went wrong:
Execution failed for task ':compileKotlin'.
> Could not resolve all files for configuration ':compileClasspath'.
   > Could not find AceJump/lib/AceJump-3.3.5.jar (org.jetbrains.plugins:AceJump:3.3.5).

do you want me to file a separate ticket for that?

breandan commented 6 years ago

Unable to reproduce the build issue. Maybe try ./gradlew clean runIde?

brmc commented 6 years ago

Unfortunately i got the same results

What does your dev environment look like? i could try recreating it in a VM

brmc commented 6 years ago

Just to be clear, are there any steps that need to be taken upon installing to activate the plugin?

I have only tried "hi idea," "ok idea", and "open <menu item"

breandan commented 6 years ago

Just to be clear, are there any steps that need to be taken upon installing to activate the plugin?

Yes, you must click on the microphone button to activate the plugin. Unlike some other voice assistants (which shall remain unnamed), we do not eavesdrop without the user's permission.

nalbion commented 6 years ago

@brmc did you figure out how to get it to build? I have the same problem in #51 and have reproduced the problem in Docker. It would be good to reproduce the solution in Docker and TravisCI

breandan commented 1 year ago

Quick update: We recently release a new plugin along with some example commands in the docs. If you get the chance to try it out, it would be great to hear your feedback. Thanks for your patience!