Sound play の全て

記事作成日:2022/05/31

Sound play ブロックを使っていますか?

名前の通り、このブロックは音声を再生するためのブロックです。

通知用に音声を再生したり、音楽プレイヤー的なフローチャートで音声を再生するに使えます。

Options

Procced

引数

Sound URI

Storage Path

パスを指定する場合は、Fx を有効にしてから、"[絶対パス]" を指定します。

Streaming URL

Audio stream

ストリーム名 フラグコード 説明
AudioManager#STREAM_VOICE_CALL 0 (0x0) 通話オーディオストリームで再生されます。
AudioManager#STREAM_SYSTEM 1 (0x1) システムサウンドオーディオストリームで再生されます。
AudioManager#STREAM_RING 2 (0x2) 電話呼び出しオーディオストリームで再生されます。
AudioManager#STREAM_MUSIC 3 (0x3) 音楽オーディオストリームで再生されます。
AudioManager#STREAM_ALARM 4 (0x4) アラームオーディオストリームで再生されます。
AudioManager#STREAM_NOTIFICATION 5 (0x5) 通知オーディオストリームで再生されます。

Volume

音声ファイルを任意の音量で再生できます。

Start position

ダイアログから指定する場合は分、秒を簡単に指定できますが、Fxを有効にした場合は、秒数で指定します。

分、秒を秒単位に変換するには以下の式で表現できます。

分 * 60 + 秒

Repeat

音声ファイルが最後まで再生されたとき、再度最初から再生するかしないかを指定できます。

Audio focus

タイプ 説明
None どちらのリクエストもフォーカスしない
Normal 不明な期間をリクエストする
Transient 予想される短期間の一時的なリクエスト。
Transient may duck 他より少ない音量で継続する可能性がある、予想される短期間の一時的なリクエスト
Transient exclusive (Android 4.4+) Temporary request for an expected short duration where others should be silent.

私の環境では Normal しか動作しなかったように感じました。

Noneの説明文をよく見ると、not を nor とタイプミスしているのがわかります。(v1.33.6 確認)

Notification channel

Sound play 実行時、通知に音声が再生されていることを通知できます。

img

通知を有効にすると簡単な進捗表示(分:秒)と、通知をクリックすることで、音声を停止することが可能です。

技術メモ

オーディオファイルの再生には、Class android.media.MediaPlayer を使用されています。

class/android.media.MediaPlayer


インデックスに戻る
Automate 覚書のホームに戻る
このサイトのホームに戻る