音效#
简介#
VEX AIR 无人机控制器允许用户播放内置音效、自定义音频文件和音符。它还包含用于停止声音和检测音频是否正在播放的控制功能。
以下是所有可用方法的列表:
音效 - 播放和停止音效
获取方法 - 获取音效状态
is_active—检查音效当前是否正在播放。
动作#
play#
play 以指定的音量百分比播放遥控器的内置音效之一。由于这是一个非等待方法,遥控器会播放内置音效,并在音效播放完成之前直接执行下一条命令。
用法:
controller.sound.play(sound, volume)
参数 |
描述 |
|---|---|
|
下面列出的内置声音选项之一。 |
|
可选。音量大小,取值范围为 0% 到 100% 的整数。默认值为 50%。 |
内置声音 |
播放声音 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Play the looping sound.
controller.sound.play(LOOPING)
# Play the looping sound at full volume.
controller.sound.play(LOOPING, 100)
# Play the looping sound.
# Wait until the sound is finished before taking off.
controller.sound.play(LOOPING)
while controller.sound.is_active():
wait(50, MSEC)
drone.take_off(climb_to=500)
wait(1, SECONDS)
drone.land()
play_file#
play_file 以指定的音量百分比播放用户加载的自定义音效。由于这是一个非等待方法,无人机会播放自定义音效,并在音效播放完成之前直接执行下一条命令。
用法:
controller.sound.play_file(file, volume)
参数 |
描述 |
|---|---|
|
用户上传的自定义音效文件之一,范围从 |
|
可选。音量大小,取值范围为 0% 到 100% 的整数。默认值为 50%。 |
# Upload a sound file in VEXcode.
# Play the custom sound.
controller.sound.play_file(SOUND1)
# Upload a sound file in VEXcode.
# Play the custom sound at full volume.
controller.sound.play_file(SOUND1, 100)
# Play the custom sound sound.
# Wait until the sound is finished before taking off.
controller.sound.play_file(SOUND1)
while controller.sound.is_active():
wait(50, MSEC)
drone.take_off(climb_to=500)
wait(1, SECONDS)
drone.land()
play_note#
play_note 播放指定音符并持续指定的时间。由于这是一个非等待方法,无人机会播放指定音符,并在音符播放完成之前直接执行下一条命令。
用法:
controller.sound.play_note(note, duration, volume)
参数 |
描述 |
|---|---|
|
要播放的音高,以字符串形式书写(例如 |
|
音符的持续时间,以毫秒为单位的整数表示。 |
|
可选。音量大小,取值范围为 0% 到 100% 的整数。默认值为 50%。 |
# Play C5 for 2 seconds
controller.sound.play_note("C5", 2000)
# Play C5 for 2 seconds at full volume
controller.sound.play_note("C5", 2000, 100)
# Play a short tune.
controller.sound.play_note("C5", 1000)
while controller.sound.is_active():
wait(50, MSEC)
controller.sound.play_note("D5", 1000)
while controller.sound.is_active():
wait(50, MSEC)
controller.sound.play_note("E5", 250)
while controller.sound.is_active():
wait(50, MSEC)
stop#
stop 停止当前正在播放的声音。
用法:
controller.sound.stop()
参数 |
描述 |
|---|---|
该方法没有参数。 |
# Upload a sound 10 seconds or greater in VEXcode.
# Stop the sound while it is playing.
controller.sound.play_file(SOUND1)
wait(6, SECONDS)
controller.sound.stop()
获取方法#
is_active#
is_active 返回一个布尔值,表示无人机当前是否正在播放音效。
True— 目前正在播放声音False—没有正在播放的声音
用法:
controller.sound.is_active()
参数 |
描述 |
|---|---|
该方法没有参数。 |
# Display text once a sound starts playing
controller.sound.play(LOOPING)
while not controller.sound.is_active():
wait(50, MSEC)
print("I hear the sound!")