音#
導入#
VEX AIRドローンコントローラーを使用すると、内蔵サウンド、カスタムオーディオファイル、および音符を再生できます。また、サウンドを停止したり、オーディオが再生されているかどうかを検出したりするコントロールも備えています。
以下に、利用可能なメソッドの一覧を示します。
アクション - サウンドの再生と停止
play— 定義済みのリストから内蔵サウンドを再生します。play_file— ユーザーがアップロードしたサウンドを再生します。play_note— 指定された音高、オクターブ、および持続時間で音符を演奏します。stop— 現在再生中のサウンドを停止します。
ゲッター - サウンドの状態を取得する
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)
パラメータ |
説明 |
|---|---|
|
ユーザーがアップロードしたカスタムサウンドファイルのうちの1つで、 |
|
オプション。音量を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— 音が出ません
Usage:
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!")