Python 多种音乐格式批量转换实战教程
Pydub是一个基于ffmpeg的Python音频处理模块,封装了许多ffmpeg底层接口,因此用它来做音乐歌曲文件格式转换会非常方便。
今天给大家介绍它的音乐文件格式转换功能,几乎支持所有音乐音频格式,非常牛逼。
1.安装
安装Pydub前需要先安装 ffmpeg:
(可选一) Mac (打开终端(Terminal), 用 homebrew 安装):
brew install ffmpeg --with-libvorbis --with-sdl2 --with-theora
(可选二) Linux:
apt-get install ffmpeg libavcodec-extra
(可选三) Windows:
进入 http://ffmpeg.org/download.html#build-windows,点击 windows 对应的图标,进入下载界面点击 download 下载按钮。
解压下载好的zip文件到指定目录。
将解压后的文件目录中 bin 目录(包含 ffmpeg.exe )添加进 path 环境变量中。最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~
(必须) 按照上述ffmpeg安装步骤成功后就可以打开命令提示符(cmd)或终端(Terminal),安装pydub:
pip install pydub
2.mp3转wav或其他格式
将单个mp3音频文件转化为wav音频格式:
from pydub import AudioSegment
deftrans_mp3_to_wav(filepath):
“”"
将mp3文件转化为wav格式
Args:
filepath (str): 文件路径
“”"
song = AudioSegment.from_mp3(filepath)
filename = filepath.split(".")[0]
song.export(f"{filename}.wav", format=“wav”)
可以继续封装该函数,将单个mp3文件转化为任意其他音乐音频格式:
from pydub import AudioSegment
deftrans_mp3_to_any_audio(filepath, audio_type):
“”"
将mp3文件转化为任意音频文件格式
Args:
filepath (str): 文件路径
audio_type(str): 文件格式
“”"
song = audioSegment.from_mp3(filepath)
filename = filepath.split(".")[0]
song.export(f"{filename}.{audio_type}", format=f"{audio_type}")
如ogg格式:
trans_mp3_to_any_audio(“Alone.mp3”, “ogg”)
只要是ffmpeg支持的音乐音频格式,它都可以转换,支持的格式长达几十个,下面我简单列一些:
wav | avi | mp4 | flv |
---|---|---|---|
ogg | flac | ape | mp2 |
aiff | voc | au |
3.更加通用的转换函数
刚刚是mp3转任意音频格式,我希望把它写成任意音频格式转任意音频格式:
from pydub import AudioSegment
deftrans_any_audio_types(filepath, input_audio_type, output_audio_type):
“”"
将任意音频文件格式转化为任意音频文件格式
Args:
filepath (str): 文件路径
input_audio_type(str): 输入音频文件格式
output_audio_type(str): 输出音频文件格式
“”"
song = AudioSegment.from_file(filepath, input_audio_type)
filename = filepath.split(".")[0]
song.export(f"{filename}.{output_audio_type}", format=f"{output_audio_type}")
比如将ogg音乐音频格式转化为flv音乐音频格式:
trans_any_audio_types(“Alone.ogg”, “ogg”, “flv”)
或者MP4格式,总之,一般你需要的格式它都能满足。最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~
trans_any_audio_types(“Alone.ogg”, “ogg”, “mp4”)
4.批量转化音频格式
现在,尝试将一个文件夹下的所有非mp3音频格式的文件转化为mp3音频格式:
deftrans_all_file(files_path, target=“mp3”):
“”"
批量转化音频音乐格式
Args:
files_path (str): 文件夹路径
target (str, optional): 目标音乐格式. Defaults to “mp3”.
“”"
for filepath in os.listdir(files_path):
# 路径处理
modpath = os.path.dirname(os.path.abspath(sys.argv[0]))
datapath = os.path.join(modpath, files_path + filepath)
# 分割为文件名字和后缀并载入文件
input_audio = os.path.splitext(datapath)
song = AudioSegment.from_file(datapath, input_audio[-1].split(".")[-1])
# 导出
song.export(f"{input_audio[0]}.{target}", format=target)
只要输入文件夹名称,即可全部转化该文件夹下的音乐文件格式为mp3格式:
trans_all_file(“F:\push\20200607\music\”)
你要不要也来试试,用 Python 测测你和女神的颜值差距(仅供娱乐,请勿联想) 如果真的遇到好的同事,那算你走运,加油,抓紧学到手。
python、爬虫技巧资源分享添加围鑫(同音):762459510
包含python, pythonweb、爬虫、数据分析等Python技巧,以及人工智能、大数据、数据挖掘、自动化办公等的学习方法。
打造从零基础到项目开发上手实战全方位解析!
Python 多种音乐格式批量转换实战教程相关推荐
- Python将png格式批量转成jpg格式,并批量用圆抠图
Python将png格式批量转成jpg格式,并批量用圆抠图 png与jpg图片格式互转 批量用圆抠取图片 png与jpg图片格式互转 Python在做批量抠取图片时,遇到png格式的图片读取不出三通道 ...
- 【PC工具】音频文件格式转换工具,m4a转mp3音频格式批量转换工具
微信关注公众号 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 前言 之前在群里上传了很多不错的工具,最近争取一一给大家介绍一下,方便大家查找, ...
- 【kimol君的无聊小发明】—用python写图片格式批量处理工具
[kimol君的无聊小发明]-用python写图片格式批量处理工具 前言 一.思路分析 二.调整尺寸 三.调整大小 四.整合代码 写在最后 前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~ ...
- CR2格式批量转换JPG(美图看看)
CR2格式批量转换JPG(美图看看) 本文转自黄聪博客园博客,原文链接:http://www.cnblogs.com/huangcong/p/6714488.html,如需转载请自行联系原作者
- Python写图片格式批量处理工具!你还一张一张转格式吗?
前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~ 当我打开文件夹以回顾往事之余,惊现许多看似杂乱的无聊代码.我拍腿正坐,一个想法油然而生:"生活已然很无聊,不如再无聊些叭" ...
- Python用img2pdf库批量转换图片为PDF文件
Python用img2pdf库批量转换图片为PDF文件 import os #导入os库 import time #导入时间库生成时间戳 import img2pdf #导入img2pdf库, 安装命 ...
- solidworks全格式批量转换工具
solidworks零件,工程图,装配体的全格式批量转换,操作简单,转换快: 支持solidworks所支持的所有类型文件: solidworks出图转换: solidworks插件.
- 视频教程-Python框架Djanggo从入门到实战教程(企业级项目实战)-Python
Python框架Djanggo从入门到实战教程(企业级项目实战) 多年web开发经验,精通HTML.CSS.JavaScript.HTML5.CSS3等Web前端开发技术,技术纯熟,项目经验丰富.授课 ...
- png格式批量转换jpg有什么方法
图片格式不是单一不变的,在工作和生活中,经常需要用到不同的图片格式.面对庞大的工作量,如果说需要转换多张的图片格式的话就需要一个专业的转换工具,这样可以大大的节约时间,那png格式批量转换jpg有什么 ...
- python中xml格式的转换
文章目录 python中xml格式的转换 1. 基于DOM. 2. 基于ElementTree 使用dicttoxml xmltodict等模块 1.解析xml文件: 2.字典转换为xml文件: 3. ...
最新文章
- Asp.net导出Excel
- python多态的三种表现形式_python小结----面向对象的三大特征(封装,继承,多态)
- 设计模式—适配器模式
- 重命名数据库表空间和数据文件
- Web安装项目创建桌面快捷方式
- 转: java web demo的示例
- Android ViewPager指示器
- php 日期转毫秒_【小技巧】 各种日期操作方法汇总
- matlab时域转换成频域_从时域到频域,你只需要旋转一下!
- x3-02 java,Android Studio 3.2.1 - 新项目无法运行
- MFC避免窗口闪烁的方法(OnEraseBkgnd) .
- pscad 如何产生一个阶跃信号_宇宙中第一个量子场是如何产生的?
- FlipIt博弈模型和后续研究的改进
- mysql删除字段sql语句_删除字段的sql语句是什么
- Python网络爬虫与信息提取(二):网络爬虫之规则(Requests库 Robots规则)
- 结构化数据和非结构化数据有何区别?
- 如何将Word/PDF转成高质量XML
- Windows命令查看文件的MD5/SHA1/SHA256
- 一文了解 | 革兰氏阳性和阴性菌区别,致病差异,针对用药
- 5个设计师都在用的在线网页设计编辑器!
热门文章
- SAP 系统License查看申请及导入
- soapui oracle groovy,SoapUI Groovy 使用实例
- [ 安装 ] Hadoop安装步骤!
- hadoop安装流程
- java计算机毕业设计幼儿园管理系统源码+数据库+系统+lw文档+部署
- centos7中安装matlab,centOS7安装matlab2014a
- 计算机组成原理秦磊华 pdf,_计算机组成原理_设计性实践教学模式研究_秦磊华.pdf...
- 有没有五金产品展开计算机软件,拆单软件功能介绍
- 使用网络登陆的id创建odbc后怎么链接_这是一篇关于苹果ID账号分享和规范使用教程。...
- AMPL 简单运输模型