我需要在iOS上播放自定義格式的視頻,並自行完成所有渲染。如何在沒有AVPlayer或電影播放器的iOS上播放視頻
我目前的選擇是OpenGL ES,但它從分析結果(主要是在glTexImage2D)中花費太多的CPU。
我的需求有更快的替代方案嗎?
謝謝!
我需要在iOS上播放自定義格式的視頻,並自行完成所有渲染。如何在沒有AVPlayer或電影播放器的iOS上播放視頻
我目前的選擇是OpenGL ES,但它從分析結果(主要是在glTexImage2D)中花費太多的CPU。
我的需求有更快的替代方案嗎?
謝謝!
AVPlayer將會很快,因爲代碼已經過優化,可以使用GPU加速和llvm優化進行解壓縮。如果你想使用OpenGL ES,你最終可能會使用EAGLContext,創建紋理着色器和做其他低級優化。我們的應用程序可以在非常低的CPU負載下以高幀率在視頻之上覆合多個層。
但AVPlayer無法處理我的視頻壓縮爲的格式。它認爲這個課程僅用於標準文件或流媒體播放 –
我想你可以使用egl的openmax應用程序層集成,它將通過egl將視頻流式傳輸到opengl es 2.0,並且可以存儲或顯示到opengl es屏幕。可以幫助你,如果我可以有片段:)
您是否在使用'glTexImage2D()'來創建紋理,或者僅針對每個幀? – genpfault
我懷疑通過OpenGL ES在屏幕上顯示視頻是否是您的限制因素。在視頻處理應用程序中,我可以從iPhone 4相機捕捉並以簡單的60 FPS將其反饋回屏幕:http://www.sunsetlakesoftware.com/2010/10/22/gpu-accelerated-video -processing-mac-and-ios。你的瓶頸必須在其他地方,最有可能在你的解碼程序中。 –
@genpfault我對每一幀都使用glTexImage2D,因爲這是我知道的將圖像繪製到屏幕上的方式。我是OpengGL的新手 –