

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Separação de locutores (diarização)
<a name="diarization"></a>

Com a diarização de alto-falantes, você pode distinguir entre diferentes alto-falantes em sua saída de transcrição. Amazon Transcribepode diferenciar entre no máximo 30 alto-falantes exclusivos e rotular o texto de cada locutor exclusivo com um valor exclusivo (`spk_0`por meio de`spk_9`).

Além das [seções de transcrição padrão](how-input.md#how-it-works-output) (`transcripts` e `items`), as solicitações com a separação de locutores habilitada incluem uma seção `speaker_labels`. Esta seção é agrupada por locutor e contém informações sobre cada enunciado, incluindo o rótulo do locutor e os respectivos registros de data e hora.

```
"speaker_labels": {
    "channel_label": "ch_0",
    "speakers": 2,
    "segments": [
         {
            "start_time": "4.87",
            "speaker_label": "spk_0",
            "end_time": "6.88",
            "items": [                                                 
                {
                    "start_time": "4.87",
                    "speaker_label": "spk_0",
                    "end_time": "5.02"
                },
        {{...}}
        {
            "start_time": "8.49",
            "speaker_label": "spk_1",
            "end_time": "9.24",
            "items": [
                {
                    "start_time": "8.49",
                    "speaker_label": "spk_1",
                    "end_time": "8.88"
                },
```

Para ver um exemplo completo de transcrição com separação de locutores (para dois locutores), consulte [Exemplo de saída de diarização (lote)](diarization-output-batch.md).

## Separar locutores em uma transcrição em lote
<a name="diarization-batch"></a>

Para separar locutores em uma transcrição em lote, veja os seguintes exemplos:

### Console de gerenciamento da AWS
<a name="diarization-console-batch"></a>

1. Faça login no [Console de gerenciamento da AWS](https://console.aws.amazon.com/transcribe/).

1. No painel de navegação, escolha **Tarefas de transcrição** e selecione **Criar tarefa** (no canto superior direito). Isso abre a página **Especificar os detalhes da tarefa**.  
![Amazon Transcribepágina do console 'Especificar detalhes do trabalho'. No painel “Configurações de tarefa”, você pode atribuir um nome para seu trabalho de transcrição, selecionar um tipo de modelo e especificar suas configurações de idioma.](http://docs.aws.amazon.com/pt_br/transcribe/latest/dg/images/console-batch-job-details-1.png)

1. Preencha todos os campos que você deseja incluir na página **Especificar os detalhes da tarefa** e selecione **Próximo**. Isso leva você à página **Configurar tarefa - *opcional***.

   Para habilitar a separação de oradores, em **Configurações de áudio**, selecione **Identificação de áudio**. Depois, selecione **Separação de oradores** e especifique o número de oradores.  
![Amazon Transcribepágina 'Configurar trabalho' do console. No painel “Configurações de áudio”, você pode habilitar a “Separação de oradores”.](http://docs.aws.amazon.com/pt_br/transcribe/latest/dg/images/diarization-batch.png)

1. Selecione **Criar tarefa** para executar a tarefa de transcrição. 

### AWS CLI
<a name="diarization-cli"></a>

Este exemplo usa o [start-transcription-job](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transcribe/start-transcription-job.html). Para obter mais informações, consulte [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html).

```
aws transcribe start-transcription-job \
--region {{us-west-2}} \
--transcription-job-name {{my-first-transcription-job}} \
--media MediaFileUri=s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}} \
--output-bucket-name {{amzn-s3-demo-bucket}} \
--output-key {{my-output-files}}/ \
--language-code {{en-US}} \
--settings ShowSpeakerLabels={{true}},MaxSpeakerLabels={{3}}
```

Aqui está outro exemplo usando o [start-transcription-job](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transcribe/start-transcription-job.html)comando e um corpo de solicitação que permite o particionamento de alto-falantes com esse trabalho.

```
aws transcribe start-transcription-job \
--region {{us-west-2}} \
--cli-input-json file://{{my-first-transcription-job}}.json
```

O arquivo *my-first-transcription-job.json* contém o seguinte corpo da solicitação.

```
{
  "TranscriptionJobName": "{{my-first-transcription-job}}",
  "Media": {
        "MediaFileUri": "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
  },
  "OutputBucketName": "{{amzn-s3-demo-bucket}}",
  "OutputKey": "{{my-output-files}}/", 
  "LanguageCode": "{{en-US}}",
  "ShowSpeakerLabels": 'TRUE',    
  "MaxSpeakerLabels": {{3}}
 }
```

### AWS SDK para Python (Boto3)
<a name="diarization-python-batch"></a>

Este exemplo usa o AWS SDK para Python (Boto3) para identificar canais usando o método [start\_transcription\_job](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/transcribe.html#TranscribeService.Client.start_transcription_job). Para obter mais informações, consulte [StartTranscriptionJob](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html).

```
from __future__ import print_function
import time
import boto3
transcribe = boto3.client('transcribe', '{{us-west-2}}')
job_name = "{{my-first-transcription-job}}"
job_uri = "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
transcribe.start_transcription_job(
    TranscriptionJobName = job_name,
    Media = {
        'MediaFileUri': job_uri
    },
    OutputBucketName = '{{amzn-s3-demo-bucket}}',
    OutputKey = '{{my-output-files}}/', 
    LanguageCode = '{{en-US}}', 
    Settings = {
        'ShowSpeakerLabels': True,
        'MaxSpeakerLabels': {{3}}
    }    
)

while True:
    status = transcribe.get_transcription_job(TranscriptionJobName = job_name)
    if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']:
        break
    print("Not ready yet...")
    time.sleep(5)
print(status)
```

## Separar locutores em uma transcrição de streaming
<a name="diarization-stream"></a>

Para separar locutores em uma transcrição de streaming, veja os seguintes exemplos:

### Transcrições de streaming
<a name="diarization-console-stream"></a>

1. Faça login no [Console de gerenciamento da AWS](https://console.aws.amazon.com/transcribe/).

1. No painel de navegação, escolha **Transcrição em tempo real**. Role para baixo até **Configurações de áudio** e expanda esse campo se ele estiver minimizado.  
![Amazon Transcribecaptura de tela do console: a guia “configurações de áudio” na página “transcrição em tempo real”.](http://docs.aws.amazon.com/pt_br/transcribe/latest/dg/images/diarization-streaming1.png)

1. Ative **Separação de oradores**.  
![Amazon Transcribecaptura de tela do console: a guia expandida de “configurações de áudio” com o particionamento de alto-falantes ativado.](http://docs.aws.amazon.com/pt_br/transcribe/latest/dg/images/diarization-streaming2.png)

1. Agora está tudo pronto para transcrever seu fluxo. Selecione **Iniciar transmissão** e comece a falar. Para finalizar o ditado, selecione **Interromper transmissão**.

### Fluxo HTTP/2
<a name="diarization-http2"></a>

Este exemplo cria uma solicitação HTTP/2 que separa os locutores na saída da transcrição. Para obter mais informações sobre como usar o streaming HTTP/2 comAmazon Transcribe, consulte. [Configurar um fluxo de HTTP/2](streaming-setting-up.md#streaming-http2) Para obter mais detalhes sobre parâmetros e cabeçalhos específicos do Amazon Transcribe, consulte [StartStreamTranscription](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartStreamTranscription.html).

```
POST /stream-transcription HTTP/2
host: transcribestreaming.{{us-west-2}}.amazonaws.com
X-Amz-Target: com.amazonaws.transcribe.Transcribe.{{StartStreamTranscription}}
Content-Type: application/vnd.amazon.eventstream
X-Amz-Content-Sha256: {{string}}
X-Amz-Date: {{20220208}}T{{235959}}Z
Authorization: AWS4-HMAC-SHA256 Credential={{access-key}}/{{20220208}}/{{us-west-2}}/transcribe/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date;x-amz-target;x-amz-security-token, Signature={{string}}
x-amzn-transcribe-language-code: {{en-US}}
x-amzn-transcribe-media-encoding: {{flac}}
x-amzn-transcribe-sample-rate: {{16000}}             
x-amzn-transcribe-show-speaker-label: true
transfer-encoding: chunked
```

As definições de parâmetros podem ser encontradas na [Referência da API](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_Reference.html); os parâmetros comuns a todas as operações AWS da API estão listados na seção [Parâmetros comuns](https://docs.aws.amazon.com/transcribe/latest/APIReference/CommonParameters.html).

### WebSocket stream
<a name="diarization-websocket"></a>

Este exemplo cria um URL pré-assinado que separa os locutores na saída da transcrição. Quebras de linha foram adicionadas para uma melhor leitura. Para obter mais informações sobre o uso de WebSocket fluxos comAmazon Transcribe, consulte[Configurando um WebSocket stream](streaming-setting-up.md#streaming-websocket). Para obter mais detalhes sobre os parâmetros, consulte [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartStreamTranscription.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartStreamTranscription.html).

```
GET wss://transcribestreaming.{{us-west-2}}.amazonaws.com:8443/stream-transcription-websocket?
&X-Amz-Algorithm=AWS4-HMAC-SHA256
&X-Amz-Credential={{AKIAIOSFODNN7EXAMPLE}}%2F{{20220208}}%2F{{us-west-2}}%2F{{transcribe}}%2Faws4_request
&X-Amz-Date={{20220208}}T{{235959}}Z
&X-Amz-Expires={{300}}
&X-Amz-Security-Token={{security-token}}
&X-Amz-Signature={{string}}
&X-Amz-SignedHeaders=content-type%3Bhost%3Bx-amz-date
&language-code=en-US
&specialty={{PRIMARYCARE}}
&type={{DICTATION}}
&media-encoding={{flac}}
&sample-rate={{16000}}        
&show-speaker-label=true
```

As definições de parâmetros podem ser encontradas na [Referência da API](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_Reference.html); os parâmetros comuns a todas as operações AWS da API estão listados na seção [Parâmetros comuns](https://docs.aws.amazon.com/transcribe/latest/APIReference/CommonParameters.html).