リアルタイムの音声翻訳でSkypeを改善します。

少し前まで、Skypeは、対談者とのビデオ会話中にリアルタイム翻訳を発表しました。 このトピックは人類に長い間悩まされてきました。多くの人が映画「銀河へのヒッチハイクガイド」とバベルの魚を覚えています。 Voximplantでこのクリーチャーを作成する方法を見つけることにしました。 説明とデモ-カットの下。



サービスの説明



まず、機能を決定する必要があります。 サービスのアイデアは非常に単純です。特定のURLがあり、その後、ユーザーは対話者を招待できる部屋を作成します。 対話者が会議室に接続するとすぐに、ユーザーと対話者との間にビデオセッションが確立され、コミュニケーションを開始できます。 翻訳をリアルタイムで有効にする必要がある場合は、特別なボタンをクリックすることでダイアログが呼び出され、言語(言語の翻訳元および翻訳先)が選択された後、機能を有効にできます。 必要に応じて、元の音声を消し去り、テキスト読み上げを使用してシステムに翻訳されたフレーズを発音させることができます。



サービス実装



ご想像のとおり、このサービスを実装するには、音声認識、ストリーミング、およびAPIを備えたトランスレーターが必要です。 Googleの音声認識はすでに約80言語をサポートするプラットフォームに接続されており、ブラウザからプラットフォームへのストリーミングはWeb SDKを使用して実行され(WebRTC / ORTCを使用)、Google Translate APIを使用して翻訳を行います。 ソリューションスキームは次のようになります。









Voximplantクラウドの側面には、HTTPを介したGoogle Translate APIとの対話を含む、サービスのロジックを担当するJavaScriptスクリプト(より正確には、いくつかのスクリプト)があります(Speech APIとの統合はすでにプラットフォームに組み込まれており、ASRモジュールを使用し提供されます )。



VoxEngineスクリプトとクライアントアプリケーション



React、TypeScript、Voximplant WebSDKに基づいたクライアントアプリケーションを構築しました。 コードはやや多かったため、ここで説明する意味はありません。 以下は、シナリオがクラウド内で回転していることに関連する抜粋です。 クライアントロジックは次のとおりです。



1.承認-その場でHTTP APIを使用してユーザーを作成し、SDKを介してログインします

2.ルームコード(Voximplant側の会議コード)を生成します。

3.承認後、会議呼び出します(サーバーへの呼び出し)。

4. Konfaは、通話内でメッセージを送信するメカニズムを使用して、接続しているユーザーのリストをクライアントに送信します。

5. 2人の参加者間でP2P呼び出しを行います( このチュートリアルと同様)。

音声認識の詳細については、以前の記事をご覧ください。











翻訳結果の声



対話者に自分の声が聞こえないようにするには、テキスト読み上げを有効にします-P2P通話のマイクサウンドが一部オフになり、スクリプトがサーバーコールを介した転送結果の音声を開始します。 音声合成は20以上の言語で利用できます。











デモ



リンクdemos02.voximplant.com/babelfishをクリックして、サービスを試すことができます。

エコーキャンセルWebRTCはベースボードの認識品質を低下させるため、同じコンピューターで試さないことを強くお勧めします。 ただし、1つの回避策があります-いずれかのアプリケーションインスタンスでマイクをミュートする(または両方でより良い)。



PSはChrome、Firefox、Microsoft Edgeのブラウザーで動作します。 コメントでご質問にお答えします。



All Articles