我主要使用Qt庫進行編碼,它足夠滿足我的需求。然而,我發現如果我想播放視頻文件,那麼跨平臺視頻播放沒有好的選擇。 Phonon模塊似乎無法在我的機器上工作,我不確定它是否支持主要平臺(Windows,OSX,Linux)。C++的任何跨平臺視頻播放庫?
簡單的視頻播放是否是他們的輕量級選擇?只要可播放的跨平臺,我可以將視頻更改爲任何格式。
我主要使用Qt庫進行編碼,它足夠滿足我的需求。然而,我發現如果我想播放視頻文件,那麼跨平臺視頻播放沒有好的選擇。 Phonon模塊似乎無法在我的機器上工作,我不確定它是否支持主要平臺(Windows,OSX,Linux)。C++的任何跨平臺視頻播放庫?
簡單的視頻播放是否是他們的輕量級選擇?只要可播放的跨平臺,我可以將視頻更改爲任何格式。
我發現Theora playback library是非常有用的,只取決於原始的theora庫。 Here是一個簡單的Qt項目,它封裝了播放(只有視頻)Theora媒體所需的一切。你只需輸入'qmake',你就可以走了。
根據文檔顯示Phonon需要第三方庫才能正常工作。你有沒有爲你所在的平臺安裝適當的後端?
後端
多媒體功能不是由聲子本身實現,但通過 後端 - 通常也被稱爲發動機。這包括連接到,管理和驅動底層硬件或 中間技術的 。對於程序員來說,這意味着媒體節點(例如媒體對象,處理器和接收器)由後端生成 。此外,它負責構建連接節點的圖形,即 。 Qt的後端使用媒體系統 Windows上的DirectShow(需要DirectX),Mac上的QuickTime以及Linux上的GStreamer。在不同的 平臺上提供的功能取決於這些基礎系統,並且可能會有所不同,例如在支持的媒體格式中。
後端暴露 有關底層系統的信息。它可以指示支持哪種媒體 格式,例如,AVI,mp3或OGG。
用戶通常可以將支持新格式和過濾器的 添加到底層系統,對於 實例,安裝DivX codex。因此,我們不能給出關於哪些格式可用於Qt後端的確切概述。
QtWebKit 2.2支持HTML5媒體。它應該(至少最終)是相當跨平臺的,但可能與Phonon有相同的後端問題。但Q(Graphics)WebView
與<video>
元素可以做一個真正的即玩即忘解決方案的伎倆。
你在不同的平臺上試過了嗎?我會試一試,看看會發生什麼。我的另一個選擇是'libvlc',我找到了一個'VLC-Qt'的庫,但沒有嘗試過。 – ennetws
我正在考慮將libVLC作爲一個選項。有人已經做了wrapper,但它只支持Windows和Linux。
'wrapper'庫恰好是GPL代碼......小心如果您打算將這個包裝用於商業用途,或者您不打算在GPL下發布代碼時,您選擇按照GPL要求分發它。 .. – user1055604
+1考慮libvlc ... – user1055604
我在我的另一臺機器上試過Phonon,它直接工作。我認爲破碎的機器有音頻設備的問題。不過,我想我會在更多的設備上嘗試一下,看看。 – ennetws