rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c
Go to the documentation of this file.
1 
2 ma_result hpf_init_decoder_and_encoder(const char* pInputFilePath, const char* pOutputFilePath, ma_format format, ma_decoder* pDecoder, ma_encoder* pEncoder)
3 {
4  return filtering_init_decoder_and_encoder(pInputFilePath, pOutputFilePath, format, 0, 0, pDecoder, pEncoder);
5 }
6 
7 ma_result test_hpf1__by_format(const char* pInputFilePath, const char* pOutputFilePath, ma_format format)
8 {
9  ma_result result;
12  ma_hpf1_config hpfConfig;
13  ma_hpf1 hpf;
14 
15  printf(" %s\n", pOutputFilePath);
16 
17  result = hpf_init_decoder_and_encoder(pInputFilePath, pOutputFilePath, format, &decoder, &encoder);
18  if (result != MA_SUCCESS) {
19  return result;
20  }
21 
23  result = ma_hpf1_init(&hpfConfig, &hpf);
24  if (result != MA_SUCCESS) {
27  return result;
28  }
29 
30  for (;;) {
31  ma_uint8 tempIn[4096];
32  ma_uint8 tempOut[4096];
35  ma_uint64 framesToRead;
36  ma_uint64 framesJustRead;
37 
38  framesToRead = ma_min(tempCapIn, tempCapOut);
39  framesJustRead = ma_decoder_read_pcm_frames(&decoder, tempIn, framesToRead);
40 
41  /* Filter */
42  ma_hpf1_process_pcm_frames(&hpf, tempOut, tempIn, framesJustRead);
43 
44  /* Write to the WAV file. */
45  ma_encoder_write_pcm_frames(&encoder, tempOut, framesJustRead);
46 
47  if (framesJustRead < framesToRead) {
48  break;
49  }
50  }
51 
54  return MA_SUCCESS;
55 }
56 
57 ma_result test_hpf1__f32(const char* pInputFilePath)
58 {
59  return test_hpf1__by_format(pInputFilePath, TEST_OUTPUT_DIR"/hpf1_f32.wav", ma_format_f32);
60 }
61 
62 ma_result test_hpf1__s16(const char* pInputFilePath)
63 {
64  return test_hpf1__by_format(pInputFilePath, TEST_OUTPUT_DIR"/hpf1_s16.wav", ma_format_s16);
65 }
66 
67 
68 ma_result test_hpf2__by_format(const char* pInputFilePath, const char* pOutputFilePath, ma_format format)
69 {
70  ma_result result;
73  ma_hpf2_config hpfConfig;
74  ma_hpf2 hpf;
75 
76  printf(" %s\n", pOutputFilePath);
77 
78  result = hpf_init_decoder_and_encoder(pInputFilePath, pOutputFilePath, format, &decoder, &encoder);
79  if (result != MA_SUCCESS) {
80  return result;
81  }
82 
84  result = ma_hpf2_init(&hpfConfig, &hpf);
85  if (result != MA_SUCCESS) {
88  return result;
89  }
90 
91  for (;;) {
92  ma_uint8 tempIn[4096];
93  ma_uint8 tempOut[4096];
96  ma_uint64 framesToRead;
97  ma_uint64 framesJustRead;
98 
99  framesToRead = ma_min(tempCapIn, tempCapOut);
100  framesJustRead = ma_decoder_read_pcm_frames(&decoder, tempIn, framesToRead);
101 
102  /* Filter */
103  ma_hpf2_process_pcm_frames(&hpf, tempOut, tempIn, framesJustRead);
104 
105  /* Write to the WAV file. */
106  ma_encoder_write_pcm_frames(&encoder, tempOut, framesJustRead);
107 
108  if (framesJustRead < framesToRead) {
109  break;
110  }
111  }
112 
115  return MA_SUCCESS;
116 }
117 
118 ma_result test_hpf2__f32(const char* pInputFilePath)
119 {
120  return test_hpf2__by_format(pInputFilePath, TEST_OUTPUT_DIR"/hpf2_f32.wav", ma_format_f32);
121 }
122 
123 ma_result test_hpf2__s16(const char* pInputFilePath)
124 {
125  return test_hpf2__by_format(pInputFilePath, TEST_OUTPUT_DIR"/hpf2_s16.wav", ma_format_s16);
126 }
127 
128 
129 ma_result test_hpf3__by_format(const char* pInputFilePath, const char* pOutputFilePath, ma_format format)
130 {
131  ma_result result;
134  ma_hpf_config hpfConfig;
135  ma_hpf hpf;
136 
137  printf(" %s\n", pOutputFilePath);
138 
139  result = hpf_init_decoder_and_encoder(pInputFilePath, pOutputFilePath, format, &decoder, &encoder);
140  if (result != MA_SUCCESS) {
141  return result;
142  }
143 
145  result = ma_hpf_init(&hpfConfig, &hpf);
146  if (result != MA_SUCCESS) {
149  return result;
150  }
151 
152  for (;;) {
153  ma_uint8 tempIn[4096];
154  ma_uint8 tempOut[4096];
157  ma_uint64 framesToRead;
158  ma_uint64 framesJustRead;
159 
160  framesToRead = ma_min(tempCapIn, tempCapOut);
161  framesJustRead = ma_decoder_read_pcm_frames(&decoder, tempIn, framesToRead);
162 
163  /* Filter */
164  ma_hpf_process_pcm_frames(&hpf, tempOut, tempIn, framesJustRead);
165 
166  /* Write to the WAV file. */
167  ma_encoder_write_pcm_frames(&encoder, tempOut, framesJustRead);
168 
169  if (framesJustRead < framesToRead) {
170  break;
171  }
172  }
173 
176  return MA_SUCCESS;
177 }
178 
179 ma_result test_hpf3__f32(const char* pInputFilePath)
180 {
181  return test_hpf3__by_format(pInputFilePath, TEST_OUTPUT_DIR"/hpf3_f32.wav", ma_format_f32);
182 }
183 
184 ma_result test_hpf3__s16(const char* pInputFilePath)
185 {
186  return test_hpf3__by_format(pInputFilePath, TEST_OUTPUT_DIR"/hpf3_s16.wav", ma_format_s16);
187 }
188 
189 
190 int test_entry__hpf(int argc, char** argv)
191 {
192  ma_result result;
193  ma_bool32 hasError = MA_FALSE;
194  const char* pInputFilePath;
195 
196  if (argc < 2) {
197  printf("No input file.\n");
198  return -1;
199  }
200 
201  pInputFilePath = argv[1];
202 
203 
204  result = test_hpf1__f32(pInputFilePath);
205  if (result != MA_SUCCESS) {
206  hasError = MA_TRUE;
207  }
208 
209  result = test_hpf1__s16(pInputFilePath);
210  if (result != MA_SUCCESS) {
211  hasError = MA_TRUE;
212  }
213 
214 
215  result = test_hpf2__f32(pInputFilePath);
216  if (result != MA_SUCCESS) {
217  hasError = MA_TRUE;
218  }
219 
220  result = test_hpf2__s16(pInputFilePath);
221  if (result != MA_SUCCESS) {
222  hasError = MA_TRUE;
223  }
224 
225 
226  result = test_hpf3__f32(pInputFilePath);
227  if (result != MA_SUCCESS) {
228  hasError = MA_TRUE;
229  }
230 
231  result = test_hpf3__s16(pInputFilePath);
232  if (result != MA_SUCCESS) {
233  hasError = MA_TRUE;
234  }
235 
236 
237  if (hasError) {
238  return -1;
239  } else {
240  return 0;
241  }
242 }
ma_uint64
uint64_t ma_uint64
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1505
ma_get_bytes_per_frame
static MA_INLINE ma_uint32 ma_get_bytes_per_frame(ma_format format, ma_uint32 channels)
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:2673
MA_FALSE
#define MA_FALSE
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1531
ma_hpf1_process_pcm_frames
ma_result ma_hpf1_process_pcm_frames(ma_hpf1 *pHPF, void *pFramesOut, const void *pFramesIn, ma_uint64 frameCount)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31261
ma_hpf2_init
ma_result ma_hpf2_init(const ma_hpf2_config *pConfig, ma_hpf2 *pHPF)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31337
ma_uint8
uint8_t ma_uint8
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1499
ma_min
#define ma_min(x, y)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:778
hpf_init_decoder_and_encoder
ma_result hpf_init_decoder_and_encoder(const char *pInputFilePath, const char *pOutputFilePath, ma_format format, ma_decoder *pDecoder, ma_encoder *pEncoder)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:2
ma_hpf1_config_init
ma_hpf1_config ma_hpf1_config_init(ma_format format, ma_uint32 channels, ma_uint32 sampleRate, double cutoffFrequency)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31133
ma_decoder_uninit
ma_result ma_decoder_uninit(ma_decoder *pDecoder)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:44739
ma_hpf1_init
ma_result ma_hpf1_init(const ma_hpf1_config *pConfig, ma_hpf1 *pHPF)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31166
ma_bool32
ma_uint32 ma_bool32
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1529
test_hpf3__s16
ma_result test_hpf3__s16(const char *pInputFilePath)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:184
ma_format_f32
@ ma_format_f32
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1790
ma_hpf_config
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1985
decoder
ma_decoder decoder
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/tests/test_deviceio/ma_test_deviceio.c:61
ma_format
ma_format
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1779
test_hpf2__by_format
ma_result test_hpf2__by_format(const char *pInputFilePath, const char *pOutputFilePath, ma_format format)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:68
ma_hpf2_config_init
ma_hpf2_config ma_hpf2_config_init(ma_format format, ma_uint32 channels, ma_uint32 sampleRate, double cutoffFrequency, double q)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31146
ma_hpf1_config
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1949
ma_decoder::outputFormat
ma_format outputFormat
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:5203
ma_encoder_write_pcm_frames
ma_uint64 ma_encoder_write_pcm_frames(ma_encoder *pEncoder, const void *pFramesIn, ma_uint64 frameCount)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:45351
encoder
ma_encoder encoder
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/tests/test_deviceio/ma_test_deviceio.c:62
ma_hpf_init
ma_result ma_hpf_init(const ma_hpf_config *pConfig, ma_hpf *pHPF)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31515
ma_hpf_config_init
ma_hpf_config ma_hpf_config_init(ma_format format, ma_uint32 channels, ma_uint32 sampleRate, double cutoffFrequency, ma_uint32 order)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31408
test_hpf3__f32
ma_result test_hpf3__f32(const char *pInputFilePath)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:179
ma_result
int ma_result
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1658
TEST_OUTPUT_DIR
#define TEST_OUTPUT_DIR
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/tests/test_common/ma_test_common.c:18
ma_encoder_uninit
void ma_encoder_uninit(ma_encoder *pEncoder)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:45334
test_hpf1__f32
ma_result test_hpf1__f32(const char *pInputFilePath)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:57
ma_encoder
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:5324
ma_format_s16
@ ma_format_s16
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1787
ma_hpf2
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1974
test_hpf1__s16
ma_result test_hpf1__s16(const char *pInputFilePath)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:62
ma_decoder
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:5193
test_hpf2__f32
ma_result test_hpf2__f32(const char *pInputFilePath)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:118
ma_hpf
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1996
ma_decoder_read_pcm_frames
ma_uint64 ma_decoder_read_pcm_frames(ma_decoder *pDecoder, void *pFramesOut, ma_uint64 frameCount)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:44808
test_hpf1__by_format
ma_result test_hpf1__by_format(const char *pInputFilePath, const char *pOutputFilePath, ma_format format)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:7
filtering_init_decoder_and_encoder
ma_result filtering_init_decoder_and_encoder(const char *pInputFilePath, const char *pOutputFilePath, ma_format format, ma_uint32 channels, ma_uint32 sampleRate, ma_decoder *pDecoder, ma_encoder *pEncoder)
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/tests/test_filtering/ma_test_filtering.c:3
test_entry__hpf
int test_entry__hpf(int argc, char **argv)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:190
ma_decoder::outputChannels
ma_uint32 outputChannels
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:5204
ma_hpf1
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1961
python.test_porcupine.argv
argv
Definition: test_porcupine.py:158
ma_hpf2_process_pcm_frames
ma_result ma_hpf2_process_pcm_frames(ma_hpf2 *pHPF, void *pFramesOut, const void *pFramesIn, ma_uint64 frameCount)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31389
MA_TRUE
#define MA_TRUE
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1530
MA_SUCCESS
#define MA_SUCCESS
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:1659
test_hpf2__s16
ma_result test_hpf2__s16(const char *pInputFilePath)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:123
ma_hpf_process_pcm_frames
ma_result ma_hpf_process_pcm_frames(ma_hpf *pHPF, void *pFramesOut, const void *pFramesIn, ma_uint64 frameCount)
Definition: porcupine/demo/c/pvrecorder/src/miniaudio/extras/miniaudio_split/miniaudio.c:31535
test_hpf3__by_format
ma_result test_hpf3__by_format(const char *pInputFilePath, const char *pOutputFilePath, ma_format format)
Definition: rhino/demo/c/pvrecorder/src/miniaudio/tests/test_filtering/ma_test_filtering_hpf.c:129
ma_decoder::outputSampleRate
ma_uint32 outputSampleRate
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/miniaudio.h:5205


picovoice_driver
Author(s):
autogenerated on Fri Apr 1 2022 02:13:56