我正在使用NAudio將mp3轉換爲WAV,使用WaveFormatConversionStream.CreatePcmStream()
方法。NAudio - 控制哪個ACM編解碼器使用
據我所知,這要求操作系統瞭解可用的ACM編解碼器,然後選擇一個。
如何控制使用哪些ACM或爲其設置優先級?在Windows操作系統或NAudio中有沒有這個選項?
目前它似乎使用Windows媒體播放器附帶的那些,並且它們在某些播放/轉換在其他地方罰款的MP3失敗。
基本上我想告訴它使用一個體面的編解碼器。
謝謝馬克,我會研究你的建議。錯誤是'System.FormatException:NAudio.Wave.Mp3Frame..ctor(流輸入)在NAudio.Wave.Mp3FileReader..ctor(Stream inputStream)不是一個可識別的MP3塊',但是mp3會在Foobar2000中正常播放例如,所以我認爲它一定是編解碼器?大約有30個mp3會發生這種情況,但我無法看到這種模式。 – codeulike 2011-05-23 22:29:28
在這種情況下,這不是編解碼器的錯誤。你使用的是哪種版本的NAudio?我已經對Mp3FileReader進行了一些更新,以更好地容納格式不正確的塊。如果您可以提交一個不適合我的示例MP3,我可以將它用作NAudio測試的一部分(顯然我不會公開發布它)。 – 2011-05-23 22:33:44
我在1.3.8.0。好吧,我會給你發一些mp3 ... – codeulike 2011-05-23 22:40:04