原是想网上找个工具,剪切一段音频,没想免费工具都会自带加上一些类“水印”语音,只好用代码来剪切一下了
一、相关工具
这里用到 pydub 的音频处理工具包 AudioSegment
具体可参考《https://blog.csdn.net/weixin_38468077/article/details/106896485》
二、脚本
from pydub import AudioSegment
file_name= "../sound/REC2019110.mp3"
print (file_name)
sound= AudioSegment.from_mp3(file_name)
start_time= "00:05"
stop_time= "01:42"
start_time= (int(start_time.split(':')[0])*60+int(start_time.split(':')[1]))*1000
stop_time= (int(stop_time.split(':')[0])*60+int(stop_time.split(':')[1]))*1000
#sound[start_time: stop_time].export("change"+file_name[0], format="mp3")
change= sound[start_time:stop_time]
new_file= "change_"+file_name[9:]
word.export(new_file,format="mp3",tags={'artist': 'AppLeU0','album': save_name[:-4]})
三、执行报错
报错:\utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
原因:我是在WIN10环境下,pip安装的都是源文件,不可执行,所以需要下载经过build之后的ffmpeg文件,可参考《WIN下的ffmpeg安装》,并添加环境变量Path,即可正常运行