C#で音楽を再生する一番簡単な方法
C#でWAVやMP3等の音楽を再生する方法としてはDOBON.NETのサイトに解説のあるMCIやWMPコントロールを使うのが一般的ですが、もっと簡単な方法があります。
それはMicrosoftが出している入門用言語Small Basicのライブラリを使う方法です。
Small Basicは.NET Framework上で動くように作られているので、そのライブラリはC#からも呼び出せます。
使い方ですが、まずは普通にC#のプロジェクトを作成し、参照設定にSmallBasicLibrary.dllを追加します。
Small Basicを規定でインストールした場合、DLLは
C:\Program Files\Microsoft\Small Basic\SmallBasicLibrary.dll
にあるはずです。実行時に必要なのはこのDLLのみで、実行環境にSmall Basicをインストールする必要はありません。
あとは、以下のサンプルコードとSmall Basicのsoundオブジェクトリファレンスを見れば特に説明は不要と思われます。
MP3再生以外にも懐かしのMMLや準備済みのチャイム音等があって本当にお手軽です。
なおサンプルコード中のTextWindow.WriteLine()はSmall Basic版のConsole.WriteLine()のことです。
using Microsoft.SmallBasic.Library; namespace SmallBasicSoundSample { class Program { static void Main(string[] args) { TextWindow.WriteLine("PlayBellRingAndWait"); Sound.PlayBellRingAndWait(); TextWindow.WriteLine("PlayChimeAndWait"); Sound.PlayChimeAndWait(); TextWindow.WriteLine("PlayChimesAndWait"); Sound.PlayChimesAndWait(); TextWindow.WriteLine("PlayClickAndWait"); Sound.PlayClickAndWait(); TextWindow.WriteLine("PlayMusic"); Sound.PlayMusic("O5L4 CCGG AAG2 FFEE DDC2"); TextWindow.WriteLine("PlayAndWait(wav)"); Sound.PlayAndWait(@"C:\Windows\Media\tada.wav"); TextWindow.WriteLine("PlayAndWait(mp3)"); Sound.PlayAndWait(@"C:\Users\Public\Music\Sample Music\Maid with the Flaxen Hair.mp3"); } } }