a483210
a483210
我说怎么报错找不到包,原来是私人仓库!
用[《Android 关于美颜/滤镜 利用PBO从OpenGl录制视频》](https://www.jianshu.com/p/3bc4db687546)
谢谢您的回答,我用glReadPixels测试过一些机型,在索尼三星等机子上效率非常高,但是在国产机子上效率就非常差,这是不是因为国产的接口优化差呢? 还有从native上gles动刀大概怎么做?我不太理解您的意思。
@notedit 事实上我查找过EGLImageKHR,但是我找不到GraphicBuffer.h,我看他好像在android的源码里面,我在ndk里面引用不到,然后有人说从源码里提取,事实上我觉得这不太靠谱。所以我最终放弃了EGLImageKHR。 http://stackoverflow.com/questions/23261662/how-to-use-graphicbuffer-in-android-ndk 例子 您有什么好方法可以解决该问题吗? @begeekmyfriend 我测试过https://github.com/wuhaoyu1990/MagicCamera 项目采用low的情况下大部分机子都能保持流畅,如果实在没办法我只能用grafika的方法了。
它通过MediaCodec `format.setInteger(MediaFormat.KEY_COLOR_FORMAT,MediaCodecInfo.CodecCapabilities.COLOR_FormatSurface)` 将surface里的数据直接编码 https://github.com/wuhaoyu1990/MagicCamera/blob/master/Project-AndroidStudio/magicfilter/src/main/java/com/seu/magicfilter/encoder/video/VideoEncoderCore.java 详细做法
@notedit 您知道使用EGLImageKHR 具体应该怎么做吗?我对这里不是十分了解
@notedit 额,能教下我吗?拜托了!
谢谢2位,我现在已经在用Mediacodec 写了,除了做法难看点,o(╯□╰)o
我知道可以直接编码,但是我不知道怎么控制fps,设置成15帧它依然会编码出30帧的h264。 我之前google过好像是fps会根据输入源来确定,所以我才会再次解码,然后自己去过滤多余的帧
我试过了,的确可以,但是如果我修改为低于24帧,就会感到明显的卡顿,所以这里我非常纠结