iOS音频(基础篇)-常用的音频格式

PCM格式

PCM属于编码格式,PCM是经过话筒后直接得到的未经压缩的数据流 数据的大小 = 采样率 * 采样位数 * 声道 * 秒数 / 8 采样率一般是:22K或者是44K 位数一般是:8位或者16位 声道一般是:双声道或者单声道 PCM是一串由多个样本值组成的数据流,本身没有任何头信息或者帧的概念。只有一段PCM数据是没有办法知道它的采样率的信息的。

WAV格式

WAV是封装格式,里面本身可以存放多种编码格式,不过一般都存放PCM数据。 WAV文件是由“WAV文件头”和“WAV文件体”组成。前44字节存放采样率,通道数,数据部分的标识符等头信息,后面就是存放数据部分。很显然WAV的头信息一旦损坏了,播放就会产生问题。

MP3格式

MP3是封装格式,里面存放的数据使用的编码方式为:MPEG1 Layer-3 MP3是由TAG_V2结构体,TAG_V1结构体,和一组Frame组成。头部和尾部的TAG结构体不一定存在,需要判断。中间的Frame,每一个Frame都是由帧头和数据实体组成,帧头记录了MP3的位率,采样率,版本等信息。每个帧之间相互独立,也就是说即使前面的帧损坏了,后面的也可以播放。

AMR格式

AMR是封装格式。 AMR文件包含一个文件头,后面就是一帧一帧的AMR帧。 文件头里面的值就固定值,用于标记文件为AMR文件。 每个帧分为帧头和数据部分,帧头里面包含编发方式和辅助信息。AMR的采样率跟编码方式的不同而不同。

AAC格式

AAC文件可以没有文件头,全部由帧序列组成。 每个帧包含帧头和数据部分。 帧头包含采样率,声道数,帧长度等有点类似MP3格式。

CAF格式

CAF是苹果的一种音频封装格式,与WAV差不多,里面可以存放LPCM,MP3等多种编码方式。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Android随笔

Android开发实践

全部使用小写字母。一级包名常见的有:com/cn/org/net,二级包名以公司或个人来命名,三级包名根据应用进行命名,四级包名为模块名或层级名。

1191
来自专栏阮一峰的网络日志

HTML代码简写法:Emmet和Haml

HTML代码写起来很费事,因为它的标签多。 ? 一种解决方法是采用模板, 在别人写好的骨架内,填入自己的内容。还有一种就是我今天想要介绍的方法----简写法。 ...

3495
来自专栏程序员的诗和远方

20180930_ARTS_week14

想到这个的思路是因为解的过程中,发现如果遇到左边的,需要存起来,后面可能有用(类似入栈),遇到右边的,需要比对前一个值,并且比完如果匹配就没用了(这类似出栈)。...

642
来自专栏向治洪

React Native控件之Listview

ListView组件用于显示一个垂直的滚动列表,其中的元素之间结构近似而仅数据不同。 ListView更适于长列表数据,且元素个数可以增删。和ScrollVie...

1669
来自专栏谦谦君子修罗刀

程序员面试闪充--iOS密码学

但凡一个有点追求的iOS开发,总得会点加密技术,要不然用户信息就有可能被其他人获取用来做一些对我们不利的事情。 视频地址: 密码学 一、base64 base6...

29910
来自专栏视觉求索无尽也

Markdown:入门

在 Markdown 中,你只需要在文本前面加上 # 即可,同理、你还可以增加二级标题、三级标题、四级标题、五级标题和六级标题,总共六级,只需要增加 # 即可,...

821
来自专栏怀英的自我修炼

怀英漫谈3-百度Echarts中日期控件的使用总结

你好, 今天下午在用百度的Echarts做一个日历图的效果,其中跌跌碰碰遇到了几个问题,好在最终都解决了,今天想跟你聊聊这几个问题。 本篇偏编程,可以跳至最后看...

3609
来自专栏Phoenix的Android之旅

Dagger2 Android应用:@Component和@Module

这部分会介绍一下DI的主要概念,包括Component,Module,但不涉及和Android有关的具体代码。

892
来自专栏DannyHoo的专栏

iOS开发中时间戳和时间的相互转换

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/...

751
来自专栏落影的专栏

Audio Unit播放PCM文件

前言 相关文章: 使用VideoToolbox硬编码H.264 使用VideoToolbox硬解码H.264 使用AudioToolbox编码AAC 使...

4146

扫码关注云+社区