[时间:2016-09] [状态:Open] [关键词:android,NuPlayer,开源播放器,播放框架,ALooper,AHandler,AMessage] 前文中提到过NuPlayer基于StagefrightPlayer的基础类构建,利用了更底层的ALooper/AHandler机制来异步地处理请求,ALooper保存消息请求,然后调用AHandler接口去处理. 实际上在代码中NuPlayer本身继承自AHandler类,而ALooper对象保存在NuPlayerDriver中.…
[时间:2017-01] [状态:Open] [关键词:android,nuplayer,开源播放器,播放框架,GenericSource] 0 导读 GenericSource是NuPlayer::Source的一个子类,主要功能是负责本地多媒体文件的读取解析,功能类似FFmpeg的libavformt. 通常GenericSource有以下功能: 多媒体文件格式探测 多媒体文件解析 本文是我的NuPlayer播放框架的第五篇. 1 GenericSource对外接口及主要成员 NuPlaye…
[时间:2016-11] [状态:Open] [关键词:android,nuplayer,开源播放器,播放框架,渲染器,render] 0 导读 之前我们分析了NuPlayer的实现代码,本文将重点聚焦于其中的一部分--渲染器(Renderer). 从功能安排来说,Renderer的主要功能有: 音视频原始数据缓存操作 音频播放(到声卡) 视频显示(到显卡) 音视频同步 其他辅助播放器控制的操作 其他获取渲染状态/属性的接口 接下来主要从Renderer的对外接口和实现说明下其中的处理逻辑. 本…
[时间:2016-10] [状态:Open] [关键词:android,nuplayer,开源播放器,播放框架] 0 引言 差不多一个月了,继续分析AOSP的播放框架的源码.这次我们需要深入分析的是NuPlayer类,相比于NuPlayerDriver的接口功能,NuPlayer继承自AHandler类,是AOSP播放框架中连接Source.Decoder.Render的纽带. 我希望读完本文大家可以对NuPlayer的源码结构有一定了解. 本文是我的NuPlayer播放框架的第三篇. 1 主要…
[时间:2016-09] [状态:Open] [关键词:android,nuplayer,开源播放器,播放框架,nuplayerdriver] 0 NuPlayer简介 Android2.3时引入流媒体框架,而流媒体框架的核心是NuPlayer.在之前的版本中一般认为Local Playback就用Stagefrightplayer+Awesomeplayer,流媒体用NuPlayer.Android4.0之后HttpLive和RTSP协议开始使用NuPlayer播放器,Android5.0(L…
NuPlayer播放源码分析之DecoderBase分析 [时间:2017-02] [状态:Open] [关键词:android,nuplayer,开源播放器,播放框架,DecoderBase,MediaCodec] 0 导读 DecoderBase是AHandler的一个子类,主要功能是负责解码,按照MediaPlayer的框架,一般是调用MediaCodec完成解码,功能类似FFmpeg的libavcodec.其主要功能是解码器初始化.解码以及和其他模块的交互,比如Source.Render…
最近在关注直播这块儿,开始时直接用ffmpeg写了一个,写得比较烂,卡顿很严重,后来听说了B站开源播放框架ijkplayer,于是就去试试看这是链接 ,一用之下果然不错,逢人便向人安利,可总是有部分同学说看不懂.不会用.其实用法都在readme里写得很清楚了,只要照着做就行了.好吧,我知道其实是你们懒得看 -_-!, 那我就在这儿说说大概的步骤吧. 首先配置环境,需要安装 homebrew,git,yasm (需要ruby环境) 图片截自readme 然后把项目克隆到本地,下载并编译ffmpeg…
目录 任务一:自定义持久层框架 1.1 JDBC回顾及问题分析 1.2 自定义持久层框架思路分析 1.3 IPersistence_Test编写 1.3.1 XXXMapper.xml详解 1.3.2 sqlMapConfig.xml详解 1.4 Resources类定义 1.5 容器对象定义 1.6 解析核心配置文件sqlMapConfig 1.7 解析映射配置文件mapper.xml 1.8 会话对象sqlSession类定义 1.9 会话对象sqlSession方法定义 1.10 查询对象…
以下笔记是我看完视频之后总结整理的,部分较为基础的知识点也做了补充,如有问题欢迎沟通. 目录 任务一:自定义持久层框架 1.1 JDBC回顾及问题分析 1.2 自定义持久层框架思路分析 1.3 IPersistence_Test编写 1.3.1 XXXMapper.xml详解 1.3.2 sqlMapConfig.xml详解 1.4 Resources类定义 1.5 容器对象定义 1.6 解析核心配置文件sqlMapConfig 1.7 解析映射配置文件mapper.xml 1.8 会话对象sq…
php-浅谈php底层机制 1. PHP的设计理念及特点 多进程模型:由于PHP是多进程模型,不同请求间互不干涉,这样保证了一个请求挂掉不会对全盘服务造成影响,当然,随着时代发展,PHP也早已支持多线程模型. 弱类型语言:和C/C++.Java.C#等语言不同,PHP是一门弱类型语言.一个变量的类型并不是一开始就确定不变,运行中才会确定并可能发生隐式或显式的类型转换,这种机制的灵活性在web开发中非常方便.高效,具体会在后面PHP变量中详述. 引擎(Zend)+组件(ext)的模式降低内部耦合.…