vosk-asterisk | Speech Recognition in Asterisk with Vosk Server | Speech library

 by   alphacep C Version: Current License: GPL-2.0

kandi X-RAY | vosk-asterisk Summary

kandi X-RAY | vosk-asterisk Summary

vosk-asterisk is a C library typically used in Artificial Intelligence, Speech applications. vosk-asterisk has no bugs, it has no vulnerabilities, it has a Strong Copyleft License and it has low support. You can download it from GitHub.

Speech Recognition in Asterisk with Vosk Server
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              vosk-asterisk has a low active ecosystem.
              It has 70 star(s) with 27 fork(s). There are 8 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 14 open issues and 19 have been closed. On average issues are closed in 31 days. There are 2 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of vosk-asterisk is current.

            kandi-Quality Quality

              vosk-asterisk has 0 bugs and 0 code smells.

            kandi-Security Security

              vosk-asterisk has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              vosk-asterisk code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              vosk-asterisk is licensed under the GPL-2.0 License. This license is Strong Copyleft.
              Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.

            kandi-Reuse Reuse

              vosk-asterisk releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of vosk-asterisk
            Get all kandi verified functions for this library.

            vosk-asterisk Key Features

            No Key Features are available at this moment for vosk-asterisk.

            vosk-asterisk Examples and Code Snippets

            No Code Snippets are available at this moment for vosk-asterisk.

            Community Discussions

            QUESTION

            With asyncio in Python 3 code, how can I (re)start/stop non-blocking websocket IO recurrently?
            Asked 2021-Mar-05 at 09:06

            In my live phone speech recognition project Python's asyncio and websockets modules are used basically to enable data exchange between client and server in asynchronous mode. The audio stream which to be recognized comes to the client from inside of a PBX channel (Asterisk PBX works for that) via a local wav file that cumulates all data from answering call until hangup event. While conversation is going on, an async producer pushes chunks of call record (each of them no larger than 16 kB) to asyncio queue, so that a consumer coroutine can write data to buffer before sending to the recognition engine server (my pick is Vosk instance with Kaldi engine designed to connect using websocket interface). Once the buffer exceeds a specific capacity (for example it may be 288 kB), the data should be flushed to recognition by send function and returned (as a transcript of the speech) by recv. The real-time recognition does matter here, therefore I need to guarantee that socket operations like recv will not halt both coroutines throughout websocket session (they should be able to keep queue-based data flow until the hangup event). Let's take a look at whole program, first of all there is a main where an event loop gets instantiated as well as a couple of tasks:

            ...

            ANSWER

            Answered 2021-Mar-05 at 09:06

            If I understand the issue correctly, you probably want to replace await self.do_recognition() with asyncio.create_task(self.do_recognition()) to make do_recognition execute in the background. If you need to support Python 3.6 and earlier, you can use loop.create_task(...) or asyncio.ensure_future(...), all of which in this case do the same thing.

            When doing that you'll also need to extract the value of self._buffer and pass it to do_recognition as parameter, so that it can send the buffer contents independently of the new data that arrives.

            Two notes unrelated to the question:

            • The code is accessing internal implementation attributes of queue, which should be avoided in production code because it can stop working at any point, even in a bugfix release of Python. Attributes that begin with _ like _finished and _unfinished_tasks are not covered by backward compatibility guarantees and can be removed, renamed, or change meaning without notice.

            • You can import CancelledError from the top-level asyncio package which exposes it publicly. You don't need to refer to the internal concurrent.futures._base module, which just happens to be where the class is defined by the implementation.

            Source https://stackoverflow.com/questions/66469586

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install vosk-asterisk

            Make sure you have latest asterisk update
            First build the modules
            Edit modules.conf to load modules
            Edit dialplan in extensions.conf:
            Run Vosk server with the Docker
            Dial extension and check the result

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/alphacep/vosk-asterisk.git

          • CLI

            gh repo clone alphacep/vosk-asterisk

          • sshUrl

            git@github.com:alphacep/vosk-asterisk.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link