「Python」 pydub
官方文档 http://pydub.com
github:https://github.com/jiaaro/pydub/
功能:可一打开任何 ffmepg 支持的文件类型;可对音频做各种处理;
一、 安装
pip install pydub
依赖 ffmpeg 或 libav;
二、 功能
打开音频文件
不仅能解析音频文件,还能直接从视频文件中解析出音频;
附录
A 示例
1. 打开音频文件
from pydub import AudioSegment
song = AudioSegment.from_wav("never_gonna_give_you_up.wav")
song = AudioSegment.from_mp3("never_gonna_give_you_up.mp3")
ogg_version = AudioSegment.from_ogg("never_gonna_give_you_up.ogg")
flv_version = AudioSegment.from_flv("never_gonna_give_you_up.flv")
mp4_version = AudioSegment.from_file("never_gonna_give_you_up.mp4", "mp4")
wma_version = AudioSegment.from_file("never_gonna_give_you_up.wma", "wma")
aac_version = AudioSegment.from_file("never_gonna_give_you_up.aiff", "aac")
B Issue
1. 保存 mp3 文件报错[^1]
1) 问题:调用接口 export(file, ".mp3")
保存 mp3 文件时,报错;
2) 报错:pydub.exceptions.CouldntEncodeError: Encoding failed. ffmpeg/avlib returned error code: 1
,Command:['ffmpeg', '-y', '-f', 'wav', '-i', '/tmp/tmp6ysnnvne', '-f', 'mp3', '/tmp/tmp91z2nlif']
,Default encoder for format mp3 (codec mp3) is probably disabled. Please choose an encoder manually.
3) 分析:没有安装支持 mp3 编码的库;
4) 解决: 编译支持编码 mp3 的 ffmepg 库;
参考 ffmpeg 安装 —— mp3
参考资料
- lyrichu. 介绍几个python的音频处理库[EB/OL]. https://www.cnblogs.com/lyrichu/p/6848732.html. -/2019-01-11
- Super-Bob. python pydub 用法 (2)[EB/OL]. https://blog.csdn.net/y734564892/article/details/77601017. 2-17-08-26/2019-01-11.
参考文献
[^1]. Pydub出口错误 - 选择编码器手动[EB/OL]. https://stackoverrun.com/cn/q/12108150. 2017-05-18/2019-01-25.
Comments