앱을 위한 음성 인식 및 음성 활동 감지
웹 앱, 기본 앱 또는 데스크톱 앱을 구축하든 관계없이 이 기술은 인터넷 연결이 있는 모든 시스템에 통합될 수 있습니다.
전체 데모
유튜브:
소스 코드
GitHub: https://github.com/Spurwingio/Speech-Recognition
이것은 브라우저에서 음성 인식을 사용하여 간단하면서도 강력한 서버-클라이언트 구현입니다. 최신 최신 웹 브라우저(FireFox 또는 Chrome 권장)를 사용하는 모든 장치에서 작동합니다.
건축물
아키텍처는 간단합니다. 라이브러리에는 Speech-to-Text 공급자에도 연결되는 Spurwing 소켓 서버의 구현이 포함되어 있습니다. 후자의 경우 WitAI(by Facebook)를 사용합니다. WitAI는 완전 무료 서비스이며 사용하기 쉽습니다. 또는 다른 STT 제공업체(Google, IBM Watson, Bing 등)를 쉽게 통합할 수 있지만 비용이 많이 들 수 있습니다.
용법
node -v
를 사용하여 버전을 확인하십시오. npm install
를 실행하여 필요한 모든 종속성을 다운로드하도록 합니다. (실패하면 C++ Build Tools를 설치해야 할 수도 있습니다.) config.sample.json
를 config.json
에 복사하고 편집합니다. WITAPIKEY
에 대한 값을 제공해야 합니다. node index.js
를 사용하여 소켓 서버를 시작합니다. 8002
에서 변경할 수 있는 포트index.js
에서 실행됩니다. 클라이언트 구현
아래 코드 스니펫은 이 음성 인식 라이브러리를 웹 앱에 추가하는 방법을 보여줍니다.
html
<head>
안에 다음을 추가합니다.<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.0.1/socket.io.min.js"></script>
<script src="https://spurwing.github.io/Speech-Recognition/public/VAD.js"></script> <!-- Required: VAD algorithm -->
<script src="https://spurwing.github.io/Speech-Recognition/public/audio.js"></script> <!-- Required: Speech Recognition Library -->
<script src="demo.js"></script> <!-- Your implementation -->
내부
demo.js
에는 다음이 있습니다.const spa = new SpurwingAudio();
// on user click start mic:
spa.init().then((stream) => { // ask user for microphone access
processStream(stream);
}).catch((err) => {
alert("You must allow your microphone.");
console.log(error);
});
// on user click stop mic:
// spa.end();
function processStream(stream) { // start Voice Activity Detection
spa.startVAD(
() => console.log('recording'), // function: on speech start
(buffer, duration) => { // function: on speech end
socket.emit('stream', {buffer, id:0}) // send audio/speech fragment to server (optional custom id of fragment)
}
);
}
// create socket connection to server
let socket = io('localhost:8002', { // server domain
path: "/Spurwing/audio/socket.io" // server endpoint
});
// capture "text" event from server (containing data)
socket.on('text', data => {
console.log(data) // do something with the transcribed audio text
// data structure: { raw: "hello", nlp: null, id: 0 }
});
결론
몇 줄의 코드만으로 비즈니스 자동화, 시간 관리 및 기타 여러 영역에서 무수한 가능성과 기회를 열어줍니다.
이를 통해 어떤 솔루션을 구축할지 궁금합니다. 아래 댓글에 알려주세요! :)
회사 소개
Spurwing은 비즈니스 및 프로젝트를 위한 엔터프라이즈급Appointment Scheduling API 및 캘린더 관리 솔루션을 제공합니다. 쉽게 사용자 정의하고 쉽게 통합할 수 있습니다. 엔터프라이즈급 Appointment Scheduling API 덕분에 소프트웨어 팀에 시간 관리 솔루션을 제공합니다. 또한 우리는 위젯, 채팅 봇, 대시보드 및 통합 솔루션을 포함하는 완전 무료 오픈 소스 시장을 구축하고 있습니다.
더 많은 프로젝트를 보려면 블로그와 GitHubhttps://github.com/Spurwingio/를 팔로우하십시오.
Reference
이 문제에 관하여(앱을 위한 음성 인식 및 음성 활동 감지), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/spurwing/speech-recognition-and-voice-activity-detection-for-your-apps-3je8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)