- 博客(54)
- 资源 (23)
- 收藏
- 关注
转载 ADROID 2.1 架构解析 亮度设置
3 亮度设置3.1 应用设计3.1.1 设置进度条范围背光设置是在:设置->声音和显示->亮度,通过进度条来设置的。文件:packages/apps/Settings/src/com/android/settings/BrightnessPreference.javaprivate static final int MINIMUM_BACKLIGHT = android.o
2010-04-30 14:37:00 1911 1
转载 ADROID 2.1 架构解析 语言定制
1 语言定制1.1 ICU4C1.1.1 ICU4C简介ICU4C(ICU for C,http://site.icu-project.org/)是ICU在C/C++平台下的版本, ICU(International Component for Unicode)是基于"IBM公共许可证"的,与开源组织合作研究的, 用于支持软件国际化的开源项目。ICU4C提供了C/C++平台强大的国际化
2010-04-30 14:34:00 3157 4
原创 深刻解析 Android 的 AIDL 介面
在Android應用框架裡,應用層級的軟體大多是Java類別,而系統層級的軟體大多是C或 C++類別。Android使用JNI介面來達成這個目標。例如,在Android裡有個MediaPlayer.cpp類別,當它搭配上JNI介面之後,在VM上執行的MediaPlayer.java就可以透過JNI介面與MediaPlayer.cpp類別溝通了。 圖1-1
2010-04-30 11:45:00 2148
原创 BMP格式结构详解
位图文件(Bitmap-File,BMP)格式是Windows采用的图像文件存储格式,在Windows环境下运行的所有图像处理软件都支持这种格式。Windows 3.0以前的BMP位图文件格式与显示设备有关,因此把它称为设备相关位图(device-dependent bitmap,DDB)文件格式。Windows 3.0以后的BMP位图文件格式与显示设备无关,因此把这种BMP位图文件格式称为设
2010-04-28 13:26:00 2319 2
原创 利用UBIFS挂载Android文件系统
内核选项需要修改的地方1)Device Drivers --->Memory Technology Device (MTD) support --->UBI - Unsorted block images --->Enable UBI2)File systems --->Miscellaneous filesystems --->UBIFS file system suppo
2010-04-26 10:21:00 4386
原创 Android HAL分析报告
1 HAL简介Android 的 HAL(Hardware Abstract Layer硬件抽象层)是Google因应厂商「希望不公开源码」的要求下,所推出的新观念,其架构如下图。虽然 HAL 现在的「抽象程度」还不足,现阶段实作还不是全面符合 HAL的架构规划,不过也确实给了我们很好的思考空间。图1:Android HAL 架构规划这是 Patrick Brady (Google
2010-04-26 10:20:00 2567
原创 Problems with S3C6410 double framebuffer in Android
S3C6410的双Framebuffer于Android系统中存在的问题在为S3C6410移植Android系统过程中,发现在拖动任务栏,软键盘输入信息等情况下,屏幕会出现闪烁现象,类似刷新率不足情况。一直认为原因是自己porting的系统没有实现copybit等2D加速功能,导致填充速度不够快。昨天在调试双Framebuffer时发现,问题可能出在双Framebuff
2010-04-25 12:17:00 2714
原创 HDMI符合性测试的常见失败分析
自从几年前HDMI标准发布以来,它已经获得了广泛的应用。为了贴上HDMI的标志,所有的HDMI产品必须通过HDMI符合性测试(HDMI CT)。为了节省时间和金钱,消费者们应该在把产品送往授权测试中心(ATC)进行认证之前预先测试他们的HDMI产品。根据在模拟器件公司的HDMI CT实验室所进行的无数预先测试的经验,本文讨论造成产品无法通过HDMI CT的、最为常见的系统设计问题。它还分析特定情形
2010-04-23 11:51:00 3379
原创 HDMI之EDID
HDMI(HighDefinitionMultimediaInterface),作为新一代数字多媒体接口,能够传输高速率无压缩的数字音频、视频数据,HDMl1.2像素时钟可达165MHz,数据速率达到4.95Gbps,而HDMl1.3像素时钟则高达340MHz,数据速率达到10.2Gbps。目前高清1080p的数据带宽是2.2Gbps,HDMI完全可以用在高清图像传输中。事实上,目前高清图像传输也
2010-04-23 11:06:00 11503 2
原创 HDMI 之 HPD
HPD(Hot Plug Detection),在HDMI的一对联接中,为热插拔的实现而设计的。简单地说,当发送端接入接受端时,接受端会回应HPD信号给发送端,进而发送端会启动DDC通道,而读取接受端EDID的信息,然后进行HDCP的交互,如果双方认证成功,则视频、音频正常工作,否则联接失败,不同系统会有不同的处理。 例如,如果EDID信息不支持HDMI,则发送端只发送视频信息,而没
2010-04-23 10:50:00 9621 1
原创 HDMI 之 CEC
HDMI CEC是HDMI傳輸的規範之一,CEC是「Consumer Electronics Control」的縮寫,中文可翻譯為「消費性電子產品控制」。顧名思義,HDMI CEC是用來傳送工業規格的AV Link協定訊號,以此HDMI介面連接的多台AV器材,就可以使用單一遙控器來操控。HDMI CEC為單芯線雙向串列匯流排,在HDMI 1.0協定中就制訂了,於1.2a版中有所更新。
2010-04-23 10:27:00 12184 2
原创 对比度和亮度
在图像处理中,恐怕大家最熟悉的就是对于图像的亮度和对比度调整了。前面一定也有很多人写过这样的文章了,但是想把我的这个系列作一个完整的小结,我就再罗嗦一番了。还是以24位色图像为例子,每种色彩都可以用0-255,一共256种深度来表示。如果我们把它画在一个二维坐标上,正好是一条直线。比如我们将像素的色深作为横坐标,输出色深作为纵坐标的画,正好是一条经过原点(0,0)的45度斜线。如图中直线A所表示的
2010-04-22 17:59:00 2062
原创 NTSC和PAL的区别详解
常见的电视信号制式是PAL和NTSC,另外还有SECAM等。 那么NTSC和PAL的区别是什么呢?NTSC即正交平衡调幅制。PAL为逐行倒像正交平衡调幅制。下面在让我们来看看NTSC和PAL的区别详解。PAL电视标准 PAL电视标准,每秒25帧,电视扫描线为625线,奇场在前,偶场在后,标准的数字化PAL电视标准分辨率为720*576, 24比特的色彩位深,画面的宽高比为4:3, P
2010-04-22 15:58:00 8632
原创 YUV / RGB 格式及快速转换
YUV是指亮度参量和色度参量分开表示的像素格式,而这样分开的好处就是不但可以避免相互干扰,还可以降低色度的采样率而不会对图像质量影响太大。 YUV是一个比较笼统地说法,针对它的具体排列方式,可以分为很多种具体的格式。转载一篇对yuv格式解释的比较清楚地文章,也可以直接参考微软的那篇文 章。对于YUV格式,比较原始的讲解是MPEG-2 VIDEO部分的解释,当然后来微软有一个比较经典的解
2010-04-22 15:16:00 2032
原创 YUV格式详解
概述 YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法(属于PAL),是PAL和SECAM模拟彩色电视制式采用的颜色空间。其中的Y,U,V几个字母不是英文单词的组合词,Y代表亮度,uv代表色差,u和v是构成彩色的两个分量。在现代彩色电视系统中,通常采用三管彩色摄影机或彩色CCD摄影机进行取像,然后把取得的彩色图像信号经分色、分别放大校正后得到RGB,再经过矩阵变换
2010-04-22 14:52:00 4216
原创 OSD的主要实现方法和类型
目前有两种主要的OSD实现方法:外部OSD发生器与视频处理器间的叠加合成;视频处理器内部支持OSD,直接在视频缓存内部叠加OSD信息。 外部OSD发生器与视频处理器间的叠加合成的实现原理是:由一个MCU内建的字符发生器及显示缓存,利用快速消隐(Fast-Blank)信号切换电视的画面和OSD显示内容,使OSD的字符等内容叠加在最终的显示画面上,在OSD和显示画面叠加处理过
2010-04-21 19:26:00 8980
原创 什么叫逐行扫描和隔行扫描?它们有什么优缺点?
每一帧图像均是由电子束顺序地一行接着一行连续扫描而成,这种扫描方式称为逐行扫描。要得到稳定的逐行扫描图像,每帧图像必须扫描整数行。举例来说,一帧图像是连续扫描625行组成的,每秒钟共扫描50帧图像,即帧扫描频率为50帧/秒,或写成50Hz,行扫描频率为31.25kHz。 逐行扫描方法使信号的频谱及传送该信号的信道带宽均达到很高的要求。电视专家想出了一个巧妙的方法,把一幅625行图像分成两
2010-04-21 19:23:00 2125
转载 ffmpeg for MPEG2 TS
如果RTSP传输的是RTP/MPEG2 TS数据,那么ffmpeg的数据流过程如下:rtsp_read_packet----->rtp_parse_packet--->rtp_valid_packet_in_sequence-------------------------------------------->-------------------------------->如果是M
2010-04-21 11:44:00 3566
转载 MPEG-2TS码流编辑的原理及其应用
[作者:辽宁电视台 赵季伟] 在当今数字媒体不断发展、新媒体业务不断涌现 的前提下,实践证明襁褓中的新媒体只有两种经营方略可供选择:或是购买并集成整套节目,或是低成本深加工新节目,再不可能去按照传统生产模式去自采自编。 低成本的节目生产制作与发布,不仅成为数字媒体经营的主要手段,也成为传统媒体“改革工作流程”的重要举措,进而促成了对新型工作母机和简捷
2010-04-21 11:40:00 1654
原创 MPEG2 TS小结
应该说真正了解TS,还是看了朋友推荐的《数字电视业务信息及其编码》一书之后,MPEG2 TS和数字电视是紧密不可分割的,值得总结一下其中的一些关系。ISO/IEC-13818-1:系统部分;ISO/IEC-13818-2:视频;ISO/IEC-13818-3:音频;ISO/IEC-13818-4:一致性测试;ISO/IEC-13818-5:软件部分;ISO/IEC-13818-6:数字存
2010-04-21 11:33:00 1938
原创 linux中使用pthread_kill函数测试线程是否存活的例子
使用pthread_kill函数检测一个线程是否还活着的程序,在linux环境下gcc编译通过,现将代码贴在下面:#include #include #include #include void *func1(){ sleep(1); printf("线程1(ID:0x%x)退出。/n",(unsigned int)pthread_self()); pthread_exit((v
2010-04-14 11:18:00 2279
原创 Ubuntu上架设PPPoE Server
一。安裝 PPPoE Server Software1)sudo apt-get install ppp2)rp-pppoe(非apt套件)wget -c http://www.roaringpenguin.com/files/download/rp-pppoe-3.10.tar.gzsudo tar zxvf rp-pppoe-3.6.tar.gz -C /opt/sudo chown -R
2010-04-13 15:30:00 11690 1
原创 移植rp-pppoe到s3c2440(QQ2440v3)实现ADSL拨号上网
一:总的来说可以分四点1:arm linux 内核支持ppp2: install ppp-2.4.4 (rp-pppoe要ppp的支持才能正常运行)。3: install rp-pppoe。4:把步骤(2)(3)中生成的相应文件下载到目标板,根据相应提示适当修改就行了。二:需要的包移植需要rp-pppoe和ppp。我用的是rp-pppoe3.10和ppp-2.4.4
2010-04-13 13:59:00 10642 3
原创 linux2.6内核ppp分析
1 简介ppp协议(点到点协议),在拨号网络中应用比较广泛,逐渐在替代slip协议。ppp数据包格式为:| 协议码 | 载荷 |填充符ppp主要有四类协议码: 1 0x0001 - 0x3fff 网络层协议(ipv4,ipv6,ipx,appletalk) 2 0x4001 - 0x7fff 无网络层协议参与的小载荷量传输(低整流量) 3 0x800
2010-04-12 21:06:00 5516
原创 Linux PPP 数据收发流程
PPP (Point-to-Point)提供了一种标准的方法在点对点的连接上传输多种协议数据包,它最常见的用途可能是传统的拨号上网了(据说现在的宽带接入 也有采用PPPOE方式的)。在Linux Mobile Phone上,网络应用程序使用PPP作为与GSM模组之间的通信协议,最近遇到了一点关于PPP的麻烦,所以花了点时间去研究它。PPP 协议肯定不是最复杂的网络协议,不过pppd、cha
2010-04-12 21:03:00 3891
转载 S3C2410平台上运行为例,讲解内核的解压过程
本文以linux-2.6.14内核在。内核编译完成后会生成zImage内核镜像文件。关于bootloader加载zImage到内核,并且跳转到zImage开始地址运行zImage的过程,相信大家都很容易理解。但对于zImage是如何解压的过程,就不是那么好理解了。本文将结合部分关键代码,讲解zImage的解压过程。先看看zImage的组成吧。在内核编译完成后会在arch/arm/boo
2010-04-12 13:22:00 1438
原创 kmalloc详解
在设备驱动程序中动态开辟内存,不是用malloc,而是kmalloc,或者用get_free_pages直接申请页。释放内存用的是kfree,或free_pages. 对于提供了MMU(存储管理器,辅助操作系统进行内存管理,提供虚实地址转换等硬件支持)的处理器而言,Linux提供了复杂的存储管理系统,使得进程所能访问的内存达到4GB。 进程的4GB内存空间被人为的分为两个部分--用户
2010-04-11 13:39:00 5011
原创 s3c uboot-的start.S详细注解及分析
声明:该贴是通过参考其他人的帖子整理出来,从中我加深了对uboot的理解,我知道对其他人一定也是有很大的帮助,不敢私藏,如果里面的注释有什么错误请给我回复,我再加以修改。有些部分可能还没解释清楚,如果您觉得有必要注释,希望指出。再次强调该贴的大部分功劳应该归功于那些原创者,由于粗心,我没有留意参考的出处。我的目的是想让大家共同进步。希望大家念在我微不足道的心意,能够积极回馈,以便使帖子更加完善
2010-04-11 13:36:00 1697
原创 s3c lowleve_init.S分析
/* * Memory Setup stuff - taken from blob memsetup.S * * Copyright (C) 1999 2000 2001 Erik Mouw (J.A.K.Mouw@its.tudelft.nl) and * Jan-Derk Bakker (J.D.Bakker@its.tudelft.nl) * *
2010-04-11 13:35:00 1271
原创 s3c2410 board.c分析
在介绍该函数之前,我们需要看一看几个数据结构,这些是u-boot中几个重要的数据结构:1)、gd_t该数据结构保存了u-boot需要的配置信息(我暂时称它为全局信息表),typedef struct global_data { bd_t *bd; //与板子相关的结构,见下面 unsigned long flags; unsigned long
2010-04-11 13:33:00 2154
原创 u-boot的Makefile分析(转)
U-BOOT是一个LINUX下的工程,在编译之前必须已经安装对应体系结构的交叉编译环境,这里只针对ARM,编译器系列软件为arm-linux-*。U-BOOT的下载地址: http://sourceforge.net/projects/u-boot我下载的是1.1.6版本,一开始在FTP上下载了一个次新版,结果编译失败。1.1.6是没问题的。u-boot源码结构 解压就可以得到全
2010-04-11 13:31:00 1557
原创 详解 Android 的 Activity 组件
详解 Android 的 Activity 组件Activity 的生命周期和 J2ME 的 MIDlet 一样,在 android 中,Activity 的生命周期交给系统统一管理。与 MIDlet 不同的是安装在 android 中的所有的 Activity 都是平等的。Activity 的状态及状态间的转换在 android 中,Activity 拥有四种基本状态:
2010-04-09 18:42:00 850
原创 定制你自己的桌面--- launcher小觑
launcher也就是我们的Home,可以简单地把它理解为一个简化的linux GUI。作为一个GUI它首先必须完成它最本分的功能,就是它必须能提供对所有应用程序(CATEGORY_LAUNCHER)的映射;不过作为一个 GUI,它除了做好本分之外还必须是符合大众审美的美女(wallpaper);另外还必须具有良好的交互性,没有良好的交互性就像你对一位美女殷勤了半天,她却直接对无视,那结果是比
2010-04-09 13:57:00 1241
原创 android 包管理系统分析
包管理脚本 /system/bin/pm 解析:pm的使用方法可以参考 Pm.java (frameworks/base/cmds/pm/src/com/android/commands/pm)文件中的static void showUsage()函数:private static void showUsage() { System.err.println("usage: pm [l
2010-04-09 11:23:00 3076
转载 Android应用程序的快速启动
Android系统框架和上层应用是类java(不是正统的sun java)开发的,实现了自己的java虚拟机dalvik,既然用java虚拟机和java开发,一般都会认为效率低下。其实不然,在基本主流的智能手机的软件平台上,android的执行速度是最快的。 那么android效率为什么这么的高呢?特别是一个应用程序的启动时间很短,本文主要从以下个八方面进行分析: 1、 资源文件的优
2010-04-09 11:06:00 1201
原创 编程方式安装.apk文件
在android G1中,除了用内置的market安装.apk应用程序,还有一部分程序是从第三方下载的。这时需要用专门的程序来进行安装。比如ApkInstaller或ASTRO,它们是怎么实现这一功能的呢,下面三行代码即可:view plainprint?Intent intent = new Intent(Intent.ACTION_VIEW); inten
2010-04-08 21:06:00 3584 1
转载 Apk文件结构简介
平台基础知识, 2009-08-27 16:02:02标签 : 景涛 apk android Application package OPhone 一.引言 做过OPhone/Android应用开发的人,对apk文件应该不会陌生。apk文件,即Android application package文件。每个要安装到OPhone平台的应用都要被编译打包为一个单独的文件,后
2010-04-08 20:25:00 1483
原创 Android Wifi Driver Porting
1. 修改 build/target/board/generic/BoardConfig.mk定义使用 wireless extension 作为wpa_supplicant 的driver.# Wifi related definesBOARD_WPA_SUPPLICANT_DRIVER := WEXT2. 修改hardware/libhardware_legacy/wifi/wifi
2010-04-08 19:24:00 4198 1
原创 Android JNI remote debugging
1. 添加Android JNI 接口到Android 代码树1.1 假定需要被测试Jni 接口是TestNativeApi.java, 将其添加到Android的代码树下 frameworks/base/core/jni/TestNativeApi.java这个Native程序,在Android中被编译成jar包形式,可以被上层Android java应用调用。而其static 函数中调用
2010-04-08 17:52:00 1663
转载 netperf 与网络性能测量
汤凯 (tangk73@hotmail.com), 2004 年 7 月 01 日本文首先介绍网络性能测量的一些基本概念和方法,然后结合 netperf 工具的使用,具体的讨论如何测试不同情况下的网络性能。在构建或管理一个网络系统时,我们更多的是关心网络的可用性,即网络是否连通,而对于其整体的性能往往考虑不多,或者即使考虑到性能的问题,但是却发现没有合适的手段去测试网络的性能。
2010-04-08 14:48:00 1412
WebKit 研究报告(侯炯)
2012-05-10
ALSA 驱动架构说明
2012-04-06
Android 高效编程注意事项
2012-04-06
android系统vold透析
2012-04-06
android 核心学习资料
2010-09-09
MPEG-2 压缩编码技术原理应用
2010-05-12
Pthreads Programming
2010-03-24
The Linux Kernel API
2010-03-24
The Linux TCP/IP Stack: Networking for Embedded Systems
2010-03-24
usb 鼠标驱动注解及测试
2010-03-24
用 FPGA 如何自己设计 CPU 和制作计算机
2010-03-24
avs 标准文档中的源码
2009-10-13
项目管理知识体系指南
2009-10-06
PMP项目管理原版书籍
2009-10-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人