音楽の再生方法
Monaca で音楽を再生する方法について説明します。
HTMLのAudioオブジェクトを利用することで、音声ファイルを操作することができます。
下のプロジェクトではアプリ内(wwwディレクト配下)に保存した音声ファイルと外部サーバーに保存してある音声ファイルを再生しています。
画面の作成
音声ファイルを操作するためのページを作成します。
音声ファイルの選択
音声の再生・一時停止・停止ボタン
音声の再生位置の表示
下記のプロジェクトでは、プロジェクトのwwwディレクト配下に保存したsong1.mp3 と 外部サイトにあるmp3ファイルをURLで指定しています。
<body style="text-align: center">
<h1>Playing Sound</h1>
<select id="songSelect">
<option value="song1.mp3">Song 1</option>
<option value="https://www.learningcontainer.com/wp-content/uploads/2020/02/Kalimba.mp3">Song 2</option>
</select>
<button onclick="playSound()">Play</button>
<button onclick="pauseSound()">Pause</button>
<button onclick="stopSound()">Stop</button>
<p id="audio_position"></p>
</body>音声再生の準備
ページが読み込まれたとき(window.onload)に音声再生の準備をします。
まず、音声ファイルとタイマーを管理するための変数を宣言します。次に、音声ファイルを再生するためのAudioオブジェクトを作成し、audioElementに代入します。さらに、音声が再生されたとき、一時停止したとき、再生が終了したときに呼び出される関数を設定します。
音声の操作
次に3つの関数、音声の再生、一時停止、停止を作成します。
playSound関数では、選択された曲を再生します。pauseSound関数では、音声の再生を一時停止します。stopSound関数では、音声の再生を停止し、再生位置を初めに戻します。
音声の再生位置の表示
音声の再生位置を表示し、更新する処理を作成します。
setAudioPosition関数では、指定された位置を画面に表示します。updateAudioPosition関数では、1秒ごとに音声の再生位置を更新します。stopUpdatingAudioPosition関数では、音声の再生位置の更新を停止します。
コード全体
上記で説明したコードの全体は次のようになります。
最終更新
役に立ちましたか?