2014-10-11 148 views
0

我試圖使用NAudio和MS Media Foundation編解碼器播放.flac音樂文件。但是,每當歌曲結束或搜索附近結束它會引發異常。有沒有辦法如何解決它或任何其他方式如何播放flacs?使用MediaFoundationReader時發生COMException

拋出的異常

System.Runtime.InteropServices.COMException(0xC00D36E3):從HRESULT異常:0xC00D36E3

代碼加載和播放音樂

readerStream = new MediaFoundationReader(FilePath); 
waveChannel = new WaveChannel32(readerStream); 
readerStream = new DSPEffectStream(waveChannel, m_eqEffect); 
postVolumeMeter = new MeteringSampleProvider(readerStream.ToSampleProvider()); 
waveOutDevice.Init(postVolumeMeter, true); 

waveOutDevice.Play(); 

我發現有些人有類似的問題,但沒有答案如何解決它。 Discussion link

回答

1

0xC00D36E3是MF_E_BAD_STARTUP_VERSION "You are calling MFStartup with the wrong MF_VERSION. Mismatched bits?"。這反過來means

如果MFStartup返回MF_E_BAD_STARTUP_VERSION,這意味着你的應用程序是使用一個版本,不支持你的系統相匹配的媒體基金會的dll媒體基金會頭的編譯。

該問題應該與Media Foundation初始化有關,而且你不明確這麼做,那麼NAudio會以某種方式不正確地(或者不太敏捷)過早地執行。

相關問題