gpt4 book ai didi

FFMPEG:批量转换时,如何跳过扩展类型?

转载 作者:行者123 更新时间:2023-12-04 23:32:09 26 4
gpt4 key购买 nike

简单的 BASH 脚本:

for i in *; do
ffmpeg -i "$i" -vcodec copy -acodec aac "${i/%.*}_AAC.mp4"
rm "$i"
done
我想修改它以忽略 .srt文件,以及除标准视频文件之外的任何其他扩展名。如果可能的话,我也希望它遍历子目录,但我想我可以 ls -R | <script>那应该这样做。我可以用正则表达式替换“*”吗?我是从手机发帖的,所以今晚之前我无法测试任何内容。
编辑:我在 BASH 中将其作为脚本运行。稍后我将使用 x265 编码支持编译 ffmpeg,所以我希望在完成后我会重新运行这个脚本。

最佳答案

在 bash 4 中,这将递归当前目录下的子目录并在 4 个扩展上工作 - avi、mp4、mpg、mpeg。如果您愿意,可以添加更多。

shopt -s globstar nullglob dotglob
for file in ./**/*.{mpg,mpeg,mp4,avi}
do
ffmpeg -i "$file" -c:a aac -b:a 128k -c:v libx264 -pix_fmt yuv420p \
-crf 22 -refs 1 -bf 0 -coder 0 -g 25 -keyint_min 15 -movflags +faststart \
${file%.*}_converted.mp4
done
添加的参数作为可以使用的示例。您可以设置自己的 -crf、线程等。

关于FFMPEG:批量转换时,如何跳过扩展类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69597829/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com