Chơi game qua mạng LAN, VNC thay thế?


15

Được rồi, tôi đã làm nhiều hơn một chút bài tập về nhà về điều này và bắt đầu nghĩ rằng thế giới bằng cách nào đó phản đối ý tưởng này.

Tôi có một máy tính xách tay trong nhà, SB Core i3 với GPU GMA HD, điều này cực kỳ khủng khiếp đối với mọi thứ trực quan và tôi muốn truyền phát video từ giàn máy tính để bàn của mình có tính chất 3D (loại bỏ RDP và các giao thức dựa trên hook khác).

Hầu hết mọi người trả lời đầu tiên cho các chủ đề tương tự là băng thông hoặc sức mạnh xử lý liên quan. Tôi đã thử đầu tiên và trên hết là Gigabit lan, và giàn máy tính để bàn của tôi đã được ép xung 3930k, vì vậy tôi cho rằng NÊN có sự cân bằng giữa độ cứng CPU và băng thông cho phép tôi có được ít nhất 20FPS làm mới toàn màn hình . Cho đến nay tôi không thể sử dụng chặt chẽ, kiểm tra bằng cách phát video ở chế độ toàn màn hình trên máy chủ.

Vì vậy, để tổng hợp mọi thứ, với hơn 30 lần băng thông của OnLive, làm thế nào chính xác để tôi tạo một cấp nguồn cấp dữ liệu video thậm chí khó hiểu qua mạng LAN trong nhà của mình? Có thể và làm thế nào?


1
Bạn đã xem qua RemoteFX chưa? "RemoteFX mang đến trải nghiệm người dùng phong phú cho Cơ sở hạ tầng màn hình ảo (VDI) bằng cách cung cấp bộ điều hợp ảo 3D, codec thông minh và khả năng chuyển hướng các thiết bị USB trong máy ảo." bạn có thể cần mua Server 2012 mặc dù. ;)
Ƭᴇcʜιᴇ007

kiểm tra dự án này: spgt.sourceforge.net nó cho phép truyền phát một phần của máy tính để bàn và cũng chuyển tiếp các điều khiển.

Câu trả lời:


16

Một giải pháp phần mềm vốn đã chứa rất nhiều độ trễ do những điều sau đây:

  • Đọc dữ liệu từ bộ đệm khung của GPU rất chậm.
  • Ngay cả với tốc độ bit mục tiêu khoảng 80% ethernet gigabit (bạn không muốn sử dụng 100% do suy giảm do bão hòa), hầu hết các codec video sẽ sử dụng một lượng lớn CPU để mã hóa 1080p trong thời gian thực. Ngay cả khi bạn đã mã hóa được hỗ trợ GPU, thì sau đó bạn sẽ giảm sức mạnh xử lý ra khỏi chính thiết bị đang hiển thị trò chơi của bạn, có thể làm giảm tốc độ khung hình của trò chơi của bạn rất nhiều, do khả năng đa nhiệm kém của GPU giữa các chương trình riêng biệt.
  • Bản thân I / O gignet ethernet được duy trì - chỉ gửi dữ liệu đã hoàn thành qua dây - tiêu thụ CPU đáng kể do bị gián đoạn. Với chi phí của một số độ trễ, bạn có thể sử dụng kiểm duyệt ngắt, một tính năng của chipset ethernet máy chủ mới hơn, để giảm việc sử dụng CPU.

Nếu bạn muốn nó mượt mà và thú vị, bạn nên sử dụng thẻ chụp.

Dưới đây là ví dụ về một thiết bị như vậy: http://www.epiphan.com/products/frame-grabbers/vga2ethernet/

Thiết bị này có khái niệm chung về:

  • Bạn cắm thiết bị vào card đồ họa của bạn
  • Bạn cắm màn hình vào thiết bị
  • Bạn cắm đầu ra ethernet của thiết bị vào máy tính hoặc bộ định tuyến
  • Bạn truy cập giao diện web của thiết bị qua ethernet và bạn có video phát trực tuyến, không mất dữ liệu, toàn màn hình nếu bạn muốn

Bởi vì thiết bị sử dụng phần cứng chuyên dụng để mã hóa các khung và truyền chúng qua ethernet, nên nó sẽ rất mượt mà và FPS cao và đáng tin cậy. Nó cũng đơn giản hóa rất nhiều thiết lập phần mềm của bạn, loại bỏ sự cần thiết cho các giải pháp đường ống đắt tiền trên giàn chơi game của bạn.

Nếu bạn không muốn chi tiêu bất kỳ khoản tiền nào và có thể sống với độ trễ cực cao và FPS rất thấp, bạn có thể thử một cái gì đó như viết một đường ống dẫn trong Gstreamer hoặc Videolan (VLC) để ghi lại bộ đệm khung cục bộ, mã hóa nó trong một số codec video, và truyền phát qua Shout hoặc RTP hoặc RTSP hoặc giao thức truyền phát tương tự, sau đó tải xuống / truyền phát từ máy tính chậm hơn của bạn. Nhưng như tôi đã cảnh báo bạn, điều này sẽ chậm.


Cảm ơn, mặc dù có một vài giả định ở đó có thể dễ dàng được làm rõ. Tôi chắc chắn không muốn chơi ở 1080p, thực tế 1280x720 @ 24fps là thứ tôi đang sử dụng ngay bây giờ và tôi sẽ hạ xuống chỉ để có thể làm cho nó hoạt động. Ý tưởng chụp có vẻ thú vị, nhưng tôi sẽ kiểm soát máy chủ từ đó như thế nào và độ trễ như thế nào? Ồ, và tôi thậm chí chưa từng thử nó với một trò chơi. Chỉ cần chạy tệp video 320x240 để làm mới toàn bộ màn hình dường như biến VNC thành trình chiếu. Tôi biết rằng phải có một cái gì đó tôi có thể làm để tận dụng tối đa giải pháp dựa trên phần mềm.
dùng1901982

Ngoài màu xanh, tôi ước tính độ trễ là khoảng một hoặc hai khung hình cộng với thời gian ping trong các trường hợp tối ưu.
Hagen von Eitzen

2
@ user1901982 Lấy PlayClaw và sử dụng tính năng Virtual Webcam để chuyển đổi trò chơi 3D của bạn thành nguồn cấp dữ liệu webcam. Sau đó tìm một cách có độ trễ thấp để truyền phát webcam ảo trên mạng.
Darth Android

Đó chắc chắn là một ý tưởng thú vị. Tôi đã sử dụng PlayClaw trước đây. Virtual WebCam mà nó cung cấp có chất lượng khá nhanh / hợp lý để chơi game 3d. Bạn vẫn phải mã hóa đầu ra để nén nó để truyền mạng :)
allquixotic

2
@somequixotic PlayClaw thực sự làm điều đó và đó là "yêu sách" của nó: Nó xử lý mã hóa / nén trong nhiều luồng (trái ngược với Fraps, sẽ thực hiện mã hóa trên luồng kết xuất của trò chơi . Fraps có thể đã thay đổi điều này Gần đây, nhưng một vài năm trước, đó là hiện trạng). Nếu bạn có CPU, chỉ cần quay PlayClaw lên mức nén cao.
Darth Android

7

Bạn có thể sử dụng phát trực tuyến tại nhà từ hơi nước. Của tôi hoạt động RẤT tốt với máy tính để bàn của tôi được kết nối qua Gigabit LAN và máy tính xách tay trên AC 5Ghz. Chỉ cần nhớ đi qua các cài đặt và chọn hộp để ưu tiên lưu lượng hơi trong khi truyền phát.


3

Có một số tùy chọn hơn bây giờ. Nếu bạn có một card đồ họa Nvidia gần đây, bạn có thể có những lợi ích của việc tăng tốc phần cứng, mà không cần thêm phần cứng. Nó được gọi là "Gamestream" Bạn có thể mua một trong các thiết bị Nvidia hỗ trợ giao thức hoặc bạn có thể tải xuống một ứng dụng nguồn mở có tên "Moonlight" http://moonlight-stream.com


Điều này yêu cầu Windows cho máy chủ, chỉ có máy khách là đa nền tảng. Chỉ muốn lưu ý rằng cho bất cứ ai tìm kiếm một giải pháp không có cửa sổ, như tôi đã tìm thấy bài đăng này.
cướp

0

Steam Remote Play chắc chắn là một lựa chọn. Đã chơi rất nhiều lần để ví dụ Rocket League. Nếu bạn có kết nối mạng LAN tốt ở cả hai phía, bạn rất tốt để đi. Thậm chí có thể cắm gamepad trên laptop.

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.