Open max529 opened 2 years ago
You should disable pulseaudio service and start pulseaudio manually under gdb
and see what happens. Maybe you compiled for the wrong arch, maybe something else...
So I tried to get more informations with gdb but pulseaudio still crashing without reason.
I ran the cmd : pacmd load-module module-ladspa-sink sink_name=mic_raw_in sink_master=mic_denoised_out label=noise_suppressor_stereo plugin=librnnoise_ladspa control=50
The result in gbd :
[pulseaudio] client.c: Created 4 "UNIX socket client"
D: [pulseaudio] module-ladspa-sink.c: Using default input ladspa port mapping
D: [pulseaudio] module-ladspa-sink.c: Using default output ladspa port mapping
D: [pulseaudio] module-ladspa-sink.c: Module: librnnoise_ladspa
D: [pulseaudio] module-ladspa-sink.c: Label: noise_suppressor_stereo
D: [pulseaudio] module-ladspa-sink.c: Unique ID: 9354877
D: [pulseaudio] module-ladspa-sink.c: Name: Noise Suppressor for Voice (Stereo)
D: [pulseaudio] module-ladspa-sink.c: Maker: werman
D: [pulseaudio] module-ladspa-sink.c: Copyright: GPL v3
D: [pulseaudio] module-ladspa-sink.c: Port 0 is input: Input (L)
D: [pulseaudio] module-ladspa-sink.c: Port 1 is input: Input (R)
D: [pulseaudio] module-ladspa-sink.c: Port 2 is output: Output (L)
D: [pulseaudio] module-ladspa-sink.c: Port 3 is output: Output (R)
D: [pulseaudio] module-ladspa-sink.c: Port 4 is control: VAD Threshold (%)
D: [pulseaudio] module-ladspa-sink.c: Will run 1 plugin instances
D: [pulseaudio] module-ladspa-sink.c: Trying to read 1 control values
D: [pulseaudio] module-ladspa-sink.c: cdata: '50'
D: [pulseaudio] module-ladspa-sink.c: Read config value 50.000000 (p=0)
D: [pulseaudio] module-ladspa-sink.c: Binding 50.000000 to port VAD Threshold (%)
I: [pulseaudio] sink.c: Created sink 3 "mic_raw_in" with sample spec float32le 2ch 48000Hz and channel map front-left,front-right
I: [pulseaudio] sink.c: device.master_device = "mic_denoised_out"
I: [pulseaudio] sink.c: device.class = "filter"
I: [pulseaudio] sink.c: device.ladspa.module = "librnnoise_ladspa"
I: [pulseaudio] sink.c: device.ladspa.label = "noise_suppressor_stereo"
I: [pulseaudio] sink.c: device.ladspa.name = "Noise Suppressor for Voice (Stereo)"
I: [pulseaudio] sink.c: device.ladspa.maker = "werman"
I: [pulseaudio] sink.c: device.ladspa.copyright = "GPL v3"
I: [pulseaudio] sink.c: device.ladspa.unique_id = "9354877"
I: [pulseaudio] sink.c: device.description = "LADSPA Plugin Noise Suppressor for Voice (Stereo) on Null Output"
I: [pulseaudio] sink.c: device.icon_name = "audio-card"
I: [pulseaudio] source.c: Created source 4 "mic_raw_in.monitor" with sample spec float32le 2ch 48000Hz and channel map front-left,front-right
I: [pulseaudio] source.c: device.description = "Monitor of LADSPA Plugin Noise Suppressor for Voice (Stereo) on Null Output"
I: [pulseaudio] source.c: device.class = "monitor"
I: [pulseaudio] source.c: device.icon_name = "audio-input-microphone"
D: [pulseaudio] module-stream-restore.c: Not restoring device for stream sink-input-by-media-role:filter, because already set to 'mic_denoised_out'.
D: [pulseaudio] module-intended-roles.c: Not setting device for stream LADSPA Stream, because already set.
D: [pulseaudio] sink-input.c: Negotiated format: pcm, format.sample_format = "\"float32le\"" format.rate = "48000" format.channels = "2" format.channel_map = "\"front-left,front-right\""
I: [pulseaudio] sink-input.c: Trying to change sample spec
D: [pulseaudio] sink.c: Default and alternate sample rates are the same, so there is no point in switching.
D: [pulseaudio] module-stream-restore.c: Not restoring volume for sink input sink-input-by-media-role:filter, because it connects a filter to the master sink.
D: [pulseaudio] module-suspend-on-idle.c: Sink mic_denoised_out becomes busy, resuming.
D: [pulseaudio] sink.c: mic_denoised_out: suspend_cause: IDLE -> (none)
D: [pulseaudio] sink.c: mic_denoised_out: state: SUSPENDED -> IDLE
D: [pulseaudio] module-suspend-on-idle.c: Sink mic_denoised_out becomes idle, timeout in 5 seconds.
D: [pulseaudio] source.c: mic_denoised_out.monitor: suspend_cause: IDLE -> (none)
D: [pulseaudio] source.c: mic_denoised_out.monitor: state: SUSPENDED -> IDLE
D: [pulseaudio] module-suspend-on-idle.c: Sink mic_denoised_out becomes idle, timeout in 5 seconds.
I: [pulseaudio] resampler.c: Forcing resampler 'copy', because of fixed, identical sample rates.
D: [pulseaudio] resampler.c: Resampler:
D: [pulseaudio] resampler.c: rate 48000 -> 48000 (method copy)
D: [pulseaudio] resampler.c: format float32le -> s16le (intermediate s16le)
D: [pulseaudio] resampler.c: channels 2 -> 2 (resampling 2)
D: [pulseaudio] memblockq.c: memblockq requested: maxlength=33554432, tlength=0, base=4, prebuf=0, minreq=1 maxrewind=0
D: [pulseaudio] memblockq.c: memblockq sanitized: maxlength=33554432, tlength=33554432, base=4, prebuf=0, minreq=4 maxrewind=0
I: [pulseaudio] sink-input.c: Created input 0 "LADSPA Stream" on mic_denoised_out with sample spec float32le 2ch 48000Hz and channel map front-left,front-right
I: [pulseaudio] sink-input.c: media.name = "LADSPA Stream"
I: [pulseaudio] sink-input.c: media.role = "filter"
I: [pulseaudio] sink-input.c: module-stream-restore.id = "sink-input-by-media-role:filter"
D: [pulseaudio] memblockq.c: memblockq requested: maxlength=16777216, tlength=0, base=8, prebuf=1, minreq=1 maxrewind=0
D: [pulseaudio] memblockq.c: memblockq sanitized: maxlength=16777216, tlength=16777216, base=8, prebuf=8, minreq=8 maxrewind=0
D: [pulseaudio] sink.c: Default and alternate sample rates are the same, so there is no point in switching.
D: [null-sink] sink-input.c: Requesting rewind due to uncorking
D: [null-sink] module-null-sink.c: Requested to rewind 384000 bytes.
D: [null-sink] sink.c: Processing rewind...
D: [null-sink] source.c: Processing rewind...
D: [null-sink] module-null-sink.c: Rewound 384000 bytes.
D: [pulseaudio] module-suspend-on-idle.c: Sink mic_denoised_out becomes busy, resuming.
D: [pulseaudio] sink.c: mic_denoised_out: state: IDLE -> RUNNING
D: [pulseaudio] core-subscribe.c: Dropped redundant event due to change event.
D: [pulseaudio] core-subscribe.c: Dropped redundant event due to change event.
D: [null-sink] module-ladspa-sink.c: Requesting rewind due to state change.
D: [null-sink] module-null-sink.c: Requested to rewind 384000 bytes.
D: [null-sink] sink.c: Processing rewind...
D: [null-sink] source.c: Processing rewind...
D: [null-sink] module-null-sink.c: Rewound 8540 bytes.
D: [pulseaudio] sink.c: mic_raw_in: state: INIT -> IDLE
[Thread 0x7fa1d2f0d0 (LWP 4453) exited]
[Thread 0x7fb1f820d0 (LWP 4448) exited]
[Thread 0x7fb27e10d0 (LWP 4447) exited]
[Thread 0x7fb30390d0 (LWP 4446) exited]
[Thread 0x7fb73237d0 (LWP 4436) exited]
Program terminated with signal SIGKILL, Killed.
The program no longer exists.
SIGKILL
- something killing it from outside, could you check dmesg
? Could it be OOM...
Hi,
I built this library from source on my odroid N2. When I try to load the plugin with the following command pulseaudio is crashing without error.
pacmd load-module module-ladspa-sink sink_name=mic_raw_in sink_master=mic_denoised_out label=noise_suppressor_stereo plugin=/home/private/download/rrnoise/noise-suppression-for-voice-0.91/bin/ladspa/librnnoise_ladspa.so control=50
I checked the journalctl but the only think I had is
Mar 08 16:28:22 odroid systemd[2407]: pulseaudio.service: Main process exited, code=killed, status=9/KILL
Mar 08 16:28:22 odroid systemd[2407]: pulseaudio.service: Failed with result 'signal'.
Mar 08 16:28:22 odroid systemd[2407]: pulseaudio.service: Scheduled restart job, restart counter is at 12.
Mar 08 16:28:22 odroid systemd[2407]: Stopped Sound Service.
Mar 08 16:28:22 odroid systemd[2407]: Starting Sound Service...
Mar 08 16:28:22 odroid pulseaudio[2979]: Stale PID file, overwriting.
Mar 08 16:28:22 odroid systemd[2407]: Started Sound Service.
Any ideas?