सारांश
यह आलेख लिनक्स पर वीआर हेडसेट को सक्षम करने के तरीके पर मार्गदर्शन प्रदान करता है। इसमें Nuke और CaraVR के साथ काम करने के लिए नए Nvidia ड्राइवरों को कैसे कॉन्फ़िगर किया जाए, और Nuke sudo/root के रूप में लॉन्च किए बिना काम करने के लिए हेडसेट को कैसे कॉन्फ़िगर किया जाए, शामिल है।
अधिक जानकारी
Linux पर हेडसेट, जैसे HTC Vive और Oculus Rift CV1 को OpenHMD थर्ड-पार्टी लाइब्रेरी जैसे ड्राइवरों की आवश्यकता होती है, जो Nuke / CaraVR इंस्टॉलेशन प्रक्रिया के हिस्से के रूप में स्थापित होता है। हालाँकि, एनवीडिया ड्राइवरों को डिफ़ॉल्ट रूप से कैसे सेट किया जाता है, हेडसेट को मॉनिटर आउट डिस्प्ले डिवाइस के रूप में उपयोग करने की अनुमति देने के लिए एनवीडिया के लिए कॉन्फ़िगरेशन फ़ाइल को समायोजित करने की आवश्यकता होती है।
नोट: CaraVR प्लग-इन अब Nuke संस्करण 12.0+ में शामिल है
कॉन्फ़िगरेशन फ़ाइल को समायोजित करने से पहले, कृपया सुनिश्चित करें कि एनवीडिया जीपीयू ड्राइवर अद्यतित हैं। उन्हें अपडेट करने के लिए, कृपया नीचे लिंक की गई एनवीडिया वेबसाइट देखें:
https://www.nvidia.com/Download/index.aspx?lang=en-in
एनवीडिया ड्राइवरों को कॉन्फ़िगर करना
कॉन्फ़िगरेशन फ़ाइल को समायोजित करने के लिए नीचे दिए गए चरणों की आवश्यकता है:
1) सूडो या रूट के रूप में, निम्नलिखित फ़ाइल को टेक्स्ट एडिटर में खोलें:
/etc/X11/xorg.conf
नोट: यदि xorg.conf फ़ाइल मौजूद नहीं है, तो आप इसे निम्न कमांड का उपयोग करके बना सकते हैं:
sudo nvidia-xconfig
2) कॉन्फ़िगरेशन फ़ाइल का वह अनुभाग ढूंढें जो अनुभाग "डिवाइस" कहता है
3) अनुभाग में निम्नलिखित पंक्ति जोड़ें, जैसा कि नीचे उदाहरण छवि में दिखाया गया है:
Option "AllowHMD" "yes"
4) अद्यतन फ़ाइल को सहेजें और हेडसेट डिवाइस को कनेक्ट करें।
5) मशीन को रिबूट करें।
अब जब एनवीडिया कॉन्फ़िगरेशन फ़ाइल समायोजित हो गई है तो आप Nuke और CaraVR लॉन्च करके परीक्षण कर सकते हैं कि आपका VR हेडसेट काम करता है। कृपया ध्यान दें कि Nuke sudo या root के रूप में लॉन्च किया जाना चाहिए, और हेडसेट का उपयोग करने का विकल्प अब मॉनिटर आउट उन्नत सेटिंग्स के डिवाइस नॉब में दिखाई देना चाहिए।
व्यूअर मॉनिटर आउट पैनल खोलने के लिए, किसी भी फलक पर राइट-क्लिक करें और इसे जोड़ने के लिए विंडोज > व्यूअर मॉनिटर आउट का चयन करें। फिर सी कोग को चाटो प्रॉपर्टी पैनल में उन्नत सेटिंग्स प्रदर्शित करने के लिए व्यूअर मॉनिटर आउट पैनल के बाईं ओर आइकन , जैसा कि नीचे दी गई छवियों में दिखाया गया है:
नोट: CaraVR के साथ हेडसेट का उपयोग करने के बारे में अधिक जानकारी के लिए आप निम्नलिखित लिंक पर हमारे दस्तावेज़ भी देख सकते हैं: अपने काम की समीक्षा करना
NUKE रूट या सूडो के रूप में लॉन्च किए बिना हेडसेट का उपयोग करना
जब Nuke sudo/root के बिना लॉन्च किया जाता है और व्यूअर नोड में हेडसेट को सक्षम करने का प्रयास किया जाता है, तो हेडसेट काम नहीं कर सकता है और नीचे दिया गया संदेश प्रदर्शित होगा:
यह समस्या इस कारण है कि लिनक्स सिस्टम में प्लग किए गए यूएसबी उपकरणों के लिए अपनी अनुमतियों का प्रबंधन कैसे करता है। इस समस्या को दूर करने का सबसे आसान तरीका Nuke रूट/सुडो के रूप में लॉन्च करना है, क्योंकि सभी अनुमतियां दी गई हैं, हालांकि Nuke रूट/सुडो के रूप में चलाने से मौजूदा पाइपलाइनों में हस्तक्षेप हो सकता है।
हेडसेट का उपयोग Nuke sudo या रूट के रूप में लॉन्च करने की आवश्यकता के बिना किया जा सकता है, हालाँकि इसके लिए अतिरिक्त सेटअप की आवश्यकता होती है, जिसका विवरण नीचे दिया गया है:
रूट टी या सूडो के बिना ऑकुलस रिफ्ट सीवी1 का उपयोग करना
निम्नलिखित चरणों में Oculus Rift CV1 को 83-hmd.rules udev फ़ाइल में जोड़ा जाना चाहिए, जिससे "Rift (CV1)" पहले से ही उपयोग में है संदेश को घटित होने से रोका जा सके:
ध्यान दें : इन चरणों को करने से पहले CV1 हेडसेट को प्लग इन न करें या Nuke प्रारंभ न करें।
1) सुनिश्चित करें कि जो उपयोगकर्ता हेडसेट का उपयोग करना चाहता है उसकी उपयोगकर्ता आईडी प्लगदेव समूह से संबंधित है, यदि आवश्यक हो तो प्लगदेव नामक एक अनुमति समूह बनाएं। अनुमति समूह कैसे बनाएं और समूहों में उपयोगकर्ता आईडी कैसे जोड़ें, इसके बारे में जानकारी के लिए कृपया लिनक्स वितरण दस्तावेज़ की समीक्षा करें।
2) sudo या root के रूप में, खोलें या बनाएं और /etc/udev/rules.d/83-hmd.rules को टेक्स्ट एडिटर में खोलें।
3) फ़ाइल में निम्न पंक्ति जोड़ें:
SUBSYSTEM=="usb", ATTR{idVendor}=="2833", MODE="0666", GROUP="plugdev"
4) फ़ाइल सहेजें
5) सुडो या रूट के रूप में, नीचे दिए गए कमांड को चलाएँ:
sudo udevadm control --reload-rules
6) मशीन को पुनः आरंभ करें.
7) CV1 हेडसेट प्लग इन करें और Nuke प्रारंभ करें।
एन ओटीई : लिनक्स पर सीवी1 हेडसेट का उपयोग करते समय, कृपया ध्यान रखें कि मॉनिटर आउट उन्नत सेटिंग्स डिवाइस नॉब में सक्षम होने तक सीवी1 काला प्रदर्शित करता है।
बिना रूट या सूडो के HTC VIVE का उपयोग करना
निम्नलिखित चरणों में HTC Vive को 83-hmd.rules udev फ़ाइल में जोड़ा जाना चाहिए, जिससे "HTC Vive" पहले से ही उपयोग में है संदेश को घटित होने से रोका जा सके:
1) सुनिश्चित करें कि उपयोगकर्ता आईडी प्लगदेव समूह से संबंधित है, यदि आवश्यक हो तो प्लगदेव नामक एक समूह बनाएं। समूह बनाने और समूहों में उपयोगकर्ता आईडी जोड़ने के तरीके के बारे में जानकारी के लिए कृपया लिनक्स वितरण के दस्तावेज़ की समीक्षा करें।
2) सुडो या रूट के रूप में, टेक्स्ट एडिटर में खोलें या बनाएं और /etc/udev/rules.d/83-hmd.rules खोलें
3) कोड की नीचे दी गई पंक्तियों को फ़ाइल में जोड़ें, वे SteamVR GitHub पेज, https://github.com/ValveSoftware/SteamVR-for-Linux#usb-device-requirements से प्राप्त हुए थे :
# HTC Vive HID Sensor naming and permissioning
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="2c87", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2101", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2000", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1043", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2050", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2011", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2012", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="2c87", MODE="0666", GROUP="plugdev"
# HTC Camera USB Node
SUBSYSTEM=="usb", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8328", MODE="0666", GROUP="plugdev"
# HTC Mass Storage Node
SUBSYSTEM=="usb", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8200", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8a12", MODE="0666", GROUP="plugdev"
4) फ़ाइल सहेजें
5) सुडो या रूट के रूप में, नीचे दिए गए कमांड को चलाएँ:
sudo udevadm control --reload-rules
6) मशीन को पुनः आरंभ करें.
7) हेडसेट को प्लग इन करें, यदि यह पहले से ही प्लग इन है, तो इसे फिर से प्लग करने की आवश्यकता हो सकती है ताकि आप हेडसेट पर डेस्कटॉप पृष्ठभूमि देख सकें।
8) Nuke लॉन्च करें और परीक्षण करें कि हेडसेट का उपयोग "HTC Vive" पहले से ही उपयोग में है संदेश के बिना किया जा सकता है या नहीं।
यदि आपको "HTC Vive" पहले से ही उपयोग में है संदेश मिलता रहता है, तो हेडसेट में एक अलग डिवाइस/विक्रेता आईडी हो सकती है, इसलिए उन आईडी के लिए कस्टम नियमों को 83-hmd.rules फ़ाइल में जोड़ने की आवश्यकता होगी। यह नीचे दिए गए चरणों का उपयोग करके किया जा सकता है:
1) टर्मिनल खोलें और चलाएँ:
lsusb
2) यह आपको नीचे जैसा परिणाम देगा:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 0bda:0181 Realtek Semiconductor Corp.
Bus 002 Device 055: ID 0bb4 : 2744 HTC (High Tech Computer Corp.)
Bus 002 Device 003: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 002 Device 056: ID 0bb4 : 0306 HTC (High Tech Computer Corp.)
Bus 002 Device 057: ID 0424:274d Standard Microsystems Corp.
Bus 002 Device 058: ID 0bb4 : 2134 HTC (High Tech Computer Corp.)
Bus 002 Device 007: ID 0d3d:0040 Tangtop Technology Co., Ltd PS/2 Adapter
Bus 002 Device 059: ID 0bb4:2c87 HTC (High Tech Computer Corp.)
Bus 002 Device 060: ID 28de:2101
Bus 002 Device 061: ID 28de:2101
Bus 002 Device 062: ID 28de:2000
Bus 002 Device 063: ID 0bb4:2c87 HTC (High Tech Computer Corp.)
Bus 002 Device 036: ID 0c45:6340 Microdia Camera
आईडी अनुभाग को idVendor:idProduct के रूप में पढ़ा जा सकता है, इन मानों का उपयोग करके, /etc/udev/rules.d/83-hmd.rules फ़ाइल के लिए अतिरिक्त नियम बनाए जा सकते हैं।
3) sudo या root के रूप में, टेक्स्ट एडिटर में /etc/udev/rules.d/83-hmd.rules खोलें
4) lsusb परिणाम में सूचीबद्ध किसी भी डिवाइस के साथ <missingVendor> और <missingProduct> को प्रतिस्थापित करते हुए, नीचे दी गई पंक्ति जोड़ें, जो पहले से ही 83-hmd.rules फ़ाइल में नहीं हैं:
SUBSYSTEM=="usb", ATTRS{idVendor}=="<missingVendor>", ATTRS{idProduct}=="<missingProduct>", MODE="0666", GROUP="plugdev"
इस उदाहरण में, Nuke और CaraVR अनुमतियों की अनुमति देने के लिए नीचे दी गई तीन पंक्तियाँ जोड़ी गईं:
# Extra rules
SUBSYSTEM=="usb", ATTRS{idVendor}==" 0bb4 ", ATTRS{idProduct}==" 0306 ", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}==" 0bb4 ", ATTRS{idProduct}==" 2134 ", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}==" 0bb4 ", ATTRS{idProduct}==" 2744 ", MODE="0666", GROUP="plugdev"
5) फ़ाइल सहेजें
6) सूडो या रूट के रूप में, नीचे दिए गए कमांड को चलाएँ:
sudo udevadm control --reload-rules
7) मशीन को पुनः आरंभ करें.
8) हेडसेट को प्लग इन करें, यदि यह पहले से ही प्लग इन है, तो इसे फिर से प्लग करने की आवश्यकता हो सकती है ताकि आप हेडसेट पर डेस्कटॉप पृष्ठभूमि देख सकें।
9) Nuke लॉन्च करें और व्यूअर मॉनिटर आउट एडवांस्ड सेटिंग्स डिवाइस नॉब में इसे सक्षम करते समय हेडसेट अब उपयोग करने योग्य होना चाहिए।
अतिरिक्त समस्या निवारण
1) OpenHMD का दूसरा संस्करण स्थापित करने से CaraVR के साथ आने वाले संस्करण में बाधा उत्पन्न हो सकती है। यदि आप हेडसेट के साथ समस्याओं का सामना करते हैं, तो कृपया ओपनएचएमडी के किसी अन्य संस्करण या आपके द्वारा अपनी मशीन पर स्थापित किए गए अन्य हेडसेट ड्राइवरों को अनइंस्टॉल करने का प्रयास करें।
2) कभी-कभी, AllowHMD प्रक्रिया स्वचालित रूप से कार्य नहीं करेगी। इस मामले में, Nuke में हेडसेट का पता नहीं चलने को ठीक करने के लिए, एनवीडिया सेटिंग्स खोलें जहां हेडसेट को दूसरे मॉनिटर के रूप में पहचाना जा रहा है लेकिन अक्षम किया गया है, फिर इसे सक्षम करें। इससे यह समस्या ठीक होनी चाहिए और Nuke दोबारा लॉन्च करते समय हेडसेट को व्यूअर मॉनिटर आउट एडवांस्ड सेटिंग्स डिवाइस नॉब में दिखना चाहिए।
ऑकुलस रिफ्ट CV1 के बारे में अतिरिक्त नोट्स
- जब तक आप इसे अंदर चालू नहीं करते तब तक Oculus CV1 काला दिखाई देता है Nuke की व्यूअर सेटिंग्स।
- CV1 Gnome/Kde में उपलब्ध स्क्रीन की सूची में प्रकट नहीं होता है, यह व्यूअर मॉनिटर आउटपुट डिवाइस नॉब में समर्थित डिवाइस के साथ प्रदर्शित होता है।
- जब आप शुरू में व्यूअर मॉनिटर आउटपुट चालू करते हैं, तो सभी उपलब्ध मॉनिटर कुछ सेकंड के लिए काले रंग में प्रदर्शित होते हैं क्योंकि ओएस नए कॉन्फ़िगरेशन में समायोजित हो जाता है।
- CV1 आपके बंद होने तक चालू रहता है Nuke , जिसके कारण ओएस के नए कॉन्फ़िगरेशन में समायोजित होने पर सभी उपलब्ध मॉनिटर कुछ सेकंड के लिए काले रंग में प्रदर्शित हो जाते हैं।
अग्रिम पठन
ओपनएचएमडी के बजाय लिनक्स पर हेडसेट ड्राइवर के रूप में स्टीमवीआर का उपयोग करना भी संभव है। हालाँकि, वाल्व के पास CentOS 7 पर स्टीमवीआर के लिए सीमित समर्थन है। इसके अतिरिक्त, सॉफ़्टवेयर को चलाने के लिए विशिष्ट ड्राइवर संस्करण आवश्यक होंगे, जिन्हें नीचे पाया जा सकता है:
एनवीडिया:
- NVIDIA कार्ड के लिए NVIDIA ड्राइवर या उससे ऊपर के संस्करण 430.26 और स्टीमवीआर बीटा का उपयोग करना आवश्यक है।
एएमडी:
- स्टीमवीआर को वल्कन समर्थन और लिनक्स कर्नेल 4.13 के साथ संकलित न्यूनतम मेसा 17.3 की आवश्यकता होती है।
ड्राइवरों के लिए अतिरिक्त जानकारी उनके लिनक्स दस्तावेज़ीकरण के लिए स्टीमवीआर में पाई जा सकती है।
यदि आप Centos 7 के अलावा किसी अन्य लिनक्स वितरण पर CaraVR , Nuke और Steam VR स्थापित करने में सक्षम हैं, तो नीचे दिए गए चरणों का उपयोग करने से हेडसेट काम करने की अनुमति दे सकता है।
- सुनिश्चित करें कि स्टीमवीआर स्थापित और अद्यतन है, स्टीमवीआर में सभी आवश्यक कॉन्फ़िगरेशन चरण निष्पादित करें जब तक कि कोई भी स्टीमवीआर एप्लिकेशन सफलतापूर्वक नहीं चलाया जा सके।
- स्टीम इंस्टॉलेशन फ़ाइलें यहां पाई जा सकती हैं। - स्टीमवीआर को बंद करें, लेकिन स्टीम को चालू रखें
- एक टर्मिनल खोलें और उसी सत्र में, नीचे दी गई दो पंक्तियों को सिस्टम की विशिष्ट स्थापना के लिए आवश्यकतानुसार समायोजित करते हुए चलाएँ:
/home/username/.steam/steam/ubuntu20_04/steam-runtime/run.sh
/usr/local/ Nuke 14.0v6/ Nuke 14.0
ध्यान दें: चूंकि कोई एकल लिनक्स वितरण नहीं है जो आधिकारिक तौर पर Nuke / CaraVR और SteamVR द्वारा समर्थित है, SteamVR के साथ Nuke उपयोग पूरी तरह से परीक्षण नहीं किया गया है और उम्मीद के मुताबिक काम नहीं कर सकता है। हालाँकि, यह ओपनएचएमडी के बजाय स्टीमवीआर समर्थित हेडसेट के लिए फ़्रेमरेट, विरूपण सुधार और दृश्य सेटिंग्स के क्षेत्र के मामले में बेहतर प्रदर्शन प्रदान कर सकता है।
हम चाहते हैं कि खेद व्यक्त करते हैं
कृपया हमें बताएँ कि