tencent cloud

Game Multimedia Engine

製品アップデート情報
製品紹介
製品概要
優位性のある特徴
製品機能
ユースケース
セキュリティコンプライアンス認証
初心者ガイド
SDKダウンロードガイド
製品機能体験
基本機能Demo
シーン化体験
コンソールガイド
使用量の表示
サービスの有効化
クイックスタート
Quick Integration of SDK
Quick Integration of Sample Project
基本機能開発ガイド
Authentication Key
リアルタイム音声ロール設定
音質設定
拡張機能開発ガイド
サーバー側のレコーディング
レンジボイス
3Dサウンド
効果音と伴奏
ネットワークオーディオストリーム転送ルーティング
カスタムメッセージチャネル
社内ファイアーフォール制限への対応について
Language Parameter Reference List
GMEルーム管理機能の導入
クライアントAPI
SDK for Unity
SDK for Unreal Engine
Cocos2D SDK
SDK for Windows
SDK for iOS
SDK for Android
SDK for macOS
H5 SDK
Electron SDK
SDK for Flutter
SDK Version Upgrade Guide
エラーコード
Toolchain
Server APIs
History
Introduction
API Category
Usage APIs
Recording APIs
Making API Requests
Voice Chat APIs
Application APIs
Data Types
Error Codes
よくある質問
製品機能質問
問題解決ガイド
課金について
Sample Projectの使用上の問題
一般的な質問
認証について
リアルタイム音声ルーム参加失敗について
リアルタイム音声利用時に音声が聞こえない問題とオーディオ関連について
ネットワークについて
ボイス・ツー・テキスト変換について
プロジェクトエクスポートについて
Service Agreement
Service Level Agreement
お問い合わせ
用語集
GME ポリシー
データ処理とセキュリティ契約
プライバシーポリシー
ドキュメントGame Multimedia EngineクライアントAPISDK for Unity音声メッセージ・ボイスツーテキスト変換

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

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-08-26 15:50:04
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);


ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック