Tôi muốn một lệnh tìm kiếm FFmpeg nhanh và chính xác. Tôi tìm thấy này .
Giải pháp là chúng tôi áp dụng -ss
cho cả đầu vào (tìm kiếm nhanh) và đầu ra (tìm kiếm chính xác). Nhưng: Nếu tìm kiếm đầu vào không chính xác, làm thế nào chúng ta có thể chắc chắn rằng vị trí tìm kiếm là chính xác?
Ví dụ: Nếu chúng tôi muốn tìm đến 00:03:00, lệnh này có dạng như sau:
ffmpeg -ss 00:02:30 -i <INPUT> ... -ss 00:00:30 <OUTPUT>
Người đầu tiên -ss
sẽ tìm đến một nơi khác, không 00:02:30
, nói 00:02:31
. Và sau khi áp dụng tìm kiếm thứ hai, kết quả cuối cùng sẽ là 00:03:01
- không phải những gì chúng ta muốn. Đúng không?
Người đầu tiên -ss
tìm đến đâu? Nó có tìm đến keyframe gần nhất 00:02:30
không?
Nếu vậy, đây là tôi suy nghĩ chính xác cho tôi nếu tôi sai: sau khi tìm kiếm đầu tiên, chúng tôi nhận được dấu thời gian của kết quả (trong ví dụ này: 00:02:31
), sau đó chúng tôi áp dụng thứ hai tìm kiếm với thời gian thích hợp, trong trường hợp này 00:00:29
.
Câu hỏi là: Làm thế nào để chúng ta có được dấu thời gian của kết quả tìm kiếm đầu tiên?