C#實(shí)現(xiàn)用于操作wav聲音文件的類實(shí)例
更新時(shí)間:2015年03月30日 12:34:46 作者:feige
這篇文章主要介紹了C#實(shí)現(xiàn)用于操作wav聲音文件的類,實(shí)例分析了C#操作wav音頻文件的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
本文實(shí)例講述了C#實(shí)現(xiàn)用于操作wav聲音文件的類。分享給大家供大家參考。具體如下:
有了這個(gè)C#類,我們可以很輕易的調(diào)用本地wav文件進(jìn)行同步播放或者異步播放,大大簡化了對wav文件的操作過程,如果你需要在項(xiàng)目中調(diào)用wav文件進(jìn)行聲音播放,可以使用這個(gè)C#類。
using System;
using System.Media;
namespace DotNet.Utilities
{
/// <summary>
/// 處理多媒體的公共類
/// </summary>
public class MediaHandler
{
#region 同步播放wav文件
/// <summary>
/// 以同步方式播放wav文件
/// </summary>
/// <param name="sp">SoundPlayer對象</param>
/// <param name="wavFilePath">wav文件的路徑</param>
public static void SyncPlayWAV(SoundPlayer sp, string wavFilePath)
{
try
{
//設(shè)置wav文件的路徑
sp.SoundLocation = wavFilePath;
//使用異步方式加載wav文件
sp.LoadAsync();
//使用同步方式播放wav文件
if (sp.IsLoadCompleted)
{
sp.PlaySync();
}
}
catch (Exception ex)
{
string errStr = ex.Message;
throw ex;
}
}
/// <summary>
/// 以同步方式播放wav文件
/// </summary>
/// <param name="wavFilePath">wav文件的路徑</param>
public static void SyncPlayWAV(string wavFilePath)
{
try
{
//創(chuàng)建一個(gè)SoundPlaryer類,并設(shè)置wav文件的路徑
SoundPlayer sp = new SoundPlayer(wavFilePath);
//使用異步方式加載wav文件
sp.LoadAsync();
//使用同步方式播放wav文件
if (sp.IsLoadCompleted)
{
sp.PlaySync();
}
}
catch (Exception ex)
{
string errStr = ex.Message;
throw ex;
}
}
#endregion
#region 異步播放wav文件
/// <summary>
/// 以異步方式播放wav文件
/// </summary>
/// <param name="sp">SoundPlayer對象</param>
/// <param name="wavFilePath">wav文件的路徑</param>
public static void ASyncPlayWAV(SoundPlayer sp, string wavFilePath)
{
try
{
//設(shè)置wav文件的路徑
sp.SoundLocation = wavFilePath;
//使用異步方式加載wav文件
sp.LoadAsync();
//使用異步方式播放wav文件
if (sp.IsLoadCompleted)
{
sp.Play();
}
}
catch (Exception ex)
{
string errStr = ex.Message;
throw ex;
}
}
/// <summary>
/// 以異步方式播放wav文件
/// </summary>
/// <param name="wavFilePath">wav文件的路徑</param>
public static void ASyncPlayWAV(string wavFilePath)
{
try
{
//創(chuàng)建一個(gè)SoundPlaryer類,并設(shè)置wav文件的路徑
SoundPlayer sp = new SoundPlayer(wavFilePath);
//使用異步方式加載wav文件
sp.LoadAsync();
//使用異步方式播放wav文件
if (sp.IsLoadCompleted)
{
sp.Play();
}
}
catch (Exception ex)
{
string errStr = ex.Message;
throw ex;
}
}
#endregion
#region 停止播放wav文件
/// <summary>
///
/// </summary>
/// <param name="sp">SoundPlayer對象</param>
public static void StopWAV(SoundPlayer sp)
{
sp.Stop();
}
#endregion
}
}
希望本文所述對大家的C#程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:
- c# 播放聲音的四種方法
- 教你如何用C#制作文字轉(zhuǎn)換成聲音程序
- C#實(shí)現(xiàn)通過winmm.dll控制聲音播放的方法
- C# winform中窗口關(guān)閉按鈕的隱藏與禁用詳解
- C# WinForm-Timer控件的使用
- C#用Topshelf創(chuàng)建Windows服務(wù)的步驟分享
- C# Winform中如何繪制動(dòng)畫示例詳解
- C# Winform調(diào)用百度接口實(shí)現(xiàn)人臉識(shí)別教程(附源碼)
- C# Winform程序?qū)崿F(xiàn)防止多開的方法總結(jié)【親測】
- C#調(diào)用Win32的API函數(shù)--User32.dll
- C# Winfrom實(shí)現(xiàn)Skyline畫直線功能的示例代碼
- c# 通過WinAPI播放PCM聲音
相關(guān)文章
winform創(chuàng)建不規(guī)則窗體的方法
這篇文章主要介紹了winform創(chuàng)建不規(guī)則窗體的方法,涉及C#窗體創(chuàng)建的相關(guān)參數(shù)設(shè)置技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-09-09
C#實(shí)現(xiàn)為一張大尺寸圖片創(chuàng)建縮略圖的方法
這篇文章主要介紹了C#實(shí)現(xiàn)為一張大尺寸圖片創(chuàng)建縮略圖的方法,涉及C#創(chuàng)建縮略圖的相關(guān)圖片操作技巧,需要的朋友可以參考下2015-06-06
c#動(dòng)態(tài)編譯執(zhí)行對象方法示例 運(yùn)用映射機(jī)制創(chuàng)建對象
本示例核心技術(shù)是運(yùn)用.NET動(dòng)態(tài)編譯技術(shù)+.NET映射技術(shù),把一個(gè)代碼塊中的代碼,動(dòng)態(tài)編譯成程序集后,在運(yùn)用映射機(jī)制,創(chuàng)建對象示例,調(diào)用對象方法2014-01-01

