La plate-forme Actions on Google est compatible avec un certain nombre de fonctionnalités SSML bêta, en plus du Éléments SSML standards d'Actions on Google
Récapitulatif des fonctionnalités SSML (bêta) compatibles :
<phoneme>
: personnaliser la prononciation de mots spécifiques.<say-as interpret-as="duration">
: spécifier les durées.<voice>
: basculer entre les voix figurant dans une même requête.<lang>
: utiliser plusieurs langues dans la même requête.- Repères temporels: utilisez la balise
<mark>
pour renvoyer le repère temporel d'une dans votre transcription.
<phoneme>
Vous pouvez utiliser le tag <phoneme>
pour produire des prononciations personnalisées de mots intégrés. Actions on Google accepte les
l'IPA et
alphabets phonétiques X-SAMPA. Consultez le
page phonèmes pour obtenir la liste des
langues et phonèmes.
Chaque application du tag <phoneme>
oriente la prononciation d'un seul mot :
<phoneme alphabet="ipa" ph="ˌmænɪˈtoʊbə">manitoba</phoneme> <phoneme alphabet="x-sampa" ph='m@"hA:g@%ni:'>mahogany</phoneme>
Marqueurs de stress
Il existe trois niveaux de stress pouvant être placées dans une transcription :
- Stress primaires: indiqué par
ˈ
dans IPA et"
en X-SAMPA. - Stress secondaire: indiqué par
ˌ
dans IPA et%
dans X-SAMPA. - Sans stress : ce champ n'est pas représenté par un symbole (dans l'une ou l'autre notation).
Certaines langues peuvent avoir moins de trois niveaux ou ne pas indiquer de placement de stress. Consultez la page des phonèmes pour découvrir les niveaux de stress disponibles pour votre langue. Les marqueurs de stress sont placés début de chaque syllabe accentuée. Par exemple, en anglais américain :
Exemple de mot | IPA | X-SAMPA |
---|---|---|
eau | ˈwɑːtɚ |
"wA:t@` |
underwater | ˌʌndɚˈwɑːtɚ |
%Vnd@"wA:t@ |
Transcriptions larges ou précises
De manière générale, veillez à ce que vos transcriptions soient plus larges et phonémiques.
Par exemple, en anglais américain, transcrivez t
intervocalique (au lieu d'utiliser un
tapotement):
Exemple de mot | IPA | X-SAMPA |
---|---|---|
beurre | ˈbʌtɚ au lieu de ˈbʌɾɚ |
"bVt@` au lieu de "bV4@` |
Dans certains cas, l'utilisation de la représentation phonémique ne rend pas vos résultats de synthèse vocale anormales (par exemple, si la séquence de phonèmes est anatomiquement difficile à prononcer).
Par exemple, vous pouvez exprimer l'assimilation de s
en anglais. Dans ce cas, l'assimilation doit être reflétée dans la transcription :
Exemple de mot | IPA | X-SAMPA |
---|---|---|
chats | ˈkæts |
"k{ts |
chiens | ˈdɑːgz au lieu de ˈdɑːgs |
"dA:gz au lieu de "dA:gs |
Réduction
Chaque syllabe doit contenir une (et une seule) voyelle. Cela signifie que vous devez éviter les consonnes syllabiques et les transcrire par une voyelle réduite. Exemple :
Exemple de mot | IPA | X-SAMPA |
---|---|---|
chaton | ˈkɪtən au lieu de ˈkɪtn |
"kIt@n au lieu de "kitn |
kettle | ˈkɛtəl au lieu de ˈkɛtl |
"kEt@l au lieu de "kEtl |
Syllabification
Vous pouvez éventuellement spécifier des limites de syllabes à l'aide de .
. Chaque syllabe doit
contiennent une (et une seule) voyelle. Exemple :
Exemple de mot | IPA | X-SAMPA |
---|---|---|
Lisibilité | ˌɹiː.də.ˈbɪ.lə.tiː |
%r\i:.d@."bI.l@.ti: |
Durées
La plate-forme Actions on Google prend en charge <say-as interpret-as="duration">
pour correctement
les durées de lecture. Par exemple, l'exemple suivant serait prononcé "cinq
heures et trente minutes":
<say-as interpret-as="duration" format="h:m">5:30</say-as>
La chaîne de format accepte les valeurs ci-dessous :
Abréviation | Valeur |
---|---|
h | heures |
m | minutes |
s | secondes |
ms | millisecondes |
<voice>
Le tag <voice>
vous permet d'utiliser plusieurs voix dans une seule requête SSML. Dans l'exemple suivant, la voix par défaut est une voix masculine anglaise.
Tous les mots seront synthétisés dans cette voix à l'exception de "qu'est-ce qui t'amène ici", qui sera verbalisé en français à l'aide d'une voix féminine par rapport à la langue par défaut (anglais) et du genre (masculin).
<speak>And then she asked, <voice language="fr-FR" gender="female">qu'est-ce qui t'amène ici</voice><break time="250ms"/> in her sweet and gentle voice.</speak>
Vous pouvez également utiliser une balise <voice>
pour spécifier une voix individuelle (la
nom de la voix sur la
page des voix et langues disponibles)
au lieu de spécifier language
et/ou gender
:
<speak>The dog is friendly<voice name="fr-CA-Wavenet-B">mais la chat est mignon</voice><break time="250ms"/> said a pet shop owner</speak>
Lorsque vous utilisez la balise <voice>
, Actions on Google s'attend à recevoir :
un name
(le
nom de la voix que vous
souhaitez utiliser) ou une combinaison des attributs suivants. Les trois
sont facultatifs, mais vous devez en fournir au moins un si vous n'indiquez
name
gender
:male
,female
ouneutral
.variant
: condition de départage en cas d'existence de plusieurs de la voix à utiliser en fonction de votre configuration.language
: la langue de votre choix. Une seule langue peut être spécifiée dans un tag<voice>
donné. Spécifiez la langue au format BCP-47. Le code BCP-47 correspondant à votre langue figure dans la colonne Code de langue de la page Voix et langues prises en charge.
Vous pouvez également contrôler la priorité relative de chacun des attributs gender
, variant
et language
à l'aide de deux tags supplémentaires : required
et ordering
.
required
: si un attribut est désigné commerequired
et n'est pas configuré correctement, la requête échoue.ordering
: tous les attributs répertoriés après un tagordering
sont considérés comme des attributs préférés et non obligatoires. Le SSML considère attributs préférés du mieux possible, dans l'ordre dans lequel ils sont listés après la baliseordering
. Si des attributs préférés sont configurés Actions on Google peut toujours renvoyer une voix valide, mais avec la configuration incorrecte supprimée.
Exemples de configurations utilisant les tags required
et ordering
:
<speak>And there it was <voice language="en-GB" gender="male" required="gender" ordering="gender language">a flying bird </voice>roaring in the skies for the first time.</speak>
<speak>Today is supposed to be <voice language="en-GB" gender="female" ordering="language gender">Sunday Funday.</voice></speak>
<lang>
Vous pouvez utiliser <lang>
pour inclure du texte dans plusieurs langues au sein de la même requête SSML. Toutes les langues seront synthétisées dans la même voix, sauf si vous utilisez le tag <voice>
pour modifier explicitement la voix. La chaîne xml:lang
doit contenir
La langue cible au format BCP-47 (cette valeur est répertoriée comme "code de langue" dans
les voix compatibles
. Dans l'exemple suivant, "chat" sera prononcée en français
la langue par défaut (anglais):
<speak>The french word for cat is <lang xml:lang="fr-FR">chat</lang></speak>
La plate-forme Actions on Google accepte la balise <lang>
dans la mesure du possible. Il est possible que
de langues produisent les mêmes résultats si elles sont spécifiées dans le même
requête SSML. Dans certains cas, une combinaison linguistique peut produire un effet détectable, mais subtil ou perçu comme étant négatif. Problèmes connus :
- Le japonais avec des caractères kanji n'est pas compatible avec le tag
<lang>
. La l'entrée est translittérée et lue comme des caractères chinois. - Les langues sémitiques telles que l'arabe, l'hébreu et le persan ne sont pas acceptées par
la balise
<lang>
et activera le son. Si vous souhaitez utiliser l'un de ces langues, nous vous recommandons d'utiliser le tag<voice>
pour passer à une voix parle la langue de votre choix (si disponible).