当前位置: 首页 > article >正文

音视频编码和封装格式

文章目录

  • 音视频编码格式
    • 音频编码
    • 视频编码
  • 音视频封装格式

音视频编码格式

音频编码

音频编码是一种将音频信号转换为数字形式的过程,目的是减少数据中的冗余,以便存储和传输。
音频编码的实质是通过抽样、量化和编码三个步骤,将连续变化的模拟信号转换为数字编码。

  • PCM
    目前计算机应用中,最高保真水平的音频编码格式。PCM约定俗成了无损编码能做到最大程度的无限接近绝对保真。被广泛用于素材保存及音乐欣赏,CD、DVD以及我们常见的WAV文件中均有应用,优点是音质好,缺点是体积大。
  • MP3
    MPEG1 or MPEG2 Audio LayerIII经常被称作MP3,是目前最流行的音频编码格式,有损压缩,相关的规范标准在ISO/EC11723, ISOAIEC13818-3。它是在1991年,由位于德国埃尔朗根的研究组织 Fraunhofer-Gesellschaft的一组工程师发明和标准化的,它设计用来大幅度地降低音频数据量,将音乐以1:10甚至1:12的压缩率,压缩成容量较小的文件
  • AAC
    • 基于MPEG2的音频编码技术。
    • 加入了SBR技术和PS技术
    • 高压缩比的音频压缩算法,AAC压缩比通常为18:1,也有数据说为20:1,远胜mp3;
    • 采用多声道,和使用低复杂性的描述方式
    • 支持多达48个音轨,15个低频(LFE)音轨,51多声道支持
    • 更高的采样率(最高可达96kH,音频CD为441kH)
    • 更高的采样精度(支持8it、16it、24bit、3bi,音频CD为16t)
    • 更高的解码效率
  • OPUS
    Opus是一个有损声音编码的格式,由Xiph.Org基金会开发,之后由IETF(互联网工程任务组)进行标准化,目标是希望用单一格式包含声音和语音,取代Speex和Vorbis,且适用于网络上低延迟的即时声音传输,标准格式定义于RFC 6716文件。Opus格式是一个开放格式,使用上没有任何专利或限制

视频编码

视频是连续的图像序列,由连续的帧构成,一帧即为一幅图像。由于人眼的视觉暂留效应,当帧序列以一定的速率播放时,我们看到的就是动作连续的视频。由于连续的帧之间相似性极高,为便于储存传输,我们需要对原始的视频进行编码压缩,以去除空间、时间维度的冗余。
视频编码是将视频数据从一种格式转换为另一种格式的过程

  • MPEG-1/2
    • MPEG-1标准主要针对SIF标准分辨率(NTSC制为352X240;PAL制为352X288)的图像进行压缩. 压缩位率主要目标为1.5Mb/s.较MJPEG技术,MPEG1在实时压缩、每帧数据量、处理速度上有显著的提高。但MPEG1也有较多不利地方:存储容量还是过大、清晰度不够高和网络传输困难。
    • MPEG-2 在MPEG-1基础上进行了扩充和提升,和MPEG-1向下兼容,主要针对存储媒体、数字电视、高清晰等应用领域,分辨率为:低(352x288),中(720x480),次高(1440x1080),高(1920x1080)。MPEG-2视频相对MPEG-1提升了分辨率,满足了用户高清晰的要求,但由于压缩性能没有多少提高,使得存储容量还是太大,也不适和网络传输。
  • MPEG-4
    • MPEG-4视频压缩算法相对于MPEG-1/2在低比特率压缩上有着显著提高,在CIF(352288)或者更高清晰度(768576)情况下的视频压缩,无论从清晰度还是从存储量上都比MPEG1具有更大的优势,也更适合网络传输。另外MPEG-4可以方便地动态调整帧率、比特率,以降低存储量。
    • MPEG-4由于系统设计过于复杂,使得MPEG-4难以完全实现并且兼容,很难在视频会议、可视电话等领域实现,这一点
      有点偏离原来地初衷。
  • H.261
    • H.261标准是为ISDN设计,主要针对实时编码和解码设计,压缩和解压缩的信号延时不超过150ms,码率px64kbps(p=1~30)。
  • H.261标准主要采用运动补偿的帧间预测、DCT变换、自适应量化、熵编码等压缩技术。 只有I帧和P帧,没有B帧,运动估计精度只精确到像素级。支持两种图像扫描格式:QCIF和CIF。
  • H.263
    • H.263标准是甚低码率的图像编码国际标准,它一方面以H.261为基础,以混合编码为核心,其基本原理框图和H.261十分相似,原始数据和码流组织也相似;另一方面,H.263也吸收了MPEG等其它一些国际标准中有效、合理的部分,如:半像素精度的运动估计、PB帧预测等,使它性能优于H.261。
    • H.263使用的位率可小于64Kb/s,且传输比特率可不固定(变码率)。
    • H.263支持多种分辨率: SQCIF(128x96)、 QCIF、CIF、4CIF、16CIF。
  • H.264/AVC
    • H.264集中了以往标准的优点,在许多领域都得到突破性进展,使得它获得比以往标准好得多整体性能:
      - 和H.263+和MPEG-4 SP相比最多可节省50%的码率,使存储容量大大降低;
      - H.264在不同分辨率、不同码率下都能提供较高的视频质量;
      - 采用“网络友善”的结构和语法,使其更有利于网络传输。
    • H.264采用简洁设计,使它比MPEG4更容易推广,更容易在视频会议、视频电话中实现,更容易实现互连互通,可以简便地和G.729等低比特率语音压缩组成一个完整的系统。
    • H.264/AVC在压缩编码效率、视频内容自适性处理能力方面及网络层面,特别是对IP网络及移动网络的自适应处理能力、抗干扰能力与顽健性等方面,相比H.263/MPEG-4均有大幅度提高,也就造成了H.264被热炒的局面。应该说,H.264/AVC的应用确属相当广泛,包括固定或移动的可视电话、移动电话、实时视频会议、视频监控、流媒体、多媒体视频、Internet视频及多媒体、IPTV、手机电视、宽带电话以及视频信息存储等,这也是业内普遍看好它的重要原因。
  • H.265
    高效视频编码(HEVC),也称为H.265和MPEG-H part 2,是视频压缩标准,是广泛使用的AVC(H.264或MPEG-4第10部分)的几个潜在后继者之一。 与AVC相比,HEVC在相同的视频质量水平下提供大约两倍的数据压缩比,或者以相同的比特率显著提高视频质量。 它支持高达8192×4320的分辨率,包括8K UHD.

音视频封装格式

  • AVI

    • AVI(Audio Video Interleaved)是一种成熟的音视频交错格式。
    • AVI符合RIFF(Resource Interchange File Format)文件规范,使用四字符码FOURCC(four-character code)来表示数据类型。
    • AVI文件的结构分为头部、主体和索引三个部分。主体中的图像数据和声音数据是交错存放的,通过尾部的索引可以定位到所需的位置。
    • AVI本身只提供了一个框架,内部的图像数据和声音数据格式可以是任意编码形式。
    • 由于索引位于文件尾部,因此在播放网络流媒体时可能效果不佳.
  • MKV

    • 开放标准的自由的容器和文件格式,多媒体封装格式
    • 能够在一个文件中容纳无限数量的视频、音频、图片或字幕轨道
    • 能容纳多种不同类型编码的视频、音频及字幕流
  • MP4

    • MP4(MPEG-4 Part 14)是一种常见的多媒体容器格式,它在ISO/IEC 14496-14标准文件中定义,并属于MPEG-4的一部分。
    • MP4是一种较为全面的容器格式,被认为可以嵌入任何形式的数据。通常见到的大多数MP4文件存储使用AVC(H.264)或MPEG-4(Part 2)编码的视频以及使用AAC编码的音频。
    • MP4文件中的所有数据都存储在box(盒子)中,也就是说,MP4由多个box组成,每个box都有类型和长度,并包含不同的信息,可以将box理解为数据对象块。box中可以嵌套另一个box,这种嵌套的box称为容器盒子(container box)。
  • FLV

    • FLV(Flash Video)是一种流行的流媒体格式,广泛用于网络视频应用。
    • 文件体积轻巧、封装播放简单
    • FLV文件由文件头(File Header)和文件体(File Body)两部分组成。文件头包含了关于文件的基本信息,如文件类型标识、版本号等。文件体是由一系列的标签(Tag)和标签大小(Tag Size)组成的。每个标签代表了视频或音频数据的一个时间段,并包含了与该时间段相关的数据和元数据。
  • MPEG2-TS

    • 一种标准的容器格式,用于传输和存储音视频、节目和系统信息协议数据
    • 广泛应用于数字广播系统
    • MPEG-2码流基本上都采用TS格式
    • TS流具有固定长度的传输包和较强的传输误码抵抗能力

http://www.kler.cn/a/563042.html

相关文章:

  • 基于DeepSeek-R1-70b的医疗AI训练推理框架的详细解析
  • 【万字长文】开源之播对话白鲸开源CEO郭炜--乐观主义的开源精神走得更远
  • Imagination 最新的D系列GPU IP 为智能手机和其他电力受限设备上图形和计算工作负载的高效加速设定了新的标准
  • Python 流程控制终极指南:if-else 和 for-while深度解析
  • 单片机病房呼叫系统设计
  • Java常见设计模式(上):创建型模式
  • 介绍一下自动驾驶 泊车算法
  • Agilent83630B信号发生器,可提供用来满足各种应用需要的机型选择机会
  • 【医学分割】基于显式形状先验学习的医学图像分割
  • Android内存优化指南:从数据结构到5R法则的全面策略
  • PCL源码分析:曲面法向量采样
  • RK3568平台开发系列讲解(内核篇)Linux 内核启动流程
  • 观成科技:海莲花“PerfSpyRAT”木马加密通信分析
  • 微服务架构与传统的单体架构有什么区别?微服务架构(Spring Cloud + Maven)强在哪?
  • LeetCode 1472.设计浏览器历史记录:一个数组完成模拟,单次操作均O(1)
  • css实现左右切换平滑效果
  • 数字人AIGC实训室:以AI技术赋能数字化教育
  • python基础学习day01
  • 高效能计算与高速数据传输的完美结合:飞腾D2000处理器与复旦微双FPGA集成主板
  • 数据库二三事(8)