สำหรับผู้ที่มาที่นี่ในเวลานี้หรือหลังจากนั้นโดยเฉพาะอย่างยิ่งถ้าคุณไม่เคยยุ่งกับการตั้งค่าเริ่มต้นของระบบ/etc/pulse/default.paโปรดทราบว่าถ้าคุณมี~/.config/pulse/default.paมันจะเข้ามาแทนที่ค่าเริ่มต้นทั้งระบบอย่างสมบูรณ์
กล่าวอีกนัยหนึ่ง: หากคุณได้รับข้อความแสดงข้อผิดพลาด
[pulseaudio] main.c: Daemon startup without any loaded modules, refusing to work.
ตรวจสอบว่าคุณตั้งใจหรือมีไฟล์โดยไม่ตั้งใจ .config/pulse/default.pa
ถ้าใช่ให้ลองย้ายไปไว้ที่ตำแหน่งสำรองจากนั้นรีสตาร์ท pulseaudio เช่นเปิดเทอร์มินัลแล้วพิมพ์
mv .config/pulse/default.pa ~/default.pa.bak
pulseaudio -vvvvv
หากตอนนี้คุณเห็นบรรทัดจำนวนมากเลื่อนไปตามคำสั่งของโมดูลที่โหลดเพิ่มเติมโดยเฉพาะคุณจะรู้ว่าคุณได้แก้ไขปัญหาดั้งเดิมแล้ว
เพราะนี่เป็นเรื่องยากที่จะติดตามการลงโดยเฉพาะอย่างยิ่งถ้าคุณเป็นคนขี้ลืม (เช่นฉัน) หรือเพราะคุณมีความเชื่อมั่นโดยหนึ่งในหน้าเว็บมากการจัดการกับปัญหา PulseAudio ว่าคุณควรจะมีdefault.paในครั้งแรกที่มีอยู่แล้วข้อผิดพลาด Launchpadยื่น กับพฤติกรรมที่เฉพาะของผู้ใช้default.pa แทนที่default.paระบบกว้าง ขอขอบคุณที่จิมมีคาร์เตอร์สำหรับการชี้ให้ฉันในทิศทางที่เหมาะสม
ตอนนี้ถ้าคุณต้องแก้ไขปัญหาที่ pulseaudio เมื่อเริ่มต้นจะนำเสียงไปยังอุปกรณ์ที่ไม่ถูกต้องคุณสามารถกำหนดค่าของคุณ~/.config/pulse/default.paให้ hardcode อุปกรณ์แสดงผลเริ่มต้นด้วยคำสั่งเช่น
set-card-profile 0 output:analog-stereo
set-default-sink 1
นี่คือสิ่งที่ฉันเคยมีในไฟล์กำหนดค่าของฉันเพื่อป้องกันไม่ให้คอมพิวเตอร์พยายามส่งสัญญาณเสียงผ่านการเชื่อมต่อ HDMI อย่างไรก็ตามเพื่อให้การทำงานนี้คุณจะยังคงต้องเพิ่มเนื้อหาทั้งหมดของ/etc/pulse/default.paไฟล์ก่อนที่จะมีคำสั่งเหล่านั้น เนื่องจากมีข้อผิดพลาดเกิดขึ้น - ให้พิจารณาว่าจะเกิดอะไรขึ้นเมื่อมีapt-get dist-upgradeการเปลี่ยนแปลงค่าเริ่มต้นทั้งระบบครั้งถัดไป- คุณสามารถระบุการกำหนดค่าเริ่มต้นก่อนคำสั่งของคุณ
ไฟล์กำหนดค่า pulseaudio เฉพาะผู้ใช้ของฉันแบบเต็มคือ
.include /etc/pulse/default.pa
set-card-profile 0 output:analog-stereo
set-default-sink 1
Btw รายการคำสั่งทั้งหมดที่สามารถใช้งานได้ในไฟล์กำหนดค่าเหล่านี้สามารถแสดงอยู่ในเทอร์มินัลได้ด้วยการพิมพ์
man pulse-cli-syntax
pulseaudio