หากเกิดการแบ่งหน้าจอแนวนอนขณะเลื่อนดูหรือเล่นวิดีโอ ให้เปิดใช้งานตัวจัดการการแสดงผลของ Pardus XFCE ก่อน แล้วทดสอบโหมดการซิงโครไนซ์แนวตั้ง-ว่าง วิธีนี้เป็นวิธีแก้ไขเบื้องต้นที่ปลอดภัยที่สุด เพราะไม่แทนที่ไดรเวอร์ของ Intel ให้เพิ่มตัวเลือกของ Xorg ก็ต่อเมื่อบันทึกยืนยันว่าเซสชันนั้นใช้ ไดรเวอร์แสดงผลTearFreeแบบเดิมเท่านั้นintel
ทราบว่าส่วนใดของสแต็กกราฟิกเกี่ยวข้องอยู่
การฉีกขาดของหน้าจอเกิดขึ้นเมื่อจอแสดงผลเริ่มแสดงเฟรมใหม่ก่อนที่เฟรมก่อนหน้าจะรีเฟรชเสร็จสมบูรณ์ ทำให้เกิดรอยต่อแนวนอนระหว่างสองเฟรม บน Pardus 23 เดสก์ท็อปมาตรฐานคือXFCE 4.18 ตัวจัดการหน้าต่าง ของมันxfwm4มีตัวประมวลผลภาพที่สามารถซิงโครไนซ์การอัปเดตเดสก์ท็อปกับการรีเฟรชแนวตั้งของจอภาพได้ ดังที่อธิบายไว้ในเอกสาร XFCEกราฟิก Intel ยังใช้i915ไดรเวอร์ของเคอร์เนล ในขณะที่ Xorg อาจใช้ไดรเวอร์ในตัวmodesettingหรือintelไดรเวอร์แบบเก่าแยกต่างหาก ชื่อเหล่านี้อาจทำให้สับสนได้ง่าย: i915คือไดรเวอร์ของเคอร์เนล ไม่ใช่หลักฐานว่า Xorg กำลังใช้ Intel DDX แบบเก่า
ก่อนที่จะเปลี่ยนแปลงอะไร ให้บันทึกงานที่เปิดอยู่และสังเกตว่าปัญหาภาพกระตุกส่งผลกระทบต่อเดสก์ท็อปทั้งหมด เฉพาะวิดีโอ หรือเฉพาะแอปพลิเคชันเดียว เปิดเทอร์มินัลและตรวจสอบประเภทเซสชัน:
echo "$XDG_SESSION_TYPE"
Pardus 23 XFCE โดยปกติจะใช้ X11 ซึ่งรายงานค่าต่างๆx11การกำหนดค่า Xorg ในภายหลังในคู่มือนี้ใช้ไม่ได้กับเซสชัน Wayland ในการระบุอะแดปเตอร์กราฟิกและโมดูลเคอร์เนล ให้รันคำสั่ง:
lspci -nnk | grep -A3 -E 'VGA|Display|3D'
คำสั่งนี้จะแสดงข้อมูล GPU และไดรเวอร์เคอร์เนลที่ใช้งานอยู่ แต่จะไม่ระบุไดรเวอร์แสดงผลของ Xorg ไฟล์บันทึกของ Xorg มักจะอยู่ที่~/.local/share/xorg/Xorg.0.logหรือ/var/log/Xorg.0.log; ให้ค้นหาชื่อไดรเวอร์ในไฟล์ที่มีอยู่:
grep -Ei 'intel\(0\)|modeset\(0\)|intel_drv|modesetting' ~/.local/share/xorg/Xorg.0.log /var/log/Xorg.0.log 2>/dev/null
หากไม่มีไฟล์บันทึกใดๆ ให้ดำเนินการแก้ไขปัญหาคอมโพสิเตอร์ XFCE ต่อไป อย่าติดตั้งหรือบังคับใช้ไดรเวอร์อื่นเพียงเพื่อต้องการได้การตั้งค่าที่ต้องการ
1. เปิดใช้งานการแสดงผลภาพแบบคอมโพสิตของ XFCE และทดสอบการซิงโครไนซ์ GLX
เปิดตัวจัดการการตั้งค่าเลือกการปรับแต่งตัวจัดการหน้าต่างจากนั้นเปิด แท็บ Compositorตรวจสอบให้แน่ใจว่าได้เปิดใช้งานการแสดงผลแบบคอมโพสิตแล้ว คอมโพสิตเตอร์ของ XFCE จะรวมการอัปเดตหน้าต่างก่อนที่จะแสดงผล และ XFCE ได้บันทึกไว้เป็นส่วนหนึ่งของxfwm4หากเปิดใช้งานอยู่แล้ว ให้ปิดและเปิดใหม่อีกครั้งเพื่อรีสตาร์ทคอมโพสิตเตอร์ จากนั้นลองทำซ้ำอาการเลื่อนหรือวิดีโอแบบเดิมอีกครั้ง
เปิดตัวจัดการการตั้งค่าเดสก์ท็อปก่อนที่จะเปลี่ยนตัวจัดการหน้าต่างหรือตัวจัดการองค์ประกอบภาพ
ส่วนการตั้งค่าคอมโพสิตเตอร์คือที่ที่คุณตรวจสอบว่าการแสดงผลแบบคอมโพสิตบนเดสก์ท็อปเปิดใช้งานอยู่หรือไม่ โดยชื่อเรียกอาจแตกต่างกันไปในแต่ละเวอร์ชันของคอมพิวเตอร์หากปัญหาภาพฉีกขาดยังคงอยู่xfwm4ให้ตั้งค่าการซิงโครไนซ์แนวตั้ง-ว่างแบบ GLX GLX เป็นวิธีการประสานการอัปเดตกราฟิก X11 กับการรีเฟรชหน้าจอ เรียกใช้คำสั่งนี้ในเทอร์มินัลภายในเซสชัน XFCE:
xfconf-query -c xfwm4 -p /general/vblank_mode -t string -s glx --create
คำสั่งนี้จะสร้างหรืออัปเดตการตั้งค่า ดังนั้นการตั้งค่าจะคงอยู่แม้หลังจากเข้าสู่ระบบใหม่ ให้ล็อกเอาต์แล้วล็อกอินใหม่ หรือรีสตาร์ทตัวจัดการหน้าต่าง จากนั้นทดสอบเนื้อหาเดิมอีกครั้ง Xfwm4 รองรับโหมดการซิงโครไนซ์หลายโหมดบันทึกของคอมโพสิเตอร์ต้นทางจะอธิบายตัวเลือกที่มีอยู่ แต่โหมดจะใช้งานได้ก็ต่อเมื่อถูกสร้างขึ้นในเวอร์ชันที่คุณติดตั้งเท่านั้น ตรวจสอบคุณสมบัติที่มีอยู่ด้วยคำสั่ง ` xfwm4 --versiongLX` หาก GLX ไม่ได้ช่วยและบิลด์รายงานว่ารองรับ Xpresent ให้ทดสอบเป็นโหมดทางเลือก:
xfconf-query -c xfwm4 -p /general/vblank_mode -t string -s xpresent --create
ทดสอบทีละโหมด หากต้องการกลับไปใช้การเลือกอัตโนมัติ ให้ใช้autoแทนxpresentหลีกเลี่ยงการตั้งค่าโหมดเป็นoffเป็นการแก้ไขถาวร การปิดใช้งานการซิงโครไนซ์ช่องว่างแนวตั้งอาจทำให้เกิดปัญหาภาพฉีกขาดได้
2. ใช้ Intel TearFree เฉพาะกับไดรเวอร์ Xorg ที่ตรงกันเท่านั้น
ข้ามส่วนนี้ไป เว้นแต่ว่าบันทึก Xorg จะระบุว่าไดรเวอร์ที่ใช้งานอยู่คือ ตัวเลือก intelของไดรเวอร์ Intel Xorg TearFreeจะแสดงผลลงในบัฟเฟอร์ด้านหลังก่อนที่จะอัปเดตการแสดงผลคู่มือไดรเวอร์ Debian Bookwormระบุว่าวิธีนี้ต้องการการจัดสรรหน่วยความจำขนาดเท่ากับเฟรมบัฟเฟอร์เพิ่มเติม และอาจลดปริมาณงานและเพิ่มความหน่วงในการแสดงผลเล็กน้อย นี่อาจเป็นการแลกเปลี่ยนที่ไม่คุ้มค่าสำหรับเครื่องที่มีหน่วยความจำหรือประสิทธิภาพจำกัด
เมื่อบันทึกยืนยันแล้วintelให้สร้างส่วนย่อย Xorg ใหม่โดยไม่เขียนทับการกำหนดค่าที่มีอยู่เดิม ตรวจสอบก่อนว่าชื่อไฟล์นั้นยังไม่ได้ถูกใช้งาน:
ls /etc/X11/xorg.conf.d/30-intel-tearfree.conf
หากระบบแจ้งว่าไฟล์ไม่มีอยู่ ให้สร้างไฟล์นั้นโดยใช้สิทธิ์ผู้ดูแลระบบ:
sudo install -d /etc/X11/xorg.conf.d
sudoedit /etc/X11/xorg.conf.d/30-intel-tearfree.conf
เพิ่มเฉพาะส่วนอุปกรณ์นี้ บันทึก และปิดโปรแกรมแก้ไข:
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "TearFree" "true"
EndSection
ไฟล์การกำหนดค่า Xorg มีส่วน Device อยู่ ให้คัดลอกบล็อกตัวเลือกจากบทความโดยตรง แทนที่จะใช้มุมมองตัวแก้ไขทั่วไปนี้เริ่มเซสชันกราฟิกใหม่หรือรีบูตเครื่องเพื่อโหลดการเปลี่ยนแปลง อย่าใช้ส่วนนี้สำหรับmodesetting: ส่วนนี้เลือกใช้ไดรเวอร์ Intel Xorg รุ่นเก่าอย่างชัดเจนหมายเหตุของแพ็กเกจ Bookworm ของ Debian ไม่แนะนำให้ใช้ไดรเวอร์แยกต่างหากนั้นสำหรับ GPU ตั้งแต่ปี 2007 เป็นต้นไป อย่าติดตั้งลงในกราฟิกการ์ดรุ่นใหม่กว่าเพียงเพื่อเปิดใช้งานTearFreeสำหรับไดรเวอร์อื่น ให้ใช้การตั้งค่าคอมโพสิตเตอร์ของ XFCE และตรวจสอบเอกสาร Xorg ที่เกี่ยวข้องสำหรับเวอร์ชันที่คุณติดตั้ง
หากการเข้าสู่ระบบแบบกราฟิกไม่สำเร็จหลังจากเพิ่มไฟล์แล้ว ให้เปลี่ยนไปใช้คอนโซลข้อความโดยใช้เครื่องหมายCtrl+ Alt+ F3ลงชื่อเข้าใช้ แล้วลบเฉพาะโค้ดส่วนที่เพิ่มเข้ามาใหม่:
sudo rm /etc/X11/xorg.conf.d/30-intel-tearfree.conf
sudo reboot
ใช้การย้อนกลับนี้เฉพาะในกรณีที่คุณสร้างไฟล์นั้นขึ้นมาเพื่อใช้ในการเปลี่ยนแปลงนี้โดยเฉพาะ หากไฟล์ชื่อนั้นมีอยู่แล้ว อย่าลบหรือแทนที่ไฟล์นั้น
ตรวจสอบความถูกต้องของการแก้ไขและรู้ว่าควรหยุดเมื่อใด
หลังจากล็อกอินกลับเข้าไปแล้ว ให้ทดสอบกิจกรรมเดิมอีกครั้ง: เลื่อนหน้าเว็บอย่างช้าๆ ย้ายหน้าต่าง และเล่นวิดีโอเดียวกันในขนาดเดิม สังเกตดูว่ามีรอยต่อแนวนอนหรือไม่ แทนที่จะเป็นอาการกระตุกทั่วไปหรืออัตราเฟรมต่ำ ตรวจสอบแอปพลิเคชันที่สอง และถ้าเป็นไปได้ ให้ตรวจสอบทีละจอแสดงผล หากวิดีโอแบบเต็มหน้าจอยังคงมีปัญหาภาพฉีกขาดในขณะที่เดสก์ท็อปไม่มีปัญหา ปัญหาอาจเกิดจากเส้นทางการส่งออกของโปรแกรมเล่นวิดีโอโดยเฉพาะ มากกว่าการประมวลผลภาพของ XFCE
ตรวจสอบ การตั้งค่าใน Settings Manager > Displayด้วยและใช้ความละเอียดและอัตราการรีเฟรชที่จอภาพระบุว่ารองรับ โหมดที่ไม่ถูกต้อง สายเคเบิลที่ไม่เสถียร หรือปัญหาที่เกิดขึ้นเฉพาะกับเอาต์พุตเดียว อาจดูเหมือนปัญหาไดรเวอร์ เปลี่ยนการตั้งค่าทีละอย่างเพื่อให้คุณทราบว่าการเปลี่ยนแปลงใดช่วยได้ หยุดหากคุณเห็นหน้าจอดำ ความผิดเพี้ยนของกราฟิก หรือประสิทธิภาพลดลงอย่างมาก ย้อนกลับการเปลี่ยนแปลงล่าสุดก่อนที่จะลองการเปลี่ยนแปลงอื่น
รอยต่อแนวนอนที่มองเห็นได้ชัดเจนเป็นอาการที่ควรเปรียบเทียบก่อนและหลังการเปลี่ยนการตั้งค่าการซิงโครไนซ์หมายเหตุเกี่ยวกับรูปภาพ:แผงเหล่านี้เป็นภาพประกอบส่วนติดต่อผู้ใช้ทั่วไป ไม่ใช่ภาพหน้าจอที่บันทึกจาก Pardus ป้ายกำกับของ Pardus และ Xfce จะแตกต่างกันไปตามเวอร์ชันของแพ็กเกจ โปรดดูชื่อการตั้งค่าและคำสั่งในข้อความประกอบ