ลิขสิทธิ์ (c) 2001-2004 มหาวิทยาลัยเซาเทิร์นแคลิฟอร์เนีย
ลิขสิทธิ์ (c) 2003-2004 มหาวิทยาลัยกลาสโกว์
ลิขสิทธิ์ (c) 2013-2014 Fundació i2CAT, อินเทอร์เน็ต และ Innovació Digital และ Catalunya
ลิขสิทธิ์ (c) 2005-2023 CESNET zspo
สงวนลิขสิทธิ์.
ซอฟต์แวร์นี้เผยแพร่ภายใต้ใบอนุญาต โปรดดูไฟล์ลิขสิทธิ์เพื่อดูข้อกำหนดและเงื่อนไขฉบับเต็ม
เกี่ยวกับอัลตร้ากริด
ข้อกำหนดด้านฮาร์ดแวร์และซอฟต์แวร์
ซอฟต์แวร์ที่จำเป็นเบื้องต้น
การใช้ระบบ UltraGrid
เอกสารประกอบ
UltraGrid นำโดยห้องปฏิบัติการเทคโนโลยีเครือข่ายขั้นสูง (Sitola) ของ CESNET เป็นการนำซอฟต์แวร์ไปใช้ในการส่งสัญญาณวิดีโอและเสียงที่มีความหน่วงต่ำคุณภาพสูงโดยใช้ฮาร์ดแวร์สินค้าโภคภัณฑ์ ความละเอียดที่รองรับมีตั้งแต่ HD (1920x1080) สูงสุด 8K (7680x2160) สูงสุด 60 เฟรมต่อวินาที คุณสมบัติอื่นๆ แสดงไว้ที่นี่
คุณภาพสูงสามารถทำได้โดยใช้สตรีมที่ไม่มีการบีบอัดหรือสตรีมที่มีอัตราส่วนการบีบอัดต่ำมาก เวลาแฝงในการส่งข้อมูลจากต้นทางถึงปลายทาง (เช่น ตลอดทางจากกล้องไปยังจอแสดงผล) อยู่ที่ประมาณ 100 มิลลิวินาที แต่จะแตกต่างกันไปขึ้นอยู่กับกล้องและการ์ดจับภาพที่ใช้ เดิมที UltraGrid เป็นโครงการวิจัยที่ใช้เพื่อสาธิตความเป็นไปได้ของเครือข่าย 10Gbps และเพื่อศึกษาการกระจายข้อมูลแบบหลายจุดในสภาพแวดล้อมดังกล่าว ความก้าวหน้าล่าสุดในด้านตัวแปลงสัญญาณที่มีความหน่วงต่ำที่เร่งด้วย GPU ได้ขยายการใช้งานไปยังเครือข่าย Gigabit ด้วย การบีบอัดอัตราส่วนการบีบอัดสูงทำให้สามารถใช้งานการเชื่อมต่อเครือข่ายสินค้าโภคภัณฑ์เพิ่มเติมได้ รวมถึงการเชื่อมต่ออินเทอร์เน็ตที่ใช้ร่วมกัน
UltraGrid รองรับบนสถานีที่มีระบบปฏิบัติการ Linux, Windows หรือ macOS ซอฟต์แวร์นี้เป็นโอเพ่นซอร์สที่เผยแพร่ภายใต้ลิขสิทธิ์ BSD กล่าวคือ เราสนใจทั้งการใช้งานด้านการวิจัย/เชิงวิชาการ และเชิงพาณิชย์ ปัจจุบัน พื้นที่การใช้งานหลักคือสภาพแวดล้อมการทำงานร่วมกัน การแพทย์ การถ่ายภาพยนตร์และการออกอากาศ รวมถึงกิจกรรมการศึกษาต่างๆ
มันเป็นทางแยกของ UltraGrid ดั้งเดิมที่พัฒนาโดย Colin Perkins, Ladan Gharai และคณะ
งานของเราได้รับการสนับสนุนโดยจุดมุ่งหมายในการวิจัยของ CESNET "เครือข่ายออปติคัลของการวิจัยแห่งชาติและแอปพลิเคชันใหม่" (MŠM 6383917201), โครงสร้างพื้นฐานขนาดใหญ่ของ CESNET (LM2010005), โครงสร้างพื้นฐาน E-Infrastructure ของ CESNET (LM2015042) และบางส่วนโดยจุดประสงค์การวิจัยของมหาวิทยาลัย Masaryk "ขนานและกระจาย ระบบ" (MŠM 0021622419)
เนื้อหาของไดเร็กทอรีนี้มีดังนี้:
bin/ Compiled binaries data/ Various assets used by UG that is not source code doc/ Documentation ext-deps/ External dependencies that are required by UG gui/ Sources for UltraGrid GUI hd-rum-multi/ Simple standalone packet reflector src/ Source code for the UltraGrid system package_specs/ Specifications for OBS test/ Source code and binaries for test routines tools/ Small standalone helper tools autogen.sh Build script configure.ac " " Makefile.in " " CONTRIBUTING.md Various information for contributors COPYRIGHT Full license terms and conditions Doxyfile Doxygen configuration INSTALL Installation instructions NEWS Change log and modification history README.md This file
นอกจากนี้ยังมีไดเรกทอรีย่อย cuda_dxt
, dxt_compress
และ ldgm
ซึ่งมีไลบรารีที่เป็นส่วนหนึ่งของ UltraGrid แต่ค่อนข้างสแตนด์อโลนและอยู่ในตัวเอง
การตั้งค่าฮาร์ดแวร์ที่แนะนำ:
CPU 64 บิตที่มีอย่างน้อย 2 คอร์
แนะนำให้ใช้กราฟิกการ์ดที่รองรับ OpenGL
การบีบอัด DXT บน GPU ได้รับการทดสอบด้วย OpenGL 3.3
การบีบอัด GPUJPEG ต้องใช้การ์ด NVidia
การบีบอัดแบบเร่ง HW ต่างๆ ที่รองรับ GPU ล่าสุด ( NVENC / NVDEC , QuickSync , VA-API , VideoToolbox , VDPAU )
สำหรับสตรีม 1.5Gbps ที่ไม่มีการบีบอัด (ทั้งการส่งหรือรับ) จำเป็นต้องใช้การ์ดอินเทอร์เฟซเครือข่าย 10GbE
เราทดสอบด้วย PCIe Myrinet 10GbE
สำหรับความสามารถในการส่ง/รับ SDI จำเป็นต้องใช้การ์ด AJA , Bluefish444 , Blackmagic , DELTACAST หรือ Magewell
การ์ดจับภาพวิดีโอควรอยู่บนบัส PCI แยกต่างหากจากการ์ดเครือข่ายหากเป็นไปได้
คุณจะต้องใช้ซอฟต์แวร์นี้ (ในวงเล็บเป็นคุณสมบัติเสริมที่คุณต้องการ):
ไดรเวอร์ที่เป็นเอกสิทธิ์ของ AMD/NVidia เพื่อประสิทธิภาพสูงสุด
ไดรเวอร์ AJA/Blackmagic/DELTACAST
ในการคอมไพล์ UltraGrid คุณจะต้องเตรียมสภาพแวดล้อมบิลด์และติดตั้งการขึ้นต่อกันสำหรับโมดูลต่างๆ สำหรับข้อมูลล่าสุด โปรดดูที่วิกิของเรา
INSTALL ให้คำแนะนำในการสร้างระบบ UltraGrid เมื่อระบบถูกสร้างขึ้นแล้ว uv
ไบนารีจะปรากฏขึ้น นี้สามารถเรียกใช้ได้ดังนี้:
uv -t-c hostname (on the sender) uv -d hostname (on the receiver)
-d help
-t help
โดยปกติแล้วชื่อของอุปกรณ์จับภาพจะตามหลังด้วยการกำหนดค่าโหมดวิดีโอ อินพุตวิดีโอ ฯลฯ ตัวเลือกทั้งหมดสามารถแสดงผลแบบโต้ตอบได้โดยใช้วิธีใช้ในตัว เช่น -t decklink:help
.
-c help
หากไม่ได้ระบุการบีบอัด วิดีโอจะถูกส่ง แบบไม่บีบอัด (ในกรณีนี้ให้พิจารณาตั้งค่า MTU ด้วย -m
)
ตัวเลือกเพิ่มเติมเป็นไปตามวิธีใช้บรรทัดคำสั่ง UltraGrid (-h) หรือไปที่หน้าวิกินี้เพื่อดูข้อมูลเพิ่มเติม
ตัวอย่างเช่น หากผู้ใช้บนโฮสต์ "ปกติ" ต้องการส่งเสียงและวิดีโอที่บันทึกโดยใช้การ์ด BMD DeckLink ผู้ใช้รายอื่นบนโฮสต์ "เคอร์ติส" พร้อมจอแสดงผลโดยใช้ไดรเวอร์ OpenGL และการเล่นเสียง Portaudio ผู้ใช้บนโฮสต์ "ปกติ" " จะทำงาน:
uv -t decklink -c libavcodec:codec=H.264 -s embedded --audio-codec OPUS curtis
ในขณะที่ผู้ใช้บน "curtis" จะทำงาน:
uv -d gl -r portaudio ormal
ระบบต้องการการเข้าถึงพอร์ต UDP 5004 และ 5006: คุณควรเปิดพอร์ตเหล่านี้บนไฟร์วอลล์ใดๆ บนเส้นทางเครือข่าย รูปแบบวิดีโอความละเอียดสูงที่ไม่มีการบีบอัดต้องใช้ความจุเครือข่ายประมาณ 1 กิกะบิตต่อวินาที การใช้รูปแบบการบีบอัดที่รองรับที่แตกต่างกัน ความจุเครือข่ายที่ต้องการสามารถต่ำได้ถึง 10 เมกะบิตต่อวินาทีสำหรับวิดีโอความละเอียดสูง
สามารถดูเอกสารได้ทั้ง แบบออฟไลน์ (นอกเหนือจากเอกสารนี้) และ ออนไลน์ เอกสารออนไลน์มีความครอบคลุมและเป็นปัจจุบันมากกว่า ส่วนออฟไลน์ค่อนข้างเสริมกัน
เอกสาร ออนไลน์ มีอยู่ในวิกิ GitHub ของเรา
เอกสาร ในตัว UltraGrid สามารถพบได้ในไดเรกทอรีย่อย doc เอกสารเหล่านี้มีอยู่:
การเพิ่มโมดูล ( นักพัฒนาเท่านั้น ) - ข้อมูลวิธีเพิ่มโมดูล UltraGrid ใหม่
การปรับแต่งประสิทธิภาพ - การปรับแต่งต่างๆ เพื่อปรับปรุงประสิทธิภาพของ UltraGrid
การรายงานข้อบกพร่อง - ขั้นตอนที่แนะนำสำหรับการรายงานข้อบกพร่อง