音#

導入#

VEX AIRドローンコントローラーを使用すると、内蔵サウンド、カスタムオーディオファイル、および音符を再生できます。また、サウンドを停止したり、オーディオが再生されているかどうかを検出したりするコントロールも備えています。

以下に、利用可能なメソッドの一覧を示します。

アクション - サウンドの再生と停止

  • play — 定義済みのリストから内蔵サウンドを再生します。

  • play_file — ユーザーがアップロードしたサウンドを再生します。

  • play_note — 指定された音高、オクターブ、および持続時間で音符を演奏します。

  • stop — 現在再生中のサウンドを停止します。

ゲッター - サウンドの状態を取得する

  • is_active — サウンドが現在再生されているかどうかを確認します。

行動#

play#

play は、コントローラーに内蔵されているサウンドを、指定された音量で再生します。これは待機しない方式なので、コントローラーは内蔵サウンドを再生すると、その終了を待たずに次のコマンドに進みます。

使用法:

controller.sound.play(sound, volume)

パラメータ

説明

sound

下記に記載されている内蔵サウンドオプションのいずれか。

volume

オプション。音量を0%から100%までの整数で指定します。デフォルト値は50%です。

内蔵サウンド

サウンドを再生

SUCCESS

FAULT

SENSING

DETECTED

OBSTACLE

LOOPING

COMPLETE

PAUSE

RESUME

SEND

RECEIVE

# 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)

パラメータ

説明

file

ユーザーがアップロードしたカスタムサウンドファイルのうちの1つで、 SOUND1 から SOUND10までの範囲です。サウンド番号は、AIRコントロールパネルに表示される番号と一致します。

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)

パラメータ

説明

note

演奏する音高を文字列で表記します(例: C5、 A#6)。有効な音は、5オクターブから8オクターブにわたる A から G (シャープの場合はオプションで # )です。

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!")