もくじ
→https://qiita.com/tera1707/items/4fda73d86eded283ec4f
やりたいこと
WPF(.net Framework4.7)のアプリで、mp3のサウンドファイルを鳴らしたい。
やりかた
Windows Media Player
を使用する。
具体的には、C:\Windows\System32\wmp.dll
を使用する。
手順
下記のようにする。
- プロジェクトの参照に、
C:\Windows\System32\wmp.dll
を追加する。 - 使用するcsの先頭に
using WMPLib;
を追記する。 - 下記のサンプルのように、WindowsMediaPlayerクラスを使用し音声再生を実装する。
サンプル
usingSystem.Windows;usingWMPLib;namespaceWpfApp38{publicpartialclassMainWindow:Window{// メディアプレーヤークラスのインスタンスを作成するWindowsMediaPlayer_mediaPlayer=newWindowsMediaPlayer();publicMainWindow()=>InitializeComponent();privatevoidButton_Click(objectsender,RoutedEventArgse){_mediaPlayer.URL=@"sound.wav";// mp3も使用可能_mediaPlayer.controls.play();}}}
※今回試した時は、音声ファイルはプロジェクトの直下に「追加」して、「出力ディレクトリにコピー」の設定を「常にコピー」にして使用した。
そうすれば、ビルドするとexeと同じところにコピーされて、ファイル名だけ指定する形で使用できた。
他のやり方
音を鳴らす方法は、他のやり方もある様子。こちらのページがとても分かりやすい。
https://qiita.com/Oichan/items/b93e8e8ba8211b925d0a
できれば、
.NETの標準で用意されたものでやりたいので、上記記事にある「System.Media.SoundPlayer」でやりたい。いずれ試す。(mp3が使えないようだが...)
参照
第01回 プロジェクト作成と曲再生
https://www.usefullcode.net/2016/03/01_createproject.html
C#でサウンドを鳴らす
いくつかの方法が説明されている。
https://qiita.com/Oichan/items/b93e8e8ba8211b925d0a