AudioWorkletStream
native-messaging-espeak-ng
AudioWorkletStream | native-messaging-espeak-ng | |
---|---|---|
5 | 21 | |
25 | 4 | |
- | - | |
5.6 | 6.7 | |
3 months ago | 10 months ago | |
HTML | JavaScript | |
- | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
AudioWorkletStream
-
Node.js fetch() vs. Deno fetch(): Implementation details...
// Exits half way through reading response when --max-old-space-size=6 is set // Exits immediately when --jitless flag is set // // Usage: // // port.postMessage({ // url: 'https://github.com/guest271314/AudioWorkletStream/raw/master/house--64kbs-0-wav', // method: 'get', // body: null // })
-
Are you using generators?
Yes. Fetching a single or multiple files for an infinite stream of audio https://github.com/guest271314/AudioWorkletStream/blob/master/worker.js. Streaming (real-time) audio is non-trivial. Any gaps or glitches in playback will be audible to the user. We could test for expected Float32Arrays. I would suggest complentary manual test in, e.g., WPT to determine audio output does not have gaps or glitches; and renders the expected playback rate.
-
I Created A Web Speech API NPM Package Called SpeechKit
One way to do that is utilizing Native Messaging on Chromium or Firefox https://github.com/guest271314/native-messaging-espeak-ng, and https://github.com/guest271314/webtransport/blob/main/webTransportEspeakNg.js for some WebTransport experiments. Technically we don't need a local server. We can stream and parse the WAV directly and pipe to AudioWorklet or a MediaStreamTrackGenerator https://github.com/guest271314/AudioWorkletStream. The same is true for speech recognition, where audio is piped to the local application and text or JSON piped back. Note also espeak-ng has been compiled to WebAssembly. I created native-messaging-espeak-ng for the ability to pass SSML directly to espeak-ng.
-
How to stream/play a video or audio file on HTTP?
You can stream audio and/or video over HTTP using fetch() https://github.com/guest271314/AudioWorkletStream as long as you know how to parse the codec, if the media is encoded.
-
Is it possible to have an accurate timer in javascript
Re using a dedicated Worker and AudioWorklet to stream, see, e.g., https://github.com/guest271314/AudioWorkletStream; https://plnkr.co/edit/nECtUZ.
native-messaging-espeak-ng
-
Have we reached a point of no return on managing software dependencies?
I'm just trying to use coqui-ai/TTS so I can stream speech synthesis output to the browser as I do with eSpeak NG https://github.com/guest271314/native-messaging-espeak-ng. I think the issue has been brought up before on GitHub. I have not read a solution. I am ready to try again if you can suggest a minimal build process.
-
Deno should target the browser officially
You can use a Native Messaging host to run local code controlled from the browser. See native-messaging-deno for a general purpose and extensible solution and deno-server where Deno's serveTls is dynamically started to run a local application, stream stdout from the application to the browser, then stop the local server.
- Streaming speech synthesis output to the browser using Bash with GNU head and Native Messaging
-
Execute Terminal Commands and Receive Live Output with React SSE
A single page Deno server can be found here https://github.com/guest271314/native-messaging-espeak-ng/blob/deno-server/local_server.js. I have used this source code // https://github.com/chcunningham/atomics-post-message/blob/main/server.js, renamed to server.msj modified to use Ecmascript Modules instead of CommonJS, e.g.,
-
IAMA senior javascript dev, ask me anything
I've already achieved the requirement multiple ways, already; from using Native Messaging https://github.com/guest271314/native-messaging-espeak-ng, to using GNU Core Utilities tail, to Deno.watchFs() https://github.com/guest271314/fs, et al., see captureSystemAudio. The one approach I have not yet achieved is compiling to Emscripten - with SSML support.
-
how to fix these errors when trying to request from a rest API?
Create a self-signed certificate. If you are on Chromium or Chrome launch with --ignore-certificate-errors-spki-list=.... Read this https://github.com/GoogleChrome/samples/blob/gh-pages/webtransport/webtransport_server.py#L42-L72. This is how I use HTTPS for Deno and Node local servers and WebTransport https://github.com/guest271314/native-messaging-espeak-ng/tree/deno-server.
-
Which backend JavaScript framework is the one you use ?
I use the source code for Deno's serveTls https://github.com/guest271314/native-messaging-espeak-ng/blob/deno-server/local_server.js and wrote a Web server module for QuickJS https://github.com/guest271314/webserver-c/tree/quickjs-webserver.
-
[Express] - How to have a self-updating display in browser window? Template Engines sufficient? Or use Vue/Angular/React?]
This https://github.com/guest271314/native-messaging-espeak-ng/tree/deno-server is what I do using Deno
-
Web Speech API is (still) broken on Linux circa 2023
I created https://github.com/guest271314/native-messaging-espeak-ng which provides a means to send text or SSML to the eSpeak NG speech synthesis engine and parse the generated WAV in the browser. That bypasses waiting around another N years for Google to prioritize Web Speech API, which I see no evidence of Google doing - except for its cloud service.
-
Build a Text-to-Speech component in React
I merely read the article to see how the author was implementing "Text-to-Speech"; how they implemented "Text-to-Speech"; e.g., native-messaging-espeak-ng to overcome or avoid the multiple issues and limitations with using the specified Web Speech API in the browser.
What are some alternatives?
streams - Streams Standard
GoogleNetworkSpeechSynthesis - Google's Network Speech Synthesis: Bring your own Google API key and proxy
DeepSpeech - DeepSpeech is an open source embedded (offline, on-device) speech-to-text engine which can run in real time on devices ranging from a Raspberry Pi 4 to high power GPU servers.
speech-kit - Simplifying the Speech Synthesis and Speech Recognition engines for Javascript. Listen for commands and perform callback actions, make the browser speak and transcribe your speech!
speechd - Common high-level interface to speech synthesis
musical-timer - Timers based in musical parameters (time signature, tempo and beat resolution)
speech-api - Web Speech API
pocketsphinx - A small speech recognizer
webserver-c - A simple HTTP webserver written in C.
proposal-common-minimum-api
captureSystemAudio - Capture system audio ("What-U-Hear")