上一篇我们分析了Android的开机动画启动流程,这一篇我们基于上一篇的基础,分析一下SurfaceFlinger的启动,还有连接它的过程。
Android SurfaceFlinger 学习之路(三)----Android开机动画流程简述
在详细分析SurfaceFlinger模块之前要先看看Android的开机动画,因为这个BootAnimation是一个C++应用程序,需要使用SurfaceFlinger服务来创建和渲染自己的Surface,并且不涉及与用户进行交互,所以能以最简洁的方式体现Android与SurfaceFlinger服务的关系。
Android SurfaceFlinger 学习之路(二)----SurfaceFlinger概述
因为还有很多烦人的事情需要处理,所以暂时没有离职,也挺忙的。最近一段时间稍微轻松些,所以更新一下这个进度。
Android性能优化之内存优化实战
事情依旧很多,生活的、工作的,成长总是需要代价的。一直憧憬童年和大学,那是两种异曲同工的生活态度。假装自己是个孩子,一直不想长大,被自己小小的愿望襁褓着,不去理会外面世界的沧海桑田。白驹过隙,岁月在脸上留下了痕迹,不再隐瞒早已不年轻的事实。伴随着时光点滴流逝,心也在渐渐老去。也许成长就是一种淡然吧,从锋芒毕露到心如止水,从棱角分明到不露声色。少了昔日偶尔破釜沉舟的勇气,更多的是经常瞻前顾后的思虑。时光荏苒,没有留下刻骨铭心的记忆,更多的是平淡、安静。我渐渐喜欢这种感觉,岁月静好,没有跌宕起伏的生活剧情,没有扣人心弦的情景环节,一切安好,便是生活最美好的恩赐。
记忆渐渐模糊,没有留下印记。没有选择性忘记,但却真实在一点一点消逝。那些旧照片也没能留下,早已不见了踪影,那些故人,都逐渐失去了联系,那些雨天泥泞的小路,还有路边在儿时植树节时新栽的小树,也都变得那么陌生。只有那些花儿,却开的愈加鲜艳茂密。就像一颗顽强的心,一颗不服输的心,在抗拒随波逐流的人生。
多年之前,我们都还是个孩子。经过岁月的洗礼,也许会变得更加沉稳,也会变得更加冷静,亦或者是……冷漠。回忆往昔,这一路走来,还是渐渐变成了孩时最讨厌的自己,一个冷漠的自己,一个绝情的自己。安静也许是一个借口,一种掩饰,透过镜子,终于看清了真实的自己,那个自私的自己。有人说,社会会逼着一个人成长,是啊,虽然不愿承认,但是至少褪去了青年时怕事嫌烦表选出来的虚伪,获得更多的是学会了处事不惊的态度,和勇于承担责任的勇气。如果选择对生活妥协,是不会答应的,即使没了追梦赤子心,至少还有追逐本心的动力。不忘初心,坚持自己的初衷。青春即使如同《老男孩》的歌词唱的那样:”青春如同奔流的江河,一去不回来不及道别,只剩下麻木的我,没有了当年的热血……”即便如此,依然要做不一样的我,一个不退缩、不妥协的我,一个默默前行的我,一个坚持本心的我————“我就是我,是颜色不一样的烟火,天空海阔,要做最坚强的泡沫,我喜欢我,让蔷薇开出一种结果,孤独的沙漠里一样盛放的赤裸裸”
这次带来一篇性能优化的文章,内容来自APP架构师
,我稍微修改了一些部分,加了一些内容。
Android SurfaceFlinger 学习之路(一)----Android图形显示之HAL层Gralloc模块实现
好久没更新了,主要是因为年前和年后太忙了,尤其是年后这一段时间,忙得把身体都忙坏了。。。。。。终于在我GG之前,提交了离职,总算赢得了一些空闲时间,赶紧养养身体。。。现在处于即将待业状态,正好有时间研究一下年前就想了解的surfaceflinger模块。。。不过最近我也看了下,surfaceflinger内容太多太复杂了,也许这个系列我坚持不了多久
,不能像上一个MediaPlayer系列那样。。。。。。同时,因为目前我处于即将待业状况,所以求好心HR或者大牛带我入新坑,感激不尽(~ToT~)
Android多媒体开发(九)----Video Buffer传输与Audio Playback流程
上一篇我们简要分析了一下播放流程,主要讲了音频、视频播放和音视频同步的问题。但是对于视频读取buffer还有音频start之后发生的流程都没有分析。本节我们就这两点再分析一番。
Android多媒体开发(八)----播放流程
前面几篇都是视频文件播放前的准备工作,比如设置数据源,初始化解码器等等,本节我们分析MediaPlayer播放器start之后的流程。
Android多媒体开发(七)----Android中OpenMax的实现
preview篇是android对openmax的接口实现的一些规则,还有一些厂商的方案。本节就顺着上上篇的流程,分析一下从AwesomePlayer到OpenMax的调用流程。
Android多媒体开发(六)----Android中OpenMax的实现(preview)
上一篇对OpenMax有了简单介绍,本篇就讲讲Android上对OpenMax IL层的实现。(可以忽略,下一篇会分析流程)
Android多媒体开发(五)----OpenMax简介
android中的 AwesomePlayer就是用OpenMax来做(codec)编解码的,上一篇最后一步初始化解码器我们只是初窥了一下,以后会仔细分析。本节就主要科普一下OpenMax和它在Android系统中扮演的角色。