วิธีการเปลี่ยนระดับเสียงของแอพการเล่น pulseaudio และสตรีมที่ไม่ได้ใช้งานในปัจจุบัน?


13

ฉันสามารถเปลี่ยนระดับเสียงด้วย " gnome-volume-control " แต่มีรายการเล่นเฉพาะแอพ / - สตรีมที่ใช้งานอยู่ในปัจจุบัน :

ภาพหน้าจอ

ใน~/.config/pulse/ฉันพบ*-stream-volumes.tdbและ*-device-volumes.tdbอาจเป็นไฟล์การกำหนดค่า แต่ฉันไม่สามารถอ่านหรือแก้ไขไฟล์เหล่านี้

คำตอบ:


4

ฉันเขียนเครื่องมือเล็ก ๆ ที่ให้คุณตั้งค่าระดับเสียงของไคลเอนต์ใด ๆ ที่ pulseaudio จำได้ โปรดดูที่นี่:

https://github.com/rhaas80/pa_volume

สำหรับพื้นที่เก็บข้อมูล คุณจะต้องติดตั้งแพ็คเกจ libpulse-dev หลังจากนั้น "make" อย่างง่ายควรสร้างเครื่องมือ โปรดดูไฟล์ README.md สำหรับการใช้งาน

dpkg -l | grep libpulse-dev # Check if installed
git clone git@github.com:rhaas80/pa_volume.git
cd pa_volume/
make
./pa_volume # list remembered PA clients
./pa_volume Program 30 # set to 30%

1
6 ปีหลังจากที่ถามคำถามขอขอบคุณสำหรับการให้บริการโซลูชั่นการทำงานและการแบ่งปันได้ที่นี่ :)
Lasall

นอกจากนี้คุณยังสามารถแสดงรายชื่อลูกค้าด้วยpacmd list-clientsและฆ่าพวกเขาด้วยpacmd kill-client( man pulse-cli-syntax) เพื่อฆ่าพวกเขาทั้งหมด: for i in $(pacmd list-clients | grep index | grep -o "[0-9]*"); do pacmd kill-client $i; done. บางคนจะวางไข่ใหม่ไม่แน่ใจว่าทำไม
Pablo Bianchi

16

Pulseaudio มาพร้อมกับอินเตอร์เฟสบรรทัดคำสั่ง ( man pulse-cli-syntax) เพื่อควบคุมการตั้งค่าต่างๆ

เราสามารถโหลด parser บรรทัดคำสั่งpacmdหรือเราเรียกคำสั่งโดยตรงในเทอร์มินัลหรือสคริปต์:

pacmd set-sink-volume <index> <volume>
pacmd set-source-volume <index> <volume>

ควบคุมระดับเสียงของ sink ที่ระบุซึ่ง<index>เป็นดัชนี sink (แสดงรายการด้วยpacmd list-sinks) และ<volume>เป็นค่าใด ๆ ตั้งแต่ 0 (= ปิดเสียง) ถึง 65536 = 100%

ไฟล์การกำหนดค่าใน~/.config/pulse(ก่อนหน้านี้~/.pulseซึ่งยังคงสามารถใช้งานได้ในการติดตั้งที่อัพเกรด) ไม่ได้หมายถึงการอ่านหรือแก้ไขในการตั้งค่าเริ่มต้น แต่เราสามารถสร้างที่กำหนดเองที่นั่นเพื่อแทนที่การตั้งค่าในdefault.pa/etc/pulse/default.pa

สำหรับearcandy 12.04 อาจใช้สำหรับการควบคุมเสียง น่าเศร้าที่แอปพลิเคชั่นนี้ไม่ได้พัฒนาเพิ่มเติมและไม่สามารถใช้ได้ในรุ่นต่อมา

ดูหมายเหตุเพิ่มเติมสำหรับคำตอบนี้


ขอบคุณสำหรับคำอธิบายของคุณ แต่ฉันไม่มาถึง เมื่อฉันต้องการปรับปริมาณ amarok ของฉันฉันจะทำอย่างไร มันไม่ได้มีการระบุไว้ในรายการอ่างล้างมือหรือรายชื่อแหล่งที่มา
Lasall

คุณไม่สามารถทำได้ด้วยอินเตอร์เฟสบรรทัดคำสั่ง สิ่งนี้ถูกผูกไว้กับ sink sink ของเอาต์พุต
Takkat

ฉันได้ทดสอบ earcandy แล้ว มันควรทำสิ่งที่ฉันต้องการ แต่มันก็ยังไม่เสถียรดังนั้นฉันจึงไม่ทำเครื่องหมายคำถามนี้ว่าแก้ไขแล้ว
Lasall

@ Lasas: ไม่ต้องกังวล เราหวังว่ามันจะมีเสถียรภาพในบางครั้ง
Takkat

3

ในการค้นหาแหล่งเก็บ pulseaudio ของคุณให้ใช้คำสั่งต่อไปนี้:

pactl list short sinks

จากคำสั่งนี้คุณได้runningและidleจม ด้วยหมายเลขอ่างของพวกเขา การใช้หมายเลขดัชนีนั้นคุณสามารถควบคุมปริมาณการซิงค์ได้

index: 128
    driver: <module-ladspa-sink.c>
    state: RUNNING
    sink: 0
    # ^ This is the sink number you want to find

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อควบคุมปริมาณ sinks เฉพาะ:

pactl set-sink-volume <index number> <volume in %>

ตัวอย่างเช่น:

pactl set-sink-volume 0 100%

1
ขอบคุณที่ดูคำถามเก่านี้ ฉันได้รับเพียงหนึ่งรายการในรายการอ่างล้างจาน คำถามของฉันคือการควบคุมระดับเสียงของแอปพลิเคชั่น (ไม่ได้ทำงานอยู่) ที่แตกต่างกันและไม่เชื่อมต่อเสียงที่แตกต่าง
Lasall

นอกจากนี้ยังไม่ได้ตอบคำถาม pactl list sink-inputsแต่คุณสามารถดูผลเสียงที่ทำงานอยู่ในปัจจุบันด้วย ถ้าแสดงให้เห็นว่าโปรแกรมของคุณที่มีรหัส 108 ในรายการนี้และคุณต้องการที่จะตั้งค่าให้ปริมาณ 60%, pactl set-sink-input-volume 108 60%การใช้งาน แต่เสียงจะต้องทำงานเพื่อให้ทำงานได้
weltensturm

1
ทั้งหมดที่ฉันได้รับ: "ไม่ได้ระบุคำสั่งที่ถูกต้อง"
panzi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.