【读书会第13期】+第四章 音频文件的封装格式和编码格式

举报
花溪 发表于 2022/07/22 15:08:07 2022/07/22
【摘要】 今天主要学习内容知识点回顾:MP3 是我们在日常生活中最常见的音频格式之一,也是一种音频封装格式。日常生活中,我们经常可以看到 *.mp3 的音频文件,就像 mp4、flv 的视频封装格式一样。掌握FFmpeg查看音视频媒体信息的方法  今日重点MP3 封装格式MP3 封装格式FFmpeg的音频编码格式MP3 编码格式MP3 文件结构1.MP3 封装格式封装就是把编码器生成的多媒体文件,如视...

今天主要学习内容知识点回顾:

  • MP3 是我们在日常生活中最常见的音频格式之一,也是一种音频封装格式。日常生活中,我们经常可以看到 *.mp3 的音频文件,就像 mp4、flv 的视频封装格式
    一样。掌握FFmpeg查看音视频媒体信息的方法  今日重点MP3 封装格式
  • MP3 封装格式
  • FFmpeg的音频编码格式
  • MP3 编码格式
  • MP3 文件结构

1.MP3 封装格式

  • 封装就是把编码器生成的多媒体文件,如视频,音频,字幕按照一定的标准混合封装在一起。

//使用如下命令查看 ffmpeg 支持的封装格式列表
//mac用
ffmpeg -formats | grep mp3
//win 用 
ffmpeg -formats | findstr mp3
//使用如下命令播放一个 mp3 音乐文件

//普通模式
ffplay C:\ffmpeg\bin\小兔子乖乖.mp3

//波形图模式:
ffplay -showmode 1 C:\ffmpeg\bin\小兔子乖乖.mp3

//频谱图模式:
ffplay -showmode 2 C:\ffmpeg\bin\小兔子乖乖.mp3
  • 普通模式  ffplay C:\ffmpeg\bin\小兔子乖乖.mp3

  • 波形图模式:ffplay -showmode 1 C:\ffmpeg\bin\小兔子乖乖.mp3

  • 频谱图模式:ffplay -showmode 2 C:\ffmpeg\bin\小兔子乖乖.mp3

  • 常用封装格式

图片来源:android音视频   作者:adolph_lu

2.FFmpeg的音频编码格式

  • 音频编码的主要作用是将音频采样数据(PCM等)压缩成为音频码流,从而降低音频的数据量,偏于存储和传输。
  • FFmpeg 支持很多编码格式,包括 MP3、AAC、AC3 等。 

3.MP3 编码格式

  • MP3既是封装格式又是编码格式
  • MP3 也是一种音频编码格式。和视频不同,视频编码格式,比如 H264,一般会封装 MP4 或者 FLV 这种封装格式中被使用。音频编码格式 MP3,则是封装在同名的 MP3 的封装格式中。二者容易混淆,注意区分。
    //使用如下命令查看 ffmpeg 支持的编码格式列表
    ffmpeg -encoders| grep mp3
    
    //使用如下命令查看 ffmpeg 支持的解码格式列表
    ffmpeg -decoders| grep mp3
  • 使用如下命令查看 ffmpeg 支持的编码格式列表  win用 ffmpeg -encoders| findstr mp3

  • 使用如下命令查看 ffmpeg 支持的解码格式列表 win用  ffmpeg -decoders| findstr mp3

4.MP3 文件结构

ID3V2:位于MP3文件的首部(文件头),包含作者,作曲,专辑等信息,长度不固定,是对ID3V1的扩展,并非每个MP3文件均存在ID3V2。

Auido Data:

  • 1.音频数据由一系列的数据帧构成。
  • 2.每帧的长度不一定固定,取决于MP3编码过程中采用CBR和VBR模式,即使在CBR模式下也会存在帧长度不相同的情况。
  • 3.每帧都包含帧头和数据实体两部分。
  • 4.帧头记录了MP3文件的位率,采样率和版本等信息。
  • 5.如果采用CRC校验,则帧头后跟随2字节CRC校验,之后可能存在32字节的附加信息,也可能无附加信息。
  • ID3V1:存在于MP3文件的末位,长度为128字节,包含作者作曲专辑等信息,并非每个MP3文件均存在ID3V1。
  • 头部  ID3v2 可以不存在  在文件开始的位置,包含了作者、作曲、专辑等信息,长度不固定,扩展了ID3v1的信息。
  • 音频数据  数据帧  必须的 音频数据帧,在文件的中间位置,长度个数不定。
  • 尾部ID3v1可以不存在 包含了作者,作曲,专辑等信息,长度为128Byte。
  • ID3v2、ID3v1非必须的;在音频处理中,纯数据帧的MP3文件也比较常见。

将MP3文件以十六进制的形式打开,可以看到文件前10个字节为 49 44 33 04 00 00 00 00 00 23
1、identifier

49 44 33,是ID3的意思,表示这是一个ID3v2

2、version

04 00为它的版本号:第一个字节为主版本:4,第二个字节为修订号:0

有ID3信息

无ID3信息

ID3v2 中文文档ver2.3.0

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。