python多线程截取音频文件片段,输出指定比特率的mp3文件,很好用

比如,有许多mp3文件,每个文件前都有一段固定时间长度的广告,我想把讨厌的广告批量处理掉,然后在另外一个文件夹内批量的生成指定比特率的mp3文件,我该怎么办?
在这里插入图片描述
完成后,生成转换后的文件夹。
在这里插入图片描述

经苦心研究,得出以下程序。来,上才艺!

from pydub import AudioSegment
import os
from multiprocessing import Pool
 
def worker(filename):
###定义工作函数
    try:
        path = r'D:\\桌面\\郝万山讲中医内科\\测试\\' 
        # print(path)
        path_out = path + '转换后\\'
        print(path_out)
        if not os.path.exists(path_out):
            os.mkdir(path_out)
        used_name = path + filename
        print(used_name)
        ## 因为文件名里面包含了文件的后缀,所以重命名的时候要加上
        new_name = path_out + filename
        input_music = AudioSegment.from_mp3(used_name)
        # 截取音频后31000毫秒 = 31秒
        output_music = input_music[31000:]
        # 保存音频,指定音频比特率为64k
        output_music.export(new_name, bitrate="64k")
        print(new_name+'完成!')
    
    except:
        ## 跳过一些系统隐藏文档
        pass

if __name__ == '__main__':
    path = r'D:\\桌面\\郝万山讲中医内科\\测试\\' 
    converted_count = 0
    convertlist = []
    for filename in os.listdir(path):
        if filename.endswith(".mp3"):
            convertlist.append(filename)
            converted_count += 1
    # print(convertlist)
#多线程语句(我也不会,直接照搬别人的,竟然成功啦)
    p = Pool(processes=min(converted_count, os.cpu_count()))
    p.map(worker, convertlist)


	

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

最懂编程的医生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值