如何批量处理的MP4文件的目录删除其元数据?

问题描述 投票:0回答:2

嗨,所以我使用的ffmpeg要从具备以下命令mp4文件中的所有元数据转换一个mp4文件:

ffmpeg -i test.mp4 -map_metadata -1 -c:v copy -c:a copy out.mp4

这工作得很好,但我希望有一个bash脚本,将自动删除的目录中包含的MP4文件的所有元数据,以最少的互动。

任何人都可以请帮我这个剧本?

bash ffmpeg batch-processing
2个回答
2
投票
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

0
投票

这将列出当前目录中的所有文件(而且只有这些文件):

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工作作为唯一的名称部分替代。

© www.soinside.com 2019 - 2024. All rights reserved.