मैं PulseAudio स्ट्रीम में एक LADSPA प्लगइन कैसे लागू कर सकता हूं?


15

मैं डिफ़ॉल्ट पल्सएडियो सिंक के माध्यम से स्ट्रीम करने वाली हर चीज पर एक LADSPA प्लगइन लागू करना चाहता हूं। मुझे इसे कैसे सेट करना चाहिए?

जवाबों:


19

Pulseaudio में एक LADSPA प्लगइन जोड़ना मॉड्यूल-लैडस्पा-सिंक के साथ किया जाता है ।

हम इस मॉड्यूल को आउटपुट सिंक के रूप में स्थापित करते हैं जहां हम प्रोसेसिंग मॉड्यूल को परिभाषित कर सकते हैं और इस नए बनाए गए सिंक को संसाधित सिग्नल भेजने में सक्षम हैं।

लोड करें LADSPA मॉड्यूल:

इस मॉड्यूल को रनटाइम पर लोड किया जा सकता है:

pacmd load-module module-ladspa-sink sink_name=<yourname> master=<sinkname> plugin=<plugin> label=<label> control=<option1>,<option2>,[...]

निम्नलिखित आदेश के साथ मास्टर सिंक का नाम पढ़ा जा सकता है:

 pacmd list-sinks

संसाधित सिंक के लिए एक नाम दें क्योंकि यह आउटपुट सूची में दिखाई देगा sink_name। आगे के सभी विकल्प उस प्लगइन पर निर्भर करते हैं जिसका हम उपयोग करते हैं (नीचे उदाहरण देखें)।

LADSPA प्रोसेसर को लागू करने के लिए हम "साउंड सेटिंग्स ..." से आउटपुट सिंक चुनते हैं और अब प्रोसेस्ड स्ट्रीम सुन सकते हैं। नियंत्रण विकल्पों को रनटाइम में नहीं बदला जा सकता है।

LADSPA मॉड्यूल को अनलोड करें:

हमें मॉड्यूल को अनलोड करना होगा और विभिन्न विकल्पों के लिए इसे फिर से लोड करना होगा। हम जारी कर सकते हैं उतारने के लिए मॉड्यूल सूचकांक खोजने के लिए:

 pacmd list-modules

किसी मॉड्यूल को लोड करने के लिए हम या तो साउंड सर्वर को रीस्टार्ट करते हैं pulseaudio -kया हम उस मॉड्यूल को लोड करते हैं जिसके साथ यह इंडेक्स नंबर है #:

pacmd unload-module <#>

Pulseaudio से संदर्भ विकी भी देखें ।

स्टार्टअप पर लोड LADSPA मॉड्यूल:

उपयुक्त विकल्प मिलने के बाद हम इसे डिफ़ॉल्ट रूप से चलाना चाहते हैं। इसे /etc/pulse/default.paस्टार्टअप पर डेमॉन द्वारा लोड की जाने वाली कॉन्फ़िगरेशन फ़ाइल में शामिल करके किया जा सकता है :

.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif

उदाहरण:

यह एक विशेष मामले का उदाहरण है कि आपको यह कैसे करना है, इस पर विचार करना है। इस उदाहरण में हम TAP- प्लगइन tap_pitch ( टैप-प्लग-इन टैप-प्लग स्थापित करें ) का उपयोग करके अपने ध्वनि आउटपुट में एक पिच शिफ्ट लागू करना चाहते हैं । इस प्लगइन के लिए पल्स ऑडियो को लोड करने के लिए आवश्यक अतिरिक्त विकल्प निम्नलिखित हैं:

plugin=tap_pitch # as from /usr/lib/ladspa/ without .so
label=tap_pitch  # defines which label of a plugin to use

उपयुक्त नियंत्रण विकल्पों को खोजने के लिए हम प्लगइन प्रलेखन (यहां TAP प्लगइन पिच शिफ्टर ) को ब्राउज़ करते हैं । वहां हमें चार प्रासंगिक नियंत्रणों की एक अच्छी तालिका मिलती है जिन्हें हमें control=कमांड में लागू करना है :

control=<semitone>,<rate>,<dry>,<wet>

एक विकल्प को खाली छोड़ने से इस मामले में डिफ़ॉल्ट का उपयोग किया जाएगा।

इस प्रकार निम्नलिखित कमांड मेरे मास्टर सिंक से नीचे की ओर एक ऑक्टेव की पिच शिफ्ट लगाएगी alsa_output.pci-0000_00_14.2.analog-stereo(जो आपके सिंक के साथ बदल जाती है) , जिसमें ladspa_outसेमिट शिफ्ट के साथ आउटपुट सिंक होता है -12, जो कि -50% की दर शिफ्ट है , और एक ड्राई (अनप्रोसेस्ड) मिक्सर स्तर के साथ की -90डीबी, और एक गीला (प्रसंस्कृत) के स्तर पर 0डीबी।

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

कुछ प्लगइन्स के लिए दस्तावेज़ीकरण पूर्ण नहीं हो सकता है, या उपयुक्त सेटिंग को कुछ प्रयोग करने की आवश्यकता होगी जब तक कि वे सही न हों।


1
मैं इनमें से एक फ़िल्टर (pacmd लोड-मॉड्यूल मॉड्यूल-लैडस्पा-सिंक * से बना) अपने माइक्रोफ़ोन इनपुट पर कैसे लागू कर सकता हूं? इसलिए मैं एक सिस्टम वाइड फ़िल्टर चला सकता हूं और यह Mumble, Teamspeak, Skype, Games पर लागू होता है। मैं चाहता हूं कि अन्य लोग यहां फ़िल्टर किए गए इनपुट के लिए हैं, यह खुद (केवल) के लिए नहीं है।
ब्रेनडैमेज

@braindamage यहां इसका परीक्षण नहीं कर सकता (कोई माइक्रोफोन नहीं) लेकिन मास्टर सिंक के लिए एक द्वैध प्रोफ़ाइल के साथ प्रयास करें, या मास्टर के रूप में <name_of_source> .monitor के साथ प्रयास करें।
तक़्क़त
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.