YUV420数据可以直接在android的surface上显示吗?还是需要将YUV420转换成RGB才能显示呢?如果能在surface上直接显示YUV420数据,请问是怎么操作的呢?我是在JNI层获取到了YUV420数据,现在不知道怎么处理!
在此先谢谢各位大侠,帮帮我吧!

解决方案 »

  1.   

    清参考opencore和STAFEFright中输出视频的相关代码
      

  2.   

    不可以。 用surface显示yuv的video数据,基本上要使用pushbuffer了,这个因为surface接口不允许给其他用户这个权限,基本上是没得用的。如果是在源码上开发,做到系统中,应该还是可以的。或者, 参考stageFright中的softewareRender, 将yuv转换成rgb输出到surface上。总之,这些基本上都要源码编译, SDK+NDK不够的。