原始问题
我希望能够从现有的 MP3 文件生成一个新的(完全有效的)MP3 文件以用作预览——先试后买风格。新文件应仅包含曲目的前n秒。
现在,我知道在传递文件时我可以在n秒内“截断流”(根据比特率和标头大小计算),但这有点脏,而且是 VBR 轨道上的真正 PITA。我希望能够生成正确的 MP3 文件。
有人有什么想法吗?
答案
两者都是很好的解决方案mp3split
。ffmpeg
我选择了 ffmpeg,因为它通常安装在 linux 服务器上,也很容易用于 windows。这里有一些更好的命令行参数,用于使用 ffmpeg 生成预览
-t <seconds>
在指定秒数后斩波-y
强制文件覆盖-ab <bitrate>
设置比特率,例如-ab 96k-ar <rate Hz>
设置采样率,例如-ar 22050为 22.05kHz-map_meta_data <outfile>:<infile>
将轨道元数据从 infile 复制到 outfile
正如 Tim Farley 建议的那样,您可以复制原始轨道设置,而不是设置 -ab 和 -ar:
-acodec copy