- 追加された行はこの色です。
- 削除された行はこの色です。
[[TopPage]] > [[演習課題]] > 演習4-3 音声の再生
音声再生は、[https://yoslab.net/javaprog2020/index.php?GUI%A4%CE%A5%B5%A5%F3%A5%D7%A5%EB]を見て下さい。
音声再生は、[https://yoslab.net/javaprog2021/index.php?GUI%A4%CE%A5%B5%A5%F3%A5%D7%A5%EB]を見て下さい。
GUIのサンプルの中に音声についてのサンプルがあります。
下記のページも役に立つ可能性はあるので、一応残しておきます。
* 音声の再生 [#ke48f0ee]
**はじめに [#zc93bb3d]
ここでは,音声ファイルを再生する方法について説明していますが,あまり詳しくは説明していません.~
「とりあえずBGMを流したい」「とりあえず効果音を付けてみたい」といった人用です.~
サンプルコードを参考にしながら進めていってください.
** 音声ファイルの再生:wav編 [#jccb581d]
まず,下記のプログラムをダウンロードしてください.
&ref(SoundTestWav.java,,,SoundTestWav.java ダウンロード);/[[ソースコードファイルを見る>http://yoslab.net/netprog/source/SoundTestWav.java]]
*** 説明 [#d40cb1b0]
このプログラムはwavファイルを再生するものです.
test.wavという名前のwavファイルをnetprog内において,プログラムをコンパイル,実行してみてください.
音声ファイルが再生されると思います(Ctrl+Cで停止できます).~
&color(red){注意))このプログラムでは音量の調整ができません.再生の際は音量に注意してください.};
wavファイルの再生にはAudioClipクラスを使用します.~
AudioClipクラスには再生と停止,連続再生の3つのメソッドがあります.~
目的に合わせて使ってみてください.~
|'''AudioClip'''.play()|1回だけ再生|
|'''AudioClip'''.stop()|停止|
|'''AudioClip'''.loop()|繰り返し再生|
再生確認済みのwavファイルを置いておきます.~
自分で用意したファイルが再生されなかったときなどの確認に使ってみてください.~
[[wavファイルをダウンロード>https://drive.google.com/file/d/0B20snaQEl1RcM05NZ21PbkUzMGM/view?usp=sharing]]
*** 課題1・音声の再生,停止の操作をする [#a11c52ff]
ボタンで音声の再生と停止の操作が出来るようにしましょう.
まず,下記のプログラムをダウンロードしてください.
&ref(SoundPlayerWav.java,,,SoundPlayerWav.java ダウンロード);/[[ソースコードファイルを見る>http://yoslab.net/netprog/source/SoundPlayerWav.java]]
ダウンロードした段階では,再生ボタンと停止ボタンが表示されるだけのプログラムになっていると思います.
このボタンから音源の再生と停止を操作するための処理を追加していきます.
ボタンにあわせた操作については演習1-2や演習2-2を参考にしてみてください.
*** 課題2・ボタンに効果音をつける [#k3a2817c]
ボタンを押したときに,ボタンに対応した効果音が鳴るようにしてみましょう.
wav形式の効果音のフリー素材はネット上にたくさんあります.
自作できたら一番良いですが,ネット上にあるフリー素材をダウンロードしてもOKです.
課題に取り組んでみてください.
** オマケ:mp3ファイルの再生 [#sef2e0ee]
Javaはデフォルトではmp3ファイルを再生することはできません.~
mp3ファイルを再生する方法について説明します.~
今回はjavazoomにあるJLayerというライブラリを使用します.~
以下のリンクから最新のバージョンをダウンロードしてください.~
[[JLayerのダウンロード:http://www.javazoom.net/javalayer/sources.html]]
ダウンロードしたzipファイルを解凍して,classesフォルダ内のjavazoomフォルダをnetprogフォルダにおいてください.~
mp3の再生だけであれば,これだけで準備OKです.
mp3の再生には,AudioClipクラスではなく,Playerクラスを使用します.
下記のプログラムは,mp3を再生するものです.参考にしてみてください.
&ref(SoundTestMp3.java,,,SoundTestMp3.java ダウンロード);/[[ソースコードファイルを見る>http://yoslab.net/netprog/source/SoundTestMp3.java]]