アスタリスクでの会話の録音とYandex.Speechでの認識

小さなプロジェクト。簡単な実装。アスタリスクのダイヤルプラン、コンソールコマンド、およびYandex認識APIに関する注意。あなたは私の熊手を読んで踏まないでしょう、私はそれを半年か一年で読んで、私がしたことを覚えています。





目的:アスタリスクに記録された会話のテキスト表現を取得します。





最初に会話を録音します

MixMonitorは会話を記録します。通常、MixMonitorは両方の対話者を1つのチャネルに記録します。各チャネルを別々のファイルに入れる必要があります。したがって、異なるチャネルを記録するファイルを指定できる2つのオプションrとtがあります。





パラメータbは、会話の開始時に記録を開始するためにも使用されます。





16番目のアスタリスクから、tファイルとrファイルを同期するオプションSがありました(後で記録され始めたものでは、ファイルの先頭に無音が追加されました)。Sオプションは、18番目のアスタリスクから削除されました。これがデフォルトの動作になり、カウンターオプションnが追加されました。しかし、私はbを使用しているので、これらの余分なダンスは必要ありませんでした。





MixMonitor(record-o.wav、br(record-r.wav)t(record-t.wav)、コマンド)





次に、MixMonitorコマンドでも、記録後に実行するコマンドを指定します。このコマンドの一部として、各レコードを正規化します。レベルを調整してから、2つのレコードを1つの2チャネルファイルにスマッジします。





sox --norm record-t.wav record-t-norm.wav //会話の片側の録音を正規化します









sox --norm record-r.wav record-r-norm.wav //会話の2番目の側の記録を正規化します









sox record-r-norm.wav record-t-norm.wav --channels 2 --combine merge record.wav //レコードを1つのファイルにマージします





これで、最終ファイルをステレオモードで聞くことができます。片方の耳では会話の1人の参加者を、もう片方の耳では会話の2番目の参加者の声を聞くことができます。役割が読み取られているかのように、プレゼンスの興味深い効果がありますが、誰もがこのリスニング形式を好むわけではありません。





record-o.wav - MixMonitor', , .





wav . mp3 .













https://howto.a17.su/asterisk/call-recording.html





https://voxlink.ru/kb/asterisk-configuration/integraciya-asterisk-so-speech-analytics/





.





API : , . - 30 , API .





- wav ogg . wav , API wav-, ogg. , ogg





/usr/bin/ffmpeg -i record.wav -acodec libopus record.ogg // ogg





-, ( ) , .





S3-, S3- . buckets.





.Storage





, , id. id ( , , , ).





.





.





, 2020, - . - 2 .





.. . , , . . , . , . . .





: - . - . . .





, .. ( ).





( SpeechKit)





アクセスキー。ここで重要なのは、認識サービス(APIキー)とS3ストレージ(静的キー)の両方からのキーがあるため、混乱しないことです。どちらのタイプのキーもサービスアカウントにあります。









この投稿で数分節約でき、必要に応じてプロジェクトをすばやく実装できることを願っています。








All Articles