目录
简介:
以下是几个使用 ffmpeg 截图的应用场景:
-
视频编辑:在视频编辑过程中,截屏是一种很有用的工具。通过截屏可以获取特定场景的静态图像,用于剪辑或其他操作。
-
视频监控:在视频监控领域,截屏可以用于生成缩略图、录像的关键帧等。
-
视频教育:在视频教育领域,截屏可以用于制作课件、教学视频中的配图等。
-
图像处理:在图像处理领域,ffmpeg 除了可以从视频文件中截屏,还可以进行图像处理,如缩放、剪裁、滤镜等操作。
-
网络媒体:在网络媒体领域,截屏可以用于生成视频封面、展示缩略图等。
源代码:
import subprocess
cmd = [r'd:\ffmpeg\bin\ffmpeg', '-i', r'D:\spiderdocs\tww.mp4', '-vf', "select='not(mod(n\,300))',drawtext=fontfile=/path/to/font.ttf:fontsize=30:text='%{pts\:hms}'", '-vsync', 'vfr', r'D:\spiderdocs\outputs\output_image_%03d.jpg']
subprocess.run(cmd, shell=True)
源代码说明:
这段代码中,首先定义了输入视频文件名、字体文件路径和输出图像文件名格式。然后使用subprocess模块的call函数调用FFmpeg命令。FFmpeg命令被定义为一个列表,其中每个元素都是命令中的一个参数。命令中包含了输入文件、滤镜、帧速率和输出文件名格式等参数。最后,使用subprocess.call函数执行该命令。
FFmpeg命令中的参数含义如下:
- input_video.mp4:输入视频文件的路径和名称。
- -vf "select='not(mod(n,300))',drawtext=fontfile=/path/to/font.ttf:fontsize=30:text='%{pts:hms}'":指定要应用的滤镜。其中select='not(mod(n,300))'表示选择每300帧中的一帧进行处理,drawtext=fontfile=/path/to/font.ttf:fontsize=30:text='%{pts:hms}'表示在每个输出图像上添加一个时间戳,字体文件为/path/to/font.ttf,字体大小为30像素。
- -vsync vfr:设置输出图像的帧速率与输入视频的帧速率相同。
- output_image_%03d.jpg:输出图像文件的名称格式。%03d表示输出文件名中的数字部分应该是三位数,例如,output_image_001.jpg。
安装ffmpeg步骤:
-
下载ffmpeg的安装包。下载
-
解压安装包到指定目录。可以将安装包解压到任何你想要的目录中,例如C:\Program Files\ffmpeg。
-
将ffmpeg添加到环境变量中。在Windows操作系统中,右键点击计算机,选择“属性”,再选择“高级系统设置”,在“高级”选项卡下点击“环境变量”。在“系统变量”列表中找到“Path”变量,编辑它并在结尾处添加ffmpeg的安装目录。
-
点击“确定”保存更改,并关闭所有窗口。
-
打开命令提示符,输入“ffmpeg -version”命令验证安装是否成功。
效果如下所示: