esp32~MP3音频文件学习
主要了解了MP3文件结构及每个部分含义,音频处理的专业术语概念。
比较重要的概念:
1. 编码
从信息论的观点来看,描述信源的数据是信息和数据冗余之和,即:数据=信息+数据冗余。音频信号在时域和频域上具有相关性,也即存在数据冗余。将音频作为一个信源,音频编码的实质是减少音频中的冗余。
自然界中的声音非常复杂,波形极其复杂,通常我们采用的是脉冲代码调制编码,即PCM编码。PCM通过抽样、量化、编码三个步骤将连续变化的模拟信号转换为数字编码。
2. 比特率
是指每秒传送的比特(bit)数。单位为bps(Bit Per Second),比特率越高,传送的数据越大。在音频、视频领域,比特率常翻译为码率,比特率表示经过编码(压缩)后的音、视频数据每秒钟需要用多少个比特来表示,而比特就是二进制里面最小的单位,要么是0,要么是1。比特率与音、视频压缩的关系,简单的说就是比特率越高,音频、视频的质量就越好,但编码后的文件就越大;如果比特率越少则情况刚好相反。
比特率 = 采样率 * 采样位数 * 声道数
3. 码率/码流/位率:
是指音频、视频文件在单位时间内使用的数据流量,通俗一点的理解就是取样率,是音频、视频编码中质量控制中最重要的部分,一般我们用的单位是Kb/s、Mb/s。一般来说码流越大,压缩比就越小,质量就越高。码流越大,说明单位时间内取样率越大,数据流,精度就越高,处理出来的文件就越接近原始文件。
4. MP3简述
MP3全称为MPEG Audio Layer 3,它是一种高效的计算机音频编码方案,它以较大的压缩比将音频文件转换成较小的扩展名为.mp3的文件,基本保持源文件的音质,MP3是ISO/MPEG标准的一部分,
ISO/MPEG标准描述了使用高性能感知编码方案的音频压缩,此标准一直在不断更新以满足“质高量小”的追求,现已形成MPEG Layer1、Layer2、Layer3三种音频编解码方案,分别对应MP1、MP2、MP3 这三种声音文件
MPEG(Moving Picture Expert Group)是ISO下的一个动态图像专家组,它指定的MPEG标准广泛的应用于各种多媒体中,MPEG标准包括视频和音频标准,其中音频标准已制定出MPEG-1、MPEG-2、MPEG-2 ACC、MPEG-4。MPEG-1和MPEG-2标准使用同一个音频编解码族Layer1、2、3,MP3绝大多数使用的是MPEG1标准
MP3音频压缩包含编码和解码两部分,编码是将原始信号转换成电平信号的过程,解码即是逆过程,MP3 采用了感知音频编码(PerceptualAudio Coding)这一失真算法。人耳感受声音的频率范围是20Hz-20kHz,MP3截掉了大量的冗余信号和无关的信号,编码器通过混合滤波器组将原始声音变换到频率域,利用心理声学模型,估算刚好能被察觉到的噪声水平,再经过量化,转换成Huffman编码,形成MP3位流。解码器要简单得多,它的任务是从编码后的谱线成分中,经过反量化和逆变换,提取出声音信号。
5. MP3文件结构
大体上分为三个部分:ID3V2+音频数据+ID3V1
更多详细参考
- MP3格式音频文件结构解析、MP3文件格式解析
- MP3文件结构解析(超详细)、MP3格式音频文件结构解析
- MP3文件格式解析、MP3编码分析 - xiahouzuoxin
esp32~MP3音频文件学习相关推荐
- esp32~MP3音频文件学习,app架构
从信息论的观点来看,描述信源的数据是信息和数据冗余之和,即:数据=信息+数据冗余.音频信号在时域和频域上具有相关性,也即存在数据冗余.将音频作为一个信源,音频编码的实质是减少音频中的冗余. 自然界中的 ...
- 【音视频数据数据处理 14】【FLV篇】解析FLV视频码流,并分离FLV中的视频及MP3音频文件
[音视频数据数据处理 14][FLV篇]解析FLV视频码流,并分离FLV中的视频及MP3音频文件 一.FLV封装原理 1.1 Tag Data 1.1.1 Audio Tag Data结构(音频Tag ...
- html5如何获取音频资源6,【已解决】如何从喜马拉雅的页面中获取到mp3音频文件...
alex想要: 中的mp3音频文件 经过研究直接获取到m4a的音频文件 保存下来即可转出mp3文件 详细操作过程: 打开 开发者工具 后,总体过程是: 详细说是: 1.切换到Network 2.输入网 ...
- Python 将MP3音频文件转换成MIDI乐谱文件
Python 将MP3音频文件转换成MIDI乐谱文件 spleeter 1.系统环境 我的Python环境 安装spleeter pip install spleeter 查看spleeter是否安装 ...
- 用Python的mutagen模块获取MP3音频文件的时长
工作中碰到的需求,今天下午虽然解决了,但是不太简洁(本质上还是用的mutagen...),回家查了查试了试,用mutagen可以很容易获取MP3音频文件的长度, 一共三行代码 from mutagen ...
- 如何将mp4转换mp3音频文件
在影片中很多激斗的场景也有共生体和宿主之间的对话,但是电影院中的电影一般为ISO镜像文件,就算在网上下载的也是MP4或者MKV等视频文件,有很多人喜欢听书,那么如何听电影呢?这就需要格式转换了.那如何 ...
- vue上传录音_通过使用vue如何才能实现添加mp3音频文件
本篇文章主要介绍了vue中添加mp3音频文件的方法,现在分享给大家,也给大家做个参考. 有的时候我们需要在vue中添加音频文件,但是直接将音频文件放置了assets目录下的时候,会发现并不能正常播放, ...
- 在Android Studio中添加mp3音频文件
1.在res文件夹下创建raw文件夹 2.将mp3文件粘贴到raw中即可 注意事项: 在android studio开发环境中,需要将目录结构切换到android模式下 如果是poject模式会怎样? ...
- 使用pydub拼接多个MP3音频文件
使用pydub拼接多个MP3音频文件 安装pydub 参照github网页 安装pydub: pip install pydub 需要安装ffmpeg或者libav.(在windows下推荐libav ...
- mp4视频文件如何转为MP3音频文件
mp4视频文件如何转为MP3音频文件 工具介绍 我们可以使用到一个网页版的转换器,这款转换器在未登录的情况下,最大支持100M的大文件上传并转换,如果通过注册,可以支持无限大小的支持,但是这个注册需要 ...
最新文章
- diy高性能存储服务器,diy存储服务器
- app、H5、safari、appstore应用主页评分页之间拉起调用、打开手机某些系统功能、app打开文档
- 最近很火的 ClickHouse 是什么?
- nginx rewrite规则和参考
- 一键去除网页BOM属性【解决乱码,头部空白,#65279问题】
- 小学计算机课5年级第一课,人教版(2015)小学信息技术 五年级下册 第1课 录制声音真轻松 教案...
- ArcGIS AddIn 图斑比例分割工具,调用捕捉功能
- [译] 如何用 Python 写一个 Discord 机器人
- C中处理Python的Numpy数组的代码范例
- 爱与光 android4.0学习
- 国军标要求的产品“六性”到底是什么?
- LAMMPS学习总结1
- Java随机生成名字大全 手机号
- 【MacOS】必备的常用快捷键
- 笔记本显示器仅计算机,笔记本可以当屏幕用 笔记本屏幕当显示器用
- 百度世界大会全新打开方式!VR会场“希壤”上线
- php 定义宏函数,汇编语言宏函数
- Laravel CSRF token mismatch
- Tensorboard远程连接
- 单例模式 ,多例模式及工厂设计模式的简单案例介绍
热门文章
- 旺旺机器人的快捷短语_快答自动回复软件(自动聊天机器人) v1.6.5.0免费版
- Github中文汉化插件—亲测可用
- 基于python的数字印刷体识别_不告诉你我用了它配合Python简简单单开发OCR识别,带你识别手写体、印刷体、身份证等N种,附代码!...
- SSD1306驱动理解
- 基于MicroPython实现ESP32+SSD1306的小恐龙游戏
- Spring Boot 2.1.8.RELEASE集成UReport2 (四) 添加Mysql存储器
- 小米游戏本2019 I7-9750H安装黑苹果11.5 big Sur
- 易优(eyoucms)CMS网站搬家教程
- 2022年PC必备的5款软件,功能强大且免费,你用过几个?
- 什么是CANFD Light