簡體   English   中英

如何使用FFmpeg從視頻中間創建縮略圖

[英]How to create a thumbnail from the middle of a video with FFmpeg

如何使用ffmpeg從視頻中間生成縮略圖。

例如,我有一個時長為1分鍾的視頻,我想在30秒內生成縮略圖

我使用了以下代碼,但它在第59秒生成縮略圖。 我,因為我提到-ss 59,我們如何才能使其動態到視頻持續時間的中間。

ffmpeg -i input.mp4 -deinterlace -an -ss 59 -f mjpeg -t 1 -r 1 -y -s 256x160 output.jpg

我試過了,但是我收到錯誤,找不到目錄。

ffmpeg -i input.mp4 -vcodec mjpeg -vframes 1 -an -f rawvideo -ss `ffmpeg -i clip.mp4 2>&1 | grep Duration | awk '{print $2}' | tr -d , | awk -F ':' '{print $3/2}'` output.jpg

提前致謝。

您可以使用ffprobe獲取輸入的持續時間,然后使用該時間來確定-ss值。

ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 input.mp4
30.24

然后根據自己的喜好編寫腳本。 使用bash的示例(我不是PHP用戶,因此無法為您提供交鑰匙解決方案):

input=input.mp4
dur=$(ffprobe -loglevel error -show_entries format=duration -of default=nk=1:nw=1 "$input")
ffmpeg -y -i "$input" -ss "$(echo "$dur / 2" | bc -l)" -vframes 1 -q:v 2 output.jpg

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM