FFmpeg là công cụ mã nguồn mở xử lý video/audio dòng lệnh. Lỗi "Past Duration Too Large" thường gặp khi encoding hoặc downscale video.
Nguyên nhân lỗi
- Thiếu framerate đầu vào: FFmpeg mặc định 25 fps, sai gây lỗi.
- Chưa cài đặt đồng bộ (sync): Frame không đồng bộ, bị drop frame.
Giải pháp 1: Thêm framerate đầu vào (-framerate)
- Xem lệnh hiện tại, ví dụ:
ffmpeg -i %05d.png -r 24 -c:v libx264 -crf 5 out.mkv
- Thêm -framerate trước -i:
ffmpeg -framerate 24 -i %05d.png -c:v libx264 -crf 5 out.mkv
- Kiểm tra lại.
Giải pháp 2: Thêm cờ đồng bộ (-async -vsync)
- Từ lệnh có -framerate, thêm ở cuối:
ffmpeg -framerate 24 -i %05d.png -c:v libx264 -crf 5 out.mkv -async 1 -vsync 1
- Lưu ý: Lệnh gốc có thể khác, nhưng phần thêm -async 1 -vsync 1 phải đặt cuối.