音频文件采样率转换

        现在音频文件的采样率比较多样,在数据处理的时候一般需要转换到同一采样率下才能进行进一步的处理。自己也是在数据处理的过程中需要进行采样率转换,在网上搜了一通,然而并没有啥可用的东西,下面提供一个基于python实现的音频采样率转换的脚本。

def rateTransfer(src_file,new_path):
    '''
    src_file: 原始存放音频文件的文件夹
    new_path: 更改采样率后存放音频文件的文件夹
    '''
    sampleRate,Data = wavfile.read(src_file) #获取采样率和音频数据
    name = src_file.split('/')[-1]
    new_name = new_path + '/' + name
    newRate = int(sampleRate / 3)  #下采样
    wavfile.write(new_name,newRate,Data[::3]) #重新写入新的采样率音频文件
    
    
def get_wav_files(file_path):
    '''
    读取文件夹下所有的音频文件
    '''
    wav_files = []
    for root,dirpath,filenames in os.walk(file_path):
        for filename in filenames:
            if filename.endswith('.wav'):
                wav_path = root + '/' + filename
                wav_files.append(wav_path)
    
    return wav_files

if __name__ == "__main__":

    file_path = 'src_wav'
    wav_files = get_wav_files(file_path)
    print('len = ',len(wav_files))
    new_path = 'new_wav'
    for wav_file in wav_files:
        rateTransfer(wav_file,new_path)

水平有限,希望能够帮到大家,不当之处请指教,谢谢!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值