{"id":24389,"library":"pyrnnoise","title":"PyRnNoise","description":"Python wrapper for the RNN noise suppression library (RNNoise), enabling real-time speech denoising. Current version 0.4.3, maintained on GitHub.","status":"active","version":"0.4.3","language":"python","source_language":"en","source_url":"https://github.com/pengzhendong/pyrnnoise","tags":["audio","denoising","RNNoise","speech","real-time"],"install":[{"cmd":"pip install pyrnnoise","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"wrong":"from pyrnnoise import RNNoise","symbol":"RNNoise","correct":"from pyrnnoise import RNNoise"}],"quickstart":{"code":"from pyrnnoise import RNNoise\nimport soundfile as sf\n\ndenoiser = RNNoise()\ndata, samplerate = sf.read('noisy_audio.wav')\noutput = denoiser.filter(data)\nsf.write('denoised_audio.wav', output, samplerate)\n","lang":"python","description":"Load a noisy audio file, filter it with RNNoise, and save the denoised result."},"warnings":[{"fix":"Convert to float32 and ensure mono: audio = audio.astype(np.float32) / 32768.0 for int16 input.","message":"The RNNoise class expects audio data as a numpy array of shape (N,) with dtype float32. Providing int16 or multichannel data will cause silent errors or poor results.","severity":"breaking","affected_versions":"all"},{"fix":"Process the whole audio array in one call, or implement overlap-add for streaming.","message":"The filter() method expects the entire audio at once; it does not support streaming or chunked processing out of the box. Attempting to call filter() on small chunks may produce artifacts at boundaries.","severity":"gotcha","affected_versions":"all"},{"fix":"Remove the sample_rate argument; resample your audio to 48 kHz before passing to denoiser.","message":"The 'sample_rate' parameter in RNNoise constructor is deprecated and ignored; the model always operates at 48 kHz. Passing it may raise a warning in future versions.","severity":"deprecated","affected_versions":"0.4.0+"}],"env_vars":null,"search_vec":"'0.4.3':19 'audio':23 'current':17 'denois':16,24 'enabl':11 'github':22 'librari':9 'maintain':20 'nois':7 'pyrnnois':1 'python':2 'real':13,28 'real-tim':12,27 'rnn':6 'rnnois':10,25 'speech':15,26 'suppress':8 'time':14,29 'version':18 'wrapper':3","created_at":"2026-05-01T08:12:49.292523+00:00","updated_at":"2026-05-01T08:12:49.292523+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\n  File \"/tmp/tmpbxmptrl3/venv/lib/python3.12/site-packages/pyrnnoise/__init__.py\", line 15, in <module>\n    from pyrnnoise.pyrnnoise import RNNoise\n  File \"/tmp/tmpbxmptrl3/venv/lib/python3.12/site-packages/pyrnnoise/pyrnnoise"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.4.3","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/pengzhendong/pyrnnoise","docs":null,"changelog":null,"pypi":"https://pypi.org/project/pyrnnoise/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["ai-ml"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}