1 min read

ffmpeg批量截取视频某一帧并合并为封面

#说明

批量处理目录下所有mp4文件。
a.bat : 提取某一帧保存为同名图片(自行修改-ss后面的参数)。
b.bat : 把同名jpg文件合并到视频里,并保存到test目录。

#需要工具

ffmpeg

#批量提取mp4文件某一帧保存为图片
#a.bat

@echo off
REM 声明采用UTF-8编码
chcp 65001
for %%a in (*.mp4) do ffmpeg -i "%%~a" -ss 00:01:45 -frames:v 1 "%%~na.jpg"
REM 遍历目录下的mp4文件转换抓取同名jpg,取底2帧

#批量把同名.jpg文件,作为封面合并到视频,保存到test目录
#b.bat

@echo off
REM 声明采用UTF-8编码
chcp 65001
for %%a in (*.mp4) do ffmpeg -i "%%~a" -i "%%~na.jpg" -map 0 -map 1 -c copy -c:v:1 png -disposition:v:1 attached_pic test/"%%~a"
REM 遍历目录下的mp4文把同名jpg作为封面

#2023.2.1更新
#使用FFMPEG截取视频片段
#说明:从【00:02:40】开始。截取【西游记86版.第01集.mp4】文件的【00:02:45 -to 00:42:50】段视频另存为【xyj1.mp4】

ffmpeg.exe -ss 00:02:40 -i 西游记86版.第01集.mp4 -ss 00:02:45 -to 00:42:50 -copyts -codec copy -avoid_negative_ts 1 -y xyj1.mp4

#参考地址

http://www.sparkzx.net/index.php/archives/47/
https://www.zhihu.com/question/323211391
https://blog.csdn.net/yueliang2100/article/details/104292258