GithubHelp home page GithubHelp logo

jybaek / rnnoise Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xiph/rnnoise

0.0 1.0 0.0 830 KB

Recurrent neural network for audio noise reduction

License: BSD 3-Clause "New" or "Revised" License

Makefile 0.66% Shell 0.65% M4 2.59% C 91.49% C++ 2.80% Python 1.80%

rnnoise's Introduction

rnnoise

RNNoise is a noise suppression library based on a recurrent neural network

Usage

To compile, just type:

% ./autogen.sh
% ./configure
% make

Optionally:

% make install

denoise training

Compile first as follows:

% cd src
% ./compile.sh

train denoise. If you want to learn various noise, you only need to modify a very small part of the source code. But I will not mention it here separately.

% ./denoise_training <speech> <noise> <output denoised>
...
matrix size: N x M // This value is immediately reused as the next argument.

make denoise_data9.h5

Change the previously created binary to the HDF5 binary data format.

% cd training
% ./bin2hdf5.py output.f32 N M denoise_data9.h5

rnn train

% cd training
% ./rnn_train.py

This will save the model under the name newweights9i.hdf5.

save the hyperparameter

Save the hyperparameter from the newweights9i.hdf5 file to the C file.

% cd training
% ./dump_rnn.py newweights9i.hdf5 ../src/rnn_data.c ../src/rnn_data.h

recompile demo

Recompile the demo based on the newly written rnn_data.c.

% make clean && make

demo

While it is meant to be used as a library, a simple command-line tool is provided as an example. It operates on RAW 16-bit (machine endian) mono PCM files sampled at 48 kHz. It can be used as:

% ./examples/rnnoise_demo input.pcm output.pcm

The output is also a 16-bit raw PCM file.

rnnoise's People

Contributors

janx2 avatar jmvalin avatar jybaek avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.