PartyVoiceChatTranscriptionReceivedStateChange
状態変更の VoiceChatTranscriptionReceived 型に固有の情報。
構文
struct PartyVoiceChatTranscriptionReceivedStateChange : PartyStateChange {
PartyStateChangeResult result;
PartyError errorDetail;
PartyChatControl* senderChatControl;
uint32_t receiverChatControlCount;
PartyLocalChatControlArray receiverChatControls;
PartyAudioSourceType sourceType;
PartyString languageCode;
PartyString transcription;
PartyVoiceChatTranscriptionPhraseType type;
uint32_t translationCount;
PartyTranslation* translations;
}
メンバー
result
PartyStateChangeResult
文字起こし操作が成功したことを示すか、失敗した場合はその理由を示します。
成功した場合、transcription
フィールドは長さが 0 以外の文字列になります。 失敗した場合、文字列は空になります。 エラーは、話者に文字起こし操作が試行されたが完了できなかったことを示します。 チャット コントロールに関連付けられているユーザーの要求で文字起こしが有効になっていて、文字起こしメッセージが UI 経由で表示される場合、文字起こしが保留中であるか失敗したかに関するフィードバックを提供するために、ユーザーにもエラーを示しておくことをお勧めします。
errorDetail
PartyError
潜在的なエラー状態に関する追加のトラブルシューティング情報を提供する診断値。
人間が読める形式のエラー詳細情報は、PartyManager::GetErrorMessage() を介して取得できます。
senderChatControl
PartyChatControl*
文字起こしメッセージを発信したチャット コントロール オブジェクト。
receiverChatControlCount
uint32_t
文字起こしのアドレス指定先のローカル レシーバー チャット コントロールの数。
receiverChatControls
PartyLocalChatControlArray
サイズ receiverChatControlCount
の配列
文字起こしのアドレス指定先のローカル レシーバー チャット コントロール。
sourceType
PartyAudioSourceType
この文字起こしが表すオーディオ ソースの種類。
オーディオ ソースの種類は、必要に応じて、異なるソースの種類からの文字起こしを異なる方法で処理する必要があるゲーム シナリオに使用できます。 たとえば、文字起こしがマイクまたは音声合成オーディオのどちらに関連付けられているかに応じて、異なるアイコンが表示される場合があります。
languageCode
PartyString
文字起こしの言語コード。
言語コードは、result
フィールドが成功を示すときに常に提供されます。 それ以外の場合、言語コードは空の文字列になります。
言語コードは、英語 (米国) の en-US などの BCP 47 形式になります。 サポートされている言語コードは、言語サポートで列挙されます。
transcription
PartyString
文字起こしされたボイス チャット テキスト。
文字列は、null 終端文字を除いて最大 c_maxChatTextMessageLength
文字までの長さにすることができます。
result
フィールドがエラーを示す場合、文字列は常に空になります。
type
PartyVoiceChatTranscriptionPhraseType
transcription
フィールドに指定されたテキストの語句の種類を示します。
result
フィールドがエラーを示す場合、この型は常に PartyVoiceChatTranscriptionPhraseType::Final になります。
translationCount
uint32_t
文字起こしされたボイス チャット テキストに関連付けられている翻訳の数。
PartyVoiceChatTranscriptionOptions::TranslateToLocalLanguage が、このデバイスのチャット コントロール ローカルで PartyLocalChatControl::SetTranscriptionOptions() を介して指定されている場合、翻訳が提供されます。 複数のローカル チャット コントロールで翻訳が有効になっており、ローカル チャット コントロールが PartyLocalDevice::CreateChatControl() を介して異なる言語を指定している場合は、複数の翻訳が存在する可能性があります。 その場合、アプリは、translations
の各 PartyTranslation の languageCode
フィールドを、receiverChatControls
のローカル チャット コントロールごとに PartyLocalChatControl::GetLanguage() を介して取得した言語コードと比較して、各翻訳のターゲット ローカル チャット コントロールを決定できます。
translations
PartyTranslation*
サイズ translationCount
の配列
ボイス チャットの文字起こし文字列の翻訳を含む配列。
PartyVoiceChatTranscriptionOptions::TranslateToLocalLanguage が、このデバイスのチャット コントロール ローカルで PartyLocalChatControl::SetTranscriptionOptions() を介して指定されている場合、翻訳が提供されます。 複数のローカル チャット コントロールで翻訳が有効になっており、ローカル チャット コントロールが PartyLocalDevice::CreateChatControl() を介して異なる言語を指定している場合は、複数の翻訳が存在する可能性があります。 その場合、アプリは、translations
の各 PartyTranslation の languageCode
フィールドを、receiverChatControls
のローカル チャット コントロールごとに PartyLocalChatControl::GetLanguage() を介して取得した言語コードと比較して、各翻訳のターゲット ローカル チャット コントロールを決定できます。
話しているチャット コントロールの言語がローカル チャット コントロールの言語と同じ場合でも、翻訳を有効にした receiverChatControls
のチャット コントロールそれぞれの言語に対応する翻訳が提供されます。 このような場合、文字起こし文字列と翻訳文字列は同じです。
要件
ヘッダー: Party.h
関連項目
パーティーのメンバー
PartyLocalDevice::CreateChatControl
PartyLocalChatControl::SetTranscriptionOptions