ฉันไม่ทราบว่ามีการตั้งค่าหรือไฟล์การกำหนดค่าสำหรับที่ใดก็ได้ แต่สามารถทำได้ด้วยตัวแปรสภาพแวดล้อม ฉันใช้คำตอบของฉันในรายการนี้ใน PulseAudio FAQเกี่ยวกับการตั้งค่าแหล่งบันทึก ฉันได้ลองกับ output (sink ใน PulseAudio) แต่มันควรจะใช้ได้ทั้ง input และ ouput
ขั้นตอนแรกคือรับชื่อภายในของแหล่งที่มาและซิงค์ที่คุณต้องการใช้ ในการทำเช่นนั้นคุณต้องใช้pactl list
คำสั่ง คำสั่งนั้นจะส่งคืนกองข้อมูล แต่ต่อไปนี้จะแสดงเพียงชื่อแหล่งที่มา:
LANG=C pactl list | grep -A2 'Source #' | grep 'Name: ' | cut -d" " -f2
รายการนั้นอาจรวมถึงชื่อสำหรับทั้งแหล่งข้อมูลปกติและแหล่งที่มาของจอภาพของ PulseAudio (ซึ่งในระบบของฉันมี "มอนิเตอร์" ในชื่อ) คุณจะต้องการใช้ชื่อแหล่งที่มาปกติของอุปกรณ์ที่คุณต้องการกำหนดเป้าหมาย
คุณสามารถทำสิ่งเดียวกันเพื่อรับชื่อ sink:
LANG=C pactl list | grep -A2 'Sink #' | grep 'Name: ' | cut -d" " -f2
เมื่อคุณมีชื่อแล้วคุณสามารถเรียกใช้สิ่งต่อไปนี้จากเทอร์มินัลของคุณ:
PULSE_SINK=<sink_name> PULSE_SOURCE=<source_name> <command_to_run_skype>
แน่นอนถ้าคุณต้องการเรียกใช้งานจากเมนูคุณอาจต้องสร้างเชลล์สคริปต์และใช้สิ่งนั้นแทนคำสั่งเริ่มต้น สิ่งนี้ควรใช้งานได้:
#!/bin/sh
set PULSE_SINK <sink_name>
set PULSE_SOURCE <source_name>
<command_to_run_skype>