Answers:
它不是命令行程序,但您也可以使用qframecatcher。
对于ubuntu / debian,要求是:sudo apt-get install libqt4-dev libxine-dev build-essential
wget http://download.berlios.de/qframecatcher/qframecatcher-0.4.1.tar.gz
tar xzf qframecatcher-0.4.1.tar.gz
cd qframecatcher/src
qmake
make
./qframecatcher
来源:http://blog.radevic.com/2008/06/how-to-create-movie-or-video-frame.html
我的用例只是视频中的一个缩略图,只是一个用作<video>
标签发布者的文件。那么,什么是最快的方法呢?
使用ffmpeg
,您可以执行以下操作:
ffmpeg -ss 123 -y -i video.mp4 -r 1 -updatefirst 1 -frames 1 poster.jpg
这样一来,您将123
获得video.mp4
另存为中的第二帧poster.jpg
。
如您所见,问题是我们需要知道哪一秒是正确的。
为了保持较低的依赖性,我们将使用ffmpeg本身:
# Get the time as h:m:s (non-padded)
l=$(ffmpeg -i video.mp4 2>&1 | grep Duration: | sed -r 's/\..*//;s/.*: //;s/0([0-9])/\1/g')
# Convert that into seconds
s=$((($(cut -f1 -d: <<< $l) * 60 + $(cut -f2 -d: <<< $l)) * 60 + $(cut -f3 -d: <<< $l)))
# Get frame at 25% as the thumbnail
ffmpeg -ss $((s / 4)) -y -i video.mp4 -r 1 -updatefirst 1 -frames 1 poster.jpg
25%的视频似乎是一种常见选择,但您也可以将其设置为33%或50%。