多媒体框架stagefright是android2.3后替代opencore的。整个框架非常庞大,这里将它分为编码器、解码器、合成器、分离器、PCM数据和YUV数据输入、数据源(DataSource)、渲染器、AudioPlayer等八个部分。接下来一系列博文会把stagefright分解为这八个部分来一一介绍,最后通过详细介绍Audio和Video的播放和录制过程来分析它们之间是如何关联的。

  

图1-1 stagefright数据流过程图

  上图简单示意了播放和录制时,媒体数据流在stagefright框架的各部分的流转。
  DataSource:从本地媒体文件或者流媒体读取数据,给分离器分析;
  分离器:获取文件格式和分离多路track;
  解码器:将压缩格式的音轨解码为PCM数据,视频经过解码为YUV数据;
  渲染器:将解码出来的视频数据经过color转换为RGB输出到屏幕;
  AudioPlayer:包含了audiotrack,将音频PCM数据输出到音频设备;
  PCM数据和YUV数据输入:通过camera采集的YUV数据和mic采集的PCM数据送到编码器;
  编码器:压缩音视频为各种编码格式的数据;
  合成器:将压缩好的数据按照文件格式写入到媒体文件;

转载于:https://www.cnblogs.com/cerberspace/archive/2012/10/12/2720010.html

stagefright框架概述相关推荐

  1. 2021年大数据Spark(一):框架概述

    目录 Spark框架概述 Spark 是什么 分布式内存迭代计算框架 官方定义: Spark框架概述 Spark 是加州大学伯克利分校AMP实验室(Algorithms Machines and Pe ...

  2. 【Android 组件化】路由组件 ( 路由框架概述 )

    文章目录 一.路由框架概述 二.路由框架整体流程 三.博客资源 组件化系列博客 : [Android 组件化]从模块化到组件化 [Android 组件化]使用 Gradle 实现组件化 ( Gradl ...

  3. MyBatis 框架概述

    1.什么是框架?     它是我们软件开发中的一套解决方案,不同的框架解决的是不同的问题.     使用框架的好处:         框架封装了很多的细节,使开发者可以使用极简的方式实现功能.大大提高 ...

  4. wxWidgets:打印框架概述

    wxWidgets:打印框架概述 wxWidgets:打印框架概述 打印输出 打印机 wxPrintPreview wxPrinterDC wxPostScriptDC 打印对话框 打印数据 wxPr ...

  5. Tapestry框架概述

    Tapestry带来了真正的Java web应用程序OOP编程,摘自<深入浅出Tapestry>中的一句话.这本书也是我学习Tapestry的参考之一,其他参考资料如<Tapestr ...

  6. [Spring5]Spring框架概述

    Spring框架概述 1.Spring是轻量级的开源的JavaEE框架 2.Spring可以解决企业应用开发的复杂性 3.Spring有两个核心部分:IOC和Aop a.IOC:控制反转,把创建对象过 ...

  7. Python 爬虫进阶一之爬虫框架概述

    综述 爬虫入门之后,我们有两条路可以走. 一个是继续深入学习,以及关于设计模式的一些知识,强化 Python 相关知识,自己动手造轮子,继续为自己的爬虫增加分布式,多线程等功能扩展.另一条路便是学习一 ...

  8. Spring框架概述(快速入门)

    Spring 框架概述: 目录 Spring 框架概述: 1.Spring 是轻量级的开源的 javaEE 框架 2.Spring 有两个核心部分:IOC 和 AOP: 3.Spirng 特点: 4. ...

  9. [转载] 快速学习-Mybatis框架概述

    参考链接: Java在竞争性编程中的快速I/O 第1章 框架概述 1.1 什么是框架 1.1.1 什么是框架 框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互 ...

最新文章

  1. 对tomcat来说,每一个进来的请求(request)都需要一个线程,直到该请求结束。
  2. DEV柱状图----傻瓜版
  3. javascript基础 (2)
  4. Android libcore添加JNI调用Hal层接口问题
  5. 队列和消息队列_消息队列概述[幻灯片]
  6. lambda java_Java Lambdas简介
  7. 中缀变后缀(nyoj)
  8. 用氦气(He)、氖气(Ne)、氩气(Ar)、118号元素(气奥)(Og,放射性,人造元素)组成的激光器
  9. php会员中心页面,PhpCMS会员中心操作说明
  10. 英文文献pdf转成中文
  11. my.cnf配置详解
  12. shanzhi -接小球游戏4.0
  13. 如何制作生成GIF?手把手教你生成GIF动态图
  14. 12 如何用网格策略网住收益?——实操篇
  15. 高数:微分中值定理介值定理证明题浅析
  16. 电路仿真软件proteus简单使用
  17. Android蓝牙开发介绍
  18. Win10怎么通过设置组策略编辑器锁定IE主页
  19. C语言实现Base64编码转码
  20. 5分钟介绍各种类型的人工智能技术

热门文章

  1. 网络推广——网络推广专员从多角度分析网站关键词排名受影响因素
  2. 企业网站关键字要学会注重重点优化!
  3. python元组和列表都支持的方法是_python_列表和元组
  4. geoip2 php,Geoip geoip-api-php 库包使用 – 通过ip 找到国家
  5. 别做喷子,多去钻研!
  6. (转载)KVM is required to run this AVD /dev/kvm permission denied Ubuntu Android Studio
  7. 开发日记-20190430 关键词 apt,aspectj,javassist
  8. 计算机网络相关知识 参考博客 子网掩码怎么理解 网关及网关的作用 路由器基础知识详解
  9. 两个有序数组的中位数(第k大的数)
  10. 深度学习实战篇-基于RNN的中文分词探索