标题中的三种音频格式介绍:
1、aac
是一种压缩音频的格式,经常由前端app生成,由于后台解码时需要用wav,所以需要将压缩的aac格式解压(不过解压会有损耗)

2、raw
相当于录制的音频源码
pcm:脉冲编码调制,作为对音频源码的编码方式
直接存储采样的数据,不经过压缩
pcm是声卡直接支持的数据格式,如果要让声卡播放其它压缩类型的声音数据,就要先把y压缩数据解压成pcm格式。

区别:
raw简单形容就是本设备不解码直接输出到下一个设备,让下一个设备解码。
PCM就是本机解码完成后输出给下一个设备。

3、wav
是微软封装的一种格式,以RIFF(资源交互文件格式)来组织内部结构,它可以由压缩音频或pcm封装而成,最常见的就是pcm加文件头封装,文件头包括文件格式、采样率、采样位数等信息。

一、aac到raw的解压操作
音频格式转换,用到了ffmpeg工具
首先Linux下安装ffmpeg,如果网速慢可以指定国内的源

sudo apt-get install ffmpeg

然后就可以直接在命令行使用ffmpeg工具

如果需要在python程序中使用ffmpeg,可以用subprocess开一个子进程调用ffmpeg命令
即:

import subprocess
subprocess.call(order,shell=True)

其中order是命令的字符串

具体的ffmpeg命令:

 ffmpeg -i  [输入acc文件] -f s16le -acodec pcm_s16le -ar 16000 -ac 1 [输出raw文件]

命令格式解析:
ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件]
主要参数:

-i 设定输入流
-f 设定输出格式
-ss 开始时间-ar 设定采样率
-ac 设定声音的Channel数
-acodec 设定声音编解码器,未设定时则使用与输入流相同的编解码器
-an 不处理音频

s16le是指输出的pcm用有符号 16 位小端,即采样位数是16位
会生成解压后的raw音频文件

二、raw加文件头转换为wav格式
python下的wave库可以实现raw到wav的格式转换,需要指定的内容有:采样率、通道数、采样宽度(单位字节)
例如:

import wavepcmfile = open(inf_str, 'rb')
pcmdata = pcmfile.read()
wavfile = wave.open(outf_str, 'wb')
wavfile.setframerate(sampleRate)
wavfile.setsampwidth(2)    #16位采样即为2字节
wavfile.setnchannels(1)
wavfile.writeframes(pcmdata)
wavfile.close()

就可以输出wav文件啦

语音文件aac-raw-wav格式转换方法相关推荐

  1. QQ语音消息转换成WAV格式

    原创文|Space9 问题背景 QQ已经成为我们生活中的一部分,在QQ上留下了我们许多美好的回忆,一段动听的音乐,或是一句甜蜜的话语,都能触动我们的内心.腾讯使用的语音文件是经过特殊编码(Silk V ...

  2. 迅捷语音云服务将wav格式的语音转换成文字

    wav格式的语音怎么转换成文字?wav是一种音频的格式,想要将wav格式的语音转换成文字有什么样的方法呢?下面小编就简单给大家介绍一下. 步骤一:然后通过在浏览器上的搜索迅捷语音云服务,直接进入到在线 ...

  3. Flac是什么格式,flac文件怎么转换为wav格式

    flac和mp3很相似,都是音频编码的一种音频压缩编码.在将fac转换wav,我们就可以根据flac的特性很容易将音频文件转换成无损格式.flac如何转换成wav的呢?下面我们就来看下这款简单而且又是 ...

  4. 录音系列:录音文件为啥是.wav格式?

    为什么要把.pcm转为.wav文件? pcm加上wav头文件就变成了wav.wav文件可以直接播放. 上传到Oss的文件路径,为什么是.wav文件? .wav文件怎么写入的? File类 AudioR ...

  5. java生成wav格式文件_Python--生成Wav格式文件

    1.下载与安装scipy 2.wav文件写操作 3.signal.chirp函数使用说明 4.点击按钮实现信号生成,点击按钮实现信号显示 5.Python代码 #!usr/bin/env python ...

  6. MP3格式转WAV格式

    MPEG音频文件的压缩是一种有损压缩,MPEG3音频编码具有10:1~12:1的高压缩率,同时基本保持低音频部分不失真,但是牺牲了声音文件中12KHz到16KHz高音频这部分的质量来换取文件的尺寸,相 ...

  7. vos如何为 IVR 系统更换语音文件

    1. 进入 VOS 系统,点击语音管理 → 语音业务,过滤出已有语音业务,选中您需要更换语音文件的业务. 举例:系统中已有两条语音业务,分别为"回拨业务"与"直拨业务&q ...

  8. python 将多个wav语音文件合到一起

    (本文已经同步到公众号) ******######******上期关于pcm语音格式文件合成文章:python把千万个语音文件合成一个 pcm格式的音频文件与wav格式还是有很大差别的. wav格式: ...

  9. Qt之实现录音播放及raw(pcm)转wav格式

    简述 在上一篇 Qt 之 WAV文件解析 中详细地分析了wav格式文件的文件头信息.通过QAudioInput实现录音功能,但是录音生成的文件并不能用播放器打开,就算更改后缀名也无法识别(有时候下载的 ...

  10. java录制pcm文件_AudioRecord录制PCM格式的语音示例

    AudioRecord可以将手机或麦克风的声音录制成pcm格式的语音文件,本案例将再service中实现pcm声音的录制,并提供将pcm格式语音转化为mp3格式的方法,先来看看AudioRecord如 ...

最新文章

  1. 2018-2019-1 20165226 《信息安全系统设计基础》第8周学习总结
  2. springboot对于redis的增删改查
  3. 写python脚本管理_《写给系统管理员的 Python 脚本编程指南》笔记——第八章 文档和报告...
  4. win7 C盘空间越来越小 Windows文件夹变大的问题
  5. gamit运行时候报错:wrod too long
  6. linux root定时脚本,shell之定时周期性执行脚本的方法示例
  7. 字节跳动年薪百万的测试开发=“半个产品+半个开发”?
  8. 数学基础 - 第十七章 勾股定理
  9. 基础30讲 第九讲 一元函数积分学的几何应用
  10. excel二进制移位运算_Excel揭秘13:在Excel中实现位运算
  11. android studio 运行按钮为灰色的解决办法之一
  12. 面试六要点_家庭办公室设置要点:改善空间的6条原则
  13. 19、费用管理的报销业务:从单据字段看业务
  14. Verilog描述有限状态机(一段式、二段式、三段式)
  15. 错误码500:消息 java.lang.IllegalStateException: (No output folder)无输出目录解决方法
  16. PDF文件怎么合并分割
  17. 交易理念 :游资、私募的超短线投资理念
  18. 572. 另一棵树的子树
  19. android分享图片到qq,Android 如何实现本地图片直接分享到微信、来往、QQ等,直接分享...
  20. 基于python ttkbootstarp的密钥生成器

热门文章

  1. 电脑设置显示文件扩展名(文件后缀名)
  2. Java程序员学习必看 干货
  3. 【历史上的今天】9 月 26 日:硅晶体管先驱出生;黑客盗取雅虎用户信息;“生物圈 2 号”实验室
  4. 用js改变网页的背景颜色
  5. PAT 1055 集体照 python
  6. win10突然不能使用usb大容量存储设备(移动硬盘)的解决方法
  7. 计算机中年级排名怎么操作,智学网年级排名查看方法规则介绍
  8. Laravel核心概念:服务容器(ServiceContainer),服务提供者(Service Provider),门面(Facade),契约(Contracts)
  9. 【Uly】微软产品开发中的“战争与和平”
  10. 手机自带计算机在线汇率,中美汇率换算计算器(汇率换算器在线 查询)