tencent cloud

フィードバック

音声メッセージ・ボイスツーテキスト変換

最終更新日:2024-01-18 15:49:51
    Unityを使う開発者たちがTencent Cloud Gaming Multimedia EngineのクライアントAPIのデバッグ・アクセスを手軽に実行できるように、このドキュメントはUnityの音声メッセージサービスおよびテキスト変換サービスに適した開発導入技術ドキュメントについて説明します。

    GME利用上の重要事項

    GMEはリアルタイム音声サービス、音声メッセージおよびボイスツーテキスト変換サービスを提供しており、GMEサービスの利用はInitやPollなどのコアインターフェースに依存しています。

    重要注意

    GMEアプリケーションの作成が完了し、SDK AppIDとKeyを取得しました。サービス有効化ガイドをご参照ください。
    GMEリアルタイムボイスサービス、ボイスメッセージサービうおよびボイスツーテキスト変換サービスが既に有効になりました。サービス有効化ガイドをご参照ください。
    GMEを利用する前にプロジェクトを設定してください。設定しないと、SDKが有効になりません。
    GMEのインターフェースが正常に呼び出された後、戻り値はQAVError.OKになり、値は0になります。
    GMEのインターフェースの呼び出しは、同じスレッドで行う必要があります。
    GMEは周期的にPollインターフェースを呼び出して、イベントのコールバックをトリガーする必要があります。
    エラーコードの詳細については、エラーコードをご参照ください。
    ご注意:
    ボイスツーテキスト変換の関連インターフェースにはデフォルトの頻度制限があります。制限内の課金説明については、課金ドキュメントをご参照ください。インターフェースの頻度制限を引き上げる必要がある場合、または超過料金の課金説明について学習する必要がある場合、事業所へ連絡するか、またはチケットの提出にてお問い合わせください。
    非ストリーミングボイスツーテキスト変換インターフェース**SpeechToText()**:デフォルトでは、1つのアカウントの制限は10チャネル並列処理です
    ストリーミングボイスツーテキスト変換インターフェース**StartRecordingWithStreamingRecognition()**:デフォルトでは、1つのアカウントの制限は50チャネル並列処理です
    ストリーミングリアルタイムボイスツーテキスト変換インターフェース**StartRealTimeASR()**:デフォルトでは、1つのアカウントの制限は50チャネル並列処理です

    SDKへのアクセス

    重要な手順

    SDKへのアクセスの重要な手順は次のとおりです:
    
    
    

    C# クラス

    意味
    ITMGContext
    コアインターフェース
    ITMGPTT
    音声メッセージ・テキスト変換の関連インターフェース

    コアインターフェース

    インターフェース
    インターフェース意味
    Init
    GME初期化
    Poll
    イベントのコールバックをトリガー
    Pause
    システムの一時停止
    Resume
    システムリカバリ
    Uninit
    GMEの未初期化

    ヘッダファイルのインクルード

    using GME;

    インスタンスの取得

    QAVContext.GetInstance()の直接呼び出しでインスタンスを取得するのではなく、ITMGContextのメソッドでContextのインスタンスを取得してください。

    SDKの初期化

    初期化前のSDKは初期化されていない状態です。リアルタイム音声サービス、音声メッセージサービスおよびボイスツーテキスト変換サービスを使用するには、インターフェースInitを使用してSDKを初期化する必要があります。Initインターフェースを呼び出すスレッドは、他のインターフェースと同じスレッドである必要があります。すべてのメインスレッドでインターフェースを呼び出すことをお勧めします。

    インターフェースのプロトタイプ

    //class ITMGContext
    public abstract int Init(string sdkAppID, string openID);
    パラメータ
    タイプ
    意味
    sdkAppId
    string
    Tencent Cloud ConsoleのGMEサービスが提供するAppIDです。取得についてはボイスサービス有効化ガイドをご参照ください。
    openID
    string
    openIDはInt64型(stringに変換して渡す)のみに対応しており、ルールはApp開発者が独自に定め、App内で重複しないようにしてください。文字列をOpenidとして渡す必要がある場合は、チケットを提出をして開発者に連絡してください。|

    戻り値

    戻り値
    処理
    QAVError.OK= 0
    SDK初期化成功
    AV_ERR_SDK_NOT_FULL_UPDATE=7015
    SDKファイルが完全であるかどうかをチェックし、削除後にSDKを再インポートすることをお勧めします
    7015のエラーメッセージについて
    7015エラーコードはmd5で判断されます。アクセス中にこのエラーが発生した場合は、お知らせメッセージに従ってSDKファイルが完全であるかどうか、SDKファイルのバージョンが一致しているかどうかを確認してください。
    戻り値AV_ERR_SDK_NOT_FULL_UPDATEが表示された場合、この戻り値はお知らせメッセージとして機能し、初期化に失敗することはありません。
    サードパーティの堅牢性、Unityパッケージングの仕組みなどの要因がライブラリファイルmd5に影響を与え、正しくない判断を下すことがあるため、リリース時にはこのエラーをロジックで無視してください。UIでは表示されないようにしてください。

    サンプルコード

    int ret = ITMGContext.GetInstance().Init(sdkAppId, openID);
    //戻り値で初期化が成功したかどうかを判断する
    if (ret != QAVError.OK)
    {
    Debug.Log("SDK初期化失敗:"+ret);
    return;
    }

    イベントのコールバックをトリガーします

    updateで周期的にPollを呼び出すことで、イベントのコールバックをトリガーできます。PollはGMEのメッセージポンプであり、GMEはイベントのコールバックをトリガーするためにPollインターフェースを定期的に呼び出す必要があります。Pollが呼び出されないと、SDKサービス全体が異常に動作します。詳細については、Sample ProjectのEnginePollHelperファイルをご参照ください。
    ご注意:
    インターフェースのコールバックに異常が発生しないよう、定期的にメインスレッドで呼び出してください。

    インターフェースのプロトタイプ

    ITMGContext public abstract int Poll();

    サンプルコード

    public void Update()
    {
    ITMGContext.GetInstance().Poll();
    }

    システムの一時停止

    システムでPauseイベントが発生したら、Pauseを実行するようエンジンに通知する必要があります。例えば、アプリケーションがバックグラウンドに戻ったとき(OnApplicationPause,isPause=True)、ルーム内のサウンドをバックグラウンドで再生しない場合は、Pauseインターフェースを呼び出してGMEサービス全体を一時停止します。

    インターフェースのプロトタイプ

    ITMGContext public abstract int Pause()

    システムリカバー

    システムにResumeイベントが発生した場合、エンジンに通知を出し、Resumeを実行させる必要があります。Resumeインターフェースはリアルタイム音声のみをリカバーします。

    インターフェースのプロトタイプ

    ITMGContext public abstract int Resume()

    SDKの未初期化

    SDKを逆初期化し、未初期化状態にします。ゲームサービス側のアカウントとopenidが紐付けられている場合、ゲームアカウントを切り替えるにはGMEを逆初期化し、新しいopenidで初期化する必要があります。

    インターフェースのプロトタイプ

    ITMGContext public abstract int Uninit()

    音声メッセージサービスおよびテキスト変換サービス

    説明:
    テキスト変換サービスは、録音ファイルからテキストへの超高速変換および音声メッセージからテキストへのストリーミング変換に分けられます。
    音声メッセージサービスを使用するためにリアルタイム音声ルームに参加する必要はありません。
    音声メッセージの最大録音時間はデフォルトで58秒で、最小録音時間は1秒未満にはできません。さらに制限が必要な場合、たとえば、最大録音時間が10秒に制限される場合は、初期化後にSetMaxMessageLengthインターフェースを呼び出して設定してください。

    音声メッセージサービスの使用手順

    
    
    

    テキスト変換サービスの使用手順

    
    
    
    インターフェース
    インターフェース意味
    GenAuthBuffer
    ローカル認証の生成
    ApplyPTTAuthbuffer
    認証の初期化
    SetMaxMessageLength
    最大音声メッセージの長さの制限

    ローカル認証の生成

    AuthBufferを生成し、関連機能の暗号化と認証に使用します。本格なリリースについてバックグラウンドのデプロイキーを使用してください。バックグラウンドのデプロイについては、認証キーをご参照ください。

    インターフェースのプロトタイプ

    QAVAuthBuffer GenAuthBuffer(int appId, string roomId, string openId, string key)
    パラメータ
    タイプ
    意味
    appId
    int
    Tencent CloudコンソールからのAppID番号です。
    roomId
    string
    nullまたは空の文字列を入力します。
    openId
    string
    ユーザーIDです。Initの場合のopenIDと同じです。
    key
    string
    Tencent Cloudコンソールからの権限キーです。

    アプリケーションの認証

    認証情報を生成したら、認証値をSDKに割り当てます。

    インターフェースのプロトタイプ

    ITMGPTT int ApplyPTTAuthbuffer (byte[] authBuffer)
    パラメータ
    タイプ
    意味
    authBuffer
    byte[]
    認証

    サンプルコード

    UserConfig.SetAppID(transform.Find ("appId").GetComponent<InputField> ().text);
    UserConfig.SetUserID(transform.Find ("userId").GetComponent<InputField> ().text);
    UserConfig.SetAuthKey(transform.Find("authKey").GetComponent<InputField>().text);
    byte[] authBuffer = UserConfig.GetAuthBuffer(UserConfig.GetAppID(), UserConfig.GetUserID(), null,UserConfig.GetAuthKey());
    ITMGContext.GetInstance().GetPttCtrl().ApplyPTTAuthbuffer(authBuffer);

    最大音声メッセージの長さの制限

    音声メッセージの長さを制限します、最大58秒をサポートします。

    インターフェースのプロトタイプ

    ITMGPTT int SetMaxMessageLength(int msTime)
    パラメータ
    タイプ
    意味
    msTime
    int
    音声の長さです。単位はmsで、区間は1000 < msTime < = 58000です

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().SetMaxMessageLength(58000);

    ストリーミング音声識別

    音声メッセージおよびテキスト変換の関連インターフェース

    インターフェース
    インターフェース意味
    StartRecordingWithStreamingRecognition
    ストリーミング録音の開始
    StopRecording
    録音の停止。

    ストリーミング音声識別の開始

    このインターフェースは、ストリーミング音声認識の開始に使われています。同時に、コールバックでリアルタイムのボイスツーテキスト変換が返されます。言語を指定して認識できるし、音声で認識された情報を、指定された言語に翻訳して返すこともできます。録音停止の呼び出しレコーディングの停止

    インターフェースのプロトタイプ

    ITMGPTT int StartRecordingWithStreamingRecognition(string filePath)
    ITMGPTT int StartRecordingWithStreamingRecognition(string filePath, string speechLanguage,string translateLanguage)
    パラメータ
    タイプ
    意味
    filePath
    String
    音声の保存パス
    speechLanguage
    String
    指定されたテキストとして認識される言語パラメーターです。パラメータについては、言語パラメータの参考リストをご参照ください
    translateLanguage
    String
    speechLanguageと同じの値を入力します

    サンプルコード

    string recordPath = Application.persistentDataPath + string.Format("/{0}.silk", sUid++);
    int ret = ITMGContext.GetInstance().GetPttCtrl().StartRecordingWithStreamingRecognition(recordPath, "cmn-Hans-CN","cmn-Hans-CN");
    ご注意:
    翻訳には追加料金がかかります。購入ガイドをご参照ください。

    ストリーミング音声識別のコールバック

    ストリーミング音声識別を開始した後、OnStreamingSpeechCompleteまたはOnStreamingSpeechisRunning通知でコールバックメッセージを監視する必要があります。イベントメッセージは次の2つがあります:
    OnStreamingSpeechCompleteはレコーディングを停止して認識が完了した後にテキストを返します。これは、発話が完了した後に認識されたテキストを返すことに相当します。
    OnStreamingSpeechisRunningは録音中に認識されたテキストをリアルタイムで返します。これは、発話しながら認識された文字を返すことに相当します。
    必要に応じて、OnEvent通知で対応するイベントメッセージを判断します。渡されるパラメータには次の4つの情報が含まれます。
    メッセージ名称
    意味
    result
    ストリーミング音声識別に成功したかを判断するためのリターンコード
    text
    ボイスツーテキスト変換用のテキスト
    file_path
    録音が保存されたローカルアドレス
    file_id
    バックグラウンドでの録音のURLアドレスです。録音はサーバーで90日間保存されます
    ご注意:
    ITMG_MAIN_EVNET_TYPE_PTT_STREAMINGRECOGNITION_IS_RUNNINGメッセージをリッスンする場合、file_idは空です。

    エラーコード

    エラーコード
    意味
    処理方法
    32775
    ストリーミングボイスツーテキスト変換に失敗しましたが、録音は成功しました
    UploadRecordedFileインターフェースを呼び出して録音をアップロードしてから、SpeechToTextインターフェースを呼び出してボイスツーテキスト変換を行います
    32777
    ストリーミングボイスツーテキスト変換に失敗しましたが、録音は成功し、アップロードは成功しました。
    返されたメッセージには正常にアップロードしたバックグラウンドurlがあり、SpeechToTextインターフェースを呼び出してボイスツーテキスト変換操作を行います
    32786
    ストリーミングボイスツーテキスト変換に失敗
    ストリーミングレコーディング状態では、ストリーミングレコーディングインターフェースの実行結果が返されるのを待ってください
    32787
    テキスト変換に成功し、テキスト翻訳サービスは非アクティブ状態です
    コンソールでテキスト翻訳サービスをアクティブにする必要があります
    32788
    テキスト変換に成功し、テキスト翻訳パラメータはサポートされていません
    渡されるパラメータを再確認します
    エラーコード4098が表示される場合は、よくある質問についてのドキュメントを参照して対応してください。

    サンプルコード

    //イベントを監視します:
    ITMGContext.GetInstance().GetPttCtrl().OnStreamingSpeechComplete +=new QAVStreamingRecognitionCallback (OnStreamingSpeechComplete);
    ITMGContext.GetInstance().GetPttCtrl().OnStreamingSpeechisRunning += new QAVStreamingRecognitionCallback (OnStreamingRecisRunning);
    //監視処理:
    void OnStreamingSpeechComplete(int code, string fileid, string filepath, string result){
    // ストリーミングAutomatic Speech Recognitionのコールバックの起動
    }
    
    void OnStreamingRecisRunning(int code, string fileid, string filePath, string result){
    if (code == 0)
    {
    setBtnText(mStreamBtn, "ストリーミング");
    InputField field = transform.Find("recordFilePath").GetComponent<InputField>();
    field.text = filePath;
    
    field = transform.Find("downloadUrl").GetComponent<InputField>();
    field.text = "Stream is Running";
    
    field = transform.Find("convertTextResult").GetComponent<InputField>();
    field.text = result;
    showWarningText("レコーディング中");
    }
    }

    音声メッセージのレコーディング

    レコーディングの流れ:録音 > 録音を停止 > 録音コールバックを返す > 次の録音を開始。

    音声メッセージおよびテキスト変換の関連インターフェース

    インターフェース
    インターフェース意味
    StartRecording
    録音の開始
    PauseRecording
    録音の一時停止
    ResumeRecording
    録音の再開
    StopRecording
    録音の停止。
    CancelRecording
    録音のキャンセル

    録音の開始

    このインターフェイスは録音の開始に使われています。

    インターフェースのプロトタイプ

    ITMGPTT int StartRecording(string fileDir)
    パラメータ
    タイプ
    意味
    fileDir
    string
    音声の保存パス

    サンプルコード

    string recordPath = Application.persistentDataPath + string.Format ("/{0}.silk", sUid++);
    int ret = ITMGContext.GetInstance().GetPttCtrl().StartRecording(recordPath);

    録音の停止

    このインターフェースは、録音の停止に使われています。このインターフェースが非同期インターフェースであるため、録音を停止した後には録音完了のコールバックがあります。コールバックが成功してから、録音ファイルが利用できるようになります。

    インターフェースのプロトタイプ

    ITMGPTT int StopRecording()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().StopRecording();

    録音開始のコールバック

    録音完成のコールバックであり、委託関数でメッセージを渡します。
    録音を停止するにはStopRecordingを呼び出します。記録が停止したら、記録を開始するためのコールバックがあります。

    インターフェースのプロトタイプ

    public delegate void QAVRecordFileCompleteCallback(int code, string filepath);
    public abstract event QAVRecordFileCompleteCallback OnRecordFileComplete;
    パラメータ
    タイプ
    意味
    code
    string
    codeが0である場合は、レコーディングが完了します
    filepath
    string
    レコーディングが保存されたアドレスです。アクセス可能なパスである必要があります。fileidをパスとして使用することはできません

    エラーコード

    エラーコードの値
    原因
    お勧めの提案
    4097
    パラメータは空です
    コード内のインターフェースパラメータが正しいかどうかを確認します
    4098
    初期化エラー
    デバイスが占用されているか、権限が正常であるか、正常に初期化されているかを確認します
    4099
    レコーディング中
    適切なタイミングでSDKレコーディング機能を使用することを確認してください
    4100
    音声データが収集されていません
    マイクデバイスが正常であるかを確認します
    4101
    レコーディング中のレコーディングファイルアクセスエラー
    ファイルが存在し、ファイルパスが有効であることを確認してください
    4102
    マイク権限を取得していないエラー
    SDKを使うには、マイク権限を取得する必要があります。権限追加については、対応するエンジンまたはプラットフォームのSDKプロジェクト構成ドキュメントをご参照ください
    4103
    録音時間が短すぎるエラー
    まず、録音長さの単位をミリ秒とするようにし、パラメータが正確であるかどうかを確認します。次に、正常にレコーディングするには、録音長さは1000ミリ秒以上である必要があります
    4104
    録音が開始されていません
    録音開始インターフェイスが呼び出されたかどうかを確認します

    サンプルコード

    //イベントをリッスン
    ITMGContext.GetInstance().GetPttCtrl().OnRecordFileComplete += new QAVRecordFileCompleteCallback (OnRecordFileComplete);
    //監視処理
    void OnRecordFileComplete(int code, string filepath){
    ### 録音開始のコールバック
    }

    録音の一時停止

    このインターフェースは、録音の一時停止に使われています。録音を再開する場合は、インターフェースResumeRecordingを呼び出してください。

    インターフェースのプロトタイプ

    ITMGPTT int PauseRecording()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().PauseRecording();

    録音の再開

    このインターフェースは、録音の再開に使われています。

    インターフェースのプロトタイプ

    ITMGPTT int ResumeRecording()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().ResumeRecording();

    録音のキャンセル

    録音をキャンセルするには、このインターフェースを呼び出します。キャンセルした後にはコールバックがありません

    インターフェースのプロトタイプ

    ITMGPTT int CancelRecording()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().CancelRecording();

    音声メッセージのアップロード、ダウンロードおよび再生

    インターフェース
    インターフェース意味
    UploadRecordedFile
    音声ファイルのアップロード
    DownloadRecordedFile
    音声ファイルのダウンロード
    PlayRecordedFile
    音声の再生
    StopPlayFile
    音声再生の停止
    GetFileSize
    音声ファイルのサイズ
    GetVoiceFileDuration
    音声ファイルの長さ

    音声ファイルのアップロード

    このインターフェースは、音声ファイルのアップロードに使われています。

    インターフェースのプロトタイプ

    ITMGPTT int UploadRecordedFile (string filePath)
    パラメータ
    タイプ
    意味
    filePath
    String
    アップロードされる音声パスです。このパスはローカルパスです。

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().UploadRecordedFile(filePath);

    音声をアップロードした後のコールバック

    音声のアップロード完了後のコールバックであり、委託関数でメッセージを渡します。

    インターフェースのプロトタイプ

    public delegate void QAVUploadFileCompleteCallback(int code, string filepath, string fileid);
    public abstract event QAVUploadFileCompleteCallback OnUploadFileComplete;
    パラメータ
    タイプ
    意味
    code
    int
    codeが0である場合は、レコーディングが完了します
    filepath
    string
    レコーディングが保存されるアドレスです
    fileid
    string
    ファイルのurlパス

    エラーコード

    エラーコードの値
    原因
    お勧めの提案
    8193
    ファイルをアップロードする時、ファイルアクセスエラーが発生します
    ファイルが存在し、ファイルパスが有効であることを確認してください
    8194
    署名検証失敗エラー
    認証キーが正しいかを確認し、オフライン音声が初期化されているかを確認します
    8195
    ネットワークエラー
    デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    8196
    アップロードされるパラメータの取得中にネットワークに障害が発生しました
    認証が正しいかを確認し、デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    8197
    アップロードされるパラメータの取得中に返信パケットのデータが空となります
    認証が正しいかを確認し、デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    8198
    アップロードされるパラメータの取得中に返信パケットの解凍に失敗しました
    認証が正しいかを確認し、デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    8200
    appinfoが設定されていません
    applyインターフェースが呼び出されているか、渡されるパラメータが空であるかを確認します

    サンプルコード

    //イベントをリッスン
    ITMGContext.GetInstance().GetPttCtrl().OnUploadFileComplete +=new QAVUploadFileCompleteCallback (OnUploadFileComplete);
    //監視処理
    void OnUploadFileComplete(int code, string filepath, string fileid){
    // 音声アップロード完了のコールバック
    }

    音声ファイルのダウンロード

    このインターフェースは、音声ファイルのダウンロードに使われています。

    インターフェースのプロトタイプ

    ITMGPTT DownloadRecordedFile (string fileID, string downloadFilePath)
    パラメータ
    タイプ
    意味
    fileID
    String
    ファイルのurlパス
    downloadFilePath
    String
    ファイルがローカルで保存されたアドレスです。アクセス可能なパスである必要があります。fileidをパスとして使用することはできません

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().DownloadRecordedFile(fileId, filePath);

    音声ファイルをダウンロードした後のコールバック

    音声ファイルダウンロード完了後のコールバックであり、委託関数でメッセージを渡します。

    インターフェースのプロトタイプ

    public delegate void QAVDownloadFileCompleteCallback(int code, string filepath, string fileid);
    public abstract event QAVDownloadFileCompleteCallback OnDownloadFileComplete;
    パラメータ
    タイプ
    意味
    code
    int
    codeが0である場合は、レコーディングが完了します
    filepath
    string
    レコーディングが保存されるアドレスです
    fileid
    string
    ファイルのurlパスです。録音はサーバーで90日間保存されます

    エラーコード

    エラーコードの値
    原因
    お勧めの提案
    12289
    ファイルをダウンロードする時、ファイルアクセスエラーが発生します
    ファイルパスが有効であるかを確認します
    12290
    署名検証に失敗しました
    認証キーが正しいかを確認し、オフライン音声が初期化されているかを確認します
    12291
    ネットワークストレージシステムの異常
    サーバーによる音声ファイルの取得に失敗しました。インターフェースパラメータfileidが正しいかどうか、ネットワークが正常であるかどうか、cosファイルが存在しているかどうかを確認します
    12292
    サーバーファイルシステムエラー
    デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認し、サーバーにこのファイルがあるかを確認します
    12293
    ダウンロードされるパラメータの取得中にHTTPネットワークに失敗しました
    デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    12294
    ダウンロードされるパラメータの取得中に返信パケットのデータが空となります
    デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    12295
    ダウンロードされるパラメータの取得中に返信パケットの解凍に失敗しました
    デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    12297
    appinfoが設定されていません
    認証キーが正しいかを確認し、オフライン音声が初期化されているかを確認します

    サンプルコード

    //イベントをリッスン
    ITMGContext.GetInstance().GetPttCtrl().OnDownloadFileComplete +=new QAVDownloadFileCompleteCallback(OnDownloadFileComplete);
    //監視処理
    void OnDownloadFileComplete(int code, string filepath, string fileid){
    // 音声ファイルをダウンロードした後のコールバック
    }

    音声の再生

    このインターフェースは、音声の再生に使われています。

    インターフェースのプロトタイプ

    ITMGPTT PlayRecordedFile(string filePath)
    ITMGPTT PlayRecordedFile(string filePath,int voiceType);
    パラメータ
    タイプ
    意味
    filePath
    string
    ローカル音声ファイルのパス
    voicetype
    int
    ボイスチェンジのタイプです。ボイスチェンジアクセスのドキュメントをご参照ください

    エラーコード

    エラーコードの値
    原因
    お勧めの提案
    20485
    再生が開始されていません
    ファイルが存在し、ファイルパスが有効であることを確認してください

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().PlayRecordedFile(filePath);

    音声再生のコールバック

    音声再生のコールバックであり、委託関数でメッセージを渡します。

    インターフェースのプロトタイプ

    public delegate void QAVPlayFileCompleteCallback(int code, string filepath);
    public abstract event QAVPlayFileCompleteCallback OnPlayFileComplete;
    パラメータ
    タイプ
    意味
    code
    int
    codeが0である場合は、再生が完了します
    filepath
    string
    レコーディングが保存されるアドレスです

    エラーコード

    エラーコードの値
    原因
    お勧めの提案
    20481
    初期化エラー
    デバイスが占用されているか、権限が正常であるか、正常に初期化されているかを確認します
    20482
    再生中、中断して次の再生に失敗しました(正常に中断可能)
    ロジックコードが正しいかを確認します
    20483
    パラメータは空です
    コード内のインターフェースパラメータが正しいかどうかを確認します
    20484
    内部エラー
    プレーヤー初期化エラー、デコードエラーなどの問題によりこのエラーコードが表示されます。ログセットを参照して問題を特定する必要があります

    サンプルコード

    //イベントを監視します:
    ITMGContext.GetInstance().GetPttCtrl().OnPlayFileComplete +=new  QAVPlayFileCompleteCallback(OnPlayFileComplete);
    //監視処理:
    void OnPlayFileComplete(int code, string filepath){
    //音声再生のコールバック
    }

    音声再生の停止

    このインターフェースは、音声再生の停止に使われています。音声の再生を停止しても、再生完了のコールバックが発生します。

    インターフェースのプロトタイプ

    ITMGPTT int StopPlayFile()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().StopPlayFile();

    音声ファイルのサイズの取得

    このインターフェースを介し、音声ファイルのサイズを取得します

    インターフェースのプロトタイプ

    ITMGPTT GetFileSize(string filePath)
    パラメータ
    タイプ
    意味
    filePath
    String
    音声ファイルのパスです。このパスはローカルパスです。

    サンプルコード

    int fileSize = ITMGContext.GetInstance().GetPttCtrl().GetFileSize(filepath);

    音声ファイルの長さの取得

    このインターフェースは、音声ファイルの長さの取得に使われ、その単位はミリ秒です。

    インターフェースのプロトタイプ

    ITMGPTT int GetVoiceFileDuration(string filePath)
    パラメータ
    タイプ
    意味
    filePath
    String
    音声ファイルのパスです。このパスはローカルパスです。

    サンプルコード

    int fileDuration = ITMGContext.GetInstance().GetPttCtrl().GetVoiceFileDuration(filepath);

    録音ファイルからテキストへの超高速変換

    インターフェース
    インターフェース意味
    SpeechToText
    音声を文字に識別する

    指定された音声ファイルを文字に識別します

    このインターフェースは、指定された音声ファイルを文字に識別することに使われています。

    インターフェースのプロトタイプ

    ITMGPTT int SpeechToText(String fileID)
    パラメータ
    タイプ
    意味
    fileID
    String
    音声ファイルurl

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().SpeechToText(fileID);

    指定された音声ファイルを文字に翻訳します(指定言語)

    このインターフェースは、言語を指定して識別することができるし、音声から識別された情報を指定の言語に翻訳してから返すこともできます。
    ご注意:
    翻訳には追加料金がかかります。購入ガイドをご参照ください。

    インターフェースのプロトタイプ

    ITMGPTT int SpeechToText(String fileID,String speechLanguage)
    ITMGPTT int SpeechToText(String fileID,String speechLanguage,String translatelanguage)
    パラメータ
    タイプ
    意味
    fileID
    String
    音声ファイルのurlです。録音はサーバーで90日間保存されます
    speechLanguage
    String
    指定された文字として認識される言語パラメータです。パラメータについては、言語パラメータの参考リストを参照します
    translatelanguage
    String
    指定された文字として翻訳される言語パラメータです。パラメータについては、言語パラメータの参考リストの翻訳言語パラメータを参照します

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().SpeechToText(fileID,"cmn-Hans-CN","cmn-Hans-CN");

    識別のコールバック

    指定の音声ファイルをテキストに識別し、委託関数でメッセージを渡します。

    インターフェースのプロトタイプ

    public delegate void QAVSpeechToTextCallback(int code, string fileid, string result);
    public abstract event QAVSpeechToTextCallback OnSpeechToTextComplete;
    パラメータ
    タイプ
    意味
    code
    int
    codeが0である場合は、レコーディングが完了します
    fileid
    string
    音声ファイルのurlです。録音はサーバーで90日間保存されます
    result
    string
    変換されたテキスト結果

    エラーコード

    エラーコードの値
    原因
    お勧めの提案
    32769
    内部エラー
    ログを分析し、バックグラウンドからクライアントに返された本当のエラーコードを取得し、解決してもらうようにバックグラウンドのスタッフに連絡します
    32770
    ネットワークに失敗
    デバイスネットワークがパブリックネットワーク環境に正常にアクセスできるかを確認します
    32772
    返信パッケージの解凍に失敗
    ログを分析し、バックグラウンドからクライアントに返された本当のエラーコードを取得し、解決してもらうようにバックグラウンドのスタッフに連絡します
    32774
    appinfoが設定されていません
    認証キーが正しいかを確認し、オフライン音声が初期化されているかを確認します
    32776
    authbuffer検証に失敗
    authbufferが正しいかを確認します
    32784
    ボイスツーテキスト変換パラメータエラー
    コード内のインターフェースパラメータfileidが正しいかどうかを確認します
    32785
    ボイスツーテキスト変換の翻訳でエラーが返されます
    オフライン音声バックグラウンドのエラーです。ログを分析し、バックグラウンドからクライアントに返された本当のエラーコードを取得し、解決してもらうようにバックグラウンドのスタッフに連絡します
    32787
    テキスト変換に成功し、テキスト翻訳サービスは非アクティブ状態です
    コンソールでテキスト翻訳サービスをアクティブにする必要があります
    32788
    テキスト変換に成功し、テキスト翻訳パラメータはサポートされていません
    渡されるパラメータを再確認します

    サンプルコード

    //イベントをリッスン
    ITMGContext.GetInstance().GetPttCtrl().OnSpeechToTextComplete += new QAVSpeechToTextCallback(OnSpeechToTextComplete);
    //監視処理
    void OnSpeechToTextComplete(int code, string fileid, string result){
    // 識別のコールバック
    }

    音声メッセージボリュームの関連インターフェース

    インターフェース
    インターフェース意味
    GetMicLevel
    マイクのリアルタイムボリュームの取得
    SetMicVolume
    レコーディングボリュームの設定
    GetMicVolume
    レコーディングボリュームの取得
    GetSpeakerLevel
    スピーカーのリアルタイムボリュームの取得
    SetSpeakerVolume
    再生ボリュームの設定
    GetSpeakerVolume
    再生ボリュームの取得

    音声メッセージマイクのリアルタイムボリュームの取得

    このインターフェースは、マイクのリアルタイムボリュームの取得に使われています。その戻り値はint型であり、数値範囲は0~200です。

    インターフェースのプロトタイプ

    ITMGPTT int GetMicLevel()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().GetMicLevel();

    音声メッセージのレコーディングボリュームの設定

    このインターフェースは、オフライン音声のレコーディングボリュームの設定に使われています。数値範囲は0~200です。

    インターフェースのプロトタイプ

    ITMGPTT int SetMicVolume(int vol)

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().SetMicVolume(100);

    音声メッセージのレコーディングボリュームの取得

    このインターフェースは、オフライン音声のレコーディングボリュームの取得に使われています。その戻り値はint型であり、数値範囲は0~200です。

    インターフェースのプロトタイプ

    ITMGPTT int GetMicVolume()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().GetMicVolume();

    音声メッセージスピーカーのリアルタイムボリュームの取得

    このインターフェースは、スピーカーのリアルタイムボリュームの取得に使われています。その戻り値はint型であり、数値範囲は0~200です。

    インターフェースのプロトタイプ

    ITMGPTT int GetSpeakerLevel()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().GetSpeakerLevel();

    音声メッセージの再生ボリュームの設定

    このインターフェースは、オフライン音声の再生ボリュームの設定に使われています。数値範囲は0~200です。

    インターフェースのプロトタイプ

    ITMGPTT int SetSpeakerVolume(int vol)

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().SetSpeakerVolume(100);

    音声メッセージの再生ボリュームの取得

    このインターフェースは、オフライン音声の再生ボリュームの取得に使われています。その戻り値はint型であり、数値範囲は0~200です。

    インターフェースのプロトタイプ

    ITMGPTT int GetSpeakerVolume()

    サンプルコード

    ITMGContext.GetInstance().GetPttCtrl().GetSpeakerVolume();

    高度なAPI

    バージョン番号の取得

    分析を行うためのSDKのバージョンを取得します。

    インターフェースのプロトタイプ

    ITMGContext abstract string GetSDKVersion()

    サンプルコード

    ITMGContext.GetInstance().GetSDKVersion();

    ログのプリントレベルの設定

    プリントするログレベルの設定に使用されます。デフォルトのレベルのままにすることをお勧めします。Initの前に呼び出す必要があります。

    インターフェースのプロトタイプ

    ITMGContext SetLogLevel(ITMG_LOG_LEVEL levelWrite, ITMG_LOG_LEVEL levelPrint)

    パラメータの意味

    パラメータ
    タイプ
    意味
    levelWrite
    ITMG_LOG_LEVEL
    ログの書き込むレベルを設定します。TMG_LOG_LEVEL_NONEは書き込まないことを示し、デフォルトはTMG_LOG_LEVEL_INFOです。
    levelPrint
    ITMG_LOG_LEVEL
    ログのプリントレベルを設定します。TMG_LOG_LEVEL_NONEはプリントしないことを示し、デフォルトはTMG_LOG_LEVEL_ERRORです。
    ITMG_LOG_LEVELの説明は次のとおりです。
    ITMG_LOG_LEVEL
    意味
    TMG_LOG_LEVEL_NONE
    ログをプリントしない
    TMG_LOG_LEVEL_ERROR
    エラーログをプリントします(デフォルト)
    TMG_LOG_LEVEL_INFO
    お知らせ通知ログをプリントします
    TMG_LOG_LEVEL_DEBUG
    開発デバッグログをプリントします
    TMG_LOG_LEVEL_VERBOSE
    高頻度ログをプリントする

    サンプルコード

    ITMGContext.GetInstance().SetLogLevel(TMG_LOG_LEVEL_INFO,TMG_LOG_LEVEL_INFO);

    プリントするログのパスの設定

    プリントするログのパスを設定するために使用されます。デフォルトルートは次のとおりです。Initの前に呼び出す必要があります。
    プラットフォーム
    パス
    Windows
    %appdata%\\Tencent\\GME\\ProcessName
    iOS
    Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Documents
    Android
    /sdcard/Android/data/xxx.xxx.xxx/files
    Mac
    /Users/username/Library/Containers/xxx.xxx.xxx/Data/Documents

    インターフェースのプロトタイプ

    ITMGContext SetLogPath(string logDir)
    パラメータ
    タイプ
    意味
    logDir
    String
    パス

    サンプルコード

    ITMGContext.GetInstance().SetLogPath(path);
    
    お問い合わせ

    カスタマーサービスをご提供できるため、ぜひお気軽にお問い合わせくださいませ。

    テクニカルサポート

    さらにサポートが必要な場合は、サポートチケットを送信して弊社サポートチームにお問い合わせください。24時間365日のサポートをご提供します。

    電話サポート(24 時間365日対応)