声音#
简介#
VEX AIM 编程机器人的声音功能允许用户播放内置声音、自定义音频文件和音符。它还包含用于停止声音和检测当前是否正在播放音频的控制功能。
以下是所有方法的列表:
操作——播放或停止声音。
[
play] (#play) —播放内置的音效。[
play_file] (#play_file) —播放用户上传的自定义声音。[
play_note] (#play_note) —在设定的持续时间内播放音符。[
stop] (#stop) —停止任何当前正在播放的声音。
Getter — 检查声音状态。
[
is_active] (#is_active) —返回当前是否正在播放声音。
操作#
play#
play 以指定的音量百分比播放机器人的内置音效之一。由于这是一个非等待方法,机器人会播放内置音效并立即执行下一条指令,而不等待其播放结束。
用法:
robot.sound.play(sound, volume)
参数 |
描述 |
|---|---|
|
下面列出的内置声音选项之一。 |
|
可选。音量大小,取值范围为 0% 到 100% 的整数。默认值为 50%。 |
内置音效 |
播放音效 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 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#
play_file 播放用户上传的自定义声音。由于这是一种非等待方法,机器人会播放自定义声音并移动到下一个命令,而无需等待其完成。
用法:
robot.sound.play_file(file, volume)
参数 |
描述 |
|---|---|
|
用户上传的自定义声音文件之一,从 |
|
可选。音量大小,取值范围为 0% 到 100% 的整数。默认值为 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#
play_note 在特定持续时间内播放特定音符,以毫秒为单位。由于这是一种非等待方法,机器人播放特定音符并移动到下一个命令,而无需等待其完成。
用法:
robot.sound.play_note(note, length, volume)
参数 |
描述 |
|---|---|
|
要播放的音高,以字符串形式书写(例如 |
|
音符的持续时间,以毫秒为单位的整数。 |
|
可选。音量大小,取值范围为 0% 到 100% 的整数。默认值为 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 停止当前正在播放的声音。
用法:
robot.sound.stop()
参数 |
描述 |
|---|---|
该方法没有参数。 |
# Cut a sound off after 1 second
robot.sound.play(ACT_SILLY)
wait(1, SECONDS)
robot.sound.stop()
Getters#
is_active#
is_active 返回一个布尔值,指示声音当前是否正在播放。
True— 目前正在播放声音False—没有正在播放的声音
用法:
robot.sound.is_active()
参数 |
描述 |
|---|---|
该方法没有参数。 |
# Play tada after cheer finishes
robot.sound.play(CHEER)
while robot.sound.is_active():
wait(10, MSEC)
robot.sound.play(TADA)