音视频入门基础:MPEG2-TS专题(20)——ES流简介

《T-REC-H.222.0-202106-S!!PDF-E.pdf》第27页对ES进行了定义。ES流是PES packets(PES包)中编码的视频、编码的音频或其他编码的比特流。一个ES流(elementary stream)在具有且只有一个stream_id的PES packets序列中携带:

在《音视频入门基础:MPEG2-TS专题(18)------PES流简介》 中讲到,PES流中一个PES packet由PES packet header(PES包的包头)和PES packet data bytes(PES包的负载)组成。而PES packet data bytes中携带的就是ES流,即包含视频、音频或数据的连续码流。

PES packet的PES packet header中有一个占1字节stream_id属性,指定ES流的类型和编号:

从《音视频入门基础:MPEG2-TS专题(16)------PMT简介》中也可以知道,在PMT表中存在一个stream_type属性,指定媒体流的类型:

下面通过两个具体的例子进行验证:

(一)当某TS流中的PMT表中stream_type属性的值为0x1B时,从上面表格中可以查到对应的媒体流类型为AVC,即H.264视频流:

通过Elecard Stream Analyzer工具可以查看到其对应elementary_PID的视频就是以0x000001作为起始码的AnnexB格式的H.264码流(关于AnnexB可以参考:《音视频入门基础:H.264专题(3)------EBSP, RBSP和SODB》)。也就是说该TS流中对应elementary_PID的ES流就是AnnexB格式的H.264码流:

(二)当某TS流中的PMT表中stream_type属性的值为0x0F时,从上面表格中可以查到对应的媒体流类型为ADTS包装的AAC音频流:

通过Elecard Stream Analyzer工具可以查看到其对应elementary_PID的音频就是syncword属性固定为0b111111111111的ADTS包装的AAC音频流(关于ADTS可以参考:《音视频入门基础:AAC专题(3)------AAC的ADTS格式简介》)。也就是说该TS流中对应elementary_PID的ES流就是ADTS包装的AAC音频流:

相关推荐
ADI_OP13 小时前
用SigmaStudio+软件来开发ADSP-21565
算法·音视频·adi dsp中文资料·adi音频dsp·adi dsp开发教程
城事漫游Molly13 小时前
研究设计核心 Toolkit:从“知道方法”到“真正会设计”
大数据·人工智能·算法·ai写作·论文笔记
一只幸运猫.13 小时前
核心概念层——深入理解 Agent 是什么
大数据·数据库·人工智能
金融Tech趋势派15 小时前
2026企业微信AI服务商实测:微盛·企微管家领跑私域客户运营赛道
大数据·人工智能·企业微信
青岛前景互联信息技术有限公司15 小时前
又到一年开学季,大学校园安全管理中的突出问题分析
大数据·人工智能·物联网
萤丰信息16 小时前
避坑指南+案例拆解,智慧园区建设如何少走弯路
大数据·智慧城市
柏颖漫谈16 小时前
欧洲汽车可能正扶持韩国电池制衡中国电池,不希望完全受制于人,但已经晚了
大数据·人工智能·汽车
成旭先生16 小时前
【2026年可用】企业信息查询API接口
java·大数据·模糊查询·企业信息
谁似人间西林客16 小时前
解析工业大数据在制造业转型中的应用场景与价值
大数据
青岛前景互联信息技术有限公司16 小时前
从被动处置到主动防控:智能接处警带来的四大核心价值
大数据·人工智能·物联网