标签类目:jni

已阅读:43,659 次
Android视频渲染: YUV转RGB
ian | Android,其他 | 2012/04/25


Android SDK为Camera预览提供了一个Demo,这个Demo的大致流程是初始化一个Camera和一个SurfaceView,SurfaceView被创建之后可以获取到一个SurfaceHolder的实例,将这个SurfaceHolder传递给Camera,这样Camera就会自动的将捕获到的视频数据渲染到SurfaceView上面,这也就是Camera预览的效果。当然更多的时候我们需要获取到Camera的实时视频数据来自己进行预处理并渲染,Camera也提供了这个接口,用法如下: mCamera.setPreviewCallback(new PreviewCallback......
Read more

已阅读:22,645 次
图像滤镜处理算法:柔化、光照、放大镜、哈哈镜
ian | Android,其他 | 2012/04/19


本文的最后提供了完整的Android工程下载,图像处理部分主要采用JNI,算法使用C实现,因为在开发过程中发现使用Java来进行数值处理时,速度绝对是不堪忍受的。现在代码中依然保留了一些Java的滤镜算法接口,即滤镜名称如果分为形如"浮雕"和"浮雕J"的,则前者使用Java实现,后者是C实现,各位可以比较一下两种实现的性能,也能对JNI的高性能有一个直观的认识。 程序提供了一些简单的滤镜效果,运行效果如下: ......
Read more

已阅读:10,929 次
Android如何使用NDK进行JNI开发
ian | Android | 2012/04/10


所谓JNI就是Java Native Interface的缩写,即JAVA本地调用,它允许Java代码和其他语言写的代码进行交互,这里主要指的是C/C++这样的Native Code。 虽然Android平台下提供的Java的SDK一般情况下能满足开发者的需求,但是由于Java语言的效率问题,在我们漫长的开发过程中,总是会遇到一两个性能瓶颈的,这个时候我们就需要考虑使用NDK了。NDK是Android提供的一套工具,帮助我们编写、编译C代码并在Java中调用。可以这么说,不懂......
Read more

已阅读:12,828 次
Android NDK开发环境搭建
ian | Android | 2012/04/07


Android应用运行在JAVA虚拟机上,因此开发环境一般使用JAVA,但是对于有些场景,比如访问底层设备、驱动开发、或者对性能要求很敏感时,我们就必须使用NDK了。NDK开发语言是C,通过NDK提供的编译工具,将我们的Native Code编译成so动态链接库,这样Java就可以通过加载so的方式来调用Native Code,性能的提升可不是一星半点。 下面简单介绍一下Windows下怎么配置NDK开发环境。这里假设大家已经安装好了Android的开发环境,......
Read more