當前,我正在使用OpenGL ES 2.0在GLSurfaceView上播放視頻。現在,我正在尋找一種方法,將使用MediaCodec將表面視圖上播放的視頻編碼成MP4視頻。使用Android上的MediaCodec編碼視頻
因此,我找到了一個大案例,它似乎完美地解決了我的問題(http://bigflake.com/mediacodec/EncodeAndMuxTest.java.txt)。
但是,我似乎太愚蠢,無法設置輸入源。這個例子使用mEncoder.createInputSurface()創建輸入源,但是我有一個GLSurfaceView實際播放視頻。那麼如何將我自己的曲面設置爲編碼器的輸入源?
可以在Grafika(https://github.com/google/grafika)中找到一些其他示例。有了GLSurfaceView,你不能控制EGL上下文,所以你可以共享它(很笨拙;例如參見「show + capture camera」)或者只是使用普通的SurfaceView並自己管理EGL(這是大多數例子Grafika做)。 – fadden