C# 如何撥放 Wave 音效檔
C# 如何撥放 Wave 音效檔
方法 1:
直接使用 System.Media.SoundPlayer 類別
System.Media.SoundPlayer sp = new System.Media.SoundPlayer();
sp.SoundLocation = @"C:\Wave音效檔\DoReMe.wav";
sp.Play(); // 撥放
// sp.Stop(); // 停止
================================================================
方法 2:
呼叫 VB.Net 的 My.Computer.Audio.Play 類別
注意 : 請先加入參考 "Microsoft.VisualBasic"
using Microsoft.VisualBasic;
using Microsoft.VisualBasic.Devices;
// 設定播放模式
AudioPlayMode intMode = 0; // AudioPlayMode 列舉型別有底下幾種
// 在背景中播放聲音。呼叫程式碼會繼續執行。
intMode = AudioPlayMode.WaitToComplete; // 一次播放
// 在背景中播放聲音,直到呼叫My.Computer.Audio.Stop 方法為止。
intMode = AudioPlayMode.Background; // 背景播放
// 播放聲音,並等候它完成後,再繼續呼叫程式碼。
intMode = AudioPlayMode.BackgroundLoop; // 重複播放
// PS : WaitToComplete / Background / BackgroundLoop 選擇其一即可
// 呼叫My.Computer.Audio.Play 方法播放Wave 檔
new Computer().Audio.Play(@"C:\Wave音效檔\DoReMe.wav", intMode);
// new Computer().Audio.Stop(); // 停止播放
================================================================
方法 3:
呼叫 VB.Net 的 My.Computer.Clipboard.SetAudio , My.Computer.Clipboard.GetAudioStream
及 My.Computer.Audio.Play 類別等進行 Wave 音效檔播放
注意 : 請先加入參考 "Microsoft.VisualBasic"
using System.IO;
using Microsoft.VisualBasic;
using Microsoft.VisualBasic.Devices;
// 使用FileStream 類別將音效檔開啟讀成AudioStream
FileStream fs = new FileStream(@"C:\Wave音效檔\DoReMe.wav", FileMode.Open);
// 將WaveAudio 格式資料加至剪貼簿。
new Computer().Clipboard.SetAudio(fs);
// 建立My.Computer 物件類別
Computer cpt = new Computer();
// 指出剪貼簿上是否有WaveAudio 格式的資料。
if (cpt.Clipboard.ContainsAudio() == true)
{
// 呼叫My.Computer.Audio.Play 方法播放Wave 檔
cpt.Audio.Play(cpt.Clipboard.GetAudioStream(), AudioPlayMode.Background);
// cpt.Clipboard.GetAudioStream() 從剪貼簿擷取音效串流。
// AudioPlayMode.Background 背景播放
// cpt.Audio.Stop(); // 停止播放
}