लिनक्स में इस तरह की समस्या का वीडियो क्यों फाड़ रहा है?


101

मैंने एक दशक से अधिक समय से लिनक्स (ज्यादातर डेबियन डेरिवेटिव) के कई वेरिएंट का उपयोग किया है। एक समस्या जिसे मैंने संतोषजनक ढंग से हल नहीं किया है, वह क्षैतिज फाड़ का मुद्दा है, या Vsync को ठीक से लागू नहीं किया जा रहा है।

मैं यह कहता हूं क्योंकि मैं विभिन्न मॉनिटर और एनवीडिया / एएमडी / एटीआई / इंटेल ग्राफिक्स कार्ड के साथ 4 अलग-अलग कंप्यूटरों पर 5 अलग-अलग डिस्ट्रोस का उपयोग करता हूं; हर बार, थोड़ी सी भी गति के साथ वीडियो फाड़ने का मुद्दा रहा है।

यह एक बड़ी समस्या है, खासकर जब से विंडोज एक्सपी के पास आधुनिक हार्डवेयर पर ये मुद्दे नहीं हैं। यदि कोई भी किसी भी चीज़ के लिए लिनक्स का उपयोग करने जा रहा है, तो वे कुछ भी गैर-सीएलआई करते समय लगातार दोष क्यों दिखाना चाहेंगे?

मैं अनुमान लगा रहा हूं कि या तो कुछ डेवलपर्स इस समस्या के बारे में जानते हैं या इसे ठीक करने के लिए पर्याप्त देखभाल करते हैं। मैंने बस हर कंपोज़िटर के बारे में कोशिश की है, और आमतौर पर वे जो कर सकते हैं, वह इस मुद्दे को कम से कम करना है लेकिन इसे खत्म नहीं करना है। क्या यह मॉनीटर की ताज़ा दर के साथ तालमेल के रूप में सरल नहीं होना चाहिए? क्या ओएसएस समुदाय के बीच कुछ राजनीति है जो किसी को भी ऐसा कोड बनाने से रोक रही है जो इसे ठीक करता है?

हर बार जब मैंने अतीत में इस मुद्दे पर मदद मांगी थी, तो इसे या तो एक किनारे के मामले के रूप में माना जाता है (जो मुझे विश्वास करना मुश्किल है कि यह समस्या को दोहराया गया है जितनी बार दिया गया है) या मुझे संभावित समाधान मिलते हैं कम से कम फाड़ कम से कम।


2
आप उल्लेख नहीं करते कि आप किस DE का उपयोग करते हैं। केडीई एक साल या अब के लिए फाड़ के साथ ठीक हो गया है।
स्पार्कहॉक

1
कोई आसानी से समस्या को कैसे दोहरा सकता है? एक डेबियन / उबंटू / टकसाल कंप्यूटर में?
Xen2050

50
यह XKCD बस इतनी अच्छी तरह से यहाँ फिट करने के लिए लगता है ...
Angew

फाड़ने के साथ मेरा अनुभव पूरी तरह से अलग रहा है। मैं एक बहुत खुश गेमिंग और लिनक्स पर फिल्में देख रहा हूं। स्टीम ने वास्तव में लिनक्स को शानदार गेम के लिए एक व्यवहार्य मंच बना दिया है। मैं हाल ही में Witcher 2 और Talos सिद्धांत खेल रहा हूं, और मैंने कुछ 50 घंटों के खेल खेलने में कोई छेड़छाड़ नहीं की है। यह आर्क पर मालिकाना ड्राइवरों के साथ एक एनवीडिया कार्ड के साथ है। मैं Xen2050 से सहमत हूं कि यह प्रश्न अधिक उपयोगी होगा यदि आपके बिल्ड के लिए सटीक चश्मा दिए गए थे। मैं इनकार नहीं कर रहा हूँ एक समस्या है, मुझे अभी बहुत अच्छा अनुभव हुआ है।
भूलभुलैया

Nvidia कंपोज़िटिंग से मेरे लिए समस्या हल हो गई, जब मैंने 2007 में Nvidia का उपयोग किया। पूरी स्क्रीन में नहीं, हालाँकि फुल स्क्रीन विंडोज़ कंपोज़िटर को बंद कर देती हैं, लेकिन यह मान लेता है कि आप एक OpenGL गेम चलाने जा रहे हैं जो मुझे लगता है। इंटेल के साथ, क्या आपने एक्स में धारा "डिवाइस" विकल्प "टियरफ्री" "सच" स्थापित करने की कोशिश की है? यह वीडियो रैम उपयोग को दोगुना करता है लेकिन मुझे लगता है कि यह काम करेगा।
ज़ैन लिंक्स

जवाबों:


92

यह सब इस तथ्य के कारण है कि एक्स सर्वर आउट-डेटेड है, आज के ग्राफिक्स हार्डवेयर के लिए बीमार-उपयुक्त है और मूल रूप से सभी प्रत्यक्ष वीडियो कार्ड संचार प्राचीन फूला हुआ कोर पर एक एक्सटेंशन ("पैच") के रूप में किया जाता है। X सर्वर विंडो प्रदान करने वाले उपयोगकर्ता और विंडो प्रदर्शित करने वाली स्क्रीन के बीच सिंक्रनाइज़ेशन का कोई अंतर्निहित साधन प्रदान नहीं करता है, इसलिए सामग्री रेंडरिंग के बीच में बदल जाती है। यह एक्स सर्वर के प्रसिद्ध मुद्दों में से एक है (इसमें कई हैं, सर्वर क्या करता है और पुराना है - सब-विंडोज में ईवेंट हैंडलिंग, विंडोज़ के बारे में मेटाडाटा, डायरेक्ट ड्रॉइंग के लिए ग्राफिकल प्राइमेटिव ...)। विजेट टूलकिट ज्यादातर यह सब चमकना चाहते हैं, लेकिन फाड़ना अभी भी एक समस्या है क्योंकि इसे संभालने के लिए कोई तंत्र नहीं है। अतिरिक्त समस्याएँ तब आती हैं जब आपके पास कई कार्ड होते हैं जिनके लिए अलग-अलग ड्राइवरों की आवश्यकता होती है,

वेलैंड, जो कुछ हद तक X को बदलने की कोशिश कर रहा है, अपने कोर में एक पांडित्य बनाम सिंक सिंक्रनाइज़ेशन का समर्थन करता है, और हर फ्रेम को बिल्कुल सही रखने के लिए विज्ञापित किया जाता है।

यदि आप जल्दी से Google "वेनलैंड वीडियो फाड़" करते हैं, तो आपको हर चीज के बारे में अधिक जानकारी मिल जाएगी।


38
+1"एक्स समस्या है, वेलैंड पर एक नज़र डालें।" गंभीर रूप से मृत, यह सही उत्तर है।
हालोसगॉस्ट

2
@HalosGhost रास्ते पर सुसमाचार प्रचार :) अभी भी कोई नेटवर्क सत्र समर्थन नहीं है?
कागली-सान

3
@ कगली-सान मैंने नहीं कहा कि वेलैंड सही था (यह नहीं है)। लेकिन यह निश्चित रूप से X. से बेहतर है :)
HalosGhost

8
@ कगाली-सान: वेस्टन ने अपने आरडीपी बैकएंड को एक साल पहले ही मिला दिया था, अगर आपको लगता है कि वीडियो फाड़ के बारे में किसी प्रश्न के लिए प्रासंगिक है।
ग्रेविटी

3
@orion: और आपके लिए यह बहुत धन्यवाद अब # 1 परिणाम है wayland video tearing: P
टोबिया टेसन

16

स्क्रीन फाड़ ज्यादातर दो कारणों से प्रकट होता है - ड्राइवर जो अभी तक नहीं हैं, और कुछ विंडो प्रबंधकों के साथ vsync की कमी है।

ड्राइवरों के लिए, दोनों मुक्त और मालिकाना चालक मुक्त-फाड़ कंपोज़िंग (एनवीडिया और एमद दोनों) का समर्थन करते हैं। ध्यान रखें कि उदाहरण के लिए उत्प्रेरक ( fglrx) में आंसू मुक्त डेस्कटॉप को सक्षम करने से फ्रेम ड्रॉप और लैग हो सकता है, इसलिए यह आमतौर पर डिफ़ॉल्ट रूप से अक्षम होता है। खुले ड्राइवर के लिए, बनाम डिफ़ॉल्ट रूप से सक्षम होना चाहिए। इसलिए अलग-अलग ड्राइवरों को आज़माकर और उन्हें कॉन्फ़िगर करके स्क्रीन फाड़ समस्या को हल किया जा सकता है।

विंडो प्रबंधकों के लिए, यह ज्ञात है कि ओपनबॉक्स, बहुत बढ़िया और अन्य हल्के wms आंसू-मुक्त का समर्थन नहीं करते हैं। XFCE (xfwm, विशिष्ट होने के लिए) ने इसे हाल के रिलीज में तय किया है, 4.11 / 12 में अब Vsync है। प्रमुख डेस्कटॉप वातावरणों को भी फाड़ने के साथ कोई समस्या नहीं है, जिसमें GNOME, KDE, यूनिटी और दालचीनी शामिल हैं।

यदि आप अभी भी स्क्रीन फाड़ का अनुभव करते हैं, तो आपका विकल्प कॉम्पटन या केविन जैसे किसी अन्य कंपोज़िंग मैनेजर को आज़माना है। केविन केडीई के लिए विंडो मैनेजर है और मुझे एक्सएफसीई में केविन का उपयोग करने का अनुभव है, जब उसने vsync का समर्थन नहीं किया और यह वास्तव में अच्छी तरह से काम किया।

तो यहाँ समाधान प्रयोग है, जो ड्राइवर / wm के एक संयोजन में टूट गया है वह दूसरे में काम कर सकता है। मेरा मानना ​​है कि स्थिति में जल्द ही सुधार होगा क्योंकि ओपन-सोर्स ड्राइवर अधिक उन्नत होते जा रहे हैं और Xland के साथ पुराने मुद्दों से छुटकारा पा सकते हैं।


5
ज़रुरी नहीं। केडीई (केविन या अन्य संगीतकार के साथ) अभी भी एनवीडिया या इंटेल के साथ नरक की तरह आंसू हैं।
इवान

1
ओपनबॉक्स आदि कार्य फाड़-मुक्त करते हैं - आपको बस एक अलग कंपोजिटर चलाना है, जैसे कि कॉम्पटन अद्भुत तरीके से काम करता है।
विंगडसुम्ब्रेनर

1
@wingedsubmariner, जब आप लोग ओपनबॉक्स का संदर्भ देते हैं, तो क्या आपका मतलब भी फ्लक्सबॉक्स है?
nass

यह भी, अत्यंत उपयोगी है कि आप ध्यान दें कि विभिन्न विंडो वातावरणों में WM की स्थिति क्या है।
रास

@ निस्संदेह। विंडो मैनेजर कभी सीमित कारक नहीं होता है।
विंगड्यूसम्ब्रेनर

14

यदि आप एनवीडिया ड्राइवर> = 365.20 का उपयोग कर रहे हैं, तो "फोर्स फुल कम्पोज़िशन पाइपलाइन" विकल्प को सक्षम करने का प्रयास करें nvidia-settings

यहाँ छवि विवरण दर्ज करें


लेनोवो W520, फेडोरा 25 पर nVidia क्वाड्रो और इसने काम किया :)
जेरथ

4
अगर आपके पास ऐसा कोई विकल्प नहीं है, तो विंडो के निचले भाग में "उन्नत सेटिंग्स" पर क्लिक करें और यह दिखाई देगा। क्यों इस "पूर्ण रचना पाइपलाइन" डिफ़ॉल्ट रूप से सक्षम नहीं है ..?
रास्ट

1
@Rast क्योंकि इसमें कुछ प्रदर्शन की समस्याएं थीं।
रुस्लान

BTW, ऐसा प्रतीत होता है कि कम से कम इंटेल ड्राइवरों के पास एक TearFreeविकल्प है जिसे आप संबंधित Deviceअनुभाग में डाल सकते हैं । मैंने अभी इसकी कोशिश की है, और यह एनवीडिया के फुल कम्पोजिशन पाइपलाइन के समान परिणाम देता है।
रुस्लान

मैं रिबूट पर सहेजने के लिए सेटिंग प्राप्त नहीं कर सकता हूं मैंने एक ~ / .xinitrc फ़ाइल बनाने और "nvidia-settings -load-config-only-। / Etc / X11 / xinit / xinitrc" को इसमें डालने की कोशिश की, लेकिन काम करने के लिए प्रतीत नहीं हुआ
FragmentalStew

9

मैंने यहां एक मजबूत फाड़ दिया था और अब यह हल हो गया है।

एक Xorg सर्वर कैसे काम करता है यह ( अद्भुत विवरण ) पढ़ने के बाद मुझे एहसास हुआ कि X सर्वर पेंट विंडो अपडेट को किसी भी यादृच्छिक समय में मेमोरी कार्ड में सीधे अपडेट करता है जब तक कि आप कंपोज़िटिंग सक्षम विंडो मैनेजर का उपयोग नहीं करते हैं।

जब कंपोज़िटिंग सक्षम होती है तो विंडो मैनेजर अलग विंडो मेमोरी बफ़र से सभी बदलावों को एक साथ रखता है, पूरे स्क्रीन के लिए एक परिणामी छवि बनाता है और इसे एक शॉट पर डिस्प्ले कार्ड में डंप करता है।

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

मेरे मामले में KDE4 में कंपोज़िंग अक्षम थी। एक बार सक्षम होने के बाद फाड़ दूर चला गया। संपादित करें : मैं भी इस kwin विशिष्ट बग रिपोर्ट में समझाया के रूप में फाड़ से छुटकारा पाने के लिए स्वचालित रूप से पुन : उपयोग स्क्रीन सामग्री के लिए KWin विकल्प VSWIN रणनीति पर बदलने की जरूरत है ।

चालक विकल्प भी एक कारक हो सकते हैं। मेरे मामले में डिफ़ॉल्ट विकल्प ठीक काम करता है। आर्क विकी के पास अलग-अलग डिस्प्ले कार्ड जैसे इंटेल कार्ड या एनवीआईडीआईए कार्ड के विकल्पों के बारे में शानदार दस्तावेज हैं

यह जाँचने के लिए कि क्या कोई विकल्प आपके वर्तमान xorg कॉन्फ़िगरेशन में सक्षम है, आप लॉग की जाँच कर सकते हैं। उदाहरण के लिए, यह जाँचने के लिए कि क्या DRI सक्षम है:

cat /var/log/Xorg.0.log | grep DRI

1
XFCE (Xubuntu 16.04 में) डिफ़ॉल्ट रूप से कंपोज़िटिंग सक्षम है, लेकिन वर्टिकल ब्लैंक के लिए सिंकिंग नहीं हैxfwm4-tweaks-settingsTweaker एप्लिकेशन को दिखाने के लिए कमांड का उपयोग करें और कंपोजिटर टैब पर आप उपरोक्त विकल्प पा सकते हैं। इसे चालू करने से एक बड़ा अंतर आया, और यहाँ जाँच की जा सकती है: vsynctester.com/index.html (एनीमेशन प्रदर्शित करते समय फीचर को चालू / बंद करें)। यह सही नहीं है, हालांकि कुछ छूटे हुए फ्रेम हैं, लेकिन जब इसे बंद कर दिया जाता है तो बहुत बेहतर होता है।
karatedog

1

इसका समाधान यहां है: लिनक्स टकसाल 17.3 मेट अब कॉम्पटन के साथ आता है

बस Desktop Settings-> Windows-> पर जाएं Window Managerऔर चुनें Metacity + Compton। बस।

मेरे पास AMD वीडियो कार्ड है और यह ओपन सोर्स ड्राइवर के लिए बॉक्स से बाहर काम करता है।

मालिकाना एएमडी चालक के लिए, जब एचटीएमएल 5 वीडियो को पूर्ण स्क्रीन पर अधिकतम किया जाता है, तो आप नीले रंग को देख सकते हैं जो पूरी स्क्रीन को भर देगा। इसे ठीक करने के लिए, chmod +xनीचे दी गई स्क्रिप्ट बनाएं और बनाएं :

#!/bin/bash
killall compton 2> /dev/null
compton -b --unredir-if-possible

जब भी आप सिस्टम को पुनरारंभ करते हैं तो इसे चलाएं, लेकिन इसे जोड़ने की कोशिश न करें Startup Applications- यह किसी कारण से स्टार्टअप को तोड़ सकता है।


0

पेपरमिंट लिनक्स में, प्राथमिकताएँ> पेपरमिंट कंट्रोल सेंटर पर जाएं, डेस्कटॉप प्रभाव चुनें और "डेस्कटॉप प्रभाव सक्षम करें" और "ड्राइंग को वर्टीकल रिक्त में सिंक्रनाइज़ करें" सक्षम करें।


0

मैं लिनक्स मिंट एक्सएफसीई का उपयोग कर रहा हूं और इस समस्या ने मुझे काफी समय तक निराश किया। मुझे इंटेल इंटीग्रेटेड ग्राफिक कार्ड के साथ अपने लैपटॉप के लिए समाधान का पता चला और इसने आंसू समस्या को हल किया । NVIDIA कार्ड के साथ मेरे डेस्कटॉप के लिए जो कैंट कार्य को धोखा दे सकता है। लेकिन मुझे सिर्फ दोषी पाया गया है।

जब मैंने विंडो कंपोज़िंग को अक्षम किया है तो मेरे पास तत्काल प्रदर्शन को बढ़ावा देने वाला है। Heres आप ऐसा कैसे कर सकते हैं:

सभी सेटिंग्स / विंडो मैनेजर पर जाएं Tweaks / संगीतकार और उस पूरी चीज़ को अक्षम करें।

ध्यान रखें कि यह डिस्ट्रो स्पेसिफिक है और मेरा एक्सएफसीई के साथ मिंट है और मुझे नहीं पता कि अन्य डिस्ट्रोस पर इसी तरह की चीज को कैसे खोजा जाए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.