音视频数据介绍

article/2025/10/16 14:45:19

1、前言

     在诸如安防系统标准GB28181和“电网视频监控系统及接口”中,固定视频流的传输格式为PS格式。PS流和TS流的概念是在MPEG2的ISO/IEC-13818标准的第一部分“系统”中提出的。其提出的目的是提供MPEG2编码比特的存储与传输方案。

2、先介绍PS封装中的基本元素

1ES

     ES--Elementary  Streams  (原始流)是直接从编码器出来的数据流,可以是编码过的视频数据流(H.264,MJPEG等),音频数据流(AAC),或其他编码数据流的统称。ES流经过PES打包器之后,被转换成PES包。

   ES是只包含一种内容的数据流,如只含视频或只含音频等,打包之后的PES也是只含一种性质的ES,如只含视频ES的PES,只含音频ES的PES等。每个ES都由若干个存取单元(AU)组成,每个视频AU或音频AU都是由头部和编码数据两部分组成,1个AU相当于编码的1幅视频图像或1个音频帧,也可以说,每个AU实际上是编码数据流的显示单元,即相当于解码的1幅视频图像或1个音频帧的取样。

2)PES

    PES--Packetized  Elementary Streams  (分组的ES),ES形成的分组称为PES分组,是用来传递ES的一种数据结构。PES流是ES流经过PES打包器处理后形成的数据流,在这个过程中完成了将ES流分组、打包、加入包头信息等操作(对ES流的第一次打包)。PES流的基本单位是PES包。PES包由包头和payload组成。

3)PTSDTS

    PTS--PresentationTime Stamp(显示时间标记)表示显示单元出现在系统目标解码器(H.264、MJPEG等)的时间。

     DTS--Decoding Time Stamp(解码时间标记)表示将存取单元全部字节从解码缓存器移走的时间。

    PTS/DTS是打在PES包的包头里面的,这两个参数是解决音视频同步显示,防止解码器输入缓存上溢或下溢的关键。每一个I(关键帧)、P(预测帧)、B(双向预测 帧)帧的包头都有一个PTS和DTS,但PTS与DTS对于B帧不一样,无需标出B帧的DTS,对于I帧和P帧,显示前一定要存储于视频解码器的重新排序缓存器中,经过延迟(重新排序)后再显示,所以一定要分别标明PTS和DTS。

4)PS

    PS--Program Stream(节目流)PS流由PS包组成,而一个PS包又由若干个PES包组成(到这里,ES经过了两层的封装)。PS包的包头中包含了同步信息与时钟恢复信息。一个PS包最多可包含具有同一时钟基准的16个视频PES包和32个音频PES包。

5)TS

   TS--Transport Stream(传输流)由定长的TS包组成(188字节),而TS包是对PES包的一个重新封装(到这里,ES也经过了两层的封装)。PES包的包头信息依然存在于TS包中。

    TS流与PS流的区别在于TS流的包结构是固定长度的,而PS流的包结构是可变长度的。PS包由于长度是变化的,一旦丢失某一PS包的同步信息,接收机就会进入失步状态,从而导致严重的信息丢失事件。而TS码流由于采用了固定长度的包结构,当传输误码破坏了某一TS包的同步信息时,接收机可在固定的位置检测它后面包中的同步信息,从而恢复同步,避免了信息丢失。因此在信道环境较为恶劣、传输误码较高时一般采用TS码流,而在信环境较好、传输误码较低时一般采用PS码流。

6)TS单一码流、混合码流

单一性:TS流的基本组成单位是长度为188字节的TS包。

混合性: TS流由多种数据组合而成,一个TS包中的数据可以是视频数据,音频数据,填充数据,PSI/SI表格数据等(唯一的PID对应)。

3、基本流程

 

1)A/D转换后,通过MPEG-2压缩编码得到的ES基本流。这个数据流很大,并且只是I,P,B的这些视频帧或音频取样信息。

2)通过PES打包器,打包并在每个帧中插入 PTS/DTS标志,变成PES。原来是流的格式,现在成了数据包的分割形式。

3)PES根据需要打包成PS或TS包进行存储(DVD)或传输(DVB)。因每路音/视频只包含一路的编码数据流,所以每路PES也只包含相应的数据流。

附件:

 


http://chatgpt.dhexx.cn/article/tixtQ35w.shtml

相关文章

互联网海量视频数据的存储

原文链接:http://www.docin.com/p-86312184.html?docfromrrela 一、背景 互联网内容提供方式转变:用户创造内容。视频应用、网络游戏、搜索引擎等互联网衍生业务迅速发展,使得海量数据存储、管理和处理成为当今互联网公司面临的严峻问题。这…

浅析大数据时代下的视频技术发展趋势以及AI加持下视频场景应用

视频技术的发展可以追溯到19世纪初期的早期实验。到20世纪初期,电视技术的发明和普及促进了视频技术的进一步发展。 1)数字化:数字化技术的发明和发展使得视频技术更加先进。数字电视信号具有更高的清晰度和更大的带宽,可以更快地…

音视频数据方案

一点点想法:还请各路大神多多指点! 技术栈: 1、数据存储、数据缓存、数据索引:springboot redis mysql elasticSearch 2、数据抓取:python mysqlBeautifulSoup、Selenium、lxml 3、图片分析:pythonPill…

浅析基于EasyCVR视频技术构建工业园区视频安防大数据监管平台的方案

随着社会经济的快速发展,越来越多的工业园区也正在加快智能化建设的步伐,为入驻企业提供舒适、安全、科技、智慧的办公及生产环境。在建设园区的智能化安防视频监管平台时,需要满足两方面的需求:一是园区内部及周边公共区域安全防…

某马大数据全套视频

某马大数据 01、阶段一 Python大数据开发基础 01、第一章大数据介绍及开发环境 02、第二章 linux命令 03、第三章 MySQL数据库 04、第四章 excel的使用 05、第五章 kettle的使用 06、第六章 数据分析及可视化 07、第七章 大数据框架与数仓基础 08、第八章 数仓实战项目 …

视频观看行为高级分析(大数据分析)

今天介绍一下我们的视频观看行为高级分析功能。 一、观看行为分析 观看行为分析,基于Polyv大数据分析,能够以秒为粒度展示观众如何观看您的视频。 视频观看热力图是单次观看行为的图形化表示,Polyv云点播视频的每一次播放,都会产…

【毕业设计】基于大数据的抖音短视频数据分析与可视化 - python 大数据 可视化

文章目录 0 前言1 课题背景2 数据清洗3 数据可视化地区-用户观看时间分界线每周观看观看路径发布地点视频时长整体点赞、完播 4 进阶分析相关性分析留存率 5 深度分析客户价值判断 5 最后 0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,…

五分钟读懂视频大数据分析

 发展至今,大数据不再为互联网企业独有,而是逐渐成为覆盖各行业、可以为具体业务服务的技术。如今,春节不仅演化成了一年一度的“人口迁徙”大节,还成了交通、安保等领域接受技术检验的关键时刻&#xff…

视频大数据的三大发展趋势

趋势一:系统集成下的技术融合 智能视频分析计算本身就是一个非常耗计算资源的过程,利用分布式计算平台的并行计算能力及云平台的计算资源弹性分配机制,可以有效利用平台的计算资源提高视频处理能力。同时,视频分析算法也需要不断…

大数据与视频技术的融合趋势将带来怎样的场景应用?

视频技术和AI技术的融合是一种新兴的技术趋势,它将改变视频行业的运作方式。视频技术和AI技术的融合主要包括以下几个方面: 1)人脸识别技术 人脸识别技术是AI技术的一个重要应用场景。它可以通过对视频中的人脸进行识别和分析,实…

视频时代的大数据:问题、挑战与解决方案

导读:视频大数据云边协同解决方案。 作者:韩锐 刘驰 来源:大数据DT(ID:hzdashuju) 01 介绍 人们所观察的世界无时无刻不在改变,造就了“视频”相比于文本等类型的数据更具表现力,包含…

C# 工厂

(转载)C#抽象工厂模式的几种实现方法及比较 Posted on 2008-12-05 19:45 chefZ 阅读(5127) 评论(2) 编辑 收藏 引用 C#抽象工厂模式的几种实现方法及比较 转载地址: http://www.cndw.com/tech/net/2006042758468.asp 利用设计模式可以使我们的代码更灵活&#…

工厂方法模式--要车,轮子你得帮我装!

工厂模式常见的三种: 简单工厂模式工厂方法模式抽象工厂模式 工厂模式优点: 代码清晰,有效的封装变化对调用者屏蔽具体的产品类降低耦合度 工厂方法模式: 四要素: 工程接口,核心。工程实现产品接口&a…

Spring常用到的几种设计模式--工厂模式

一、工厂模式 工厂模式核心思想:只关心结果,隐藏复杂的过程 二、简单的工厂模式 BaoMa /** Copyright (C), 2013-2019, 天津大海云科技有限公司*/ package com.jikang.factory;/*** author yangjikang* date 2019/8/8 11:49* modified By yangjikang*…

php-工厂模式实现

php-工厂模式实现 概述 工厂模式(Factory Pattern):在工厂模式中,可以根据参数的不同返回不同类的实例。工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 还是拿工厂模式现实中中的例子: 现…

工厂模式整理

从部分博客摘录过来 定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类。 个人理解:顾名思义工厂模式就是按照工厂流水线的模式去生成产品,其设计思想就是提取产品的共性去制造流水线(接口包含的方法&#x…

Android源码设计模式——工厂模式

工厂模式也是为了构建一个新的对象,它是创建型模式的一种。 Android源码设计模式——Build模式(应用:AlertDialog源码分析) 上述是之前的Build模式,也是创建型模式一种,不懂的小伙伴可以回看下上篇博客。 …

设计模式 -- 工厂模式

工厂的指责就是制作产品,那么产品就可以理解为是我们的对象,而工厂就是为了实例化对象而对象的,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。 1、简单工厂模式 简单…

Vue轮子-Lottie-动画实现

不要问为什么 没有为什么。浮躁的7月首周。Keep Going And Stay Strong。 Lottie是一个IOS,Android和React Native库,可以实时渲染动画,动画被转化成JSON文件,节省了很多资源,允许应用程序像使用静态图像一样轻松使用…

java造轮子_RxJava 自己造轮子一

RXJava 造轮子 什么是rxjava? rxjava 是一个响应式编程,为了更好更优雅的处理异步时间,内部实现原理是观察者模式 自己造轮子实现Rxjava 观察者模式核心有两个,一个观察者一个被观察者 先创建一个被观察者observer(基层抽象类) //观察者的基…