2016-10-17 27 views
5

làm cách nào để chuyển đổi video sang hình ảnh bằng ffmpeg? Ví dụ là có video có tổng thời lượng 60 giây. Tôi muốn hình ảnh giữa các tập hợp thời lượng khác nhau như giữa 2-6 giây, sau đó từ 15-24 giây và cứ tiếp tục như vậy. Có thể sử dụng ffmpeg?FFMPEG- Chuyển đổi video thành hình ảnh

Trả lời

9

Bạn có thể sử dụng bộ lọc chọn cho một bộ trong phạm vi tùy chỉnh:

ffmpeg -i in.mp4 -vf select='between(t,2,6)+between(t,15,24)' -vsync 0 out%d.png 
+0

Xin chào. Làm thế nào tôi có thể chỉ định tốc độ khung hình mà nó sẽ trích xuất hình ảnh? ví dụ, tôi muốn mở rộng 5 khung hình/giây từ 2 đến 6. – hack

+0

Sử dụng '-vf fps = 5, chọn = 'giữa (t, 2,6) + giữa (t, 15,24)'' – Mulvya

+0

Cảm ơn bạn đã nhanh chóng phản ứng! Điều này sẽ trích xuất hình ảnh 'giữa' thời gian đã đề cập (2-6). Làm thế nào tôi có thể nhận được hình ảnh 'Từ' 2-6? – hack

5

tài liệu ffmpeg chính thức về vấn đề này: Create a thumbnail image every X seconds of the video

Output một hình ảnh mỗi giây:

ffmpeg -i input.mp4 -vf fps=1 out%d.png 

Output một hình ảnh mỗi phút:

ffmpeg -i test.mp4 -vf fps=1/600 thumb%04d.png 
+0

Cảm ơn. Chúng tôi có thể chỉ định thời lượng mà chúng tôi cần hình ảnh không? Giống như tôi cần hình ảnh giữa 2-6 giây và 13-17 giây của video 60 giây, thông qua một lệnh duy nhất. – hack

+0

có thể tìm kiếm video đầu vào cho một số vị trí bắt đầu, nhưng tôi không chắc chắn rằng ffmpeg có bộ lọc có thể chấp nhận phạm vi. Có lẽ bạn sẽ cần thực hiện 2 cuộc gọi ffmpeg (trong phạm vi 2-6 và phạm vi 13-17). –

Các vấn đề liên quan