Trascrizione dell'audio multicanale - Amazon Transcribe

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Trascrizione dell'audio multicanale

Se l'audio ha due canali, puoi utilizzare l'identificazione dei canali per trascrivere la voce da ciascun canale separatamente. Amazon Transcribeattualmente non supporta l'audio con più di due canali.

Nella tua trascrizione, ai canali vengono assegnate le etichettech_0 ech_1.

Oltre alle sezioni di trascrizione standard (transcriptseitems), le richieste con l'identificazione del canale abilitata includono unachannel_labels sezione. Questa sezione contiene ogni enunciato o segno di punteggiatura, raggruppato per canale, e l'etichetta del canale associato, i timestamp e il punteggio di affidabilità.

"channel_labels": { "channels": [ { "channel_label": "ch_0", "items": [ { "channel_label": "ch_0", "start_time": "4.86", "end_time": "5.01", "alternatives": [ { "confidence": "1.0", "content": "I've" } ], "type": "pronunciation" }, ... "channel_label": "ch_1", "items": [ { "channel_label": "ch_1", "start_time": "8.5", "end_time": "8.89", "alternatives": [ { "confidence": "1.0", "content": "Sorry" } ], "type": "pronunciation" }, ... "number_of_channels": 2 },

Nota che se una persona su un canale parla contemporaneamente a una persona su un canale separato, i timestamp di ciascun canale si sovrappongono mentre le persone parlano l'una sull'altra.

Per visualizzare un esempio completo di trascrizione con identificazione del canale, vedereEsempio di uscita di identificazione del canale (batch).

Utilizzo dell'identificazione dei canali in una trascrizione in batch

Per identificare i canali in una trascrizione batch, puoi utilizzare i AWS Management ConsoleAWS CLI, o AWSgli SDK; vedi quanto segue per alcuni esempi:

  1. Accedere alla AWS Management Console.

  2. Nel riquadro di navigazione, scegli Lavori di trascrizione, quindi seleziona Crea lavoro (in alto a destra). Si apre la pagina Specifica i dettagli del lavoro.

    Amazon Transcribepagina «Specifica i dettagli del lavoro» della console. Nel pannello «Impostazioni Job», puoi specificare un nome per il tuo lavoro di trascrizione, selezionare un tipo di modello e specificare le impostazioni della lingua.
  3. Compila i campi che desideri includere nella pagina Specifica i dettagli del lavoro, quindi seleziona Avanti. Si accede alla pagina Configura job (opzionale).

    Nel pannello Impostazioni audio, seleziona Identificazione canale (sotto l'intestazione «Tipo di identificazione audio»).

    Amazon Transcribepagina 'Configura lavoro' della console. Nel pannello «Impostazioni audio», puoi abilitare l'identificazione dei canali.
  4. Seleziona Crea lavoro per eseguire il processo di trascrizione.

Questo esempio utilizza start-transcription-job. Per ulteriori informazioni, consulta StartTranscriptionJob.

aws transcribe start-transcription-job \ --region us-west-2 \ --transcription-job-name my-first-transcription-job \ --media MediaFileUri=s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac \ --output-bucket-name DOC-EXAMPLE-BUCKET \ --output-key my-output-files/ \ --language-code en-US \ --settings ChannelIdentification=true

Ecco un altro esempio che utilizza il start-transcription-jobcomando e un corpo della richiesta che consente l'identificazione del canale con quel lavoro.

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

Il my-first-transcription-jobfile.json contiene il seguente corpo della richiesta.

{ "TranscriptionJobName": "my-first-transcription-job", "Media": { "MediaFileUri": "s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac" }, "OutputBucketName": "DOC-EXAMPLE-BUCKET", "OutputKey": "my-output-files/", "LanguageCode": "en-US", "Settings": { "ChannelIdentification": true } }

Questo esempio utilizza ilAWS SDK for Python (Boto3) per identificare i canali utilizzando il metodo start_transcription_job. Per ulteriori informazioni, consulta StartTranscriptionJob.

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://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac" transcribe.start_transcription_job( TranscriptionJobName = job_name, Media = { 'MediaFileUri': job_uri }, OutputBucketName = 'DOC-EXAMPLE-BUCKET', OutputKey = 'my-output-files/', LanguageCode = 'en-US', Settings = { 'ChannelIdentification':True } ) 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)

Utilizzo dell'identificazione del canale in una trascrizione in streaming

Per identificare i canali in una trascrizione in streaming, puoi usare HTTP/2 o WebSockets; vedi quanto segue per esempi:

Questo esempio crea una richiesta HTTP/2 che separa i canali nell'output di trascrizione. Per ulteriori informazioni sull'utilizzo dello streaming HTTP/2 conAmazon Transcribe, consultaImpostazione di un flusso HTTP/2. Per maggiori dettagli sui parametri e sulle intestazioni specifici perAmazon Transcribe, consulta StartStreamTranscription.

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: 20220208T235959Z 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-channel-identification: TRUE transfer-encoding: chunked

Le definizioni dei parametri sono disponibili nell'API Reference; i parametri comuni a tutte le operazioniAWS API sono elencati nella sezione Parametri comuni.

Questo esempio crea un URL predefinito che separa i canali nell'output della trascrizione. Le interruzioni di riga sono state aggiunte per la leggibilità. Per ulteriori informazioni sull'utilizzo WebSocket degli stream conAmazon Transcribe, consultaConfigurazione di uno WebSocket stream. Per ulteriori dettagli sui parametri, vedere StartStreamTranscription.

GET wss://transcribestreaming.us-west-2.amazonaws.com:8443/stream-transcription-websocket? &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=string &X-Amz-SignedHeaders=content-type%3Bhost%3Bx-amz-date &language-code=en-US &specialty=PRIMARYCARE &type=DICTATION &media-encoding=flac &sample-rate=16000 &channel-identification=TRUE

Le definizioni dei parametri sono disponibili nell'API Reference; i parametri comuni a tutte le operazioniAWS API sono elencati nella sezione Parametri comuni.