java aud 转mp3_音频格式转换:微信语音aud格式转成wav格式

近期遇到音频格式问题,下面就来记录一下,我暂时还没有找到直接从音频格式aud转换成wav的工具或者代码,所以我这里的转换是先把aud转换成mp3格式,然后再从mp3格式转换成aud格式。我是在linux上面跑的(centos7)。

一、aud转换成mp3

我用的是别人开发的silk v3编码音频格式转换工具,首先要从github下载https://github.com/kn007/silk-v3-decoder工具,下载这上面的压缩包,放到linux上解压,当然你也可以直接在linux上git。

sh converter.sh input_folder output_folder output_format

上面是官方代码,我来举个例子:

sh converter.sh input output mp3

#input是待转换的音频文件目录,output是音频输出的目录,想将所有silk v3编码格式的音频转换为MP3

下面是我在linux上自己写的python脚本:

import sys,os

def to_mp3(int_path,out_path):

for category in os.listdir(int_path):

#os.system('mkdir' + out_path + category)#新建文件夹

os.system( 'sh converter.sh '+int_path +category+'/ ' + out_path +category+'/ '+ 'mp3')

to_mp3(sys.argv[1],sys.argv[2])

这是我有个大文件夹下还有很多文件夹的情况下写的,如果你的文件夹下面就直接是aud文件,就不用做循环啦。

二、MP3转wav

MP3就需要用到FFmpeg,我们需要在linux装FFmpeg才行,安装流程之前我有写过。https://www.jianshu.com/p/7ecaee04bdc6

如果只是一条音频MP3转成wav,可以用下面的代码

ffmpeg -i DING.mp3 -f wav test.wav

下面是我自己写的文件夹下的脚本(单双层文件夹):

import sys,os

def mp3_wav(path):

for category in os.listdir(path):

catdir = os.path.join(path,category)

if os.path.isdir(catdir):# 如果不是文件夹则跳过

for mp3file in os.listdir(path + category +'/'):

os.path.splitext(mp3file)[1] == '.mp3'

filename = os.path.splitext(mp3file)[0]

os.system('ffmpeg -i ' + path + category +'/' +filename +'.mp3 -f wav '+ path + category +'/'+filename + '.wav')

else :

os.path.splitext(category)[1] == '.mp3'

filename = os.path.splitext(category)[0]

os.system('ffmpeg -i ' + path +filename +'.mp3 -f wav '+ path +filename + '.wav')

mp3_wav(sys.argv[1])

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值