tối ưu hóa FFMPEG phát trực tiếp THUMBNAIL


3

Sau khi thử nghiệm nhiều khả năng, tôi có một dòng lệnh hoàn hảo để tạo hình thu nhỏ từ luồng trực tiếp:

ffmpeg -i rtmp://srvIp/h264.stream -r 1 -an -updatefirst 1 -y thumbnail.jpg

Nó làm mới JPG mỗi giây và máy chủ web HTTP sử dụng JPG mà không gặp vấn đề gì, hiển thị nó cho các máy khách web.

Vấn đề duy nhất là: mỗi lệnh sử dụng 5 đến 10% CPU . Nếu tôi muốn hình thu nhỏ của 20 kênh, CPU không có nguồn cho nó. FFmpeg có thể chủ động giải mã tất cả các khung.

Có cách nào để tối ưu hóa lệnh này và bằng cách nào đó bảo FFmpeg bỏ qua tất cả các khung giữa các khung cần thiết. Tôi đã thử bộ lọc này:

  1. -vf fps=fps=1
  2. -vf "'select=eq(pict_type,I)'"
  3. sử dụng 1/5 hoặc là 1/10 như FPS

Nhưng những điều này không ảnh hưởng đến việc sử dụng CPU, chỉ có chất lượng hình ảnh kém hơn với (2) so với lệnh gốc ( -r 1 ).

Tôi ổn với một hình thu nhỏ mỗi giây (hoặc chỉ trích xuất khung hình chính) và một hình thu nhỏ trên 10 giây cũng ổn, nhưng tôi nghĩ vấn đề thực sự có lẽ là giải mã H.264.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.