2008-09-27 69 views
8

你知道任何.NET庫可以解碼幾種類型的音頻文件嗎?理想情況下,它應該是平臺不可知的,所以它可以與.NET和Mono一起使用 - 在Windows和* NIX上。是否有用於通用音頻文件解碼的.NET庫?

我已經摺磨谷歌搜索符合我的需求的圖書館,但不幸的是我找不到任何東西。因此,在爲GStreamer和朋友編寫大量封裝類之前,我想我可以在這裏提問。 :)

支持的音頻文件應該是(至少)

  • MP3,
  • 的Ogg Vorbis和
  • FLAC(可選)。

作爲應用程序,我需要這只是爲了好玩,圖書館應該是開源的 - 或者至少免費。此外,向用戶顯示的嘮叨屏幕可能是不好或不切實際的,因爲我打算將其放入服務過程中。

我需要使用這個庫/這些庫來解碼音頻文件並將一個byte []傳遞給我的libOFA包裝器,以便我可以爲它生成MusicDNS指紋。我的實驗應用程序很可能在基於Linux的服務器上運行。

+0

似乎你已經找到了Alvas.Audio(每嘮叨屏幕)。我真的很喜歡它,但有你已經注意到的缺點:) – 2008-09-27 15:53:27

+0

是的,我已經偶然發現了Alvas.Audio。如果是桌面應用程序,我不會真正關心免費版本中的nagscreen,因爲無論如何,這個庫文件看起來相當不錯,但我猜,帶有嘮叨屏幕的服務應用程序將無法正常工作。 :/ – hangy 2008-09-27 15:56:51

回答

3

ffmpeg圖書館和工具,可以轉換音頻和視頻格式。然後,加上FFmpeg.NET庫,您可以在.NET中進行編碼/解碼。您提到的所有格式都受支持。

0

如果您正在討論解碼文件以播放它們(即用於收聽),我建議您跳到Windows Media Player SDK中。

它可以播放安裝了編解碼器的任何東西,並且不需要花費任何費用。

http://msdn.microsoft.com/en-us/library/aa969732.aspx

如果你想要的東西更接近金屬(即學習),你也可以檢查出的Windows Media Format SDK。

http://msdn.microsoft.com/en-us/library/aa387410.aspx

+0

感謝您的建議,therealhoff!不幸的是,這在* NIX下很可能不起作用,因此與我的小實驗的環境不匹配。無論如何,我想這對於開發Windows桌面/服務器應用程序是一個很好的幫助。 :) – hangy 2008-09-27 15:52:43

1

FMOD Ex音響系統是遊戲開發商,開發多媒體,音響設計師,音樂家和音頻工程師革命性的全新音頻引擎。基於Firelight Technologies以前產品多年的經驗,FMOD Ex旨在推動遊戲音頻功能,同時使用最少的資源並保持完全可擴展性。

FMOD的非商業授權

如果你的產品不用於商業利益,不包括FMOD庫轉售,許可證或其他商業流通,然後用FMOD是免費的。是的,沒有許可費!

+0

令人印象深刻的功能列表,但正如我所看到的,FMOD是一個共享庫(.so),不能用作.NET程序集。 – hangy 2008-09-27 16:03:50

0

Alvas.Audio是我見過的唯一一款能夠做到這一點的產品(而且我只從這篇文章中瞭解到)。我認爲MP3的許可情況妨礙了.NET產品的開發。

相關問題