- 博客(31)
- 收藏
- 关注
转载 overlay
前文仅了解了overlay HAL的架构,下面继续看看系统层是如何调用Overlay模块。1、 测试代码frameworks/base/libs/surfaceflinger/tests/overlays/overlays.cpp提供了一个简单的overlay调用流程,可
2011-09-03 17:06:31 526
转载 Android camera preview and take picture with V4l2
这部分spec的内容没有全看懂,但是根据FSL的代码能知道这其中的sequence,下面就结合着FSL的代码来描述下videooverlay过程的sequence。首先介绍一下video overlay,vieo overlay不同于video capture,是指不
2011-09-03 17:05:31 561
转载 强指针和弱指针
在Android的源代码中,经常会看到形如:sp、wp这样的类型定义,这其实是Android中的智能指针。智能指针是C++中的一个概念,通过基于引用计数的方法,解决对象的自动释放的问题。在C++编程中,有两个很让人头痛的问题:一是忘记释放动态申请的对象从而造成内存泄露;二是对象在
2011-09-03 16:58:46 502
转载 V4L2操作与常见结构
一般操作流程(视频设备): 1. 打开设备文件。 int fd=open("/dev/video0",O_RDWR); 2. 取得设备的capability,看看设备具有什么功能,比如是否具有视频输入,或者音频输入输出等。VIDIOC_QUERYCAP,struct
2011-09-01 19:53:19 510
转载 媒体720p和1080p概念
720P是美国电影电视工程师协会(SMPTE)制定的高等级高清数字电视的格式标准,有效显示格式为:1280×720.SMPTE(美国电影电视工程协会)将数字高清信号数字电视扫描线的不同分为1080P、1080I、720P(i是interlace,隔行的意思,p是Progressi
2011-09-01 19:51:42 687
转载 颜色空间转换(YUV,RGB)
计算机彩色显示器显示色彩的原理与彩色电视机一样,都是采用R(Red)、G(Green)、B(Blue)相加混色的原理:通过发射出三种不同强度的电子束,使屏幕内侧覆盖的红、绿、蓝磷光材料发光而产生色彩。这种色彩的表示方法称为RGB色彩空间表示(它也是多媒体计算机技术中用得最多的一种
2011-09-01 19:51:00 665
转载 vi 技巧和诀窍:令人刮目相看的 10 个超酷命令
vi 技巧和诀窍:令人刮目相看的 10 个超酷命令成为 vi 编辑专家Martin Wicks, 自由 UNIX 顾问, 711 Consultancy LimitedMartin Wicks 是一位在英国伦敦生活工作的自由 UNIX 顾问。他从事 U
2011-09-01 19:35:41 435
转载 camera isp
1. 目标[52RD.com]手机摄像头模组用ISP功能模块的市场走向及研发方向。为能够正确认识手机摄像模组行业提供技术及市场依据。[52RD.com]2. ISP在模组上的应用原理[52RD.com] 2.1 功能区域[52RD.com] 无论数码相机、摄像机或
2011-09-01 19:32:32 391
原创 基于VMware的linux虚拟机硬盘空间扩大
sudo cfdisk 显示系统的文件系统的格式信息随着Linux虚拟机的不断使用,在VMware中经常遇到 预先装好的 linux 虚拟机的硬盘空间过小 的问题,造成很多软件不能安装, 而重新装一个,又挺麻烦。于是,上网搜了下关于 vmware 硬盘扩容的方法。 总结如下: 1、挂载点必须是一个目录。 2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容
2010-05-11 19:36:00 855
原创 多进程--消息队列--聊天工具
1】每创建一个消息队列,在我们的内存当中都是一种资源; 保存消息的模板: struct msgbuf{ long mytype; char ... ............. .............
2010-04-27 18:39:00 543
原创 linux pthread
一.pthread_create()之前的属性设置1.线程属性设置我们用pthread_create函数创建一个线程,在这个线程中,我们使用默认参数,即将该函数的第二个参数设为NULL。的确,对大多数程序来说,使用默认属性就够了,但我们还是有必要来了解一下线程的有关属性。属性结构为pthread_attr_t,它同样在头文件pthread.h中定义,属性值不能直接设置,须使用相关函数进行操作,初始
2010-04-20 22:20:00 429
转载 Linux 线程模型的比较:LinuxThreads 和 NPTL
LinuxThreads 项目最初将多线程的概念引入了 Linux®,但是 LinuxThreads 并不遵守 POSIX 线程标准。尽管更新的 Native POSIX Thread Library(NPTL)库填补了一些空白,但是这仍然存在一些问题。本文为那些需要将自己的应用程序从 LinuxThreads 移植到 NPTL 上或者只是希望理解有何区别的开发人员介绍这两种 Linux 线程模型
2010-04-20 19:24:00 387
原创 2010-4-20
1】posix :最小系统运行的API集合;2】linux内核中把进程和线程都当作任务,在solaris版中与两种调度:1>用户级线程 2>内核级线程,而linux中只有第二种。3】每个进程都有一个自己独立的映射关系(MMU) TLB:Translation lookaside buffer,即旁路转换缓冲,或称为页表缓冲;里面存放的是一些页表文件(虚拟地址到物理地址的转换表)。
2010-04-20 18:52:00 362
原创 2010-4-14
1】带默认形参的函数 }C++允许在函数说明或函数定义中为形参预赋一个默认值; }在调用带有默认参数值的函数时: }若指定实参,形参则使用实参的值; }否则,形参使用默认值。 }如: int sub(int x=8,int y=3) { return x-y;} int main() { sub(20,15); //传递给形参x,y的值是20
2010-04-14 19:00:00 337
原创 2010-4-7
1】I/O操作 就C程序而言,所有的I/O操作只是简单的地从程序移进或移出字节的事情。因此,毫不惊奇的是,这种字节流便被称为流 (stream);标准IO提供三种类型的缓存1>全缓存2>行缓存3>不带缓存。如:我们的终端就是典型的行缓存。绝大多数流是全缓存的,这意味着“读取”和“写入”实际上是从一块被称为缓冲区的内存区域来回复制数据。 如:
2010-04-07 15:30:00 376
转载 cdecl程序,用于分析C语言的声明
#include #include #include #include #define STRCMP(a, R, b) (strcmp(a, b) R 0)#define MAXTOKENS 100#define MAXTOKENLEN 64enum type_tag{ Identifer, Qualifier, Type };struct token{ char type;
2010-04-04 10:59:00 821
转载 存储类,链接和内存管理
存储类、链接和内存管理(一)——作用域 存储类、链接和内存管理1.作用域作用域描述了程序中可以访问一个标识符的一个或多个区域。一个C变量的作用域可以是代码块作用域、函数原型作用域或者文件作用域。代码块作用域一个代码块是包含在开始花括号和对应的结束花括号之内的一段代码。例如,整个函数体是一个代码块。一个函数内的任一复合语句也是代码块。在代码快中定义的变量具有代码块作用域(block sc
2010-04-03 16:25:00 486
原创 安装TFTP服务器后,下载文件提示:Error code 2: Only absolute filenames allowed错误
1、安装相关软件包:tftpd(服务端),tftp(客户端),xinetd, openbsd-inetdsudo apt-get install tftpd tftp xinetd openbsd-inetd 有时需要单个单个的下载安装每个软件,另外xinetd与openbsd-inetd两个中只能装一个。2、建立配置文件在/etc/xinetd.d/下建立一个配置文件tftpsudo
2010-04-02 19:13:00 7992
原创 2010-3-31
数据结构真够累人啊。。。。指来指去。。。脑袋度指糊涂了。。。做题之前一定要理清思绪。。。关键是要理解它的那种思想。。1】struct 成员对齐 1>自然对界(natural alignment) 即默认对齐方式,是指按结构体中成员size最大的成员对齐。 2>指定对界 .使用伪指令#pragma pack(n
2010-03-31 19:25:00 509
转载 scanf 详解
以下是jixingzhong(瞌睡虫·星辰)提供的:scanf 详解:1.空白符问题#includemain(){ int a; printf("input the data/n"); scanf("%d/n",&a);//这里多了一个回车符/n printf("%d",a); return 0;}结果要输入两个数程序才结束,而不是预期的一个。why?原因:用空白符结尾时,sca
2010-03-31 19:23:00 440
原创 ubuntu 问题集
1】问题:在虚拟机内使用8.10和9.10 scim 时 出现ctrl+space 不能切换输入法。 解决方法:在/etc/X11/Xsession.d/目录下新建一个文件95xinput,文件的内容为------- export XMODIFIERS=@im=SCIM ; export GTK_IM_MODULE=
2010-03-31 12:17:00 354
原创 2010-3-30
今天接触了数据结构,终于知道那神秘的数据结构长啥样了!!!嘿....1】malloc函数 malloc函数申请内存有不成功的可能,那我们在使用指向这块内存的指针时,必须if(NULL!=p)语句来验证内存确实分配成功了。malloc两次只free一次会内存泄漏,malloc一次free两次肯定会出错。内存释放之后最好重新把p=NULL;否则,free(p)之后,i
2010-03-30 19:19:00 326
原创 2010-3-29
1】定义与申明 定义声明最重要的区别:定义创建了对象并为这个对象分配了内存,声明没有分配内存。 int i;定义。 extern int i;声明。 注释先于预处理指令被处理。2】栈,堆和静态区 对于程序员,一般来说,可以简单的理解为内存分为三个部分:静态区,栈,堆。 静态区:保存自动全局变量和static变量(包括static全局
2010-03-29 13:08:00 358
原创 2010.3.26
1】C语言的逻辑运算符: && 逻辑与,|| 逻辑或 ;如 表达式1&&x2】数组: 总字节数 = sizeof(数据类型)*元素个数 const int days[] = {31,28,31,30,31,30}; int index; for(intdex=0;index printf("Month %2d h
2010-03-26 12:22:00 338
原创 2010.3.25
1>添加环境变量 export PATH = $PATH:`pwd` 如果此时关闭终端,所设的环境变量将失效;另外可以直接修改用户目录下的.bashrc文件,接着关闭终端重启即可。2>GCC 使用 GCC的编译流程分为4个步骤:1】预处理(PreProcessing)2】编译(Compiling)3】汇编(Assembling)4】连接 (Link
2010-03-25 19:19:00 403
原创 小知识
1>c语言中左移与右移运算 左移时总是移位和补零。右移时无符号数是移位和补零,此时称为逻辑右移;而有符号数大多数情况下是移位和补最左边的位(也就是补最高有效位),移几位就补几位,此时称为算术右移。 对于有符号数3来说,x>1往右边移一位,由于是有符号数,可能发生逻辑右移,也可能发生算术右移,这一点,C标准并没有明确地指定是使用逻辑右移还是算术右移。但大多数的机器都使用算术右移,
2010-03-25 19:08:00 439
原创 VI 字体高亮显示 自动缩进的设置 TAB 4格
其实主要是vi本身是不带颜色的,vim带颜色用命令:alias vi=vim就OK了。以后vi就带颜色了。syntax on “语法高亮显示filetype indent on “文件自动缩进set showcmd ” Show (partial) command in status line.set showmatch ” Show matching brackets.set i
2010-03-24 16:57:00 1762
转载 关键字typedef
带你解剖typedef之前,让我们先来看看POSIX.1中对信号处理函数signal的原型说明:--------------------------------------------------------------------------------void (*signal(int sig, void (*func)(int)))(int); -----------------
2010-03-24 15:42:00 433
原创 软连接与硬连接
要弄清楚2者的区别,首先得明白linux系统中文件是如何存储的.在linux中存储一个文件由3部分组成: 文件名 inode block(数据块)关于inode: block用来存储数据.而inode呢,就是用来存储这些数据的信息,这些信息包括文件大小,归属的用户组,读写权限等.inode为每个文件进行信息索引,所以就有了inode的数值
2010-03-24 12:37:00 398
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人