एक टिकट बनाएं
अनुसरण करें

Q100455: CaraVR के लिए लिनक्स पर VR हेडसेट्स को सक्षम करना

सारांश

यह लेख लिनक्स पर वीआर हेडसेट्स को सक्षम करने के बारे में मार्गदर्शन प्रदान करता है। इसमें शामिल है कि नए NVidia ड्राइवरों को CaraVR के साथ काम करने के लिए कॉन्फ़िगर कैसे करें और Nuke को sudo / root के रूप में लॉन्च किए बिना कैसे काम करने के लिए हेडसेट कॉन्फ़िगर करें।


अधिक जानकारी

HTC Vive और Oculus Rift CV1 जैसे हेडसेट के लिए Linux समर्थन को OpenHMD थर्ड-पार्टी लाइब्रेरी जैसे ड्राइवरों की आवश्यकता होती है, जो CaraVR इंस्टॉलेशन प्रक्रिया के हिस्से के रूप में स्थापित है। हालाँकि, NVidia ड्राइवरों में बदलाव के कारण, सभी CaraVR संस्करणों को मॉनिटर आउट डिस्प्ले डिवाइस के रूप में हेडसेट का उपयोग करने की अनुमति देने के लिए NVidia के लिए कॉन्फ़िगरेशन फ़ाइल को समायोजित करने की आवश्यकता है।

नोट: कॉन्फ़िगरेशन फ़ाइल को समायोजित करने से पहले कृपया सुनिश्चित करें कि NVidia GPU ड्राइवर अप-टू-डेट हैं। उन्हें अद्यतन करने के लिए कृपया नीचे दी गई NVidia वेबसाइट देखें:

https://www.nvidia.com/Download/index.aspx?lang=en-in

NVIDIA के ड्रायवर का निर्माण

कॉन्फ़िगरेशन फ़ाइल को समायोजित करने के लिए नीचे दिए गए चरणों की आवश्यकता है:

1) sudo या root के रूप में, टेक्स्ट एडिटर में निम्नलिखित फाइल खोलें:

/etc/X11/xorg.conf

2) कॉन्फ़िगरेशन फ़ाइल के अनुभाग का पता लगाएं जो अनुभाग "डिवाइस" कहता है

3) अनुभाग को निम्न पंक्ति जोड़ें, जैसा कि नीचे दिखाया गया है:

Option "AllowHMD" "yes"


4) अपडेटेड फाइल को सेव करें और हेडसेट डिवाइस में प्लग करें

5) मशीन को रिबूट करें

अब जब NVidia कॉन्फ़िगरेशन फ़ाइल समायोजित हो गई है, तो आप यह परीक्षण कर सकते हैं कि आपका VR हेडसेट Nuke और CaraVR लॉन्च करके काम करता है। कृपया ध्यान दें कि Nuke को sudo या root के रूप में lunched किया जाना चाहिए , और हेडसेट का उपयोग करने का विकल्प अब ViewO नोड के MonitorOutDevice घुंडी में दिखाई देना चाहिए।

नोट: आप CaraVR के साथ हेडसेट का उपयोग करने के बारे में अधिक जानकारी के लिए हमारे दस्तावेज़ को निम्न लिंक पर भी देख सकते हैं:   अपने काम की समीक्षा

रूट या सुडो के रूप में NUKE के उपयोग के बिना हेडिंग का उपयोग करना

सूडो / रूट के बिना Nuke लॉन्च करने और व्यूअर नोड में हेडसेट को सक्षम करने की कोशिश करने पर, हेडसेट काम नहीं कर सकता है और नीचे दिया गया संदेश प्रदर्शित होगा:



यह समस्या इस कारण से है कि सिस्टम में प्लग किए गए USB उपकरणों के लिए लिनक्स कैसे अपनी अनुमति देता है। इस समस्या को दूर करने का सबसे सरल तरीका है Nuke को रूट / सुडो के रूप में लॉन्च करना, क्योंकि सभी अनुमतियाँ दी गई हैं, हालाँकि रूट / सुडो के रूप में Nuke को चलाना मौजूदा पाइपलाइनों में हस्तक्षेप कर सकता है।

सिर को बिना सूडो या रूट के रूप में लॉन्च करने की आवश्यकता के बिना हेडसेट का उपयोग किया जा सकता है, हालांकि इसके लिए अतिरिक्त सेटअप की आवश्यकता होती है, जो नीचे विस्तृत है:

ROO T या SUDO के बिना OCULUS RIFT CV1 का उपयोग करना

निम्न चरणों में 83-hmd.rules udev फ़ाइल में Oculus Rift CV1 को जोड़ना चाहिए, जो "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 शुरू करें।

N OTE : लिनक्स पर CV1 हेडसेट का उपयोग करते समय, कृपया ध्यान रखें कि CV1 काला दिखाई देता है जब तक कि यह Nuke Viewer के सक्षम मॉनिटर आउटपुट नॉब में सक्षम नहीं हो जाता।

रूट या SUDO के बिना HTC VIVE का उपयोग करना

निम्नलिखित चरणों में 83-hmd.rules udev फ़ाइल में HTC Vive को जोड़ना चाहिए, जो "HTC Vive" को रोकना चाहिए पहले से उपयोग संदेश में होने से है:

1) सुनिश्चित करें कि उपयोगकर्ता आईडी समूह प्लगदेव से संबंधित है , यदि आवश्यक हो तो प्लगदेव नामक एक समूह बनाएं। समूहों को बनाने और उपयोगकर्ता आईडी को समूहों में जोड़ने के बारे में जानकारी के लिए कृपया लिनक्स वितरण के दस्तावेज की समीक्षा करें।

2) एक संपादक के रूप में sudo या root, ओपन या क्रिएट या ओपन / etc / udev / rules.d / 83-hmd.rules

3) फ़ाइल में कोड की निचली पंक्तियों को जोड़ें, वे SteamVR GitHub पृष्ठ, https://github.com/ValveSoftware/SteamVR-for-Linux#usb-device-requments से प्राप्त किए गए थे :

# 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 परिणाम में सूचीबद्ध किसी भी उपकरण के साथ जोड़ें , जो पहले से ही 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 या अन्य हेडसेट ड्राइवरों के किसी भी अन्य संस्करण की स्थापना रद्द करने का प्रयास करें।

2) कभी-कभी AllowHMD प्रक्रिया पूरी तरह से स्वचालित रूप से काम नहीं करती है। इस स्थिति में, Nuke में हेडसेट का पता नहीं लगने को सही करने के लिए, NVidia सेटिंग्स खोलें जहां हेडसेट को दूसरे मॉनिटर के रूप में पता लगाया जा रहा है लेकिन अक्षम है, फिर इसे सक्षम करें। यह इस समस्या को ठीक करना चाहिए और जब Nuke को फिर से लॉन्च किया जाता है, तो हेडसेट को व्यूऑन नोड के मॉनिटरऑउटडेविस नॉब में दिखाई देना चाहिए।

3) वर्तमान में, हेडसेट पर व्यूअर का पूर्वावलोकन करते समय, व्यूअर केवल शीर्ष बाएं कोने में दिखाई दे सकता है, जिसके पीछे डेस्कटॉप पृष्ठभूमि दिखाई दे रही है, क्योंकि CaraVR डिफ़ॉल्ट रूप से व्यूअर को पूर्ण स्क्रीन नहीं बनाता है।

हमने इसे अपनी विकास टीम के साथ बग के रूप में लॉग इन किया है, और आप नीचे दिए गए लिंक का उपयोग करके बग की स्थिति को ट्रैक कर सकते हैं:

TP 370526 - हेडसेट लिनक्स पर पूर्ण स्क्रीन में Nuke से आउटपुट व्यूअर प्रदर्शित नहीं करते हैं।

आप हेडसेट स्क्रीन पर माउस कर्सर ले जाकर व्यूपोर्ट पर डबल क्लिक करके इस मुद्दे पर काम कर सकते हैं, जिससे इसे हेडसेट पर फुलस्क्रीन बनाना चाहिए।



आगे की पढाई

ओपनहेडएम के बजाय हेडसेट ड्राइवर के रूप में लिनक्स पर स्टीमवीआर का उपयोग करना भी संभव है, हालांकि लेखन के समय, यह आधिकारिक तौर पर असमर्थित है क्योंकि वाल्व सेंटोस 6/7 पर स्टीमवीआर का समर्थन नहीं करता है, जो कि कैरावीआर और समर्थित लिनक्स वितरण हैं Nuke।

यदि आप CaraVR, Nuke और स्टीम VR को Centos 6/7 के अलावा किसी अन्य लिनक्स वितरण पर स्थापित करने में सक्षम हैं, तो नीचे दिए गए चरणों का उपयोग करके हेडसेट को काम करने की अनुमति मिल सकती है।

  1. यह सुनिश्चित करें कि स्टीमआरआर स्थापित और अपडेट किया गया है, स्टीमआरआर में सभी आवश्यक कॉन्फ़िगरेशन चरणों का प्रदर्शन तब तक किया जाता है जब तक कि किसी स्टीम वीआरआर अनुप्रयोग को सफलतापूर्वक नहीं चलाया जा सकता
  2. स्टीमवीआर को बंद करें, लेकिन स्टीम को चालू रखें
  3. एक टर्मिनल खोलें और एक ही सत्र में, सिस्टम की विशिष्ट इंस्टॉल के लिए आवश्यकतानुसार दो पंक्तियों को नीचे समायोजित करें:

/home/username/.steam/steam/ubuntu12_32/steam-runtime/run.sh

/usr/local/Nuke11.2v5/Nuke11.2

नोट: जैसा कि कोई एकल लिनक्स वितरण नहीं है जो आधिकारिक तौर पर CaraVR और SteamVR दोनों द्वारा समर्थित है, SteamVR के साथ CaraVR का उपयोग पूरी तरह से परीक्षण नहीं किया गया है और उम्मीद के मुताबिक काम नहीं कर सकता है। हालांकि, यह ओपनएचएमडी के बजाय स्टीमवीआर सपोर्टेड हैडसेट के लिए फ्रैमरेट, विरूपण सुधार और व्यू सेटिंग्स के क्षेत्र के मामले में बेहतर प्रदर्शन प्रदान कर सकता है।

क्या यह लेख उपयोगी था?
/

We're sorry to hear that!

Please tell us why.
0 में से 0 के लिए उपयोगी रहा

टिप्पणियां