我試圖在視頻上使用ffmpeg來提取特定幀的列表,用它們的幀編號表示。所以我們可以說我想從'test_video.mp4'中抽取一幀,確切地說幀號150。我可以用下面的命令使用ffmpeg提取特定幀的列表
ffmpeg -i test_video.mp4 -vf "select=gte(n\, 150)" -vframes 1 ~/test_image.jpg
但是如果我想精確幀的列表,如[100, 110, 127, 270, 300]
?我一直在看這個頁面(https://ffmpeg.org/ffmpeg-filters.html#select_002c-aselect),並且可以看到有一些方法可以根據幀編號,時間戳等奇偶校驗提取多個幀,但是我找不到執行我需要的操作的語法。
理想情況下,我會提取命名約定out_image%03d.jpg
下的給定幀列表,其中%03d
被給定的幀編號替換,但時間戳也可以工作。
有沒有辦法做到這一點?
我嘗試了很多使用如下語法的組合:'ffmpeg -i Hamlet.mp4 -vf'select = eq(1000 \,n)+ eq(150 \,n)'-f image2 out_image%03d。 jpg' - 但這並沒有達到我的預期。它所做的是從150幀開始,並給了我下一幀151(和其後)...似乎在這種情況下,選擇卡住了,只是從射擊流....我會玩更多一點。 –