第 1 / 6 页123456


已阅读:217 次
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

已阅读:133 次
Android手势:单指拖动、双指缩放图片
ian | Android | 2012/04/23


手势其实是一个比较复杂的东西,首先是因为处理的时机。Android中触摸屏的事件其实只有ACTION_DOWN、ACTION_MOVE和ACTION_UP这三种,当然我们实现手势的逻辑时,一般会用到GestureDetector,它有许多封装好的事件回调接口,比如onFling、onLongPress、onScroll等,其实这些事件只是对上面那三个基本时间的包装而已:即三个基本事件按一定的序列出现,则会触发响应的GestureDetector中的事件,比如ACTION_DOWN 加上三个ACTION_MOVE再加上ACTIO......
Read more

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


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

已阅读:267 次
图像滤镜处理算法:灰度、黑白、底片、浮雕
ian | Android,其他 | 2012/04/16


最近手机端图片类的应用很火,比如刚被Facebook收购的Instagram,还有以前ipad上很有意思的一款应用Photo Booth。图片类应用,免不了对图片的处理,常见的滤镜效果,如灰度、底片、浮雕、柔化、光照等效果,更有意思的有各种如哈哈镜一般的变型特效,当然,也有其他的人物面部美化、图片合成等高级功能,这些功能组合在一起便能够提供十分新奇的体验。 下面介绍几种简单的图片处理算法,通过这几种算法,也......
Read more

已阅读:120 次
Android图片处理:颜色矩阵和坐标变换矩阵
ian | Android,其他 | 2012/04/13


UI开发过程中,我们经常需要对图片进行处理,常见的如贴图,复杂一些的还有位置变换、旋转、滤镜特效等,下面简单介绍一下关于图片处理的一些基本知识和原理。 1 基本概念 对于图片的处理,最常使用到的数据结构是Bitmap,它包含了一张图片所有的数据,这些数据数据包括那些内容呢?简单说来就是由点阵和颜色值组成的,所谓点阵就是一个在概念上是Width * Height的矩阵,每一个元素对应着图片的一个像素......
Read more

已阅读:112 次
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

已阅读:129 次
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

已阅读:118 次
Android 联系人和消息数据库常用操作
ian | Android | 2012/04/04


本文汇总整理Android系统中,一些常用的联系人和短信数据库常用操作。 1 查询所有会话记录 public static final Map loadSession(ContextWrapper cw) { Map mapSessionInfo = new HashMap(); if(cw == null) return mapSessionInfo; String projection = " b.thread_id,b.address from sms b group by b.address--"; Cursor cursor1 = cw.getContentResolver().query( Uri.parse("content://sms/"), new String[] { projection }, null, nu......
Read more

已阅读:177 次
PhoneGap优化解决方案(续)
ian | Android,HTML,新技术研讨 | 2012/03/21


以前写过一篇关于如何对PhoneGap进行优化的文章:PhoneGap优化解决方案 。那篇文章主要是作为一份工作总结,因此写得很粗糙,主要是偏向理论,后来由于工作方向发生变化,也没有再对PhoneGap深入研究下去了。 之后有许多网友向我要详细的代码,由于太忙我一直没时间整理,今天终于有时间,也不多说废话了,直接将代码贴出来。 这份代码是直接继承WebView了,重载了其中的几个方法,至于为什么这样做时候,P......
Read more

已阅读:115 次
Python 基于Twisted框架的文件夹网络传输源码
ian | Python | 2012/03/14


由于文件夹可能有多层目录,因此需要对其进行递归遍历。 本文采取了简单的协议定制,定义了五条命令,指令Head如下: Sync:标识开始同步文件夹 End:标识结束同步 File:标识传输的文件名(相对路径) Folder:标志文件夹(相对路径) None:文件内容 每条命令以CMB_BEGIN开始,以CMB_END结束。 客户端需要对接收缓冲做解析,取出一条一条的指令,然后根据指令的Head做相应的处理,比如创建文件夹、写入文......
Read more
第 1 / 6 页123456