Ecouter, traduire et lire
Durée estimée: 15 minutes
mn | Activité/application | Notions abordées | supports |
Hello world 3
(reconnaissance de la parole) quand clic sur le bouton :
|
Design
| ||
Ce que vous allez faire :
Dans cette 3° version, le smartphone va écouter ce que dit l'utilisateur, afficher le texte reconnu et continuer comme avant avec la traduction et la lecture.
Pour ça, on ajoute un composant et on appelle une procédure de reconnaissance de la parole.
C'est une procédure asynchrone, avec un nouvel évènement pour l'arrivée du texte reconnu. La modification à apporter est donc similaire à la précédente.
Attention (suite à un changement du composant de reconnaissance vocale) :
Avant de traiter le texte reconnu, vérifier qu'il est complet. Le paramètre "partial" renvoyé avec l'évènement doit être "faux ".
Avant de traiter le texte reconnu, vérifier qu'il est complet. Le paramètre "partial" renvoyé avec l'évènement doit être "
Design :
- ajouter un composant de reconnaissance vocale:
glisser le composant "Reconnaisance vocale" de la catégorie "media" sur l'écran (ce composant apparait en dessous), - le renommer avec un nom plus court "Reco_vocale1",
- changer le nom et le texte du bouton à "écouter"
Les composants du design présents dans la version précédente n'ont pas changé, sauf pour le nom et le texte affiché par le bouton, on ne les a donc pas rappelés ici.
type | catégorie | Nom | rôle | propriété | valeur |
---|---|---|---|---|---|
reconnaissance vocale | media | Reco_vocale1 | Reco parole |
Codage (blocs)
On passe ensuite au codage par blocs en cliquant en haut à droite sur le bouton "blocs".- initialiser une variable "langue_In" à "fr" pour la langue écoutée en entrée.
- dans le script de "quand clic sur BoutonEcouter" :
- mettre à jour la propriété "langue" du composant "Reco_vocale1" avec "langue_In"
- lancer la reconnaissance vocale
- dans le script de "quand le texte a été reconnu" :
Il y a ici un petit piège, (dans la dernière version du composant de reconnaissance vocale)donc glisser au centre, le bloc de l'évènement
Ce composant fournit des résultats intermédiaires et continue à écouter. Il faut attendre que la reconnaissance soit terminée, ce qui correspond au passage à "faux" du paramètre "partial. On va donc tester cette valeur.Quand Reco vocale1.texte reconnu :
et ajouter si "Si "partial n'estpas vrai
    mettre le résultat dans la propriété "Zone_de_texte_In.Texte "
    et reprendre l'appel à laprocédure de traduction