diff options
| author | Carl Hetherington <cth@carlh.net> | 2020-04-18 22:49:03 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2020-04-20 00:31:10 +0200 |
| commit | f08afa0044f8f4a09c63081988e41c049f68084c (patch) | |
| tree | 5fca6e12dbe7827c453babd72afedc0cbd9c4ec1 /src | |
| parent | 95f5e1c85f459e4de033db4ec27a2acb79e0b1c1 (diff) | |
Use some C++ arrays and delete some unused code.
Diffstat (limited to 'src')
| -rw-r--r-- | src/leqm-nrt.cc | 38 |
1 files changed, 10 insertions, 28 deletions
diff --git a/src/leqm-nrt.cc b/src/leqm-nrt.cc index 4be3e30..5e753d8 100644 --- a/src/leqm-nrt.cc +++ b/src/leqm-nrt.cc @@ -427,7 +427,6 @@ int calculate(std::vector<double> channel_corrections, std::string sound_filenam for (auto cind = 0; cind < sf_info.channels; cind++) { channel_conf_cal.push_back(convloglin_single(conf51[cind])); } - } else { printf("Either you specified a different number of calibration than number of channels in the file or you do not indicate any calibration and the program cannot infer one from the number of channels. Please specify a channel calibration on the command line.\n"); return 0; @@ -455,12 +454,7 @@ int calculate(std::vector<double> channel_corrections, std::string sound_filenam } // reading to a double or float buffer with sndfile take care of normalization - /* - static double buffer[BUFFER_LEN]; // it seems this must be static. I don't know why - */ double * buffer; - // buffer = new double [BUFFER_LEN]; - //buffer_size_samples = (sf_info.samplerate*sf_info.channels*buffersizems)/1000; if ((sf_info.samplerate*buffersizems)%1000) { printf("Please fine tune the buffersize according to the sample rate\n"); //close file @@ -501,16 +495,10 @@ int calculate(std::vector<double> channel_corrections, std::string sound_filenam double freqsamples[] = {31, 63, 100, 200, 400, 800, 1000, 2000, 3150, 4000, 5000, 6300, 7100, 8000, 9000, 10000, 12500, 14000, 16000, 20000, 31500}; double freqresp_db[] = {-35.5, -29.5, -25.4, -19.4, -13.4, -7.5, -5.6, 0.0, 3.4, 4.9, 6.1, 6.6, 6.4, 5.8, 4.5, 2.5, -5.6, -10.9, -17.3, -27.8, -48.3}; - double * eqfreqresp_db; - eqfreqresp_db = (double *) malloc(sizeof(*eqfreqresp_db)*npoints); - - double * eqfreqsamples; - eqfreqsamples = (double *) malloc(sizeof(*eqfreqsamples)*npoints); - double * eqfreqresp; - eqfreqresp = (double *) malloc(sizeof(*eqfreqresp)*npoints); - double * ir; - ir = (double *) malloc(sizeof(*ir)*npoints*2); - + double * eqfreqresp_db = new double[npoints]; + double * eqfreqsamples = new double[npoints]; + double * eqfreqresp = new double[npoints]; + double * ir = new double[npoints * 2]; // And what to do for floating point sample coding? @@ -662,19 +650,13 @@ int calculate(std::vector<double> channel_corrections, std::string sound_filenam sf_close(file); - free(eqfreqsamples); - eqfreqsamples = NULL; - free(eqfreqresp_db); - eqfreqresp_db=NULL; - free(eqfreqresp); - eqfreqresp = NULL; - free(ir); - ir = NULL; - - free(totsum); - totsum = NULL; + delete[] eqfreqsamples; + delete[] eqfreqresp_db; + delete[] eqfreqresp; + delete[] ir; + + delete totsum; delete[] buffer; - buffer = nullptr; } |
