我想写一个鱼壳来改变音频文件的速度。
外壳名称是speed
,我可以这样称呼它:
speed 1.mp3 0.7
然后我会得到一个新的文件[0.7x] 1.mp3
与改变的速度。
但我的目标文件名有问题:
速度
#!/usr/local/bin/fish
set source $argv[1]
set ratio $argv[2]
ffmpeg -i $source -filter:a "atempo=$ratio" "[{$ratio}x] $source"
它将输出一个新文件[{0.7}x] 1.mp3
,其中包含不必要的{}
。但如果我把它作为"[$ratiox] $source"
去掉,$ratiox
也不正确。
如何修复?
最简单的方法是退出引号:
ffmpeg -i $source -filter:a "atempo=$ratio" "["$ratio"x] $source"