Pertanyaan Bagaimana saya bisa menerapkan plugin LADSPA ke aliran PulseAudio?


Saya ingin menerapkan plugin LADSPA ke semua yang mengalir melalui sink default PulseAudio. Bagaimana saya harus menyiapkan ini?


15
2018-05-19 21:08


asal




Jawaban:


Menambahkan plugin LADSPA ke pulseaudio sudah selesai modul-ladspa-sink.

Kami memasang modul ini sebagai sink output dimana kami dapat menentukan modul pemrosesan dan dapat mengirim sinyal yang diproses ke sink yang baru dibuat ini.

Muat modul LADSPA:

Modul ini dapat dimuat saat runtime dengan:

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

Nama wastafel master dapat dibaca dengan perintah berikut:

 pacmd list-sinks

Beri nama untuk wastafel yang diproses karena akan muncul di daftar keluaran sink_name. Semua opsi lebih lanjut bergantung pada plugin yang kami gunakan (lihat contoh di bawah).

Untuk menerapkan prosesor LADSPA, kami memilih sink output dari "Pengaturan suara..." dan sekarang dapat mendengarkan streaming yang diproses. Opsi kontrol tidak dapat diubah saat runtime.

Bongkar modul LADSPA:

Kami harus membongkar modul dan memuatnya lagi untuk opsi yang berbeda. Untuk menemukan indeks modul untuk pembongkaran yang mungkin kami terbitkan:

 pacmd list-modules

Untuk membongkar modul, kami akan memulai ulang server suara pulseaudio -k atau kami membongkar modul dengan nomor indeksnya #:

pacmd unload-module <#>

Lihat juga referensi wiki dari pulseaudio.

Muat modul LADSPA saat startup:

Setelah menemukan opsi yang sesuai, kami mungkin ingin menjalankannya secara default. Ini dapat dilakukan dengan menyertakannya ke /etc/pulse/default.pa file konfigurasi untuk dimuat oleh daemon saat startup:

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

Contoh:

Ini adalah contoh dari satu kasus khusus untuk memberi Anda ide tentang cara melakukannya. Dalam contoh ini kami ingin menerapkan pergeseran pitch ke output suara kami menggunakan TAP-plugin tap_pitch (tap-plugin  Install tap-plugins). Untuk plugin ini, opsi tambahan yang diperlukan untuk memuat ke Pulse Audio adalah sebagai berikut:

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

Untuk menemukan opsi kontrol yang sesuai, kami menelusuri dokumentasi plugin (di sini TAP plugin pitch shifter). Di sana kami menemukan tabel yang bagus dari empat kontrol yang relevan yang harus kami terapkan dalam control= perintah:

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

Membiarkan opsi kosong akan menggunakan default dalam kasus ini.

Dengan demikian perintah berikut akan menerapkan pergeseran pitch satu oktaf ke bawah dari master sink saya alsa_output.pci-0000_00_14.2.analog-stereo (ganti dengan wastafel Anda) ke sink output ladspa_out dengan pergeseran semitone -12, yaitu pergeseran tarif -50%, dan dengan level mixer yang kering (belum diproses) -90dB, dan tingkat (diproses) basah dari 0dB.

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

Untuk beberapa plugin, dokumentasi mungkin tidak lengkap, atau pengaturan yang sesuai akan memerlukan beberapa percobaan sampai mereka benar.


19
2018-05-20 18:51



Bagaimana saya bisa menerapkan salah satu filter ini (terbuat dari modul load modul pacmd-ladspa-sink *) ke input mikrofon saya? Jadi saya bisa menjalankan filter lebar sistem dan ini berlaku untuk Mumble, Teamspeak, Skype, Games. Saya ingin orang lain di sini masukan yang difilter, bukan untuk diri saya sendiri (hanya). - braindamage
@braindamage tidak dapat menguji ini di sini (tidak ada mikrofon) tetapi coba dengan profil dupleks untuk wastafel master, atau coba dengan <name_of_source> .monitor sebagai master. - Takkat