Son#

Introduction#

Le robot de codage VEX AIM permet aux utilisateurs de lire des sons intégrés, des fichiers audio personnalisés et des notes de musique. Il comprend également des commandes pour arrêter les sons et détecter si un son est en cours de lecture.

Vous trouverez ci-dessous la liste de toutes les méthodes :

Actions — Lancer ou arrêter les sons.

  • play — Joue un effet sonore intégré.

  • play_file — Joue un son personnalisé téléchargé par l’utilisateur.

  • play_note — Joue une note de musique pendant une durée définie.

  • stop — Arrête tout son en cours de lecture.

Getter — Vérifier l’état du son.

  • is_active — Renvoie si un son est actuellement en cours de lecture.

Actes#

play#

La commande play diffuse l’un des sons intégrés du robot à un volume spécifié. Comme il s’agit d’une méthode sans attente, le robot diffuse le son intégré et passe à la commande suivante immédiatement.

Usage:

robot.sound.play(sound, volume)

Paramètre

Description

sound

L’une des options audio intégrées énumérées ci-dessous.

volume

Optionnel. Le volume sonore, exprimé en nombre entier de 0 % à 100 %. La valeur par défaut est de 50 %.

Sons intégrés

Jouer un son

ACT_ANGRY

ACT_EXCITED

ACT_HAPPY

ACT_SAD

ACT_SILLY

BLINKER

BRAKES

CHEER

CHIRP

COMPLETE

CRASH

DETECTED

DOORBELL

FAIL

FLOURISH

HUAH

LOOPING

MOVE_FORWARD

MOVE_REVERSE

OBSTACLE

PAUSE

PICKUP

RECEIVE

RESUME

SENSING

SEND

SPARKLE

TADA

TURN_LEFT

TURN_RIGHT

# Play cheer
robot.sound.play(CHEER)

# Play cheer at full volume
robot.sound.play(CHEER, 100)

# Wait until sound is finished to move
robot.sound.play(ACT_HAPPY)
while robot.sound.is_active():
    wait(50, MSEC)
robot.turn_to(180)

play_file#

La commande play_file permet de lire un son personnalisé téléchargé par l’utilisateur. Comme il s’agit d’une méthode sans attente, le robot lit le son personnalisé et passe à la commande suivante sans attendre la fin de la lecture.

Usage:

robot.sound.play_file(file, volume)

Paramètre

Description

file

L’un des fichiers sonores personnalisés téléchargés par l’utilisateur, de SOUND1 à SOUND10Le numéro du son correspond au numéro affiché dans le panneau de contrôle AIM.

volume

Optionnel. Le volume sonore, exprimé en nombre entier de 0 % à 100 %. La valeur par défaut est de 50 %.

# Play an uploaded sound
robot.sound.play_file(SOUND1)

# Play an uploaded sound at full volume
robot.sound.play_file(SOUND1, 100)

# Wait until sound is finished to move
robot.sound.play_file(SOUND1)
while robot.sound.is_active():
    wait(50, MSEC)
robot.turn_to(180)

play_note#

La commande play_note joue une note spécifique pendant une durée précise en millisecondes. Comme il s’agit d’une méthode sans attente, le robot joue la note et passe à la commande suivante immédiatement.

Usage:

robot.sound.play_note(note, length, volume)

Paramètre

Description

note

La hauteur musicale à jouer, écrite sous forme de chaîne de caractères (ex. : C5, A#6). Les notes valides vont A à G (avec # optionnel pour les dièses) sur les octaves 5 à 8.

length

La durée de la note, exprimée en nombre entier de millisecondes.

volume

Optionnel. Le volume sonore, exprimé en nombre entier de 0 % à 100 %. La valeur par défaut est de 50 %.

# Play C5 for 2 seconds
robot.sound.play_note("C5", 2000)

# Play C5 for 2 seconds at full volume
robot.sound.play_note("C5", 2000, 100)

# Wait until note is finished to move
robot.sound.play_note("C6", 1000)
while robot.sound.is_active():
    wait(50, MSEC)
robot.turn_to(180)

stop#

stop arrête un son en cours de lecture.

Usage:

robot.sound.stop()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Cut a sound off after 1 second
robot.sound.play(ACT_SILLY)
wait(1, SECONDS)
robot.sound.stop()

Getters#

is_active#

is_active renvoie une valeur booléenne indiquant si un son est actuellement en cours de lecture.

  • True — Un son est en cours de lecture

  • False — Aucun son n’est diffusé

Usage:

robot.sound.is_active()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Play tada after cheer finishes
robot.sound.play(CHEER)   
while robot.sound.is_active():
    wait(10, MSEC)
robot.sound.play(TADA)