小编Tim*_*Tim的帖子

使用 `say` 在 mp3 文件的标题前加上

我有一堆 .mp3 文件,我想修改它们,以便它们以声音开头,说出文件名。最简单的方法(或者我认为)是这样的:

for file in ./*.mp3; do
    BASE="$(basename "$file" .mp3)"
    mv $file $BASE-bak.mp3
    say "[[volm 0.4]] $BASE" -o $BASE-pre.aiff
    ffmpeg -i $BASE-pre.aiff -f mp3 -acodec libmp3lame -ab 192000 -ar 44100 $BASE-pre.mp3
    rm $BASE-pre.aiff
    mp3cat -o $file $BASE-pre.mp3 $BASE-bak.mp3
done
Run Code Online (Sandbox Code Playgroud)

几乎可以工作,但是生成的 mp3 文件已损坏(长度正确,但无声,并且在(我假设)说出文件名(大约 2 秒)所用的时间长度后总是停止播放。一切似乎都坏了在mp3cat一步。但是,使用ffmpegmp3wrap或其他事情似乎并没有任何工作,我的猜测是,它的东西与所产生的文件做say没有流适量(不管这可能意味着)。

关于如何解决这个问题的建议,或者如何以完全不同的方式做到这一点?

mp3 terminal macos

6
推荐指数
1
解决办法
77
查看次数

标签 统计

macos ×1

mp3 ×1

terminal ×1