fixed sensitivity to log(0) errors when importing via --amread
authordrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Tue, 6 Jun 2017 03:51:39 +0000 (03:51 +0000)
committerdrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Tue, 6 Jun 2017 03:51:39 +0000 (03:51 +0000)
git-svn-id: https://svn.code.sf.net/p/freetel/code@3156 01035d8c-6547-0410-b346-abe4f91aad63

codec2-dev/src/c2sim.c
codec2-dev/src/newamp1.c

index e25450e5c5d65c2b413345349a2e84e5a161cf35..f2d375191068e8715117874b301036ec26a49144 100644 (file)
@@ -888,11 +888,12 @@ int main(int argc, char *argv[])
                         int ret = fread(H, sizeof(COMP), MAX_AMP, fhm);
                         assert(ret == MAX_AMP);
                     } else {
-                         determine_phase(&c2const, H, &model_dec[i], NEWAMP1_PHASE_NFFT, phase_fft_fwd_cfg, phase_fft_inv_cfg);
-                         //sample_phase(&model_dec[i], H, Aw);
+                        determine_phase(&c2const, H, &model_dec[i], NEWAMP1_PHASE_NFFT, phase_fft_fwd_cfg, phase_fft_inv_cfg);
                     }
                     phase_synth_zero_order(n_samp, &model_dec[i], ex_phase, H);
                 }
+
+                
                 if (postfilt)
                     postfilter(&model_dec[i], &bg_est);
                 synth_one_frame(n_samp, fftr_inv_cfg, buf, &model_dec[i], Sn_, Pn, prede, &de_mem, gain);
index b2e443732fc8caf41fb8fd33225392c58d29ca76..f6af1b8325fc555b4e0b1cd77b229f334b6185e7 100644 (file)
@@ -376,7 +376,7 @@ void determine_phase(C2CONST *c2const, COMP H[], MODEL *model, int Nfft, codec2_
     float AmdB[MAX_AMP+1], rate_L_sample_freqs_kHz[MAX_AMP+1];
 
     for(m=1; m<=model->L; m++) {
-        AmdB[m] = 20.0*log10(model->A[m]);
+        AmdB[m] = 20.0*log10f(model->A[m]+1);
         rate_L_sample_freqs_kHz[m] = (float)m*model->Wo*(c2const->Fs/2000.0)/M_PI;
     }