irungentoo / filter_audio Goto Github PK
View Code? Open in Web Editor NEWAn easy to use audio filtering library made from webrtc code.
An easy to use audio filtering library made from webrtc code.
Lightweight audio filtering library made from webrtc code. Build and install using make (`sudo make install`). My code in here is licenced under the same BSD 3-clause license as the code I took from: https://code.google.com/p/webrtc/ To build the test program, you need portaudio (version 19 from their website), libsndfile (you can get it from your distro repositories): gcc -g3 -Wall -o playback_mic test/playback_mic.c *.c agc/*.c ns/*.c aec/*.c other/*.c zam/*.c vad/*.c -lpthread -lm -lportaudio -lsndfile To run the test you will need a sample input file in .wav format (like this: https://www.opus-codec.org/examples/samples/speech_orig.wav). The program will exit after the file is played. You should also try to talk while the file is playing to see how it removes the echoes but not your voice. ./playback_mic speech_orig.wav [output.wav] # if no output file is presented the default is echoes_removed.wav
As per this notsecure/uTox#844 (comment)
But this doesn't really mean it's libfilteraudio's fault, maybe it is still uTox's fault somehow(in the way it's loading the lib?) and it's only caught in libfilteraudio because of the hardened stuff... no idea really.
Thanks.
Hi,
I tried to use noise suppression to clear some noise. It seems well that much noise can be suppressed. But real people voice will be reduced and people voice sounds not clear and low.
So I have to use 'agc' to normalize it. But It sound worse. Any idea for it? Is the parameter not right in your codes below?
gain_config.targetLevelDbfs = 1;
gain_config.compressionGaindB = 50;
gain_config.limiterEnable = kAgcTrue;
if (WebRtcAgc_Init(agcInst, 0, 255, kAgcModeAdaptiveDigital, 16000) == -1 || WebRtcAgc_set_config(agcInst, gain_config) == -1) {
fprintf(stderr, "Could not WebRtcAgc_Init\n");
}
Thanks a lot for your answer.
Best,
John
To build the test program (you need openal)................
where's Openal ????
What is the complete name of the software ???
I run into following error while trying to compile filter_audio on windows:
make install
LD libfilteraudio.dll
Can't open .lib file:
collect2.exe: error: ld returned 1 exit status
make: *** [libfilteraudio.dll] Error 1
Strange is, that the error doesn't show which .lib file couldn't be opened.
Compiler is gcc 4.8.1, mingw32
This needs to be distributed with the source code to create package.
maybe like this file https://github.com/svn2github/webrtc/blob/master/webrtc/LICENSE
Hello,
I`m currently writing a .net wrapper for your lib, because I would like to use it in a dotnet based application on Linux.
At the moment I got stuck at WebRtcNs_Process... can anyone give me a hint how to split the wave-frame from the mic into H- and L-band (and of course merge the filtered results).
Thank you very much for your help
Carl
i didnt see where the function pass_audio_output to implenment? can u tell me how to use the pass_audio_output fuction to implenment in playback_mic.c
thanks
I have recorded a video about this issue, it should be self explanatory.
Windows 8.1, most recent version of uTox.
As we all know, today more than ever before, it is crucial to be able to trust our computing environments. One of the main difficulties that package maintainers of Linux distributions face, is the difficulty to verify the authenticity and the integrity of the source code.
The Arch Linux team would appreciate it if you would provide us GPG signatures in order to verify easily and quickly of your source code releases.
Overview of the required tasks:
Additional Information:
Thanks.
Hello. I am searching for a way to filter noise of laptop fan from my microphone input.
Does this library doing it? or just echo cancellation?
I am not C/C++ dev, but want to use this lib to filter a pipe stream, like:
arecord -f cd -t wav | ./filter_stream | mplayer -
How is hard to change the test program to act like this? Does it use some buffers? I want to understand, if I will be able to do that or search for another way...
thanks
Hi,
I'm trying to implement filter_audio
into qTox.
Something is wrong with the app's stack. After the programm had called the procedure filter_audio
10-500 times, the trace stack of the application became overwritten.
First I tried to compile all c-files into libfilteraudio.so
-- this was no problem. Linking to this file also was no problem the problem was ... (see above).
Then I turned all *.c files into *.cpp files added -fpermissive
to the gcc params. This did not solve the problem.
I also updated gcc to v4.9.2 -- same behavior.
What's wrong?
Is it a bug of gcc or a bug in the code? Or is it a bug in the C++
-wrapper?
https://gist.github.com/mwuttke97/0301e440af68a8df3420
Downstream distributions need these releases to make stable packages.
It is sufficient to give a version number like 0.0.1 .
Thank you~
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.