视频播放器实现技术(一)

本文介绍了视频播放器的工作原理,从基本码流ES流、打包基本码流PES流到传输流TS流的概念,探讨封装格式如AVI、PS、TS、MKV。播放过程涉及访问、解复用、解码和输出四个步骤,重点解释了解复用如何分离音视频,解码如何还原压缩数据,并通过PTS进行帧同步。同时提到了视频编解码器和文件格式的相关资源链接。
摘要由CSDN通过智能技术生成

一、知识点
 

ES流(Elementary Stream): 也叫基本码流,包含视频、音频或数据的连续码流.

PES流(Packet Elementary Stream): 也叫打包的基本码流, 是将基本的码流ES流根据需要分成长
度不等的数据包, 并加上包头就形成了打包的基本码流PES流.

TS流(Transport Stream): 也叫传输流, 是由固定长度为188字节的包组成, 含有独立时基的一个或
多个program, 一个program又可以包含多个视频、音频、和文字信息的ES流; 每个ES流会有不同的
PID标示. 而又为了可以分析这些ES流, TS有一些固定的PID用来间隔发送program和ES流信息的表格: PAT和PMT表.

(在MPEG-2系统中,由视频, 音频的ES流和辅助数据复接生成的用于实际传输的标准信息流称为MPEG-2传送流)

封装 : 就是捆绑打包, 将画面视频文件和音轨文件打包在一起, 并按照一定规则建立排序和索引, 便
于播放器或播放软件来索引播放. 包括AVI \ PS(Program Stream)\ TS(Transport Stream)\ MKV(Matroska)等.

二、播放过程回放
 

Figure 1. 视频播放基本处理流程

 

①access 访问: 无需多说, 可理解为接收、获取、得到数据流

②demux 解复用: 把合在一起的音频和视频分离(还有可能的字幕)  

③decode 解码: 包括音频和视频的解码

④output 输出: 也分为音频和视频的输出(aout 和 vout)

这里需要着重说明的是: demux 和 decode 部分

demux部分
我们都知道, 音视频在制作的时候实际上是独立编码的, 得到的是分开的数据, 为了传输方便必须要用某种
方式合起来, 这就有了各种封装格式. 例如

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值