Sound play ブロックを使っていますか?
名前の通り、このブロックは音声を再生するためのブロックです。
通知用に音声を再生したり、音楽プレイヤー的なフローチャートで音声を再生するに使えます。
immediately
When completed
text
/storage/emulated/0/
… 等)ContentProviderURI
でも可能パスを指定する場合は、Fx を有効にしてから、"[絶対パス]"
を指定します。
ストリーム名 | フラグコード | 説明 |
---|---|---|
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) | 通知オーディオストリームで再生されます。 |
音声ファイルを任意の音量で再生できます。
number
, text (number)
ダイアログから指定する場合は分、秒を簡単に指定できますが、Fxを有効にした場合は、秒数で指定します。
number
, text (number)
分、秒を秒単位に変換するには以下の式で表現できます。
分 * 60 + 秒
音声ファイルが最後まで再生されたとき、再度最初から再生するかしないかを指定できます。
許容型: number
, text (number)
期待値: 0
もしくは 1
0 = リピートしない
1 = リピートする
タイプ | 説明 |
---|---|
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 確認)
Sound play 実行時、通知に音声が再生されていることを通知できます。
通知を有効にすると簡単な進捗表示(分:秒)と、通知をクリックすることで、音声を停止することが可能です。
オーディオファイルの再生には、Class android.media.MediaPlayer
を使用されています。
class/android.media.MediaPlayer