Test HPF On Digital Voice Out;

This commit is contained in:
lwvmobile 2024-03-19 13:42:07 -04:00
parent ef13343925
commit 3666740674
3 changed files with 18 additions and 0 deletions

View File

@ -666,6 +666,10 @@ typedef struct
LPFilter RCFilter8;
HPFilter HRCFilter8;
// PBFilter PBF;
LPFilter RCFilterL;
HPFilter HRCFilterL;
LPFilter RCFilterR;
HPFilter HRCFilterR;
char dpmr_caller_id[20];
char dpmr_target_id[20];

View File

@ -468,6 +468,12 @@ void init_audio_filters (dsd_state * state)
LPFilter_Init(&state->RCFilter8, 160, (float)1/(float)8000);
HPFilter_Init(&state->HRCFilter8, 160, (float)1/(float)8000);
//left and right variants for stereo output testing on digital voice samples
LPFilter_Init(&state->RCFilterL, 960, (float)1/(float)48000);
HPFilter_Init(&state->HRCFilterL, 960, (float)1/(float)48000);
LPFilter_Init(&state->RCFilterR, 960, (float)1/(float)48000);
HPFilter_Init(&state->HRCFilterR, 960, (float)1/(float)48000);
//PBFilter_Init(PBFilter *filter, float HPF_cutoffFreqHz, float LPF_cutoffFreqHz, float sampleTimeS);
// void NOTCHFilter_Init(NOTCHFilter *filter, float centerFreqHz, float notchWidthHz, float sampleTimeS);

View File

@ -308,6 +308,8 @@ processAudio (dsd_opts * opts, dsd_state * state)
*state->audio_out_buf_p = (short) *state->audio_out_float_buf_p;
//tap the pointer here and store the short upsample buffer samples
state->s_lu[n] = (short) *state->audio_out_float_buf_p;
//hpf test
state->s_lu[n] = HPFilter_Update(&state->HRCFilterL, state->s_lu[n]);
state->audio_out_buf_p++;
state->audio_out_float_buf_p++;
}
@ -328,6 +330,8 @@ processAudio (dsd_opts * opts, dsd_state * state)
*state->audio_out_buf_p = (short) *state->audio_out_temp_buf_p;
//tap the pointer here and store the short buffer samples
state->s_l[n] = (short) *state->audio_out_temp_buf_p;
//hpf test
state->s_l[n] = HPFilter_Update(&state->HRCFilterL, state->s_l[n]);
//debug
// fprintf (stderr, " %d", state->s_l[n]);
state->audio_out_buf_p++;
@ -455,6 +459,8 @@ processAudioR (dsd_opts * opts, dsd_state * state)
*state->audio_out_buf_pR = (short) *state->audio_out_float_buf_pR;
//tap the pointer here and store the short upsample buffer samples
state->s_ru[n] = (short) *state->audio_out_float_buf_pR;
//hpf test
state->s_ru[n] = HPFilter_Update(&state->HRCFilterR, state->s_ru[n]);
state->audio_out_buf_pR++;
state->audio_out_float_buf_pR++;
}
@ -475,6 +481,8 @@ processAudioR (dsd_opts * opts, dsd_state * state)
*state->audio_out_buf_pR = (short) *state->audio_out_temp_buf_pR;
//tap the pointer here and store the short buffer samples
state->s_r[n] = (short) *state->audio_out_temp_buf_pR;
//hpf test
state->s_r[n] = HPFilter_Update(&state->HRCFilterR, state->s_r[n]);
state->audio_out_buf_pR++;
state->audio_out_temp_buf_pR++;
state->audio_out_idxR++;