android 编解码
文章平均质量分 84
WAN8180192
这个作者很懒,什么都没留下…
展开
-
android 解码出来的视频frame数据,是如何一步步的传递到显示端的(使用hwc composer online 合成)
1,初始化的时候,-----> allocateOutputBuffersFromNativeWindow-----> status_t OMXNodeInstance::useGraphicBuffer-----> virtual status_t useGraphicBuffer-----> status_t OMXNodeInstance::useGraphicBuffer2原创 2016-02-22 21:19:10 · 2419 阅读 · 1 评论 -
exynos SOC 平台的openmax component 运行分析
研究了一下exynos平台上的openmax component组件,绕来绕去的很绕。这里总结一下。先上个总体图:曾经尝试把awesomeplayer,以及OMXCodec里的各种event流程,queue流程,内存使用释放路径,以及各种线程概念全画到图里,却发现东西太多太杂,导致图混乱不堪。索性,这里重点只贴Exynos平台自己的东西,把重点放在数据流向,以及原创 2016-01-20 23:17:16 · 1248 阅读 · 0 评论 -
awesomeplayer_event 分析
awesomeplayer里面,最重要的一个函数,就是AwesomePlayer::onVideoEvent这个函数囊括了AV同步,元数据读取,帧数据显示等很多工作。我们前面提到过这个函数。现在针对这个函数总结一下他的工作流程首先总结一下onVideoEvent是如何产生的前面讲过,status_t AwesomePlayer::prepareAsync_l() 调用的时候原创 2016-01-20 23:15:03 · 756 阅读 · 0 评论 -
awesomeplayer_openmax回调函数运行流程
前面介绍了一些初始化的东西。下面介绍一下OMX回调函数的注册。熟悉OMX的同学可能都知道,OMX运行的时候,最实质上的函数是依靠的fillBuffer, emptyBuffer,FillBufferDone,EmptyBufferDone等几个函数。那么这几个函数是如何注册,以及运行起来的呢?下面总结一下大体流程是这样的:OMXCodec使用emptyBuffer(原创 2016-01-20 23:11:31 · 1724 阅读 · 0 评论 -
awesomeplayer_openmax 初始化分析
我们知道stagefright进行编解码的流控是基于OMX的。首先我们总结一下OMX的初始化部分。此文借鉴了以下几篇文章。感谢作者http://blog.csdn.net/hellofeiya/article/details/8601168http://blog.csdn.net/tjy1985/article/details/7926133http://blog.cs原创 2016-01-20 23:08:22 · 1166 阅读 · 0 评论 -
android AV同步详解
本文主要介绍 android 多媒体中,音视频同步问题。以下是详细说明:先提及一个背景基础知识: Stagefright中,audio的数据输出是通过AudioTrack中的callback来不断驱动AudioPlayer::fillBuffer获取数据video的数据输出,则是由OMX端在解码完毕后,给awesomeplayer发送消息event,在awe原创 2015-12-20 13:35:37 · 4586 阅读 · 0 评论 -
android 解码出来的视频frame数据,是如何一步步的传递到显示端的(使用 GPU offline 合成)
经过一段时间的研究,对android视频解码,直到显示端的整体流程,有了浅薄的理解这里总结一下,解码出来的视频帧,是怎么一步步走到显示的。平台: Exynos 4412 android 4.41, Exynos 4412 视频编解码依赖于硬件MFC。 解码出来的数据,不会进行原始数据的搬运。实际传递的是这些解码完数据的物理地址。2,显示端硬件获得这原创 2015-12-11 21:52:13 · 3731 阅读 · 0 评论 -
stagefright使用surfaceflinger buffer 的分析
之前学习了surfaceflinger和stagefright 两大模块,这两大模块之间联系最大的地方,就是surfaceflinger 管理显示buffer,然后stagefright 如何用这个buffer这里总结一下这一块自己学习的知识点平台samsung exynos ,android 4.4实际上本文想研究的就是三个问题:(1)如何获取显示buffer,并且怎原创 2015-12-11 21:34:28 · 3884 阅读 · 2 评论