【C#】音楽ファイル(.wav)ファイルを再生する方法

C#で音楽ファイル(.wav)ファイルを再生する

C#で音楽ファイルを再生するにはSoundPlayerクラスのメソッドを使用します。SoundPlayerクラスを使用するにはまず、using文の宣言が必要になります。

using System.Media;

SoundPlayerクラスですが、インスタンス生成時に音楽ファイルがある場所(パス)を指定する方法、と音楽ファイルのリソースを指定する方法があります。その二つの方法についてかいていきます。その前にSoundPlayerクラスのメソッドを見ていこうと思います。

SoundPlayerクラスのメソッド

Play() 音声を再生。再生し終わらなくても他の処理ができる
PlayLooping() 音声をループ再生。再生し終わらなくても他の処理ができる
PlaySync() 音声を再生。再生し終わらないと他の処理ができない。
Stop() 再生を止める。

以上がSoundPlayerクラスのメソッドになります。ですのでまずはSoundPlayerクラスのインスタンスを作ってからメソッドを使用することになります。

SoundPlayer plyaer = new SoundPlayer(@”C:\users\”);//インスタンスを生成

SoundPlayerクラス – 音楽ファイルのパスを指定する方法

SoundPlayerクラスのインスタンス生成時に音楽ファイルのパスを指定する書き方は以下になります。

SoundPlayer plyaer = new SoundPlayer(@”C:\users\”);
new SoudnPlayer() コンストラクターに音楽ファイルがある場所(パス)を指定しています。これでインスタンスを作成し、メソッドを使用します。
plyaer.Play();

音楽ファイルのリソースを指定する方法

音楽ファイルのリソースを指定するには以下の手順をふみます

  1. VisualStudioのソリューションエクスプローラーでPropertiesをクリックする
  2. リソースタブを選択して、リソースの追加をクリック⇒「既存のファイルを追加」で好きなな音楽をファイルを追加
  3. SoundPlayerクラスのインスタンス生成時にリソースを指定

まずはVisualStudioでリソースを追加します。Propertiesをクリックして、リソースタブにいきましょう。
visual studio resource
「リソースの追加」は画像に示している部分をクリックします。この画像ではすでにリソースを追加済みの状態です。

リソースを指定する構文は以下になります。例えば画像のド.wavファイルを指定したいのだったら、

Properties.Resources.ド
と書きます。しかしこれだけではリソースを指定するだけですから、音楽ファイルを再生するためにはインスタンスを生成します。以下のように書きます。

SoundPlayer player = new SoundPlayer(Properties.Resouces.ド);
player.Play();

これで完了ですね。

まとめ

C#で音楽ファイルを再生する方法はSoundPlayerクラスで音楽ファイルのパスを指定するか、音楽ファイルのリソースからインスタンスを作成する方法の2つです。おそらくですがアプリを配布したりする際はリソースを使用するケースのほうが多いのではないでしょうか。ですのでリソースを使う方法を知っておくことは重要かと思います。