Migliori pratiche

Questo documento contiene consigli su come fornire dati vocali ai l'API Media Translation. Queste linee guida sono pensate per una maggiore efficienza e precisione, nonché tempi di risposta ragionevoli da parte del servizio. L'utilizzo dei L'API Media Translation funziona al meglio quando i dati inviati al servizio rientrano nei parametri descritti in questo documento.

Per risultati ottimali... Se possibile, evita...
Acquisisci audio con una frequenza di campionamento di 16.000 Hz o superiore. In caso contrario, imposta sample_rate_hertz in modo che corrisponda alla frequenza di campionamento nativa della sorgente audio (anziché il ricampionamento). Frequenze di campionamento inferiori possono ridurre la precisione del riconoscimento. Di conseguenza, anche la precisione della traduzione diminuirà. Tuttavia, evita di ripetere il campionamento. Ad esempio, nel settore della telefonia la frequenza nativa è comunemente 8000 Hz, ovvero la frequenza che deve essere inviata al servizio.
Utilizzare un codec senza perdita di dati per registrare e trasmettere audio. FLAC o LINEAR16 sono consigliati. L'utilizzo di codec Mu-law o altri codec con perdita di dati durante la registrazione o la trasmissione potrebbe ridurre la precisione del riconoscimento. Se il tuo audio è già in una codifica non supportata dall'API, transcodificalo in FLAC senza perdita di dati o LINEAR16. Se la tua applicazione deve utilizzare un codec con perdita di banda per risparmiare larghezza di banda, ti consigliamo i codec AMR_WB o OGG_OPUS, in questo ordine preferito.
Usa il codec LINEAR16 per una buona latenza di risposta del flusso di dati. Anche altri tipi di codec possono aggiungere la latenza di risposta del flusso di dati poiché richiedono un ulteriore passo di decodifica. A parità di codec, una frequenza di campionamento più elevata potrebbe avere una latenza più elevata.
Posiziona il microfono il più vicino possibile all'altoparlante, soprattutto se è presente rumore di fondo. Il servizio di riconoscimento è progettato per ignorare i rumori e le voci di sottofondo senza ulteriori elementi di eliminazione del rumore. Tuttavia, un rumore di fondo ed echi eccessivi possono ridurre l'accuratezza, soprattutto se viene utilizzato anche un codec con perdita di dati.
Utilizza un modello avanzato per ottenere risultati migliori con audio di sottofondo rumoroso. Il modello non migliorato potrebbe non funzionare correttamente in caso di audio con eco o rumore rumoroso.
Specifica source_language_code utilizzando il codice lingua "lingua-regione", specifica target_language_code utilizzando il codice lingua senza regione(tranne zh-CN e zh-TW). Se "regione" non è specificato in source_language_code, sceglieremo la regione predefinita, che potrebbe non corrispondere alla regione effettiva, e ridurremo la precisione. target_language_code non ha bisogno della regione poiché la traduzione è testuale, ma zh-CN e zh-TW saranno diversi nel testo.

Frase singola

Per query o comandi brevi, utilizza StreamingTranslateSpeechConfig con single_utterance impostato su true. In questo modo si ottimizza il riconoscimento per le frasi brevi e si riduce al minimo la latenza. Inoltre, il servizio interrompe la traduzione automaticamente in caso di lunga pausa o pausa. Quando si utilizza il valore "single_utterance" in modalità vocale, il servizio restituirà in risposta un END_OF_SINGLE_UTTERANCE come speech_event_type. Il client dovrebbe interrompere l'invio di richieste quando riceve END_OF_SINGLE_UTTERANCE risposta e continuare a ricevere le risposte rimanenti.

Dimensioni frame

Il riconoscimento streaming riconosce l'audio in diretta non appena viene acquisito da un microfono. o un'altra sorgente audio. Lo stream audio viene suddiviso in frame e inviato StreamingTranslateSpeechRequest messaggi consecutivi. È accettabile qualsiasi dimensione del fotogramma. I frame più grandi sono più efficienti, ma aggiungono latenza. Dimensione del fotogramma di 100 millisecondi è consigliato come un buon compromesso tra latenza ed efficienza.

Pre-elaborazione dell'audio

È meglio fornire un audio il più pulito possibile utilizzando una buona qualità e un microfono ben posizionato. Tuttavia, l'applicazione del segnale di riduzione del rumore l'elaborazione all'audio prima di inviarlo al servizio in genere riduce la precisione del riconoscimento. Il servizio di riconoscimento è progettato per gestire audio rumorosi.

Per ottenere risultati ottimali:

  • Posiziona il microfono il più vicino possibile alla persona soprattutto in presenza di rumore di fondo.
  • Evita di realizzare audio clip.
  • Non utilizzare il controllo automatico del guadagno (AGC).
  • L'elaborazione della riduzione del rumore deve essere disattivata.
  • Ascolta un audio di esempio. L'audio deve essere chiaro, senza distorsioni o un rumore inaspettato.

Configurazione richiesta

Assicurati di descrivere accuratamente i dati audio inviati con la richiesta all'API Media Translation. Assicurarsi che TranslateSpeechConfig per la richiesta descrive sample_rate_hertz, audio_encoding, source_language_code e target_language_code corretti si tradurrà nella trascrizione e nella fatturazione più accurate per la tua richiesta.