新闻详情

新闻详情

首页 / 资讯中心 / 详情

将目录下MP3文件批量转换成WAVE文件:mp32wave

发布时间:2026/9/29 19:50:26来源:尧图网络
将目录下MP3文件批量转换成WAVE文件:mp32wave
转换MP3文件到WAVE文件01【MP3转换成WAV文件】一、转换原理不知道为什么现在我的电脑中直接用一个应用程序打开mp3文件有问题 所以下面我们需要将已经下载录制好的MP3音乐文件转换成WAV文件。 这个呢需要批量将一个目录下多个子目录下的MP3文件进行转换 查看了很多网上给出的转换方式 需要安装一些特殊的Python包不太方便。 下面我们介绍一下自己经过测试使用两种软件包进行转换的方法。首先使用Sound file软件包来读取MP3文件 它可以将MP3文件对应的数据读入内存 它读入的数据为浮点数 接下来使用 sYsPy IO wav file将数据存成WAV文件。 这个呢需要对读入的数据进行转换 将浮点数转换成整形数 下面我们看一下具体的转换过程 将转换过程封装为一个函数 首先根据输入的文件名称 将它的后缀转换成wave文件后缀 接下来判断该文件是否已经存在 如果存在就直接跳过转换。 首先使用sound file读取MP3文件 可以获得对应的数据和采样率参数 接下来判断数据的格式 如果是双通道数据 则提取每个通道数据的最大值 然后再获得整个数据的最大值 这个很重要在后面进行数据格式转换时 需要使用这个最大值。 如果是单通道就很简单 直接获得声音数据的最大值即可接下来我们看一下转换过程 转化过程很简单 首先将输入的数据进行规划 也就是除以整个数据文件的最大值 然后再乘以0.95注意这个乘以0.95是防止转换整型数数据溢出 接下来乘以最大的整数。 强制输出类型为有符号16位 最后将数据写入Web文件。 然后再根据输入参数是否为大于0的数字 判断是否将原来的MP3文件进行删除 这就是整个的转换过程 因为这个文件是用于技术日记转换成视频文档 所以对于背景音乐要求不高 所以使用了整型16位的WAV文件。下面是对应用文件所在目录进行扫描 对于扫描中所得到的MP3文件进行转换 转换成一个时间为20分钟的MP3大概需要3至5秒。 整个转换过程消耗了大约三个小时 转换了500多个音乐文件。 当然最终的后果是转化完外部文件时 整个的文件数据量增加了很多。 但是还好将原来音乐文件转换成外文文件之后我们所使用的播放软件就可以正常打开了。二、程序#!/usr/local/bin/python# -*- coding: gbk -*-## MP32WAVE.PY -- by Dr. ZhuoQing 2026-09-26## Note:#fromheadmimport*importsoundfileassffromscipy.ioimportwavfile#------------------------------------------------------------defmp32wave(infile:str,removeflag0):outfileinfile.split(.)[0].wavifos.path.isfile(outfile):ifremoveflag0:os.remove(infile)returnsig,sample_ratesf.read(infile)sigshapeshape(sig)iflen(shape(sig))2:sigmax0max(sig[:,0])sigmax1max(sig[:,1])sigmaxmax([sigmax0,sigmax1])else:sigmaxmax(sig)sig(sig*(0x7fff/sigmax*0.95)).astype(int16)wavfile.write(outfile,sample_rate,sig)ifremoveflag0:os.remove(infile)#------------------------------------------------------------dirdim[Song,2025,2026,Class,BGM,Pop,Science,TMP,Used,Voice]fordindirdim:dirsrd:\Mooc\Music\\MusicdifdVoice:dirsrd:\Mooc\\d printf(dirs)fdimos.listdir(dirs)# printf(fdim)forfinfdim:iff.upper().find(.MP3)0:continueinfileos.path.join(dirs,f)outfileinfile.split(.)[0].wavifos.path.isfile(outfile):continueprintf(infile)mp32wave(infile,0)# break#------------------------------------------------------------printf(\a)#------------------------------------------------------------# END OF FILE : MP32WAVE.PY#
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Trae AI代码编辑器实操指南:从安装到Builder项目搭建与积分兑换 2026/9/29 19:50:19

Trae AI代码编辑器实操指南:从安装到Builder项目搭建与积分兑换

最近一个月我把Trae当主力编辑器在用,越用越觉得它和传统的“IDE加AI插件”不是一回事。Trae本质上是一个把Agent能力做进编辑流程的AI代码编辑器,它不只是在你打字的时候补全代码,而是能在你一句话的描述下创建文件、修改代码、执行命令&…

阅读更多 →
Trae AI代码编辑器使用教程:从安装配置到积分兑换与实战 2026/9/29 19:50:19

Trae AI代码编辑器使用教程:从安装配置到积分兑换与实战

1. 一上手就回不去的AI代码编辑器:Trae到底是什么先说结论:如果你还没试过Trae,那我强烈建议你找个不忙的下午,拿一个真正要写的项目跑一遍。不是那种“hello world”式的顺手体验,而是认认真真让它帮你从零搭一个带接…

阅读更多 →
Trae SOLO实战测评:从安装到生成完整应用的AI编程入门指南 2026/9/29 19:50:19

Trae SOLO实战测评:从安装到生成完整应用的AI编程入门指南

最近这两周,我基本把市面上叫得出名字的AI编程工具都过了一遍——Cursor、Windsurf、VS Code Copilot,再加上字节跳动的Trae SOLO。你问我为什么突然这么较真?因为手头正好要给朋友公司做一套内部小工具,工期紧、需求碎&#xff0…

阅读更多 →
OpenClaw 完整卸载指南:从 npm、Docker 到残留清理 2026/9/29 19:50:19

OpenClaw 完整卸载指南:从 npm、Docker 到残留清理

1. 为什么要写这份 OpenClaw 卸载指南OpenClaw 这类个人 AI 助理,在安装阶段通常把“低门槛”放在第一位,一条 npm 命令、一个 Docker run 就能把整套服务拉起来。但问题也恰恰出在这里:它不是一个只放到目录里的普通程序,而是会把…

阅读更多 →
Agentic AI时代稀缺性迁移:从执行能力到判断与担责 2026/9/29 19:50:19

Agentic AI时代稀缺性迁移:从执行能力到判断与担责

1. 从“会聊天”到“会干活”:Agentic AI 到底改变了什么这两年大家聊 AI,话题已经从“哪个模型写诗写得好”彻底转向了“哪个 Agent 能真正把活干完”。我身边不少做产品的、做研发的朋友,最近半年都在疯狂研究 Agentic AI,也就是…

阅读更多 →
从零手搓AI工程化流程:文档问答系统实战与避坑指南 2026/9/29 19:50:13

从零手搓AI工程化流程:文档问答系统实战与避坑指南

1. 为什么我要从零手搓一套 AI 工程化流程第一次看到ai-engineering-from-scratch这个标题,我脑子里蹦出来的不是某个具体框架,而是一堆踩过的坑。过去两年,我参与过三个从零起步的 AI 应用项目,有做知识库问答的,有做…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉