RecognitionConfig

Fournit à l'outil de reconnaissance des informations qui spécifient comment traiter la requête.

Représentation JSON
{
  "encoding": enum (AudioEncoding),
  "sampleRateHertz": integer,
  "audioChannelCount": integer,
  "enableSeparateRecognitionPerChannel": boolean,
  "languageCode": string,
  "alternativeLanguageCodes": [
    string
  ],
  "maxAlternatives": integer,
  "profanityFilter": boolean,
  "adaptation": {
    object (SpeechAdaptation)
  },
  "transcriptNormalization": {
    object (TranscriptNormalization)
  },
  "speechContexts": [
    {
      object (SpeechContext)
    }
  ],
  "enableWordTimeOffsets": boolean,
  "enableWordConfidence": boolean,
  "enableAutomaticPunctuation": boolean,
  "enableSpokenPunctuation": boolean,
  "enableSpokenEmojis": boolean,
  "enableSpeakerDiarization": boolean,
  "diarizationSpeakerCount": integer,
  "diarizationConfig": {
    object (SpeakerDiarizationConfig)
  },
  "metadata": {
    object (RecognitionMetadata)
  },
  "model": string,
  "useEnhanced": boolean
}
Champs
encoding

enum (AudioEncoding)

Encodage des données audio envoyées dans tous les messages RecognitionAudio. Ce champ est facultatif pour les fichiers audio FLAC et WAV, mais obligatoire pour tous les autres formats audio. Pour plus d'informations, consultez la section AudioEncoding.

sampleRateHertz

integer

Taux d'échantillonnage en hertz des données audio envoyées dans tous les messages RecognitionAudio. Les valeurs possibles sont comprises entre 8 000 et 48 000. La valeur optimale est 16 000. Pour de meilleurs résultats, définissez le taux d'échantillonnage de la source audio sur 16 000 Hz. Si ce n'est pas possible, utilisez le taux d'échantillonnage natif de la source audio (plutôt que d'effectuer un ré-échantillonnage). Ce champ est facultatif pour les fichiers audio FLAC et WAV, mais obligatoire pour tous les autres formats audio. Pour en savoir plus, consultez AudioEncoding.

audioChannelCount

integer

Nombre de canaux dans les données audio d'entrée. Ne définissez ce champ QUE pour la reconnaissance MULTICANAL. Les valeurs valides pour LINEAR16, OGG_OPUS et FLAC sont comprises entre 1 et 8. La valeur pour MULAW, AMR, AMR_WB et SPEEX_WITH_HEADER_BYTE doit être définie sur 1 pour être valide. Si elle est égale à 0 ou est omise, un seul canal (mono) est pris en compte. Remarque : nous ne reconnaissons que le premier canal par défaut. Pour effectuer une reconnaissance indépendante sur chaque canal, attribuez la valeur "true" au champ enableSeparateRecognitionPerChannel.

enableSeparateRecognitionPerChannel

boolean

Ce champ doit être explicitement défini sur true et audioChannelCount doit être supérieur à 1 pour que chaque canal soit reconnu séparément. Le résultat de la reconnaissance contiendra un champ channelTag indiquant le canal auquel il appartient. Si la valeur est différente de "true", nous ne reconnaîtrons que le premier canal. La requête vous est également facturée de façon cumulative pour tous les canaux reconnus : (audioChannelCount multiplié par la longueur de l'audio).

languageCode

string

Obligatoire. Langue de l'audio fourni en tant que tag de langue BCP-47. Exemple : "en-US". Consultez la section Langues acceptées pour obtenir la liste des codes de langue actuellement compatibles.

alternativeLanguageCodes[]

string

Liste de 3 tags de langue BCP-47 supplémentaires répertoriant les autres langues possibles de l'audio fourni. Consultez la section Langues acceptées pour obtenir la liste des codes de langue actuellement compatibles. Si d'autres langues sont répertoriées, le résultat de la reconnaissance contiendra la reconnaissance dans la langue qu'il est le plus probable que vous détectiez, y compris le champ languageCode principal. Le résultat de la reconnaissance inclura le tag de la langue détectée dans l'audio. Remarque : cette fonctionnalité est uniquement disponible pour les cas d'utilisation de commande vocale et de recherche vocale et les performances peuvent varier pour d'autres cas d'utilisation (par exemple, la transcription d'appels téléphoniques).

maxAlternatives

integer

Nombre maximal d'hypothèses de reconnaissance à renvoyer. Plus précisément, le nombre maximal de messages SpeechRecognitionAlternative dans chaque SpeechRecognitionResult. Le serveur peut renvoyer un nombre inférieur à maxAlternatives. Les valeurs valides sont comprises entre 0 et 30. Une valeur de 0 ou 1 renverra un maximum d'un résultat. Si celle-ci est omise, un maximum de 1 est également renvoyé.

profanityFilter

boolean

Si le champ est défini sur true, le serveur tente de filtrer le langage grossier en remplaçant tous les caractères (sauf le premier) de chaque mot filtré par des astérisques. Par exemple : "p*****". Si la valeur est false ou si le champ est omis, les grossièretés ne sont pas filtrées.

adaptation

object (SpeechAdaptation)

La configuration de l'adaptation vocale améliore la précision de la reconnaissance vocale. Pour en savoir plus, consultez la documentation sur l'adaptation vocale. Lorsque l'adaptation vocale est définie, elle remplace le champ speechContexts.

transcriptNormalization

object (TranscriptNormalization)

Facultatif. Utilisez la normalisation de la transcription pour remplacer automatiquement des parties de la transcription par les expressions de votre choix. Pour StreamingRecognize, cette normalisation ne s'applique qu'aux transcriptions partielles stables (stabilité > 0,8) et aux transcriptions finales.

speechContexts[]

object (SpeechContext)

Tableau SpeechContext. Moyen de fournir du contexte pour faciliter la reconnaissance vocale. Pour en savoir plus, consultez Adaptation vocale.

enableWordTimeOffsets

boolean

Si la valeur est true, le premier résultat inclut une liste de mots et les décalages temporels de début et de fin (horodatages) associés. Si la valeur est false, aucun horodatage au niveau du mot n'est renvoyé. La valeur par défaut est false.

enableWordConfidence

boolean

Si la valeur est true, le premier résultat inclut une liste de mots ainsi que leur fiabilité. Si la valeur est false, aucune information de fiabilité au niveau du mot n'est renvoyée. La valeur par défaut est false.

enableAutomaticPunctuation

boolean

Si le champ est défini sur "true", ajoute un signe de ponctuation aux hypothèses de résultat de la reconnaissance. Cette fonctionnalité n'est disponible que pour certaines langues. La définition de ce champ pour d'autres langues n'a aucun effet. La valeur "false" par défaut n'ajoute pas de signe de ponctuation aux hypothèses de résultat.

enableSpokenPunctuation

boolean

Comportement vis-à-vis de la ponctuation énoncée pour l'appel.Si ce champ n'est pas défini, le comportement par défaut est utilisé en fonction du modèle choisi (par exemple, command_and_search active la ponctuation énoncée par défaut). Si la valeur est "true", la ponctuation énoncée est remplacée par les symboles correspondants dans la requête. Par exemple, "comment allez-vous point d'interrogation" devient "Comment allez-vous ?" Pour obtenir de l'aide, consultez https://cloud.google.com/speech-to-text/docs/spoken-punctuation. Si la valeur est "false", la ponctuation orale n'est pas remplacée.

enableSpokenEmojis

boolean

Comportement vis-à-vis des emoji énoncés pour l'appel. Si ce champ n'est pas défini, le comportement par défaut est utilisé en fonction du modèle choisi. Si la valeur est "true", ajoute la mise en forme des emoji énoncés pour la requête. Les emoji énoncés seront remplacés par les symboles Unicode correspondants dans la transcription finale. Si la valeur est "false", les emoji prononcés ne sont pas remplacés.

enableSpeakerDiarization
(deprecated)

boolean

Si le champ est défini sur "true", cela active la détection du locuteur pour chaque mot reconnu dans la première alternative au résultat de la reconnaissance à l'aide d'un speakerLabel fourni dans WordInfo. Remarque : Utilisez plutôt diarizationConfig.

diarizationSpeakerCount
(deprecated)

integer

Si cette option est définie, elle spécifie le nombre estimé de locuteurs dans la conversation. La valeur par défaut est "2". Ignoré, sauf si enableSpeakerDiarization est défini sur "true". Remarque : Utilisez plutôt diarizationConfig.

diarizationConfig

object (SpeakerDiarizationConfig)

Configuration pour activer l'identification du locuteur et définir des paramètres supplémentaires pour adapter l'identification à votre application. Remarque : Lorsque cette option est activée, tous les mots du début de l'audio sont envoyés comme première alternative dans chaque réponse STREAMING consécutive. Cela permet d'améliorer nos tags de locuteurs car nos modèles apprennent à identifier les locuteurs dans la conversation au fil du temps. Pour les requêtes non diffusées en continu, les résultats de l'identification ne seront fournis que dans l'alternative supérieure du résultat SpeechRecognitionResult FINAL.

metadata

object (RecognitionMetadata)

Métadonnées concernant cette demande.

model

string

Modèle à sélectionner pour la requête donnée. Sélectionnez le modèle le mieux adapté à votre domaine pour obtenir de meilleurs résultats. Si aucun modèle n'est explicitement spécifié, nous en sélectionnons automatiquement un en fonction des paramètres du champ RecognitionConfig.

Modèle Description

latest_long

Idéal pour les contenus longs tels que les médias ou les conversations.

latest_short

Idéal pour les contenus courts, comme les commandes ou les énoncés brefs et orientés.

command_and_search

Idéal pour les requêtes courtes telles que les commandes ou la recherche vocales.

phone_call

Idéal pour les données audio provenant d'un appel téléphonique (généralement enregistrées à un taux d'échantillonnage de 8 kHz).

video

Idéal pour les données audio provenant d'une vidéo ou comprenant plusieurs intervenants. Il est préférable que l'audio soit enregistré à un taux d'échantillonnage de 16 kHz ou plus. Il s'agit d'un modèle premium plus onéreux que le tarif standard.

default

Idéal pour les données audio qui ne font pas partie des modèles spécifiques, telles que des données audio de longue durée. Il est préférable d'utiliser un son haute-fidélité, enregistré à un taux d'échantillonnage de 16 kHz ou plus.

medical_conversation

Idéal pour les données audio provenant d'une conversation entre un prestataire de santé et un patient.

medical_dictation

Idéal pour les données audio provenant de notes dictées par un professionnel de santé.

useEnhanced

boolean

Définissez sur "true" pour utiliser un modèle amélioré pour la reconnaissance vocale. Si useEnhanced est défini sur "true" et que le champ model n'est pas défini, un modèle amélioré approprié est choisi s'il en existe un pour l'audio.

Si useEnhanced est défini sur "true" et qu'il n'existe pas de version améliorée du modèle spécifié, la reconnaissance vocale utilise la version standard du modèle spécifié.

AudioEncoding

L'encodage des données audio envoyées dans la requête.

Tous les encodages n'acceptent qu'un seul canal (mono) audio, sauf si les champs audioChannelCount et enableSeparateRecognitionPerChannel sont définis.

Pour des résultats optimaux, la source audio doit être enregistrée et transmise grâce à un encodage sans perte (FLAC ou LINEAR16). La précision de la reconnaissance vocale peut être réduite si vous enregistrez ou transmettez des données audio à l'aide de codecs induisant une perte, notamment en présence de bruits de fond. Les codecs MULAW, AMR, AMR_WB, OGG_OPUS, SPEEX_WITH_HEADER_BYTE, MP3 et WEBM_OPUS sont des exemples de codecs induisant une perte.

Les fichiers audio FLAC et WAV comprennent un en-tête décrivant le contenu audio inclus. Vous pouvez demander une reconnaissance pour les fichiers WAV qui contiennent des données audio encodées au format LINEAR16 ou MULAW. Si vous envoyez le format de fichier audio FLAC ou WAV dans votre requête, vous n'avez pas besoin de spécifier un AudioEncoding ; le format d'encodage audio est déterminé à partir de l'en-tête du fichier. Si vous spécifiez une valeur AudioEncoding lorsque vous envoyez des données audio FLAC ou WAV, la configuration de codage doit correspondre au codage décrit dans l'en-tête audio. Sinon, la requête renvoie un code d'erreur google.rpc.Code.INVALID_ARGUMENT.

Enums
ENCODING_UNSPECIFIED Non spécifié.
LINEAR16 Échantillons little-endian de 16 bits signés et non compressés (LPCM).
FLAC L'encodage FLAC (Free Lossless Audio Codec, codec audio sans perte gratuit) est recommandé du fait de son absence de perte. Ainsi, la reconnaissance n'est pas compromise et ne nécessite qu'environ la moitié de la bande passante par rapport à l'encodage LINEAR16. L'encodage de flux FLAC accepte les échantillons 16 bits et 24 bits. Il n'est toutefois pas compatible avec tous les champs de STREAMINFO.
MULAW Échantillons de 8 bits compressant des échantillons audio 14 bits qui utilisent la norme G.711 PCMU/MULAW.
AMR Codec bande étroite AMR. La valeur sampleRateHertz doit être de 8 000.
AMR_WB Codec large bande AMR. La valeur sampleRateHertz doit être de 16 000.
OGG_OPUS Trames audio encodées au format Opus dans un conteneur Ogg (OggOpus). La valeur sampleRateHertz doit être définie sur 8 000, 12 000, 16 000, 24 000 ou 48 000.
SPEEX_WITH_HEADER_BYTE Bien que l'utilisation d'encodages avec perte ne soit pas recommandée, OGG_OPUS est largement privilégié par rapport à Speex lorsqu'un encodage à très faible débit est requis. L'encodage Speex accepté par l'API Cloud Speech comporte un octet d'en-tête dans chaque bloc, comme dans le type MIME audio/x-speex-with-header-byte. Il s'agit d'une variante de l'encodage Speex RTP défini dans le RFC 5574. Le flux est une séquence de blocs qui correspondent chacun à un paquet RTP. Chaque bloc commence par un octet qui contient sa longueur exprimée en octets, suivie d'une ou de plusieurs trames de données Speex complétées jusqu'à atteindre un nombre entier d'octets, comme spécifié dans le RFC 5574. En d'autres termes, chaque en-tête RTP est remplacé par un octet unique contenant la longueur du bloc. Seul l'encodage Speex large bande est accepté. La valeur sampleRateHertz doit être de 16 000.
MP3 Audio MP3. L'encodage MP3 est une fonctionnalité bêta disponible uniquement dans la version v1p1beta1. Compatibilité avec tous les débits MP3 standards (de 32 à 320 kbit/s). Lorsque vous utilisez cet encodage, sampleRateHertz doit correspondre au taux d'échantillonnage du fichier utilisé.
WEBM_OPUS Trames audio encodées au format Opus dans le conteneur WebM (WebM). sampleRateHertz doit être défini sur 8 000, 12 000, 16 000, 24 000 ou 48 000.
ALAW Échantillons de 8 bits compressant des échantillons audio 13 bits qui utilisent la norme G.711 PCMU/ALAW.

SpeechAdaptation

Configuration de l'adaptation vocale.

Représentation JSON
{
  "phraseSets": [
    {
      object (PhraseSet)
    }
  ],
  "phraseSetReferences": [
    string
  ],
  "customClasses": [
    {
      object (CustomClass)
    }
  ],
  "abnfGrammar": {
    object (ABNFGrammar)
  }
}
Champs
phraseSets[]

object (PhraseSet)

Collection d'ensembles de phrases. Pour spécifier les indices de manière intégrée, laissez le champ name de l'ensemble de phrases vide et remplissez les autres champs. N'importe quel ensemble de phrases peut utiliser n'importe quelle classe personnalisée.

phraseSetReferences[]

string

Collection de noms de ressources d'ensembles d'expressions à utiliser.

customClasses[]

object (CustomClass)

Ensemble de classes personnalisées. Pour spécifier les classes de manière intégrée, laissez le champ name de la classe vide et remplissez les autres champs en lui attribuant un customClassId unique. Faites référence à la classe définie en ligne dans les indices de phrases par son customClassId.

abnfGrammar

object (ABNFGrammar)

La forme Backus-Naur augmentée (ABNF) est une notation grammaticale standardisée composée d'un ensemble de règles de dérivation. Consultez les spécifications : https://www.w3.org/TR/speech-grammar

ABNFGrammar

Représentation JSON
{
  "abnfStrings": [
    string
  ]
}
Champs
abnfStrings[]

string

Toutes les déclarations et règles d'une grammaire ABNF sont divisées en plusieurs chaînes qui seront concaténées.

TranscriptNormalization

Configuration de la normalisation de la transcription. Utilisez la normalisation de la transcription pour remplacer automatiquement des parties de la transcription par les expressions de votre choix. Pour StreamingRecognize, cette normalisation ne s'applique qu'aux transcriptions partielles stables (stabilité > 0,8) et aux transcriptions finales.

Représentation JSON
{
  "entries": [
    {
      object (Entry)
    }
  ]
}
Champs
entries[]

object (Entry)

Liste des entrées de remplacement. Nous effectuerons le remplacement d'une entrée à la fois. Par exemple, la deuxième entrée de ["cat" => "dog", "mountain cat" => "mountain dog"] ne sera jamais appliquée, car nous traiterons toujours la première entrée avant. 100 entrées au maximum.

Entrée

Configuration de remplacement unique.

Représentation JSON
{
  "search": string,
  "replace": string,
  "caseSensitive": boolean
}
Champs
search

string

Ce que vous souhaitez remplacer. La longueur maximale est de 100 caractères.

replace

string

Par quoi remplacer le texte. La longueur maximale est de 100 caractères.

caseSensitive

boolean

Indique si la recherche est sensible à la casse.

SpeechContext

Fournit des "indices" à l'outil de reconnaissance vocale pour privilégier certains mots et expressions dans les résultats.

Représentation JSON
{
  "phrases": [
    string
  ],
  "boost": number
}
Champs
phrases[]

string

Liste de chaînes contenant des mots et des expressions qui fournissent des indications afin que la reconnaissance vocale soit plus susceptible de les reconnaître. Cette liste permet d'améliorer la précision de certains termes et phrases, notamment dans des commandes spécifiques généralement prononcées par l'utilisateur. Elle offre également la possibilité d'ajouter des mots supplémentaires au vocabulaire de l'outil de reconnaissance. Consultez les limites d'utilisation pour en savoir plus.

Les éléments de liste peuvent également être définis sur des classes pour des groupes de mots qui représentent des concepts courants dans le langage naturel. Par exemple, plutôt que de fournir des indices de phrases pour chaque mois de l'année, l'utilisation de la classe $MONTH améliore la probabilité de transcrire correctement les contenus audio comprenant des mois.

boost

number

Boost d'indices Une valeur positive augmentera la probabilité qu'une expression spécifique soit reconnue par rapport à d'autres expressions similaires. Plus le boost est élevé, plus le risque de faux positif est élevé. Les valeurs de boost négatives correspondent à l'anti-biais. L'anti-biais n'est pas activé. Le boost négatif sera donc ignoré. Bien que boost puisse accepter un large éventail de valeurs positives, la plupart des cas d'utilisation sont mieux adaptés aux valeurs comprises entre 0 et 20. Nous vous recommandons d'utiliser une approche de recherche binaire pour trouver la valeur optimale pour votre cas d'utilisation.

SpeakerDiarizationConfig

Configuration permettant d'activer l'identification des locuteurs.

Représentation JSON
{
  "enableSpeakerDiarization": boolean,
  "minSpeakerCount": integer,
  "maxSpeakerCount": integer,
  "speakerTag": integer
}
Champs
enableSpeakerDiarization

boolean

Si le champ est défini sur "true", cela active la détection du locuteur pour chaque mot reconnu dans la première alternative au résultat de la reconnaissance à l'aide d'un speakerLabel fourni dans WordInfo.

minSpeakerCount

integer

Nombre minimal de locuteurs dans la conversation. Cette plage vous offre plus de flexibilité en permettant au système de déterminer automatiquement le nombre approprié de locuteurs. Si le nombre n'est pas défini, la valeur par défaut est 2.

maxSpeakerCount

integer

Nombre maximal de locuteurs dans la conversation. Cette plage vous offre plus de flexibilité en permettant au système de déterminer automatiquement le nombre approprié de locuteurs. Si le nombre n'est pas défini, la valeur par défaut est 6.

speakerTag
(deprecated)

integer

Uniquement en sortie. Non utilisé.

RecognitionMetadata

Description des données audio à reconnaître.

Représentation JSON
{
  "interactionType": enum (InteractionType),
  "industryNaicsCodeOfAudio": integer,
  "microphoneDistance": enum (MicrophoneDistance),
  "originalMediaType": enum (OriginalMediaType),
  "recordingDeviceType": enum (RecordingDeviceType),
  "recordingDeviceName": string,
  "originalMimeType": string,
  "obfuscatedId": string,
  "audioTopic": string
}
Champs
interactionType

enum (InteractionType)

Cas d'utilisation décrivant le mieux le contenu audio à reconnaître.

industryNaicsCodeOfAudio

integer (uint32 format)

Marché vertical auquel cette requête de reconnaissance vocale s'applique le plus étroitement. Il s'agit du champ indiquant le mieux les sujets contenus dans les données audio. Vous pouvez identifier le marché vertical à l'aide du code SCIAN à 6 chiffres. Consultez la page https://www.naics.com/search/ pour en savoir plus.

microphoneDistance

enum (MicrophoneDistance)

Type audio décrivant le mieux le son reconnu.

originalMediaType

enum (OriginalMediaType)

Média original sur lequel le discours a été enregistré.

recordingDeviceType

enum (RecordingDeviceType)

Type d'appareil avec lequel le discours a été enregistré.

recordingDeviceName

string

Appareil utilisé pour l'enregistrement. Exemples : "Nexus 5X", "Polycom SoundStation IP 6000", "POTS", 'VoIP" ou "Microphone cardioïde".

originalMimeType

string

Type MIME du fichier audio d'origine. Par exemple, audio/m4a, audio/x-alaw-basic, audio/mp3, audio/3gpp. Une liste des types MIME audio possibles est disponible sur http://www.iana.org/assignments/media-types/media-types.xhtml#audio.

obfuscatedId
(deprecated)

string (int64 format)

ID masqué de l'utilisateur (protection des données confidentielles). Permet d'identifier le nombre d'utilisateurs uniques du service.

audioTopic

string

Description du contenu. Par exemple, "Enregistrements des audiences de la Cour suprême fédérale depuis 2012".

InteractionType

Catégories de cas d'utilisation pour lesquels la requête de reconnaissance audio peut être décrite.

Énumérations (Enums)
INTERACTION_TYPE_UNSPECIFIED Le cas d'utilisation est inconnu ou ne s'apparente pas à l'une des valeurs ci-dessous.
DISCUSSION Plusieurs personnes dans une conversation. Par exemple : une réunion à laquelle deux personnes ou plus participent activement. Généralement, les principaux intervenants se situent dans la même pièce (dans le cas contraire, reportez-vous à PHONE_CALL).
PRESENTATION Une ou plusieurs personnes donnant un cours ou une présentation, sans interruption ou presque.
PHONE_CALL Appel téléphonique ou vidéoconférence où deux personnes ou plus, qui ne sont pas dans la même pièce, participent activement.
VOICEMAIL Message enregistré destiné à quelqu'un d'autre.
PROFESSIONALLY_PRODUCED Contenu audio produit de façon professionnelle (tel qu'une émission télévisée ou un podcast).
VOICE_COMMAND Transcription de commandes vocales permettant par exemple de contrôler un appareil.
DICTATION Transcription d'un discours en texte pour créer un document écrit tel qu'un SMS, un e-mail ou un rapport.

MicrophoneDistance

Énumère les types de paramètres d'enregistrement qui décrivent un fichier audio.

Énumérations (Enums)
MICROPHONE_DISTANCE_UNSPECIFIED Le type audio n'est pas connu.
NEARFIELD Le son a été enregistré à partir d'un microphone rapproché, tel qu'un téléphone, dictaphone ou microphone à main. L'intervenant se trouve généralement à moins d'un mètre du microphone.
MIDFIELD L'intervenant se situe à moins de trois mètres du microphone.
FARFIELD L'intervenant se situe à plus de trois mètres du microphone.

OriginalMediaType

Média original sur lequel le discours a été enregistré.

Énumérations (Enums)
ORIGINAL_MEDIA_TYPE_UNSPECIFIED Type de média original inconnu.
AUDIO Les données vocales se présentent sous la forme d'un enregistrement audio.
VIDEO Les données vocales ont été enregistrées au format vidéo.

RecordingDeviceType

Type d'appareil avec lequel le discours a été enregistré.

Énumérations (Enums)
RECORDING_DEVICE_TYPE_UNSPECIFIED L'appareil d'enregistrement est inconnu.
SMARTPHONE Le discours a été enregistré depuis un smartphone.
PC Le discours a été enregistré à partir d'un ordinateur ou d'une tablette.
PHONE_LINE Le discours a été enregistré sur une ligne téléphonique.
VEHICLE Le discours a été enregistré dans un véhicule.
OTHER_OUTDOOR_DEVICE Le discours a été enregistré en extérieur.
OTHER_INDOOR_DEVICE Le discours a été enregistré en intérieur.