FFmpeg基础知识音频篇(二)
音频基础知识
声音的频率是周期的倒数,它表示的是声音在1秒钟内的周期数,单位是赫兹(Hz)。千赫(kHz),即1000Hz,表示每秒振动1000次
声音有振幅,振幅的主观感觉是声音的大小。声音的振幅大小取决于空气压力波距平均值(也称平衡态)的最大偏移量。
采样率(采样频率)(也称为采样速度或者采样频率)定义了每秒从连续信号中提取并组成离散信号的采样个数(每秒钟采样的点的个数),它用赫兹(Hz)来表示。采样频率的倒数叫作采样周期或采样时间,它是采样之间的时间间隔。注意不要将采样率与比特率(bit rate,亦称“位速率”)相混淆。
采样定理表明采样频率必须大于被采样信号带宽的两倍,另外一种等同的说法是奈奎斯特频率必须大于被采样信号的带宽,人耳能听到的频率范围是[20H~20kHz],所以采样频率一般为44.1Khz,这样就能保证声音到达20Khz也能被数字化,从而使得经过数字化处理之后,人耳听到的声音质量不会被降低。
如果信号的带宽是100Hz,那么为了避免混叠现象采样频率必须大于200Hz。
换句话说就是采样频率必须至少是信号中最大频率分量频率的两倍,否则就不能从信号采样中恢复原始信号。
采样精度(采样深度):每个“样本点”的大小,
常用的大小为8bit, 16bit,24bit。
通道数:单声道,双声道,四声道,5.1声道。
比特率:每秒传输的bit数,单位为:bps(Bit Per Second)
间接衡量声音质量的一个标准。
没有压缩的音频数据的比特率 = 采样频率 * 采样精度 * 通道数。
码率: 压缩后的音频数据的比特率。常见的码率:
96kbps: FM质量
128-160kbps:一般质量音频。
192kbps: CD质量。
256-320Kbps:高质量音频
码率越大,压缩效率越低,音质越好,压缩后数据越大。
码率 = 音频文件大小/时长。
帧:每次编码的采样单元数,比如MP3通常是1152个采样点作为一个编码单元,AAC通常是1024个采样点作为一个编码单元
帧长:
可以指每帧播放持续的时间:每帧持续时间(秒) = 每帧采样点数 / 采样频率(HZ)
比如:MP3 48k, 1152个采样点,每帧则为 24毫秒
1152/48000= 0.024 秒 = 24毫秒;
也可以指压缩后每帧的数据长度。
所以讲到帧的时候要注意他适用的场合视频也有帧的概念。
**交错模式:**数字音频信号存储的方式。数据以连续帧的方式存放,即首先记录帧1的左声道样本和右声道样本,再开始帧2的记录…
**非交错模式:**首先记录的是一个周期内所有帧的左声道样本,再记录所有右声道样本
当前数字音频编码领域存在着不同的编码方案和实现方式, 但基本的编码思路大同小异, 如图所示。
音频编解码器选型
OPUS
MP3
AAC
AC3和EAC3 杜比公司的方案
FFmpeg基础知识音频篇(二)相关推荐
- JavaScript 基础知识 - DOM篇(二)
7. 节点操作 7.1 节点的属性 节点分类: 标签节点 文本节点 属性节点 注释节点 节点常用的属性: nodeType:节点的类型 nodeName:节点名称 nodeValue:节点值 常见的节 ...
- JavaScript 基础知识 - 入门篇(二)
11. 函数 11.1 函数的基础知识 为什么会有函数? 在写代码的时候,有一些常用的代码需要书写很多次,如果直接复制粘贴的话,会造成大量的代码冗余: 函数可以封装一段重复的javascript代码, ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- SQL数据库基础知识-巩固篇一
SQL数据库基础知识-巩固篇<一>... 首先展示两款我个人很喜欢的数据库-专用于平时个人SQL技术的练习<特点:体积小,好安装和好卸载,功能完全够用了> MySQL-57 D ...
- 基础知识:篇4-make工具与Makefile文件概念
说明: 本文章旨在总结备份.方便以后查询,由于是个人总结,如有不对,欢迎指正:另外,内容大部分来自网络.书籍.和各类手册,如若侵权请告知,马上删帖致歉. QQ 群 号:513683159 [相 ...
- FFmpeg 基础知识
第一.FFmpeg 简介和基础知识 1.1 FFmpeg 简介 FFmpeg的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward",FF ...
- 【Java基础知识回顾篇】之打怪升级Day001
Java基础知识回顾篇之打怪升级Day001 目录 Java基础知识回顾篇之打怪升级Day001 简介 一.为什么现在主流的是Java8和Java11? 二.简单尝试编写java程序 1.编写一个He ...
- 音视频基础知识---音频编码格式
音视频基础知识汇总: 音视频基础知识---协议相关RTSP RTMP HLS 音视频基础知识---封装格式 音视频基础知识---视频编码格式 音视频基础知识---音频编码格式 音视频基础知识---像素 ...
- C#基础知识梳理系列二:C#的演绎大师:类型
C#基础知识梳理系列二:C#的演绎大师:类型 摘 要 如果说C#是CLR特邀演员阵容之一,那类型class绝对是C#的演绎/演艺大师.不朽灵魂!它不仅演绎了C#的豪放,也演艺了C#的柔美.时而恢弘.时 ...
最新文章
- Opencv Mediapipe 人体追踪
- [云炬python3玩转机器学习]6-2模拟梯度下降法
- linux centos 7z压缩工具简单使用
- WordList02
- c# 窗体启动后自动执行 Form_Load事件注册及调用
- C语言求超级素数的个数,求一个输出a-b的超级素数程序(c)
- 计算机信息技术专业排名,国内计算机信息技术学科强校盘点
- python爬网易云音乐评论最多的歌_Python爬取网易云音乐上评论火爆的歌曲
- matlab2010a中文,MATLAB 2010a解决中文字体乱码的方法
- 一种改进CA-CFAR算法及其MATLAB编程实现,论文仿真——《基于LFMCW雷达多目标检测的CA-CFAR改进算法》
- 深入浅出 CSS 动画
- tsconfig.json文件配置参数的注解
- Placement service – placement安装(wallaby-allinone)
- 中文字号和磅数的联系
- 7-11 最长的单词
- 车辆网络安全ISO/SAE 21434解读(十)TARA分析
- python中占位符的使用
- 问答系统(QA)调研
- [论文笔记] SODA小目标综述(西工大)
- Windows AD证书服务系列---部署CA(2)