unity播放加密的音訊檔案
首先說一下起因,我這裡有需求讀書軟體要求播放加密的音訊檔案,所以一般的元件和www載入都不能使用,於是我需要一種新的方案來載入音訊檔案。於是我找到了一個開源的音訊處理類庫NAudio來處理MP3和wav的音訊檔案,同時我還需要使用到ogg的音訊格式,後面還找到了NVorbis,我這裡也是初步探索,順便發篇部落格分享一下。
1.NAudio的連結:http://naudio.codeplex.com/,裡面有相關的介紹和詳細的文件,對unity3d還有一個外掛,https://www.assetstore.unity3d.com/en/#!/content/32034 ,我並沒有機會下載下來學習一下,只是簡單使用了NAudio的幾個介面,後面有興趣的可以和我一起研究一下NAudio。
2.NVorbis的連結:
3.從NAudio和NVorbis下載釋出的dll檔案放在unity中,NVorbis還需要匯入NVorbis.NAudioSupport.dll後面需要使用NAudio來播放ogg,記得將unity的Api Compatibility Level 改為.NET 2.0。
4.在unity3d中播放MP3,文件連結http://naudio.codeplex.com/wikipage?title=MP3
4.1 使用名稱空間
1 2 |
using NAudio;
using NAudio.Wave;
|
1 2 |
IWavePlayer
waveOutDevice;
AudioFileReader
audioFileReader;
|
1 2 3 4 5 6 |
void Start
(){
waveOutDevice
= new WaveOut();
audioFileReader
= new AudioFileReader( @"D:\影音檔案\音樂\BEYOND\黃家駒
- 總有愛.mp3" );
waveOutDevice.Init(audioFileReader);
waveOutDevice.Play();
}
|
1 2 3 4 5 6 7 8 9 10 11 12 |
void OnApplicationQuit()
{
if (waveOutDevice
!= null )
{
waveOutDevice.Stop();
}
if (waveOutDevice
!= null )
{
waveOutDevice.Dispose();
waveOutDevice
= null
|