FFMpeg - 为视频文件创建缩略图

2021-12-26 00:00:00 ffmpeg php ffmpeg-php

我是 php 的新手.我已经在我的本地 iis 中安装了 ffmpeg .. 是否可以为 flv 文件生成缩略图.?请帮忙..

I am new to php. I have installed ffmpeg in my local iis.. Is it possible to generate a thumbnail image for a flv file.? Please help..

推荐答案

试试这个

$ffmpeg = 'ffmpeg.exe';

//video dir
$video = 'video.flv';

//where to save the image
$image = 'image.jpg';

//time to take screenshot at
$interval = 5;

//screenshot size
$size = '320x240';

//ffmpeg command
$cmd = "$ffmpeg -i $video -deinterlace -an -ss $interval -f mjpeg -t 1 -r 1 -y -s $size $image 2>&1";       
$return = `$cmd`;

命令选项说明:

-i 文件名(源视频的文件路径)
-deinterlace(将隔行视频转换为非隔行格式)
-an(录音被禁用;我们不需要它来制作缩略图)
-ss position(输入视频被解码和转储,直到时间戳到达位置,我们的缩略图的位置以秒为单位)
-f 输出文件格式
-t duration(输出文件在 duration 秒后停止写入)
-r fps(设置要写入的帧速率;fps 以赫兹(1/秒)表示;我们使用 1 以便我们只抓取一帧)
-y(如果已经存在则覆盖输出文件)
-s 宽x高(以像素为单位的框架大小)

-i filename (the source video's file path)
-deinterlace (converts interlaced video to non-interlaced form)
-an (audio recording is disabled; we don't need it for thumbnails)
-ss position (input video is decoded and dumped until the timestamp reaches position, our thumbnail's position in seconds)
-f output file format
-t duration (the output file stops writing after duration seconds)
-r fps (sets the frame rate to write at; fps is expressed in Hertz (1/seconds); we use 1 so that we grab only one frame)
-y (overwrites the output file if it already exists)
-s widthxheight (size of the frame in pixels)

相关文章