2015-03-25 23 views
8

Tôi đang cố gắng thiết lập một hệ thống có khả năng truyền phát ảnh chụp màn hình của máy tính đến một số chiếc khác trên mạng LAN.Cách phát luồng video trên mạng LAN trong thời gian thực?

Cho đến nay, tôi đã quản lý cài đặt nginx trên Raspberry Pi với mô-đun rtmp và tôi có thể phát trực tuyến bằng Raspberry dưới dạng RTMP Server thông qua OBS. Tôi sử dụng VLC để xem luồng.

Đây là vấn đề. Các máy tính chính làm phát sóng sẽ được hiển thị một bộ đếm thời gian đếm ngược và có khả năng máy ảnh nguồn cấp dữ liệu vì vậy nó sẽ là lý tưởng để giữ cho sự chậm trễ phát sóng đến mức tối thiểu (thời gian thực?). Tôi hiện đang có một sự chậm trễ 4-6 giây giữa những gì đang xảy ra trên màn hình và dòng và đang tìm cách để tiếp tục giảm nó.

  • Có cách nào để xác định thời gian trễ đó là do mã hóa và số tiền đó là do chuyển khoản?
  • Tôi hiện đang chụp ở 1080p30 và đã thử các tùy chọn như giảm tỷ lệ và giảm thiểu tác động của mạng không có kết quả.
  • Tôi đọc các chủ đề khác liên quan đến phát sóng LAN trên diễn đàn này và ai đó đã đề cập rằng RTMP không phải là một cách tiếp cận tốt ... Nếu vậy thì cách tiếp cận nào tốt hơn?
  • Bất kỳ đề xuất nào đều được hoan nghênh và đánh giá cao. Tôi chủ yếu quan tâm đến các giải pháp miễn phí vì tôi không có ngân sách và thực hiện việc này miễn phí cho người khác.
  • Tôi cũng đã xem xét việc phát trực tuyến VLC nhưng tôi không muốn hiển thị toàn bộ màn hình của máy tính vì sẽ có các điều khiển mà người xem không phải xem. Và điều duy nhất mà VLC có thể làm là xác định phần nào của màn hình để phát sóng mà dường như không phải là một giải pháp tuyệt vời. Tôi đã chọn OBS vì đó là phần mềm phát sóng miễn phí duy nhất có thể phát một cửa sổ cụ thể cho kiến ​​thức của tôi.

Cảm ơn trước :)

+0

Thật khó để nói mà không thấy thông số mã hóa của bạn. Nếu bạn không nhớ cli [FFmpeg] (https://www.ffmpeg.org/) là một trong những công cụ mã nguồn mở tốt nhất xung quanh. – aergistal

Trả lời

8

Trước tiên tôi nghĩ rằng bạn là quyền sử dụng OBS, đó là một dự án lớn cho phép bạn chụp rất nhiều thứ.

Nếu bạn muốn tối ưu hóa tốc độ video có rất nhiều cách bạn có thể thử:

  • Người đầu tiên là sử dụng một khách hàng RTMP, VLC là tốt, nhưng nó sử dụng quá nhiều bộ nhớ cache, hãy thử this one ví dụ (chỉ cần thiết lập các uRL RTMP đúng, rõ ràng đầu vào NetGroup và kết nối),
  • sau đó, bạn có thể thử máy chủ khác, tôi đã viết các hướng dẫn sau trên How to set up your own RTMFP server using MonaServer,
  • và cuối cùng bạn có thể sửa đổi các thông số OBS của bạn (tôi sử dụng " Co giật "các tham số được tối ưu hóa cho thời gian thực).

Đối với tôi với OBS + MonaServer + VideoPlayer của tôi Tôi có sự chậm trễ 2 giây, đó không phải là thời gian thực nhưng đã tốt hơn.

Điều cuối cùng, OBS được biết để thêm độ trễ trên phiên RTMP, tôi biết rằng nó có thể cải thiện nó bằng cách sửa đổi mã nguồn của OBS nhưng ở đây nó là một chút khó khăn ...

Tôi hy vọng nó sẽ giúp bạn! Liên hệ với tôi nếu bạn cần thêm thông tin.

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