深入解析音频:格式、同步及封装容器

news2025/4/24 19:43:48

物理音频和数字音频

物理音频

定义:物理音频就是声音在自然界中的物理表现形式,本质上是一种机械波,通过空气或其他介质传播。例如,当我们说话、乐器演奏或物体碰撞时,都会产生振动,这些振动会引起周围介质(如空气)分子的疏密变化,形成疏密相间的声波,以一定的速度向四周传播,这就是物理音频的产生和传播过程。
特性

  • 频率:决定了声音的音调高低,单位是赫兹(Hz)。例如,高音的频率较高,低音的频率较低。人耳能够听到的声音频率范围通常在 20Hz 到 20000Hz 之间。
  • 振幅:与声音的响度相关,振幅越大,声音越响亮。它表示声波中介质分子振动的幅度大小。
  • 波形:不同的声源发出的声音具有不同的波形,波形决定了声音的音色。例如,钢琴和小提琴演奏相同音高和响度的音符时,我们能够区分它们,就是因为它们具有不同的波形,即不同的音色。

数字音频

定义:数字音频是将物理音频的模拟信号经过一系列处理,转换为数字数据的形式,以便于计算机等数字设备进行存储、处理和传输。
实现步骤

  • 采样:按照一定的时间间隔对模拟音频信号进行抽样,获取离散的样本点。采样频率决定了每秒采集样本的数量,例如,常见的采样频率有 44.1kHz、48kHz 等。采样频率越高,对原始音频信号的还原度就越高,但同时占用的存储空间也越大。

(人耳能听到的声音频率范围通常是 20Hz 到 20kHz。根据奈奎斯特采样定理,为了能够准确地还原原始信号,采样频率必须至少是信号最高频率的两倍。选择 44.1kHz 的采样频率)

  • 量化:将采样得到的样本点的幅度值映射到有限个离散的量化电平上,把连续的模拟量转换为离散的数字量。量化位数决定了每个样本点能够表示的精度,如 8 位量化可以表示 256 个不同的电平,16 位量化则可以表示 65536 个不同的电平。量化位数越高,音频的动态范围越大,声音的细节和层次感就越丰富。
  • 编码:将量化后的数字信号按照一定的编码格式进行编码,以便于存储和传输。常见的编码格式有 MP3、WAV、AAC 等。不同的编码格式在压缩比、音质和兼容性等方面有所不同。例如,MP3 是一种常用的有损压缩编码格式,它通过去除人耳难以察觉的音频信息来减小文件大小,但会在一定程度上损失音质;而 WAV 是一种无损编码格式,它保留了原始音频的所有信息,音质较好,但文件体积较大。

相互转化

在这里插入图片描述
上面无疑是从物理到数字,下面则是相反。

音频基本概念

  • 采样频率的概念: 每秒钟采样的点的个数。常用的采样频率有

22000(22kHz):无线广播。
44100(44.1kHz): CD音质。
48000(48kHz):数字电视, DVD。
96000(96kHz):蓝光,高清DVD。
192000(192kHz):蓝光,高清DVD。

  • 采样频率的作用

采样频率越高,对原始音频信号的细节捕捉就越精确,在回放时就越能接近原始声音。例如,对于具有丰富高频细节的音乐,较高的采样频率可以更好地保留这些细节,使音乐听起来更加清晰、真实。

  • 采样精度(采样深度) :每个“样本点”的大小

常用的大小为8bit, 16bit, 24bit。

  • 采样精度的作用

决定音频的动态范围:采样精度决定了数字音频能够表示的声音强度的范围。它以位(bit)为单位,比如 8 位、16 位、24 位等。每增加一位,可表示的数值范围就翻倍。例如,8 位采样精度可以表示 256 个不同的量化电平,而 16 位采样精度则能表示 65536 个电平。这意味着 16 位采样精度的音频动态范围更大,能够更精确地捕捉和还原从非常微弱的声音到非常响亮的声音之间的各种细节,使音频听起来更加饱满、丰富,有更强的层次感和真实感。(简要 没必要太了解)

  • 通道数: 单声道,双声道(立体声),四声道, 5.1声道

通道数是数字音频中的一个重要概念,它表示在音频录制、传输和播放过程中所使用的独立音频信号路径的数量,常见的有单声道、立体声和多声道等形式,不同的通道数在音频的空间表现、沉浸感和信息丰富度等方面有着不同的作用:

  • 比特率: 每秒传输的bit数,单位为: bps(Bit Per Second)。
    间接衡量声音质量的一个标准。

没有压缩的音频数据的比特率 = 采样频率 * 采样精度 * 通道数。

  • 码率: 压缩后的音频数据的比特率。常见的码率:

96kbps: FM质量
128-160kbps:一般质量音频。
192kbps: CD质量。
256-320Kbps:高质量音频
码率越大,压缩效率越低,音质越好,压缩后数据越大。
码率 = 音频文件大小/时

-** 帧**: 音频的帧的概念没有视频帧那么清晰,几乎所有视频编码格式都可
以简单的认为一帧就是编码后的一张图像。但是音频帧长:可以指每帧采样数播放的时间, mp3音频协议 采样频率为:48k, 1152个采样点,每帧则为
24ms; aac则是每帧是1024个采样点。攒够一帧的数据才送去做编码

1.也可以指压缩后每帧的数据长度。所以讲到帧的时候要注意他适用
的场合
2.每帧持续时间(秒) = 每帧采样点数 / 采样频率(HZ)

  • 帧存放模式:就是帧的存放模式
    • 交错模式: 数字音频信号存储的方式。数据以连续帧的方式存放,即首先记录帧1的左声道样本和右声道样本,再开始帧2的记录
      在这里插入图片描述
    • 首先记录的是一个周期内所有帧的,左声道样本,再记录所有右声道样本
      在这里插入图片描述

音频封装格式

  • WAV
    特点:是一种无损的音频格式,具有较高的音频质量,能够保留原始音频的所有细节。它支持多种采样频率和采样精度,并且可以包含多个声道的音频数据。WAV 文件通常未经过压缩或者采用简单的 PCM(脉冲编码调制)方式进行存储,因此文件体积较大。
    应用场景:常用于专业音频录制、音频编辑以及对音频质量要求较高的场合,如电影制作、音乐制作等。由于其无损的特性,也适合作为音频素材的原始存储格式,以便后续进行各种处理和转换。
  • MP3
    特点:是一种广泛使用的有损音频压缩格式。它采用了感知编码技术,能够在相对较小的文件体积下保持较好的音频质量。MP3 通过去除人耳难以察觉的音频信息,如高频部分的一些细节和掩蔽效应下被掩盖的声音,来实现压缩。用户可以根据需要选择不同的比特率来控制压缩比和音频质量,比特率越高,音频质量越好,文件体积也越大。
    应用场景:由于其文件体积小、兼容性强,被广泛应用于音乐下载、在线音乐播放、便携式音乐播放器等领域,是目前最流行的音频格式之一,方便用户在各种设备上存储和播放大量的音乐文件。
  • AAC
    特点:也是一种有损音频压缩格式,在相同的比特率下,AAC 的音频质量通常优于 MP3。它采用了更先进的编码算法,能够更精确地模拟人耳的听觉特性,更好地保留音频的细节和音色。AAC 支持多声道音频,并且具有更高的压缩效率,能够在较低的比特率下提供出色的音频质量。
    应用场景:常用于数字音频广播(DAB)、数字电视、在线视频以及苹果设备的音乐播放等领域。许多视频网站也采用 AAC 作为音频编码格式,以在保证音频质量的同时,减少视频文件的整体大小,提高网络传输效率。
  • FLAC
    特点:是一种无损音频压缩格式,它能够在不损失任何音频信息的前提下对音频数据进行压缩,压缩后的文件可以完全还原为原始的音频信号。FLAC 的压缩比通常比 WAV 文件小,文件体积相对适中,既能够节省存储空间,又能保证音频质量。
    应用场景:受到追求高品质音频的用户和音乐发烧友的喜爱,常用于音乐收藏、高清音频播放等场景。一些专业音频设备也支持 FLAC 格式,方便用户在享受高品质音频的同时,不必担心因压缩而导致的音质损失。
  • OGG
    特点:是一种开源的音频格式,采用了 Vorbis 编码算法。它具有良好的音频质量和压缩性能,能够在不同的比特率下提供稳定的音频表现。OGG 格式支持多声道音频,并且具有动态比特率(VBR)功能,可以根据音频内容的复杂程度自动调整比特率,从而在保证音频质量的同时进一步减小文件体积。此外,OGG 格式还具有良好的跨平台性和版权免费的优势。
    应用场景:在一些开源软件、游戏以及网络音频应用中得到了广泛应用。由于其版权免费和开放的特性,也受到一些独立音乐人和开发者的青睐,用于音频的创作、发布和传播。

混合封装容器

  • 封装格式(也叫容器) 就是将已经编码压缩好的视频流、音频流及字幕按
    照一定的方案放到一个文件中,便于播放软件播放。
    一般来说,视频文件的后缀名就是它的封装格式。
    封装的格式不一样,后缀名也就不一样。
    比如:同样的陷可以做成饺子也可以做成包子。对于视频也是一个道理,
    同样的音视频流可以用不同容器来承载。
    在这里插入图片描述

H264+AAC封装为FLV或MP4是最为流行的模式

音视频同步基础

  • DTS( Decoding Time Stamp) : 即解码时间戳,这个时间戳的
    意义在于告诉播放器该在什么时候解码这一帧的数据。
  • PTS( Presentation Time Stamp) : 即显示时间戳, 这个时间
    戳用来告诉播放器该在什么时候显示这一帧的数据。

在视频编码过程中,由于编码格式如H.264可能对帧进行重新排序,因此解码顺序和显示顺序可能不一致。DTS和PTS的存在就是为了解决这个问题。DTS标识读入内存中的bit流在什么时候开始送入解码器中进行解码,而PTS标识解码后的视频帧什么时候被显示出来。
PTS和DTS共同确保音视频流的正确处理和播放。解码器使用DTS来决定帧的解码顺序,而播放器使用PTS来决定帧的显示顺序。这种同步工作机制确保了帧在正确的时间点被解码和播放,从而实现了音视频同步。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2324454.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RPCGC阅读

24年的MM 创新 现有点云压缩工作主要集中在保真度优化上。 而在实际应用中,压缩的目的是促进机器分析。例如,在自动驾驶中,有损压缩会显着丢失户外场景的详细信息。在三维重建中,压缩过程也会导致场景数据中语义信息(Contour)的…

医疗CMS高效管理:简化更新维护流程

内容概要 医疗行业内容管理系统(CMS)的核心价值在于应对医疗信息管理的多维复杂性。面对诊疗指南的动态更新、科研数据的快速迭代以及多机构协作需求,传统管理模式往往面临效率瓶颈与合规风险。现代化医疗CMS通过构建结构化权限管理矩阵&…

《Spring Cloud Eureka 高可用集群实战:从零构建高可靠性的微服务注册中心》

从零构建高可用 Eureka 集群 | Spring Cloud 微服务架构深度实践指南 本文核心内容基于《Spring Cloud 微服务架构开发》第1版整理,结合生产级实践经验优化 实验环境:IntelliJ IDEA 2024 | JDK 1.8| Spring Boot 2.1.7.RELEASE | Spring Cloud Greenwich…

DSP+AI综合应用案例1——三种波形识别(预告)

采用1kHz采样率,识别方波、正弦波、三角波三种波形,算法采用傅里叶变换与神经网络,识别结果如下: 可以达到1ms内实现检测,逐渐完善到CanMV K230 或MCU中,待续

去噪算法大比拼

目录 效果图: 实现代码: 密集抖动 pip install pykalman 效果图: 实现代码: import numpy as np import cv2 import matplotlib.pyplot as plt from scipy.ndimage import gaussian_filter1d from scipy.signal import butter, filtfilt, savgol_filter from pykalma…

浅拷贝或深拷贝js数组或对象的方法

在js中,直接通过赋值操作拷贝数组,会导致新旧数组互相影响。 这是因为数组、对象等数据属于引用类型(Reference Type)数据。对引用类型数据进行赋值操作时,实际上拷贝的是其内存地址的引用(即指向堆内存中对…

CKS认证 | Day3 K8s容器运行环境安全加固

一、最小特权原则(POLP) 1)最小特权原则 (Principle of least privilege,POLP) : 是一种信息安全概念,即为用户提供执行其工作职责所需的最 小权限等级或许可。 最小特权原则被广泛认为是网络安全的最佳实…

28_跨域

目录 promise promise的基本语法 async await try catch promise 静态方法 跨域 跨域的解决方案 1-cors ​编辑 2-jsonp方案 3-代理服务器 promise promise 是一个es6新增的语法 承诺的意思 作用:是专门用来解决回调地狱!!!! promise的基本语法 // 基本语法:// Pr…

Stable Diffusion太慢?国内Midjourney平替方案—商用合规部署

一、AI绘画商用核心痛点(为什么需要替代Stable Diffusion/Midjourney?) 1. 速度慢,高并发支持差 Stable Diffusion:单卡GPU生成1张图需3-10秒,并发超过10任务易崩溃Midjourney:排队制&#xf…

综述速读|086.04.24.Retrieval-Augmented Generation for AI-Generated Content A Survey

论文题目:Retrieval-Augmented Generation for AI-Generated Content: A Survey 论文地址:https://arxiv.org/abs/2402.19473 bib引用: misc{zhao2024retrievalaugmentedgenerationaigeneratedcontent,title{Retrieval-Augmented Generation…

JavaScript中的Math对象和随机数

目录 一、常用数学方法 1. 数值处理 2. 极值与运算 3. 三角函数(参数为弧度) 4. 对数与指数 5. 常量 二、随机数生成 Math.random() 1. 基础范围控制 2. 整数随机数 三、实际应用场景 1. 随机颜色生成 2. 数组随机排序 3. 概率控制 四、注…

lxd-dashboard 图形管理LXD/LXC

前言 LXD-WEBGUI是一个完全用AngularJS编写的Web应用程序,无需应用服务器、数据库或其他后端服务支持。只需要简单地托管静态HTML和JavaScript文件,就能立即投入使用。这个项目目前处于测试阶段,提供了直观的用户界面,帮助用户便捷地管理和控制LXD实例。 安装lxd-dashboa…

python纯终端实现图片查看器(全彩)(windows)

很多人作为命令行爱好者,无法在终端内直接查看图片是无法忍受的, 那就写一个! 先直接上代码 import os import sys from PIL import Image import numpy as np import colorama import msvcrt # Windows专用# 初始化colorama colorama.ini…

【动态规划篇】- 路径问题

62. 不同路径 题目链接: 62. 不同路径 题目解析: 状态表示 dp[i][j]表示:以[i][j]为终点时,一共有多少种路径。 状态转移方程 以[i][j]最近的几步来分析问题,要么从[i-1][j]位置向下走一步到达[i][j],要么从[i][j-1…

《新凯来:半导体设备制造领域的“国家队”》

《新凯来:半导体设备制造领域的“国家队”》 一、SEMICON China 爆火出圈:31 款设备背后的 “深圳力量” 1.1 展会现象级热度 在 2025 年 SEMICON China 展会现场,新凯来展台成了整届展会当之无愧的 “顶流”,被来自全球各地的专…

AI大模型最新发布[update@202503]

OpenAI GPT-4o:多模态,“o”代表Omni,即全能的意思,凸显了其多功能的特性。 多模态交互,GPT-4o可以接受文本、音频和图像的任意组合作为输入,并生成文本、音频和图像的任意组合输出。实时推理能力&#x…

深入浅出 Embedding

1. 什么是 Embedding? Embedding(嵌入)是一种将高维数据映射到低维连续空间的技术,用于表达数据的语义关系。简单来说,它是一种向量化表示,将文本、图像、用户行为等信息转换为数值向量,使得相似的数据在向量空间中距离更近。 2. 如何理解 Embedding? 2.1 浅显易懂的…

java项目之基于ssm的乡镇自来水收费系统(源码+文档)

项目简介 乡镇自来水收费系统实现了以下功能: 乡镇自来水收费系统在Eclipse环境中,使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,其管理员管理水表,审核用户更换…

Spring AI MCP 架构详解

Spring AI MCP 架构详解 1.什么是MCP? MCP 是一种开放协议,它对应用程序向大语言模型(LLMs)提供上下文信息的方式进行了标准化。可以把 MCP 想象成人工智能应用程序的 USB-C 接口。就像 USB-C 为将设备连接到各种外围设备和配件提供了一种…

目标识别与双目测距(1)环境搭建:Ubuntu+yolov5+pcl库

环境情况 ubuntu 18.04 → 20.04(最终) 安装Ubuntu1804虚拟机系统 Anaconda:可参考我的另一篇文章 Python 3.6.13 → 3.8(最终)Anaconda3-2021.05 目标识别:YOLOv5相关 1、安装git sudo apt install gi…