我在一個主要軟件供應商的應用程序中看到一個名爲「DivXDecoder.dll」的dll,它吸引我(a)它意味着存在一個易於使用的divx庫,並且(b)我更喜歡在我工作的產品中播放divx壓縮的電影。DivX解碼器庫?
DivX項目本身似乎專注於爲最終用戶製作編解碼器和工具。有沒有任何C/C++友好的項目,可以在Win32或Cocoa應用程序中播放divx內容?
我在一個主要軟件供應商的應用程序中看到一個名爲「DivXDecoder.dll」的dll,它吸引我(a)它意味着存在一個易於使用的divx庫,並且(b)我更喜歡在我工作的產品中播放divx壓縮的電影。DivX解碼器庫?
DivX項目本身似乎專注於爲最終用戶製作編解碼器和工具。有沒有任何C/C++友好的項目,可以在Win32或Cocoa應用程序中播放divx內容?
看看mplayer來源 - 它使用ffmpeg庫處理來自多種格式的解碼。
DivX是符合MPEG-4第2部分的壓縮器。XviD和某些版本的Windows Media也是標準的實現。因此,任何可以解壓縮MPEG-4 Part 2的應該能夠處理使用DivX壓縮的東西。
至於實際的解壓庫,我推薦libavcodec。它被廣泛使用(=良好的支持),跨平臺和開源(LGPL,因此可用於商業應用程序)。它的C綁定也很容易使用。它可以打開並播放許多不同的編解碼器(和libavformat,處理許多不同的包裝,即avi,mkv等)。
如果只是Windows,使用操作系統提供的Windows視頻可能是一個更好的選擇,因爲您不需要隨應用程序一起發佈MPEG,因此避免了潛在的許可證問題。但是請注意,這需要用戶安裝某些編解碼器。在Win7上(和Vista我認爲)播放DivX/XviD所需的MPEG編解碼器默認安裝,但它們不在XP上...
不要浪費時間嘗試在可可中實現DivX播放應用。使用QTKit。如果有人想在您的應用中播放DivX內容,他們將安裝DivX QuickTime插件。