mirror of https://github.com/oxen-io/session-ios
				
				
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			45 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
		
		
			
		
	
	
			45 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
| 
								 
											12 years ago
										 
									 | 
							
								#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);
							 | 
						||
| 
								 | 
							
								   i=8000;
							 | 
						||
| 
								 | 
							
								   speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_AGC_LEVEL, &i);
							 | 
						||
| 
								 | 
							
								   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;
							 | 
						||
| 
								 | 
							
								}
							 |