mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-26 23:36:37 -04:00
* Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1).
* Redo the changes required to make Speex compile in Rockbox. Should be a bit easier to keep in sync with Speex SVN now. * Fix name of Speex library in codecs Makefile. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12254 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
5158751263
commit
7bf62e8da6
70 changed files with 4847 additions and 3314 deletions
44
apps/codecs/libspeex/testdenoise.c
Normal file
44
apps/codecs/libspeex/testdenoise.c
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <speex/speex_preprocess.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define NN 160
|
||||
|
||||
int main()
|
||||
{
|
||||
short in[NN];
|
||||
int i;
|
||||
SpeexPreprocessState *st;
|
||||
int count=0;
|
||||
float f;
|
||||
|
||||
st = speex_preprocess_state_init(NN, 8000);
|
||||
i=1;
|
||||
speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DENOISE, &i);
|
||||
i=0;
|
||||
speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_AGC, &i);
|
||||
f=8000;
|
||||
speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_AGC_LEVEL, &f);
|
||||
i=0;
|
||||
speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DEREVERB, &i);
|
||||
f=.0;
|
||||
speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DEREVERB_DECAY, &f);
|
||||
f=.0;
|
||||
speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DEREVERB_LEVEL, &f);
|
||||
while (1)
|
||||
{
|
||||
int vad;
|
||||
fread(in, sizeof(short), NN, stdin);
|
||||
if (feof(stdin))
|
||||
break;
|
||||
vad = speex_preprocess_run(st, in);
|
||||
/*fprintf (stderr, "%d\n", vad);*/
|
||||
fwrite(in, sizeof(short), NN, stdout);
|
||||
count++;
|
||||
}
|
||||
speex_preprocess_state_destroy(st);
|
||||
return 0;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue