AMR文件怎么存储的

amr是3gpp开发的语音编码规范,初衷是用在3g语音通信,但没想到3g是如此的昙花一现。不过amr被2g、4g都采用并发扬光大,高压缩比下提供清晰的语音,令amr傲视其他的编码格式。不仅如此,应运而生的amr语音文件,也为录音和网络语音传输提供了很低的payload。一直很好奇这个语音文件的格式是啥样滴。于是收集网络信息,发现原来amr文件的组织来如此简单,

文件头
语音帧 1
语音帧 2
…

而对于单声道的文件头只是#!AMR\n的ASCII码,宽带的是#!AMR-WB\n。然后每帧有一个简单的帧头。复杂一点的是amr数据比特的排布,细节都在参考文档rfc48675. AMR and AMR-WB Storage Format章节有详细描述,

只要记住

  1. 话音帧遵守octet对齐,
  2. octet内遵守 big endian(最高位存最前面的比特),
  3. 核心codec遵守3gpp的标准,

这三个原则,amr文件格式的阅读就没有困难了。

参考文档

3gpp ts26.101:
rfc4867:RTP Payload Format and File Storage Format for the Adaptive Multi-Rate (AMR) and Adaptive Multi-Rate Wideband (AMR-WB) Audio Codecs
AMR文件格式的解释
Conversion between AMR (Adaptive Multi-rate Codec) file formats

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值