嗨,所以我使用的ffmpeg要从具备以下命令mp4文件中的所有元数据转换一个mp4文件:
ffmpeg -i test.mp4 -map_metadata -1 -c:v copy -c:a copy out.mp4
这工作得很好,但我希望有一个bash脚本,将自动删除的目录中包含的MP4文件的所有元数据,以最少的互动。
任何人都可以请帮我这个剧本?
for f in *.mp4; do ffmpeg -i "$f" -map_metadata -1 -c:v copy -c:a copy "fixed_$f"; done
巴什取代*.mp4
在当前目录中所有符合条件的文件名。每个步骤的循环传递,f
包含文件名之一。
或者使用一个子目录:
mkdir converted
for f in *.mp4; do ffmpeg -i "$f" -map_metadata -1 -c:v copy -c:a copy "converted/$f"; done
这将列出当前目录中的所有文件(而且只有这些文件):
for /r %i in (*) do echo %i
此外,如果你在一个批处理文件运行该命令,你需要的迹象%的两倍。
for /r %%i in (*) do echo %%i
它会是这样的。创建一个文件,把它TEST.CMD并复制该文件内。
for %%f in (*.mp4) do (
ffmpeg -i %%f -map_metadata -1 -c:v copy -c:a copy %%~nf-out.mp4
)
该-n
工作作为唯一的名称部分替代。