使用 ffmpeg 渲染文件夹中的所有视频?

使用 ffmpeg 渲染文件夹中的所有视频?
  • 我有一个文件夹,里面有很多 2-10 分钟的视频......(文件夹中有 30 个视频)
  • 如何处理一个文件夹中的多个视频并将视频剪切成55s的小视频。
  1. 这是处理包含视频的整个文件夹的代码行

@ECHO OFF Setlocal EnableDelayedExpansion 设置 INPUT=C:\Users\ABC\Desktop\in 设置 OUTPUT=C:\Users\ABC\Desktop\out :为 %%a 在(“%INPUT%*.mp4”)中编码视频 DO ffmpeg -i “%%a” -vcodec libx264 -pix_fmt yuv420p -g 60 -r 30 -b:v 1000k -acodec libmp3lame -b:a 128k -ar 48000 -metadata title="" -metadata artist="" -metadata album_artist="" -metadata album="" -metadata date="" -metadata track="" -metadata gentlemen="" -metadata publisher="" -metadatacoded_by="" -metadata copyright="" -metadata composer="" -metadata performer="" -metadata TIT1="" -metadata TIT3="" -metadata disc="" -metadata TKEY="" -metadata TBPM="" -metadata language="eng" -metadatacoder="" -preset superfast "%OUTPUT%/%%~na.mp4"

  1. 这是剪切 55s 视频的代码

ffmpeg -i 11.mp4 -filter_complex "crop=ih*(9/16):ih" -crf 21 -c:a copy -f fragment -segment_time 55 -reset_timestamps 1 -preset ultrafast chep49_%03d.mp4

  1. 使用批处理文件处理多个视频文件的错误命令

在此处输入图片描述 ====>>> 问题是如何将以上两句话合并为一句 ====>>> 你能帮帮我吗?

答案1

看看这是否是你想要的:

在此处输入图片描述

@ECHO OFF
Setlocal EnableDelayedExpansion
set INPUT=C:\users\ABC\Desktop\in
set OUTPUT=C:\users\ABC\desktop\out

:: encode video:

for %%a in ("%INPUT%\*.*") DO ffmpeg -i "%%a" -vcodec libx264 -pix_fmt yuv420p -g 60 -r 30 -b:v 1000k -acodec libmp3lame -b:a 128k -ar 48000 -metadata title="" -metadata artist="" -metadata album_artist="" -metadata album="" -metadata date="" -metadata track="" -metadata genre="" -metadata publisher="" -metadata encoded_by="" -metadata copyright="" -metadata composer="" -metadata performer="" -metadata TIT1="" -metadata TIT3="" -metadata disc="" -metadata TKEY="" -metadata TBPM="" -metadata language="eng" -metadata encoder="" -preset superfast -filter_complex "crop=ih*(9/16):ih" -crf 21 -c:a copy -f segment -segment_time 55 -reset_timestamps 1 -preset ultrafast "%output%\%%~na_%%03d.mp4"

2022 年 12 月 4 日更新:

@ECHO OFF
Setlocal EnableDelayedExpansion
set INPUT=%userprofile%\Desktop\in
set OUTPUT=%userprofile%\desktop\out

:: encode video:

for %%a in ("%INPUT%\*.*") DO ffmpeg -i "%%a" -vcodec libx264 -pix_fmt yuv420p -g 60 -r 30 -b:v 1000k -acodec libmp3lame -b:a 128k -ar 48000 -metadata title="" -metadata artist="" -metadata album_artist="" -metadata album="" -metadata date="" -metadata track="" -metadata genre="" -metadata publisher="" -metadata encoded_by="" -metadata copyright="" -metadata composer="" -metadata performer="" -metadata TIT1="" -metadata TIT3="" -metadata disc="" -metadata TKEY="" -metadata TBPM="" -metadata language="eng" -metadata encoder="" -preset superfast -filter_complex "crop=ih*(9/16):ih,drawtext=text='Centered Text':font=Arial:x=(w-text_w)/2:y=(h-text_h)/2:fontsize=24:fontcolor=white" -crf 21 -c:a copy -f segment -segment_time 12 -reset_timestamps 1 -preset ultrafast "%output%\%%~na_%%03d.mp4"

相关内容