文字起こしツールを作った(無料でとりあえず動かしたい人向け)
はじめに
色々書かれてると逆にわからなくなるので、本当に音声認識ができる最低限のソースです。
コピペで動きます。
8行。
精度について
比較のために、pythonのspeechrecognitionライブラリも使ってみましたが、今回使っているwebspeechapiの方が精度よかったです。(日本語・日常会話でざっくり試しただけ)
pyaudioが自分のPCと相性悪くてテスト版にしないとインストールできないとか無駄に手こずるところもあるので、オフライン利用じゃなければwebspeechapiおすすめ。
使用ツール
・VScode+liveserver
VScodeに下のコードを貼って、ローカルサーバ立ち上げれば動きます。
コード
webspeechapi.html
<script>
const s = new webkitSpeechRecognition()//ブラウザ内臓なのでキーいらない
s.lang = 'ja'//言語指定
s.start()//開始処理
s.onresult = function(e) {//音声認識処理完了時に発火
console.log(e.results[0][0].transcript)
}
</script>
録音し続けたいとき
<script>
const s = new webkitSpeechRecognition()//ブラウザ内臓なのでキーいらない
s.lang = 'ja'//言語指定
s.start()//開始処理
s.onresult = function(e) {//音声認識処理完了時に発火
console.log(e.results[0][0].transcript)
}
</script>
onendで、文字起こし1ターン終わったのを判定できるので、
ここで再startかけてあげると、録音しつづけられます。
<script>
s.onend = () => { //onresultで完了すると、接続が切れるため、.onendの場合、再度スタートをする。
s.start()
}
</script>
ついでに翻訳したい
GASで翻訳API(無料)で作れるので、下記をapiに投げる処理を入れ込んであげれば、
リアルタイム文字起こし+翻訳もできるよ。
翻訳APIって従量課金とかで手が出しにくいから、GASは本当に有能だと思う。
(自分は仮想通貨ニュースみたいので、自分はこれ+プルダウンで言語切り替えできるようにしてます)
e.results[0][0].transcript
作ったもの
Author And Source
この問題について(文字起こしツールを作った(無料でとりあえず動かしたい人向け)), 我々は、より多くの情報をここで見つけました https://qiita.com/y_ando87/items/b777cc0078960d026fea著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .