cerberspace 发表于 2012-12-19 23:09:36

stagefright框架概述

<div id="cnblogs_post_body">  多媒体框架stagefright是android2.3后替代opencore的。整个框架非常庞大,这里将它分为编码器、解码器、合成器、分离器、PCM数据和YUV数据输入、数据源(DataSource)、渲染器、AudioPlayer等八个部分。接下来一系列博文会把stagefright分解为这八个部分来一一介绍,最后通过详细介绍Audio和Video的播放和录制过程来分析它们之间是如何关联的。
  http://images.cnblogs.com/cnblogs_com/cerberspace/416181/r_stagefright%e7%ae%80%e4%bb%8b.png
图1-1 stagefright数据流过程图
  上图简单示意了播放和录制时,媒体数据流在stagefright框架的各部分的流转。
  DataSource:从本地媒体文件或者流媒体读取数据,给分离器分析;
  分离器:获取文件格式和分离多路track;
  解码器:将压缩格式的音轨解码为PCM数据,视频经过解码为YUV数据;
  渲染器:将解码出来的视频数据经过color转换为RGB输出到屏幕;
  AudioPlayer:包含了audiotrack,将音频PCM数据输出到音频设备;
  PCM数据和YUV数据输入:通过camera采集的YUV数据和mic采集的PCM数据送到编码器;
  编码器:压缩音视频为各种编码格式的数据;
  合成器:将压缩好的数据按照文件格式写入到媒体文件;
页: [1]
查看完整版本: stagefright框架概述