2012-08-23 116 views
2

我正在使用此命令從視頻中提取一系列圖像,以將它們表示爲視頻的視覺時間幀。使用FFMPEG從視頻提取更快的縮略圖/圖像?

ffmpeg -i inputfile.mp4 -r 1 -t 12 image-%d.jpeg

我的大多數視頻都是mp4格式。我能夠成功提取圖像,但提取的時間太長。

有什麼辦法可以減少圖像提取的時間?

編輯這是把我60秒,從15秒長的視頻在MP4格式編碼得到8個縮略圖,我做我的的Galaxy Nexus(Android手機)這個操作有什麼辦法以提高速度的運行,理想情況下我希望它小於〜10secs

回答

3

嗯,定義「慢」:)我只是做了這個,它在標準機器上花了四秒鐘。可能有辦法加快速度,但ffmpeg必須解碼MP4數據包結構(GOP),提取幀並存儲JPG圖像 - 對我而言,四秒鐘看起來合理。我剛纔看到小的改進空間在你的命令行:

ffmpeg -i inputfile.mp4 -r 1 -an -t 12 -s 512x288 -vsync 1 -threads 4 image-%d.jpeg

玩的threads-s參數(這個定義目標圖像的大小 - 它不會加快這一進程,但如果你不想保留源圖像大小,它會爲您節省一個額外的步驟)。

此外,請確保您有一個與您的平臺相匹配的ffmpeg版本 - 這裏的速度有很大差異。不幸的是,我不能在這裏給你一個一般的建議。對於你的情況,它可能是一個想法compile the ffmpeg sources yourself

+0

對我而言,花費22秒從14秒剪輯中提取圖像,平均剪輯時間爲67秒,持續30秒。我正在瞄準移動設備,因此有可能在具有體面處理能力的移動設備中加快速度。 –

+0

它用你的命令花了我7秒多。 –

+0

查看我的修改答案。但是如果你真的想在Galaxy Nexus上執行這個操作,我懷疑它有可能<10秒。在進行圖像提取之前是否可以縮小視頻?這將有所幫助。 –