ใน Pardus Linux 23 ไอคอนลำโพงที่ไม่มีอุปกรณ์เอาต์พุตอาจทำให้ดูเหมือนว่าไดรเวอร์การ์ดเสียงหายไป สาเหตุอาจมาจากระดับล่างลงไป เช่น ปัญหาไดรเวอร์เคอร์เนลหรือเฟิร์มแวร์ หรืออาจมาจากระดับบนสุดที่บริการเสียงเดสก์ท็อปเลือกเอาต์พุตผิด การตรวจสอบรายการอุปกรณ์ PCI หรือ USB และรายการการ์ดของ ALSA อย่างรวดเร็วจะแสดงให้เห็นว่าควรตรวจสอบระดับใดก่อนที่จะติดตั้งแพ็กเกจหรือเปลี่ยนแปลงการกำหนดค่า
คู่มือนี้ใช้ได้กับเดสก์ท็อป Pardus 23 รวมถึงการติดตั้ง XFCE และ GNOME บันทึกการเผยแพร่ Pardus 23 ระบุว่า XFCE 4.18 เป็นเดสก์ท็อปเริ่มต้นสำหรับการเผยแพร่ครั้งแรกและเคอร์เนล Linux 6.1 อิมเมจและการอัปเดต Pardus 23 ในภายหลังอาจแตกต่างกัน ตรวจสอบเคอร์เนลที่ติดตั้งของคุณuname -rแทนที่จะคิดว่าระบบ 23.x ทุกระบบมีบิลด์เดียวกัน บันทึกการเผยแพร่ Pardus 23 ยังระบุส่วนประกอบของที่เก็บอย่างเป็นทางการ รวมถึงnon-free-firmwareดูบันทึกการเผยแพร่ Pardus 23
ขั้นแรก ให้หาคำตอบว่า “ตรวจไม่พบ” หมายความว่าอย่างไร
ระบบเสียงของ Linux มีเลเยอร์ที่แตกต่างกัน ALSA ทำหน้าที่จัดหาอินเทอร์เฟซเสียงของเคอร์เนลและไดรเวอร์การ์ดเสียง ในขณะที่เซิร์ฟเวอร์เสียงบนเดสก์ท็อป เช่น PulseAudio หรือ PipeWire จะอยู่เหนือกว่าและทำหน้าที่กำหนดเส้นทางเสียงไปยังลำโพง หูฟัง HDMI หรืออุปกรณ์ USB ส่วนเสียงในเอกสารอ้างอิงของ Debianอธิบายถึงการแบ่งส่วนระหว่างไดรเวอร์ ALSA และเซิร์ฟเวอร์เสียง ดังนั้น การที่ไม่มีเสียงออกจากเมนูเดสก์ท็อปไม่ได้หมายความว่า Pardus ขาดไดรเวอร์การ์ดเสียง ตรวจสอบฮาร์ดแวร์และเลเยอร์ ALSA ก่อน จากนั้นตรวจสอบเซิร์ฟเวอร์เสียง
เปิดเทอร์มินัลแล้วพิมพ์คำสั่งต่อไปนี้:
lspci -nnk | grep -A3 -i audio
lsusb
aplay -l
cat /proc/asound/cards
lspciแสดงรายการฮาร์ดแวร์เสียง PCI ภายในและไดรเวอร์เคอร์เนลเมื่อมีการเชื่อมต่อlsusbช่วยในการจัดการอุปกรณ์เสียง USB ภายนอกaplay -lและ/proc/asound/cardsแสดงการ์ดเสียงที่ ALSA สามารถมองเห็นได้ หากไม่มีคำสั่งใด ให้ติดตั้งยูทิลิตี้การวินิจฉัยที่เกี่ยวข้องจากที่เก็บ Pardus ที่กำหนดค่าไว้ โดยalsa-utilsมีเครื่องมือต่างๆ เช่นaplayและalsamixerในขณะที่pciutilsมี เครื่องมืออื่นๆ lspciเช่น
1. หาก ALSA ตรวจพบการ์ด ให้ตรวจสอบเอาต์พุตและมิกเซอร์
เมื่อaplay -lโปรแกรมแสดงรายการการ์ดเสียงแต่ไม่มีเสียงออกจากเดสก์ท็อป ให้เริ่มต้นด้วยการเลือกเอาต์พุตที่ถูกต้อง เปิดการตั้งค่าเสียงหรือการตั้งค่าออดิโอในเดสก์ท็อปของคุณ และเลือกเอาต์พุตลำโพงหรือหูฟังจริง ๆ แทนที่จะเป็น HDMI, ด็อกกิ้งสเตชั่น, จอภาพ หรืออุปกรณ์ที่ไม่ได้เสียบปลั๊ก ลองเสียบหูฟังและลำโพงเข้ากับคอมพิวเตอร์โดยตรงเพื่อทดสอบหนึ่งครั้ง และถอดอุปกรณ์เสียง USB หรือ HDMI ที่ไม่ได้ใช้งานออกชั่วคราวเพื่อให้รายการเอาต์พุตอ่านง่ายขึ้น
ตรวจสอบมิกเซอร์ ALSA ด้วยเช่นกัน:
alsamixer
หากมีการ์ดมากกว่าหนึ่งรายการแสดงอยู่ ให้กดF6และเลือกการ์ดที่ตรงกับเอาต์พุตที่คุณกำลังทดสอบ มองหาปุ่มควบคุมการเล่นที่ปิดเสียงและระดับเสียงที่ต่ำ ในส่วนนี้ จะalsamixerสลับMการปิดเสียงสำหรับปุ่มควบคุมที่เลือก ค่อยๆ เพิ่มระดับเสียง Master, Speaker หรือ PCM คู่มือ alsa-utils alsamixerจะอธิบายการควบคุมมิกเซอร์ แล็ปท็อปบางรุ่นมีปุ่มปิดเสียงฮาร์ดแวร์แยกต่างหาก ดังนั้นให้ทดสอบปุ่มเหล่านั้นด้วย อย่าบันทึกการตั้งค่าใดๆ ก่อน ให้ตรวจสอบว่าการเปิดเสียงหรือการเลือกอุปกรณ์ที่ถูกต้องจะทำให้เสียงกลับมาหรือไม่
สำหรับการทดสอบการเล่น ALSA แบบสั้น ให้ใช้หมายเลขการ์ดและอุปกรณ์ที่แสดงโดยaplay -lตัวอย่างเช่นspeaker-test -c 2 -t wavจะทดสอบอุปกรณ์เริ่มต้นปัจจุบัน หยุดการทดสอบด้วยCtrl+Cหากการทดสอบ ALSA โดยตรงทำงานได้ แต่แอปพลิเคชันเดสก์ท็อปทั่วไปยังคงไม่มีเสียง ให้ตรวจสอบเซิร์ฟเวอร์เสียงเดสก์ท็อปและโปรไฟล์เอาต์พุตแทนที่จะติดตั้งไดรเวอร์เคอร์เนลอื่น
2. หากฮาร์ดแวร์ปรากฏในช่อง PCI หรือ USB แต่ ALSA ไม่พบการ์ดนั้น
หากlspciตรวจlsusbพบฮาร์ดแวร์เสียงแต่aplay -lไม่แสดงการ์ดเสียง ปัญหาอาจเกี่ยวข้องกับโมดูลเคอร์เนล เฟิร์มแวร์ หรือการเริ่มต้นอุปกรณ์มากกว่า ให้รวบรวมข้อความเสียงขณะบูตเครื่องและโมดูลเสียงที่โหลดไว้:
sudo journalctl -k -b | grep -i -E 'snd|hda|sof|audio|firmware'
lsmod | grep '^snd'
มองหาบรรทัดที่ระบุชื่อไฟล์เฟิร์มแวร์ที่หายไป การเริ่มต้นอุปกรณ์ล้มเหลว หรือโมดูลที่ไม่โหลด เปรียบเทียบรหัสผู้ผลิตและรหัสอุปกรณ์ PCI lspci -nnkกับโมดูลและเฟิร์มแวร์ที่กล่าวถึงในบันทึก ฮาร์ดแวร์แต่ละตระกูลอาจแตกต่างกัน: snd_hda_intelเป็นเรื่องปกติสำหรับ Intel High Definition Audio แต่ระบบรุ่นใหม่กว่าและอุปกรณ์ที่ไม่ใช่ของ Intel อาจใช้ไดรเวอร์ที่แตกต่างกัน รวมถึงโมดูล Sound Open Firmware (SOF) อย่าบังคับโหลดโมดูลที่คาดเดาหรือบล็อกโมดูลอื่นโดยไม่ยืนยันชิปเซ็ตและเส้นทางไดรเวอร์ที่ระบุไว้
อัปเดตแพ็กเกจ Pardus ก่อนเพิ่มไดรเวอร์
หากเป็นการติดตั้ง Pardus 23 เวอร์ชันเก่าหรือที่ได้รับการอัปเดตเพียงบางส่วน โปรดติดตั้งการอัปเดตที่มีให้จาก Pardus Update หรือใช้ขั้นตอนการติดตั้งแพ็กเกจ Pardus มาตรฐาน:
sudo apt update
sudo apt upgrade
หลังจากอัปเดตเคอร์เนล เฟิร์มแวร์ หรือแพ็กเกจที่เกี่ยวข้องกับ ALSA แล้ว ให้รีสตาร์ทระบบ จากนั้นเรียกใช้คำสั่งตรวจจับอีกครั้ง เอกสารบันทึกการเผยแพร่ Pardus 23 ระบุที่เก็บซอฟต์แวร์ของระบบปฏิบัติการเอง โปรดหลีกเลี่ยงการเพิ่มที่เก็บซอฟต์แวร์ของ Debian หรือติดตั้งแพ็กเกจไดรเวอร์แบบสุ่มจากเว็บไซต์ดาวน์โหลด เนื่องจาก1การผสมที่เก็บซอฟต์แวร์อาจทำให้ไลบรารีหลักถูกแทนที่หรือทำให้ระบบอยู่ในสถานะที่ไม่ได้รับการสนับสนุน
หากบันทึกเคอร์เนลระบุถึงไฟล์เฟิร์มแวร์ที่หายไป ให้ระบุชิปเซ็ตเสียงและชื่อไฟล์เฟิร์มแวร์ที่แน่นอนก่อน ค้นหาในที่เก็บแพ็กเกจของ Pardus หรือเอกสารช่วยเหลือของ Pardus สำหรับส่วนประกอบนั้น จากนั้นติดตั้งเฉพาะแพ็กเกจที่ตรงกันจากที่เก็บที่รองรับเท่านั้น Pardus เผยแพร่บันทึกการติดตั้งเฟิร์มแวร์แยกต่างหากสำหรับอุปกรณ์บางอย่าง แต่ใช้ที่เก็บเฟิร์มแวร์แบบทดลอง โปรดพิจารณาว่าเป็นเส้นทางเฉพาะฮาร์ดแวร์: ปฏิบัติตามเฉพาะเมื่อคำแนะนำตรงกับอุปกรณ์ของคุณและคุณยอมรับข้อจำกัดของที่เก็บ อย่าเปิดใช้งานที่เก็บแบบทดลองเพียงเพราะอุปกรณ์เสียงไม่มีอยู่ โปรดดู คำแนะนำการติดตั้งเฟิร์มแว ร์ของ Pardus
3. หาก ALSA ตรวจพบอุปกรณ์ แต่เดสก์ท็อปตรวจไม่พบ
ตรวจสอบว่าเซสชันของคุณใช้เซิร์ฟเวอร์เสียงใดก่อนที่จะรีสตาร์ทอะไรก็ตาม เรียกใช้คำสั่ง:
pactl info
wpctl status
pactl infoรายงานเซิร์ฟเวอร์ที่เข้ากันได้กับ PulseAudio; การติดตั้ง PipeWire อาจให้ความเข้ากันได้กับ PulseAudio ผ่านทางpipewire-pulseแสดงwpctl statusรายการอุปกรณ์และโหนด PipeWire เมื่อติดตั้ง PipeWire และ WirePlumber แล้ว เป็นเรื่องปกติที่คำสั่งใดคำสั่งหนึ่งจะไม่สามารถใช้งานได้ในระบบที่ใช้ระบบเสียงอื่น Debian ระบุว่าสภาพแวดล้อมเดสก์ท็อปสามารถใช้เซิร์ฟเวอร์เสียงที่แตกต่างกันได้ และแสดงรายการการตั้งค่า PipeWire สำหรับ Debian 12 และเวอร์ชันที่ใหม่กว่าอย่าคิดว่า Pardus XFCE และ GNOME มีการตั้งค่าบริการเสียงที่เหมือนกัน
หากผลลัพธ์ของคำสั่งระบุว่า PipeWire ทำงานอยู่ ให้ตรวจสอบว่า PipeWire และ WirePlumber ทำงานอยู่ในการใช้งานของผู้ใช้ของคุณหรือไม่ ก่อนที่จะรีสตาร์ท หากระบุว่า PulseAudio ทำงานอยู่ ให้ตรวจสอบสถานะการใช้งานของผู้ใช้และดูว่าสามารถมองเห็นการ์ด ALSA ได้หรือไม่ อย่าติดตั้ง PipeWire และ PulseAudio พร้อมกันเป็นการแก้ไขปัญหาเบื้องต้น หรือเรียกใช้คำสั่งรีสตาร์ทสำหรับทั้งสองโปรแกรมโดยไม่ตรวจสอบให้ดีเสียก่อน ให้แก้ไขการเลือกอุปกรณ์หรือบริการที่ใช้งานอยู่จริงก่อน จากนั้นลงชื่อออกและเข้าสู่ระบบใหม่ หรือรีสตาร์ทบริการของผู้ใช้โดยใช้ขั้นตอนที่เหมาะสมกับแพ็กเกจที่ติดตั้งไว้
4. หากอุปกรณ์เสียงไม่ปรากฏขึ้นเลย
หากทั้งสองอย่างlspciไม่lsusbแสดงอุปกรณ์ การตั้งค่าเสียงบนเดสก์ท็อปก็ไม่สามารถแก้ไขได้ สำหรับการ์ดเสียงออนบอร์ด ให้ตรวจสอบการตั้งค่า BIOS หรือ UEFI ว่ามีการเปิดใช้งานตัวควบคุมเสียงหรือไม่ จากนั้นปิดเครื่องโดยสมบูรณ์และตรวจสอบอีกครั้งหลังจากเปิดเครื่องใหม่ สำหรับอะแดปเตอร์เสียง USB ให้เชื่อมต่อโดยตรงกับพอร์ตอื่นแล้วลองใช้งานlsusbอีกครั้ง สำหรับเครื่องเสมือน ให้ตรวจสอบว่าไฮเปอร์ไวเซอร์แสดงอุปกรณ์เสียงให้กับระบบปฏิบัติการแขกหรือไม่ ระบบปฏิบัติการ Linux ในเครื่องเสมือนไม่สามารถโหลดไดรเวอร์สำหรับฮาร์ดแวร์ที่ไม่ได้ระบุไว้ได้
หากอุปกรณ์ปรากฏอยู่ในรายการฮาร์ดแวร์ แต่ไม่มีบรรทัด “ไดรเวอร์เคอร์เนลที่ใช้งานอยู่” ให้จดบันทึกผู้ผลิตและรหัสอุปกรณ์ เวอร์ชัน Pardus uname -rและบรรทัดบันทึกเคอร์เนลที่เกี่ยวข้อง ค้นหารหัสที่แน่นอนนั้นในเอกสาร Pardus หรือเอกสารของผู้ผลิตชิปเซ็ต วิธีนี้มีความน่าเชื่อถือมากกว่าการเลือกไดรเวอร์โดยอิงจากชื่อรุ่นแล็ปท็อปเพียงอย่างเดียว ซึ่งอาจมาพร้อมกับไดรเวอร์เสียงเวอร์ชันที่แตกต่างกัน
ข้อสันนิษฐานทั่วไปที่ควรหลีกเลี่ยง
- “ถ้าไม่มีไอคอนเสียง แสดงว่าไม่มีไดรเวอร์”ไม่จำเป็นเสมอไป หาก ALSA แสดงรายการการ์ดเสียง ให้ตรวจสอบเอาต์พุตบนเดสก์ท็อป สถานะปิดเสียง หรือเซิร์ฟเวอร์เสียง ตรวจสอบ
aplay -lก่อนเปลี่ยนไดรเวอร์
- “ระบบ Pardus 23 ทุกระบบใช้ PipeWire”ส่วนประกอบด้านเสียงอาจแตกต่างกันไปขึ้นอยู่กับเดสก์ท็อปและแพ็กเกจที่ติดตั้ง โปรดอ่าน
pactl infoและwpctl statusทำความเข้าใจก่อนปฏิบัติตามคำแนะนำเฉพาะของ PulseAudio หรือ PipeWire
- “ไดรเวอร์ Intel ใช้ได้กับการ์ดเสียงทุกรุ่น”การเลือกไดรเวอร์ขึ้นอยู่กับชิปเซ็ตและเคอร์เนลที่ใช้งานจริง ใช้ PCI ID และบันทึกเคอร์เนลเพื่อระบุโมดูลที่ถูกต้อง อย่าเพิ่มรายการโมดูลที่ถูกบล็อกทั่วไปหรือไดรเวอร์ของผู้ผลิตโดยไม่มีหลักฐาน
- “ข้อผิดพลาดของเฟิร์มแวร์หมายความว่าฉันควรเปิดใช้งานแหล่งเก็บข้อมูลที่ไม่ใช่โอเพนซอร์สหรือแหล่งเก็บข้อมูลทดลองทั้งหมด”แพ็กเกจเฟิร์มแวร์นั้นเฉพาะเจาะจงสำหรับอุปกรณ์แต่ละชนิด และเอกสารของ Pardus ระบุแหล่งที่มาทดลองแยกต่างหากสำหรับบางกรณี โปรดตรวจสอบให้แน่ใจว่าเฟิร์มแวร์ที่ระบุตรงกับฮาร์ดแวร์ของคุณก่อนที่จะเปลี่ยนแหล่งที่มาของแหล่งเก็บข้อมูล
ยืนยันการแก้ไข
หลังจากทำการเปลี่ยนแปลงแต่ละครั้ง ให้ทำซ้ำaplay -lและตรวจสอบรายการเอาต์พุตบนเดสก์ท็อป การ์ดควรปรากฏใน ALSA ควรเลือกเอาต์พุตลำโพงหรือหูฟังที่ต้องการได้ และตัวควบคุมระดับเสียงไม่ควรถูกปิดเสียง ลองเล่นเสียงจากสองแอปพลิเคชันและทดสอบทั้งลำโพงในตัวและหูฟัง (ถ้ามี) หากเสียงหายไปหลังจากรีบูต ให้บันทึกเวอร์ชันเคอร์เนลปัจจุบันและเปรียบเทียบกับเวอร์ชันที่ใช้งานได้ล่าสุด ซึ่งอาจบ่งชี้ถึงการเปลี่ยนแปลงในเคอร์เนล เฟิร์มแวร์ หรือโมดูลขณะบูต
หากฮาร์ดแวร์ปรากฏให้เห็นแต่ยังไม่มีการ์ด ALSA หรือบันทึกเคอร์เนลรายงานไฟล์เฟิร์มแวร์หายไปหรือการตรวจสอบล้มเหลวซ้ำๆ โปรดเก็บหมายเลข PCI หรือ USB ID และส่วนหนึ่งของบันทึกไว้เมื่อติดต่อฝ่ายสนับสนุนของ Pardus รายละเอียดเหล่านั้นจะระบุปัญหาได้แม่นยำกว่าข้อความ "ไม่พบไดรเวอร์เสียง" และช่วยแยกแยะปัญหาไดรเวอร์ออกจากปัญหาการกำหนดเส้นทางเสียงของเดสก์ท็อปได้