
android
文章平均质量分 86
andro_wei
这个作者很懒,什么都没留下…
展开
-
stagefright + omx小结
看了将近1个多月的stagefright和OMX IL,感觉对框架有了一点感觉,趁感觉还在,记录下来和大家分享,由于本人也是刚开始看多媒体框架,有认识不当的地方还请务必指正.由于stagefright和openmax运行在两个不同的进程上,所以他们之间的通讯要经过openBinder进行处理,对openBinder这一块还没有了解,所以恕stagefright和openmax之间的转载 2011-06-20 11:14:00 · 1021 阅读 · 0 评论 -
Android Binder设计与实现 - 设计篇
<br />Binder Android IPC Linux 内核驱动<br />摘要<br />Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有管道,system VIPC,socket等IPC手段,却还要倚赖Binder转载 2011-04-29 17:08:00 · 1010 阅读 · 0 评论 -
Android Audio System 之一:AudioTrack如何与AudioFlinger交换音频数据
引子AndroidFramework的音频子系统中,每一个音频流对应着一个AudioTrack类的一个实例,每个AudioTrack会在创建时注册到AudioFlinger中,由AudioFlinger把所有的AudioTrack进行混合(Mixer),然后输送到AudioHardware中进行播放,目前Android的Froyo版本设定了同时最多可以创建32个音频流,也就是说,M转载 2011-06-28 17:37:00 · 745 阅读 · 0 评论 -
Android Display System --- Surface Flinger
SurfaceFlinger是Android multimedia的一个部分,在Android的实现中它是一个service,提供系统范围内的surface composer功能,它能够将各种应用程序的2D、3D surface进行组合。在具体讲SurfaceFlinger之前,我们先来看一下有关显示方面的一些基础知识转载 2011-06-27 16:44:00 · 753 阅读 · 0 评论 -
如何撰寫自己的第一個核心服務呢?
<br /><br />1. 要點:<br />l 核心服務通常在獨立的進程(Process)裡執行。<br />l 必須提供IBinder介面,讓應用程式可以進行跨進程的綁定(Binding)和呼叫。<br />l 因為共用,所以必須確保多線裎安全(Thread-safe)。<br />l 以C++類別定義,誕生其物件,透過SM之協助,將該物件參考值傳給IServiceManager::addService()函數,就加入到B转载 2011-05-03 11:02:00 · 620 阅读 · 0 评论 -
Android的IPC机制Binder的各个部分
1. Binder的组成1.1. 驱动程序部分<br />驱动程序的部分在以下的文件夹中:show sourceview sourceprint?1kernel/include/linux/binder.h2kernel/drivers/android/binder.c<br />binder驱动程序是一个miscdevice,主设备号为10,此设备号使用动态获得(MISC_DYNAMIC_MINOR),其设备的节点为:show sourceview sourceprint?1/dev/binder/dev转载 2011-05-03 14:16:00 · 658 阅读 · 0 评论 -
Android IPC框架分析 Binder,Service,Service manager
<br /><br />我首先从宏观的角度观察Binder,Service,ServiceManager,并阐述各自的概念。从Linux的概念空间中,Android的设计Activity托管在不同的的进程,Service也都是托管在不同的进程,不同进程间的Activity,Service之间要交换数据属于IPC。Binder就是为了Activity通讯而设计的一个轻量级的IPC框架。<br /> 在代码分析中,我发现Android中只是把Binder理解成进程间通讯的实现,有点狭隘,而转载 2011-05-02 11:28:00 · 779 阅读 · 0 评论 -
Android-与Android IPC有关的问题
<br />1.文件描述符是如何在进程之间传递的?<br />我们知道文件描述符,就像虚拟内存的地址一样,是进程私有的资源。在一个进程中文件描述符,在另外一个进程中,可能是无效的,也可能是对应另外一个文件。Android却可以把文件描述符从一个进程传到另外一个进程。第一次发现这种情况时,让我感到很惊奇,所以花了点时间去研究。看明白之后,发现其实现也很简单:1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />转载 2011-05-03 15:49:00 · 607 阅读 · 0 评论 -
Android深入浅出之Binder机制
Android深入浅出之Binder机制一说明 Android系统最常见也是初学者最难搞明白的就是Binder了,很多很多的Service就是通过Binder机制来和客户端通讯交互的。所以搞明白Binder的话,在很大程度上就能理解程序运行的流程。我们这里将以MediaService的例子来分析Binder的使用:l ServiceManager,这是Android OS的整个服务的管理程序l MediaService,这个程序里边注册了提供媒体播放的服务程序Me转载 2011-04-29 09:31:00 · 802 阅读 · 0 评论 -
stagefright之OpenMax实现
http://disanji.net/2011/03/07/stagefright-openmax0realization/转载 2011-06-20 15:05:00 · 799 阅读 · 0 评论 -
[转载]stagefright框架(四)-Video Buffer傳輸流程
這篇文章將介紹Stagefright中是如何和OMX video decoder傳遞buffer。(1) OMXCodec會在一開始的時候透過read函式來傳送未解碼的data給decoder,並且要求decoder將解碼後的data傳回來status_t O转载 2011-06-20 17:18:00 · 805 阅读 · 0 评论