

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# マルチチャネルの音声文字起こし
<a name="conversation-channel-id-med"></a>

複数のチャネルを持つオーディオファイルまたはストリームがある場合は、*チャネル識別*を使用して、それらの各チャネルの音声を文字起こしできます。 Amazon Transcribe Medical は、各チャネルの音声を個別に文字起こしします。各チャネルの個別のトランプスクリプトを単一の文字起こし出力に結合します。

チャネル識別を使用して、音声内の個別のチャネルを特定し、各チャネルの音声の文字起こしを行います。発信者およびエージェントのシナリオなどの状況でこれを有効にします。これを使用して、薬物安全モニタリングを実行するコンタクトセンターからの録音またはストリーミング内のエージェントと発信者を区別します。

バッチ処理とリアルタイムストリームの両方でチャネル識別を有効にできます。次のリストは、メソッドごとに有効にする方法を説明しています。
+ バッチ文字起こし – AWS マネジメントコンソール および [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartMedicalTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartMedicalTranscriptionJob.html) API
+ ストリーミング文字起こし - WebSocket ストリーミングと [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartMedicalStreamTranscription.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartMedicalStreamTranscription.html) API

## マルチチャネルの音声ファイルの文字起こし
<a name="conversation-channel-id-med-batch"></a>

オーディオファイルを文字起こしすると、 Amazon Transcribe Medical は各チャネルの*項目*のリストを返します。アイテムは、文字起こしされた単語または句読点です。各単語には、開始時刻と終了時刻があります。あるチャネルの人が別のチャネルで話しかけると、各チャネルのアイテムの開始時間と終了時刻が重なり、個人が互いに話しかけ合っています。

デフォルトでは、2 つのチャネルで音声ファイルを文字起こしできます。2 つ以上のチャネルを持つファイルを文字起こしする必要がある場合は、クォータの引き上げをリクエストできます。クォータ増加の要求の詳細については、「[AWS のサービス クォータ](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)」を参照してください。

バッチ文字起こしジョブでマルチチャネルオーディオを文字起こしするには、 AWS マネジメントコンソール または [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartMedicalTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartMedicalTranscriptionJob.html) API を使用します。

### AWS マネジメントコンソール
<a name="channel-id-batch-med-console"></a>

を使用してバッチ文字起こ AWS マネジメントコンソール しジョブでチャネル識別を有効にするには、音声識別を有効にしてから、チャネル識別を有効にします。チャネル識別は、 のオーディオ識別のサブセットです AWS マネジメントコンソール。

1. [AWS マネジメントコンソール](https://console.aws.amazon.com/transcribe/) にサインインします。

1. ナビゲーションペインの Amazon Transcribe Medical で、**文字起こしジョブ**を選択します。

1. **[ジョブの作成]** を選択します。

1. [**ジョブの詳細を指定する**] ページで、文字起こしジョブに関する情報を入力します。

1. [**次へ**] を選択します。

1. [**音声識別**] を有効にします。

1. **音声識別タイプ** では、[**チャネルの識別**] を選択します。

1. **[作成]** を選択します。

### API
<a name="channel-id-batch-med-api"></a>

**マルチチャネルの音声ファイルの文字起こし (API)**
+ [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartMedicalTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartMedicalTranscriptionJob.html) API では、以下のものを指定します。

  1. `TranscriptionJobName` の場合、 AWS アカウントで一意の名前を指定します。

  1. `LanguageCode` の場合、音声ファイル内で話されている言語に対応する言語コードを指定します。有効値は `en-US` です。

  1. `MediaFileUri` オブジェクトの `Media` パラメータの場合、文字起こしを行うメディアファイルの名前を指定します。

  1. `Settings` オブジェクトの場合、`ChannelIdentification` を `true` にセットします。

以下は、 AWS SDK for Python (Boto3)を使ったリクエストの例です。

```
from __future__ import print_function
import time
import boto3
transcribe = boto3.client('transcribe', 'us-west-2')
job_name = "my-first-transcription-job"
job_name = "my-first-med-transcription-job"
job_uri = "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac"
transcribe.start_medical_transcription_job(
      MedicalTranscriptionJobName = job_name,
      Media = {
        'MediaFileUri': job_uri
      },
      OutputBucketName = 'amzn-s3-demo-bucket',
      OutputKey = 'output-files/',
      LanguageCode = 'en-US',
      Specialty = 'PRIMARYCARE',
      Type = 'CONVERSATION',
      Settings = {
        'ChannelIdentification': True
      }
)
while True:
    status = transcribe.get_transcription_job(MedicalTranscriptionJobName = job_name)
    if status['MedicalTranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']:
        break
    print("Not ready yet...")
    time.sleep(5)
print(status)
```

### AWS CLI
<a name="channel-id-med-cli"></a>

**バッチ文字起こしジョブを使用して、マルチチャネル音声ファイルの文字起こしをする (AWS CLI)**
+ 以下のコードを実行します。

  ```
                      
  aws transcribe start-medical-transcription-job \
  --region us-west-2 \
  --cli-input-json file://example-start-command.json
  ```

  以下は `example-start-command.json` のコードです。

  ```
  {
        "MedicalTranscriptionJobName": "my-first-med-transcription-job",        
        "Media": {
            "MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-audio-file.flac"
        },
        "OutputBucketName": "amzn-s3-demo-bucket",
        "OutputKey": "my-output-files/", 
        "LanguageCode": "en-US",
        "Specialty": "PRIMARYCARE",
        "Type": "CONVERSATION",
  
          "Settings":{
            "ChannelIdentification": true
          }
  }
  ```

次のコードは、2 つのチャネルで会話がある音声ファイルの文字起こし出力を示しています。

```
{
  "jobName": "job id",
  "accountId": "111122223333",
  "results": {
    "transcripts": [
      {
        "transcript": "When you try ... It seems to ..."
      }
    ],
    "channel_labels": {
      "channels": [
        {
          "channel_label": "ch_0",
          "items": [
            {
              "start_time": "12.282",
              "end_time": "12.592",
              "alternatives": [
                {
                  "confidence": "1.0000",
                  "content": "When"
                }
              ],
              "type": "pronunciation"
            },
            {
              "start_time": "12.592",
              "end_time": "12.692",
              "alternatives": [
                {
                  "confidence": "0.8787",
                  "content": "you"
                }
              ],
              "type": "pronunciation"
            },
            {
              "start_time": "12.702",
              "end_time": "13.252",
              "alternatives": [
                {
                  "confidence": "0.8318",
                  "content": "try"
                }
              ],
              "type": "pronunciation"
            },
            ...
         ]
      },
      {
          "channel_label": "ch_1",
          "items": [
            {
              "start_time": "12.379",
              "end_time": "12.589",
              "alternatives": [
                {
                  "confidence": "0.5645",
                  "content": "It"
                }
              ],
              "type": "pronunciation"
            },
            {
              "start_time": "12.599",
              "end_time": "12.659",
              "alternatives": [
                {
                  "confidence": "0.2907",
                  "content": "seems"
                }
              ],
              "type": "pronunciation"
            },
            {
              "start_time": "12.669",
              "end_time": "13.029",
              "alternatives": [
                {
                  "confidence": "0.2497",
                  "content": "to"
                }
              ],
              "type": "pronunciation"
            },
            ...
        ]
    }
}
```

## マルチチャネルの音声ストリームの文字起こし
<a name="conversation-channel-id-med-stream"></a>

HTTP/2 ストリーミングまたは WebSocket ストリーミングで、別々のチャネルから音声を文字起こしするには、[https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartMedicalStreamTranscription.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartMedicalStreamTranscription.html) API を使用します。

デフォルトでは、2 つのチャネルでストリーミングを文字起こしできます。2 つ以上のチャネルを持つストリーミングを文字起こしする必要がある場合、クォータの引き上げをリクエストできます。クォータ増加の要求の詳細については、「[AWS の Service Quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)」を参照してください。

### HTTP/2 ストリームでのマルチチャネル音声の文字起こし
<a name="conversation-channel-id-http2"></a>

HTTP/2 ストリームでのマルチチャネル音声を文字起こしする場合、[StartMedicalStreamTranscription](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartMedicalStreamTranscription.html) API を使用し、以下を指定します。
+ `LanguageCode` - 音声の言語コードです。有効値は `en-US` です。
+ `MediaEncoding` - 音声のエンコーディングです。有効値は、`ogg-opus`、`flac`、`pcm` です。
+ `EnableChannelIdentification` – `true`
+ `NumberOfChannels` - ストリーミング音声のチャネル数です。

医療関係の会話を文字起こしするための HTTP/2 ストリーミングの設定の詳細については、[HTTP/2 ストリームの設定](streaming-setting-up.md#streaming-http2) を参照してください。

### WebSocket ストリーム内のマルチチャネル音声の文字起こし
<a name="channel-id-med-websocket"></a>

WebSocket ストリーム内でスピーカーをパーティション化する場合、次の形式を使用して署名付き URL を作成し、WebSocket リクエストを開始します。`enable-channel-identification` を `true` に、ストリームのチャネル数を `number-of-channels` に指定します。署名付き URI には、アプリケーションと Amazon Transcribe Medical 間の双方向通信を設定するために必要な情報が含まれています。

```
GET wss://transcribestreaming.us-west-2.amazonaws.com:8443/medical-stream-transcription-websocket
?language-code=languageCode
&X-Amz-Algorithm=AWS4-HMAC-SHA256
&X-Amz-Credential=AKIAIOSFODNN7EXAMPLE%2F20220208%2Fus-west-2%2Ftranscribe%2Faws4_request
&X-Amz-Date=20220208T235959Z
&X-Amz-Expires=300
&X-Amz-Security-Token=security-token
&X-Amz-Signature=Signature Version 4 signature
&X-Amz-SignedHeaders=host
&media-encoding=flac
&sample-rate=16000
&session-id=sessionId
&enable-channel-identification=true
&number-of-channels=2
```

パラメータ定義は [API リファレンス](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_Reference.html)にあります。すべての AWS API オペレーションに共通のパラメータは、[「共通パラメータ](https://docs.aws.amazon.com/transcribe/latest/APIReference/CommonParameters.html)」セクションに記載されています。

WebSocket リクエストの詳細については、「[WebSocket ストリームの設定](streaming-setting-up.md#streaming-websocket)」を参照してください。

### マルチチャネルストリーミング出力
<a name="streaming-med-output"></a>

ストリーミング文字起こし出力は、HTTP/2 リクエストと WebSocket リクエストと同じです。以下に出力例を示します。

```
{
    "resultId": "XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX",
    "startTime": 0.11,
    "endTime": 0.66,
    "isPartial": false,
    "alternatives": [
        {
            "transcript": "Left.",
            "items": [
                {
                    "startTime": 0.11,
                    "endTime": 0.45,
                    "type": "pronunciation",
                    "content": "Left",
                    "vocabularyFilterMatch": false
                },
                {
                    "startTime": 0.45,
                    "endTime": 0.45,
                    "type": "punctuation",
                    "content": ".",
                    "vocabularyFilterMatch": false
                }
            ]
        }
    ],
    "channelId": "ch_0"
}
```

各音声セグメントには、音声が属するチャネルを示す `channelId` フラグがあります。