ฉันต้องการใช้ปลั๊กอิน LADSPA กับทุกสิ่งที่ส่งผ่านชุดเริ่มต้นของ PulseAudio ฉันจะตั้งค่านี้ได้อย่างไร
ฉันต้องการใช้ปลั๊กอิน LADSPA กับทุกสิ่งที่ส่งผ่านชุดเริ่มต้นของ PulseAudio ฉันจะตั้งค่านี้ได้อย่างไร
คำตอบ:
การเพิ่มปลั๊กอิน LADSPA เพื่อ PulseAudio จะทำกับโมดูล LADSPA อ่างล้างจาน
เราติดตั้งโมดูลนี้เป็นอ่างส่งออกที่เราสามารถกำหนดโมดูลการประมวลผลและสามารถส่งสัญญาณที่ประมวลผลไปยังอ่างที่สร้างขึ้นใหม่นี้
โมดูลนี้สามารถโหลดได้ที่รันไทม์ด้วย:
pacmd load-module module-ladspa-sink sink_name=<yourname> master=<sinkname> plugin=<plugin> label=<label> control=<option1>,<option2>,[...]
ชื่อของมาสเตอร์ sink สามารถอ่านได้ด้วยคำสั่งต่อไปนี้:
pacmd list-sinks
sink_name
ให้ชื่อของอ่างล้างจานการประมวลผลที่จะปรากฏอยู่ในรายชื่อที่ส่งออกใน ตัวเลือกเพิ่มเติมทั้งหมดขึ้นอยู่กับปลั๊กอินที่เราใช้ (ดูตัวอย่างด้านล่าง)
ในการใช้หน่วยประมวลผล LADSPA เราเลือกซิงค์เอาต์พุตจาก"การตั้งค่าเสียง ... "และตอนนี้สามารถฟังสตรีมที่ประมวลผลแล้ว ตัวเลือกการควบคุมไม่สามารถเปลี่ยนแปลงได้ในขณะใช้งานจริง
เราจะต้องยกเลิกการโหลดโมดูลและโหลดอีกครั้งสำหรับตัวเลือกที่แตกต่างกัน หากต้องการค้นหาดัชนีโมดูลสำหรับการยกเลิกการโหลดเราอาจออก:
pacmd list-modules
หากต้องการยกเลิกการโหลดโมดูลเราจะรีสตาร์ทเซิร์ฟเวอร์เสียงด้วยpulseaudio -k
หรือเรายกเลิกการโหลดโมดูลด้วยหมายเลขดัชนี#
:
pacmd unload-module <#>
เห็นแล้วยังวิกิพีเดียอ้างอิงจาก PulseAudio
หลังจากพบตัวเลือกที่เหมาะสมเราอาจต้องการเรียกใช้ตามค่าเริ่มต้น ซึ่งสามารถทำได้โดยรวมไว้ใน/etc/pulse/default.pa
ไฟล์กำหนดค่าที่โหลดโดย daemon เมื่อเริ่มต้น:
.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif
นี่เป็นตัวอย่างของกรณีพิเศษหนึ่งข้อที่จะให้แนวคิดแก่คุณเกี่ยวกับวิธีการทำ ในตัวอย่างนี้เราต้องการนำการเปลี่ยนระดับเสียงไปใช้กับเสียงของเราโดยใช้ TAP-plugin tap_pitch ( tap-plugins ) สำหรับปลั๊กอินนี้ตัวเลือกเพิ่มเติมที่จำเป็นสำหรับการโหลดไปยัง Pulse Audio มีดังต่อไปนี้:
plugin=tap_pitch # as from /usr/lib/ladspa/ without .so
label=tap_pitch # defines which label of a plugin to use
ในการค้นหาตัวเลือกการควบคุมที่เหมาะสมเราเรียกดูเอกสารประกอบปลั๊กอิน (ที่นี่TAP shifter pitch pitch ) ที่นั่นเราพบตารางที่ดีของการควบคุมที่เกี่ยวข้องสี่อย่างที่เราต้องใช้ในcontrol=
คำสั่ง:
control=<semitone>,<rate>,<dry>,<wet>
การเว้นตัวเลือกว่างไว้จะใช้ค่าเริ่มต้นในกรณีนี้
ดังนั้นคำสั่งต่อไปนี้จะใช้การเปลี่ยนระดับเสียงหนึ่งคู่ลงจากอ่างล้างจานหลักของฉันalsa_output.pci-0000_00_14.2.analog-stereo
(แทนที่ด้วยอ่างล้างจานของคุณ) กับอ่างล้างจานเอาท์พุทที่ladspa_out
มีการเปลี่ยนแปลง semitone ของ-12
นั่นคือการเปลี่ยนแปลงอัตรา-50
% และระดับเครื่องผสมแห้ง ของ-90
dB และระดับเปียก (ประมวลผล) ของ0
dB
pacmd load-module module-ladspa-sink sink_name=ladspa_out master=alsa_output.pci-0000_00_14.2.analog-stereo plugin=tap_pitch label=tap_pitch control=-12,-50,-90,0
สำหรับปลั๊กอินบางตัวเอกสารอาจไม่สมบูรณ์หรือการตั้งค่าที่เหมาะสมจะต้องมีการทดลองบ้างจนกว่าจะถูกต้อง