Kaljurand / dictate.js

A small Javascript library for browser-based real-time speech recognition, which uses Recorderjs for audio capture, and a WebSocket connection to the Kaldi GStreamer server for speech recognition.
https://kaljurand.github.io/dictate.js/
BSD 3-Clause "New" or "Revised" License
215 stars 61 forks source link

Network Error #11

Closed jin1004 closed 7 years ago

jin1004 commented 7 years ago

I have created an ASR Server using kaldi gstreamer which I am running on my local computer. I can get results from the server using audio files, but I need to prepare a demo to do real time speech recognition.

Therefore, I changed the server locations in the mob.html page and dictate.js pages but I am constantly getting the following msg whenever I press the start button: msg: 11: Stopped recording msg: 10: 1006//false msg: END OF SESSION: ERR: 2:

I am really not familiar with client server programming so maybe I am missing something really obvious, but I will be really grateful if somebody can help me with this or just point me in the right direction.

jin1004 commented 7 years ago

Currently I have changed my variables to the following in both dictate.js and demo.js: server = "wss://localhost:8888/worker/ws/speech"; server_status = "wss://localhost:8888/worker/ws/status"; reference_handler = "wss://localhost:8888/worker/dynamic/reference";

When I use ws instead of wss as the server address, I get the following error: msg: 11: Stopped recording ERR: 2: WebSocket: readyState!=1: 3: failed to send: [object Blob] msg: 10: 1006//false msg: END OF SESSION: msg: 5: Send: blob: audio/x-raw, 8916

Any help will be appreciated

Kaljurand commented 7 years ago

I tried with a local installation of https://github.com/jcsilva/docker-kaldi-gstreamer-server and only changing "mob.html" to include:

<option value="ws://localhost:8080/client/ws/speech|ws://localhost:8080/client/ws/status">English (localhost)</option>

Everything seemed to work. So I'm out of ideas...

jin1004 commented 7 years ago

Thanks for the reply. I actually figured it out. I was using the worker address as the server address. Sorry for wasting your time. It was a stupid mistake on my part.

I also had issue with the first computer I was using. It had some firewall issue that was preventing communication with the server. Also, I am using firefox right now. It doesn't work with Chrome but that maybe a version problem.