自动分割mp3等音频视频文件的脚本
由于种种关系,我需要对一批mp3文件进行分割(切割)。每个音频文件大约1小时,需要切成每10分钟1个文件,文件名要带序号。手工分割工作量太大,不符合我等“懒人”的做法。于是找到了大名的”格式工厂“。
由于每个文件时长不是严格一样,短的50多分钟,长的60多分钟,结合试用格式工厂的结果是它不能探测音频文件的时长(可能是我没找到探测方法),所以我改为固定切成6个文件,前5个文件每个10分钟,第6个包了剩余的部分。第6个文件应该是第3000秒到3600秒的,于是变成3000秒到4000秒,这样剩余的部分应该都包括在内了。
由于分成多段(多个文件)后,两段的切换,在有些播放器上(如带淡进淡出的效果)会听不清楚,所以我增加了1秒钟的重叠。于是第1个文件是0到601秒,第2个文件是600到1201秒,依此类推。
由于每个文件切成6个,我将这6个文件在一个子文件夹,便于管理。
经过调试,得到了这个Dos Shell(批处理)脚本:
@Echo Off set hide=/hide set hide= cd C:\Program Files\FormatFactory for %%F in (*.mp3) do ( C:FormatFactory "-> MP3" "High quality" "%%~fF" "%%~dpFSplit\%%~nF\1%%~nxF" %hide% /st=0 /et=601 C:FormatFactory "-> MP3" "High quality" "%%~fF" "%%~dpFSplit\%%~nF\2%%~nxF" %hide% /st=600 /et=1201 C:FormatFactory "-> MP3" "High quality" "%%~fF" "%%~dpFSplit\%%~nF\3%%~nxF" %hide% /st=1200 /et=1801 C:FormatFactory "-> MP3" "High quality" "%%~fF" "%%~dpFSplit\%%~nF\4%%~nxF" %hide% /st=1800 /et=2401 C:FormatFactory "-> MP3" "High quality" "%%~fF" "%%~dpFSplit\%%~nF\5%%~nxF" %hide% /st=2400 /et=3001 C:FormatFactory "-> MP3" "High quality" "%%~fF" "%%~dpFSplit\%%~nF\6%%~nxF" %hide% /st=3000 /et=4001 )
说明一下,
“*.mp3"代表我只切割当前文件夹下的mp3文件,
“-> MP3"指定转化成mp3文件,
"High quality“高质量,另外2个选项是"Medium quality"和"Low quality"。实际测试表明,另外2个,除了音质比较差之外,文件大小反而更大,这可能是原来的mp3文件已经经过了良好的压制,所以保持高质量可能就是不编码,反而质量好,文件小,我猜的。
"%%~fF"就是指要分割的文件
"%%~dpFSplit\%%~nF\1%%~nxF",当前文件夹下统一建一个Split的文件夹,里面按按照每个将分割的文件建文件夹,里面存放是分割后的文件。例如,要处理的文件是 abc.mp3 则 分割后的第1个文件是 Split\abc\1abc.mp3
有了这个脚本,只要在命令行窗口下,要处理的mp3文件的当前目录,启动这个脚本,然后看它全自动进行分割,最终收获到一堆分割的文件。懒人就是喜欢这样的。一劳永逸。
要使用这个脚本,你得安装【格式工厂】这个软件,在"cd "那一行设置这个软件安装后的路径,如果不是安装在C盘,则要改FormatFactory左边的盘符。
如果你要处理的输入文件类型,输出文件类型,输出质量,输出文件夹,输出文件名,分割的时间条件,请自行根据我上面的说明作修改。这个修改相比制作出这个脚本,是非常简单。
祝你早日成为懒人。喜欢懒人文化。
博主简介:佘焕敏(shé),洋名 Billy Sir。
关注编程基础技术,并致力于研究软件的自动化生成。 对编程规范化、面向对象的极致使用也有着浓厚的兴趣。 同时非常希望能够写程序到65岁。
只有工匠精神,才能把常人觉得单调乏味的代码,当作作品雕刻成艺术品。
重点:这里几乎每一篇文章,都是我认真创作的,凝结了心血。写作从来都不是一件容易的事,对从小语文不好的我而言,是难上加难。而且,你发现没有,文中没有广告。这篇文章介绍了为什么要写这些文章。

【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性