โซลูชันซอฟต์แวร์จะมีความล่าช้าจำนวนมากเนื่องจาก:
- การอ่านข้อมูลจาก framebuffer ของ GPU ช้ามาก
- แม้จะมีบิตเรตเป้าหมายประมาณ 80% ของกิกะบิตอีเธอร์เน็ต (คุณไม่ต้องการการใช้งาน 100% เนื่องจากความบกพร่องที่เกิดจากความอิ่มตัว) ตัวแปลงสัญญาณวิดีโอส่วนใหญ่จะใช้CPU จำนวนมหาศาลเพื่อเข้ารหัส 1080p แบบเรียลไทม์ แม้ว่าคุณจะใช้การเข้ารหัสด้วย GPU คุณก็สามารถใช้พลังในการประมวลผลออกมาจากอุปกรณ์ที่แสดงผลเกมของคุณซึ่งอาจทำให้เกมของคุณมีอัตราเฟรมลดลงมากเนื่องจากความสามารถในการทำงานหลายอย่างของ GPU ในการทำมัลติทาสก์ระหว่างโปรแกรมแยก
- กิกะบิตอีเธอร์เน็ต I / O ที่ยั่งยืนนั้นเอง - เพียงแค่ส่งข้อมูลที่เสร็จสิ้นไปทั่วสาย - ใช้ CPU จำนวนมากเนื่องจากการขัดจังหวะ ด้วยค่าใช้จ่ายในการหน่วงเวลาคุณสามารถใช้การควบคุมการขัดจังหวะซึ่งเป็นคุณลักษณะของชิปเซ็ตอีเทอร์เน็ตเซิร์ฟเวอร์รุ่นใหม่เพื่อลดการใช้งาน CPU
หากคุณต้องการให้ราบรื่นและสนุกสนานคุณควรใช้การ์ดจับภาพ
นี่คือตัวอย่างของอุปกรณ์หนึ่งตัวดังกล่าว: http://www.epiphan.com/products/frame-grabbers/vga2ethernet/
อุปกรณ์นี้มีแนวคิดทั่วไปของ:
- คุณเสียบอุปกรณ์เข้ากับกราฟิกการ์ดของคุณ
- คุณเสียบจอภาพของคุณเข้ากับอุปกรณ์
- คุณเสียบเอาต์พุตอีเธอร์เน็ตของอุปกรณ์เข้ากับคอมพิวเตอร์หรือเราเตอร์
- คุณเข้าถึงเว็บอินเตอร์เฟสของอุปกรณ์ผ่านทางอีเธอร์เน็ตและคุณมีวิดีโอสตรีมมิ่งแบบไม่เต็มจอหากคุณต้องการ
เนื่องจากอุปกรณ์ใช้ฮาร์ดแวร์เฉพาะในการเข้ารหัสเฟรมและสตรีมผ่านอีเธอร์เน็ตมันจะเป็น FPS ที่ราบรื่นและสูงและเชื่อถือได้ นอกจากนี้ยังช่วยให้การตั้งค่าซอฟต์แวร์ของคุณง่ายขึ้นอย่างมากโดยไม่จำเป็นต้องใช้โซลูชันขั้นสูงที่มีราคาแพงบนอุปกรณ์เล่นเกมของคุณ
หากคุณไม่ต้องการใช้จ่ายเงินใด ๆ และสามารถใช้ชีวิตอยู่กับความล่าช้าอย่างมากและ FPS ที่ต่ำมากคุณสามารถลองบางอย่างเช่นการเขียนไปป์ไลน์ใน Gstreamer หรือ VideoLAN (VLC) เพื่อจับภาพ framebuffer ท้องถิ่นเข้ารหัสในโคเดกวิดีโอบางตัว และสตรีมมันผ่าน Shout หรือ RTP หรือ RTSP หรือโปรโตคอลสตรีมที่คล้ายกันจากนั้นดาวน์โหลด / สตรีมจากคอมพิวเตอร์ที่ช้ากว่าของคุณ แต่เมื่อฉันเตือนคุณสิ่งนี้จะช้า