簡體   English   中英

Android - OpenGL ES 2 - 在頂點上顯示視頻(SurfaceView)

[英]Android - OpenGL ES 2 - Display video on vertices (SurfaceView)

現在我使用SurfaceView通過OpenGL ES 2.0在頂點上顯示圖像。 我不能使用GLSurfaceView,因為我想管理自己的OpenGL上下文。 我還使用屏幕外的Surface用MediaCodec編碼我的OpenGL場景的視頻。

圖像的加載是用Java編寫的,但是繪制調用是用C ++(NDK)完成的。

下一步是在頂點上顯示視頻(來自文件)。 所以我想我需要加載視頻的每一幀(解碼),並像圖像一樣(將圖像放在頂點上)。 但我不知道如何檢索視頻文件的幀,如Bitmap或GLint? 這是可能的還是可能有不同的解決方案? 先感謝您 !

您可以使用SurfaceTexture SurfaceTexture的目的是將任何發送到其Surface的內容並使其作為GLES紋理使用。

您可以在Grafika的 “相機紋理”活動中找到在GLES矩形上顯示實時相機Feed的示例。

您沒有說明解碼視頻的來源是什么,但只要它可以將其輸出發送到Surface,整個過程就相當高效 - 幀由句柄傳遞,而不是復制。 另一種方法是解碼視頻幀,必要時將YUV轉換為RGB,並使用glTexImage2D()上傳每個幀。 那會慢得多。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM