Security News
How Threat Actors are Abusing GitHub’s File Upload Feature to Host Malware
GitHub is susceptible to a CDN flaw that allows attackers to host malware on any public repository.
mic-to-speech
Advanced tools
Changelog
[1.0.1] - 2017-10-26
Readme
Watches your microphone stream to pull out speech segments that you can save to a file, or send to an endpoint for speech recognition. Ideal for saving audio for conversation monitoring and assistant apps that work like Google Home or Amazon Alexa.
Supports Mac, Windows, Linux and Raspberry Pi.
const MicToSpeech = require('mic-to-speech');
let micToSpeech = new MicToSpeech();
micToSpeech.on('speech', function(buffer) {
console.log('buffer of speech received');
});
micToSpeech.start();
console.log('Listening for speech')
const MicToSpeech = require('mic-to-speech');
const fs = require('fs');
let micToSpeech = new MicToSpeech();
micToSpeech.on('speech', function(rawAudio) {
// create filename
let now = new Date();
let filename = (now.getMonth() + 1) + "-" + now.getDate()
+ "-" + now.getFullYear() + ' ' + now.getHours()
+ ':' + now.getMinutes() + ':' + now.getSeconds() + '.raw';
// write to a file and restart speech detection
fs.writeFile(filename, rawAudio, function() {
console.log('saved: ' + filename);
micToSpeech.resume();
});
};
micToSpeech.start();
console.log('Listening for speech');
Note: This is a header-less wav file, so you will need a compatible software to play them. On a Mac you can play them with play:
play -b 16 -e signed -c 1 -r 16000 someDatedFile.raw
'use strict';
const ElizaBot = require('eliza-as-promised');
const say = require('say');
const MicToSpeech = require('mic-to-speech');
const Speech = require('google-speech-from-buffer');
// create our instance of eliza
const eliza = new ElizaBot();
// in a standard env this will pick up and watch the microphone
const micToSpeech = new MicToSpeech();
micToSpeech.on('speech', function(buffer) {
// pause my speech so I don't listen to what I'm saying
micToSpeech.pause();
// process the speech with Google API and get a reply
new Speech().recognize(buffer)
.then((statement) => converseWithEliza(statement));
});
let converseWithEliza = function(statement) {
// you said this to eliza
console.log('<< ' + statement);
// Eliza to respond
eliza.getResponse(statement)
.then((response) => {
// keep the convo going!
if (response.reply) {
elizaSay(response.reply, function() {
micToSpeech.resume();
});
}
// final statement received, quit response and exit
if (response.final) {
elizaSay(response.final, function() {
micToSpeech.stop();
process.exit(0);
});
}
});
};
let elizaSay = function(words, callback) {
console.log('>> ' + words);
say.speak(words, undefined, 1.0, function(err) {
if (err) {
return console.error(err);
}
callback();
});
};
// Have Eliza start the conversation with an initial statement
elizaSay(eliza.getInitial(), function() {
micToSpeech.start();
});
FAQs
Watches your microphone stream to pull out speech segments that you can save to a file, or send to an endpoint for speech recognition. Ideal for saving audio for conversation monitoring and assistant apps that work like Google Home or Amazon Alexa.
The npm package mic-to-speech receives a total of 5 weekly downloads. As such, mic-to-speech popularity was classified as not popular.
We found that mic-to-speech demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub is susceptible to a CDN flaw that allows attackers to host malware on any public repository.
Security News
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
Research
Security News
The Socket Research team found this npm package includes code for collecting sensitive developer information, including your operating system username, Git username, and Git email.