From 631c9e3c9f406b9e2dad381ae2767b58f8d64e5d Mon Sep 17 00:00:00 2001 From: philayres Date: Wed, 19 Jul 2017 13:08:57 +0000 Subject: [PATCH] First cut of c2wideband.c and its wideband_enc_dec() function. A unittest/tc2wideband.c file has been created to test some of the core calculation functions, plus to run wideband_enc_dec() with random data in order to track down buffer overflows, etc. At this commit, the unit tests in this new file run. The core functions operate as expected. wideband_enc_dec() runs on a single block of 16 frames without crashing, and has been stepped through to validate that most code is working as expected. Real data has not been used at this point in time. Created generate_wideband_map.c, which creates c2wideband_map.h from the Octave text file ../Octave/c2wideband_map codec2.c, c2dec.c, c2enc.c have been adapted to include the new wideband option. Makefiles have been adapted and appear to work. git-svn-id: https://svn.code.sf.net/p/freetel/code@3314 01035d8c-6547-0410-b346-abe4f91aad63 --- codec2-dev/octave/c2wideband_batch.m | 3 +- codec2-dev/octave/c2wideband_map | 8 + codec2-dev/raw/speech_orig_16k.wav | Bin 0 -> 345644 bytes codec2-dev/src/CMakeLists.txt | 42 ++ codec2-dev/src/c2dec.c | 10 +- codec2-dev/src/c2enc.c | 6 +- codec2-dev/src/c2wideband.c | 723 +++++++++++++++++++++ codec2-dev/src/c2wideband.h | 57 ++ codec2-dev/src/c2wideband_map.h | 20 + codec2-dev/src/codebook/c2wideband_map.txt | 8 + codec2-dev/src/codec2.c | 15 +- codec2-dev/src/codec2.h | 1 + codec2-dev/src/generate_wideband_map.c | 156 +++++ codec2-dev/unittest/CMakeLists.txt | 3 + codec2-dev/unittest/tc2wideband.c | 239 +++++++ 15 files changed, 1281 insertions(+), 10 deletions(-) create mode 100644 codec2-dev/octave/c2wideband_map create mode 100644 codec2-dev/raw/speech_orig_16k.wav create mode 100644 codec2-dev/src/c2wideband.c create mode 100644 codec2-dev/src/c2wideband.h create mode 100644 codec2-dev/src/c2wideband_map.h create mode 100644 codec2-dev/src/codebook/c2wideband_map.txt create mode 100644 codec2-dev/src/generate_wideband_map.c create mode 100644 codec2-dev/unittest/tc2wideband.c diff --git a/codec2-dev/octave/c2wideband_batch.m b/codec2-dev/octave/c2wideband_batch.m index c4ba7147..55dac99d 100644 --- a/codec2-dev/octave/c2wideband_batch.m +++ b/codec2-dev/octave/c2wideband_batch.m @@ -197,7 +197,8 @@ function [model_ rate_K_surface] = experiment_rate_K_dct2(model, plots=1) % break into blocks of (Nt time samples) x (K freq samples) Nblocks = floor(frames/(Nt*dec)); - %printf("frames: %d Nblocks: %d\n", frames, Nblocks); + + printf("frames: %d Nblocks: %d\n", frames, Nblocks); % map that defines order we read out and quantise DCT coeffs % TODO: for C port we need an Octave function to write Map to a C diff --git a/codec2-dev/octave/c2wideband_map b/codec2-dev/octave/c2wideband_map new file mode 100644 index 00000000..946aa194 --- /dev/null +++ b/codec2-dev/octave/c2wideband_map @@ -0,0 +1,8 @@ + 1.00000000e+00 3.00000000e+00 7.00000000e+00 8.00000000e+00 1.10000000e+01 1.50000000e+01 1.90000000e+01 2.60000000e+01 2.10000000e+01 2.40000000e+01 2.00000000e+01 3.00000000e+01 3.80000000e+01 4.80000000e+01 2.90000000e+01 3.20000000e+01 4.20000000e+01 6.40000000e+01 6.30000000e+01 5.40000000e+01 5.60000000e+01 5.00000000e+01 7.20000000e+01 9.10000000e+01 7.80000000e+01 6.70000000e+01 5.70000000e+01 7.00000000e+01 7.60000000e+01 1.04000000e+02 + 2.00000000e+00 5.00000000e+00 1.20000000e+01 2.20000000e+01 2.30000000e+01 3.30000000e+01 3.10000000e+01 4.30000000e+01 3.40000000e+01 3.90000000e+01 4.40000000e+01 4.10000000e+01 4.90000000e+01 6.00000000e+01 5.10000000e+01 7.70000000e+01 9.70000000e+01 9.00000000e+01 1.14000000e+02 8.10000000e+01 1.21000000e+02 1.13000000e+02 8.00000000e+01 9.90000000e+01 1.18000000e+02 1.09000000e+02 8.90000000e+01 1.02000000e+02 1.07000000e+02 1.19000000e+02 + 4.00000000e+00 9.00000000e+00 1.60000000e+01 2.70000000e+01 4.00000000e+01 4.50000000e+01 4.70000000e+01 5.50000000e+01 4.60000000e+01 6.10000000e+01 6.50000000e+01 6.60000000e+01 7.50000000e+01 8.30000000e+01 6.80000000e+01 1.06000000e+02 9.40000000e+01 1.27000000e+02 1.36000000e+02 1.38000000e+02 1.37000000e+02 1.41000000e+02 8.80000000e+01 1.50000000e+02 1.59000000e+02 1.47000000e+02 1.33000000e+02 1.28000000e+02 1.90000000e+02 1.31000000e+02 + 6.00000000e+00 1.80000000e+01 2.80000000e+01 5.20000000e+01 8.40000000e+01 6.20000000e+01 7.30000000e+01 7.90000000e+01 7.10000000e+01 9.80000000e+01 8.50000000e+01 9.30000000e+01 8.70000000e+01 1.12000000e+02 1.15000000e+02 1.10000000e+02 1.29000000e+02 1.99000000e+02 1.42000000e+02 1.70000000e+02 2.18000000e+02 1.62000000e+02 1.74000000e+02 2.05000000e+02 1.43000000e+02 1.64000000e+02 1.72000000e+02 1.75000000e+02 2.02000000e+02 2.16000000e+02 + 1.00000000e+01 2.50000000e+01 3.50000000e+01 6.90000000e+01 7.40000000e+01 9.20000000e+01 9.60000000e+01 1.35000000e+02 1.11000000e+02 1.56000000e+02 9.50000000e+01 1.05000000e+02 1.26000000e+02 1.34000000e+02 1.63000000e+02 2.15000000e+02 1.49000000e+02 1.48000000e+02 1.53000000e+02 2.28000000e+02 1.80000000e+02 2.30000000e+02 2.11000000e+02 2.13000000e+02 2.40000000e+02 2.24000000e+02 2.09000000e+02 2.22000000e+02 2.26000000e+02 1.73000000e+02 + 1.30000000e+01 3.70000000e+01 5.30000000e+01 1.08000000e+02 8.60000000e+01 1.17000000e+02 1.03000000e+02 1.00000000e+02 1.24000000e+02 1.22000000e+02 2.01000000e+02 1.92000000e+02 2.03000000e+02 2.19000000e+02 1.91000000e+02 1.69000000e+02 2.20000000e+02 2.14000000e+02 1.39000000e+02 2.04000000e+02 2.36000000e+02 1.79000000e+02 1.81000000e+02 2.00000000e+02 1.93000000e+02 2.21000000e+02 2.35000000e+02 1.87000000e+02 2.08000000e+02 2.17000000e+02 + 1.40000000e+01 3.60000000e+01 5.90000000e+01 1.16000000e+02 1.30000000e+02 1.78000000e+02 1.40000000e+02 1.32000000e+02 1.57000000e+02 1.52000000e+02 1.68000000e+02 1.60000000e+02 1.23000000e+02 1.97000000e+02 1.83000000e+02 2.34000000e+02 1.44000000e+02 2.23000000e+02 1.65000000e+02 1.67000000e+02 2.31000000e+02 1.96000000e+02 1.71000000e+02 2.33000000e+02 1.82000000e+02 2.25000000e+02 1.88000000e+02 2.37000000e+02 2.27000000e+02 2.10000000e+02 + 1.70000000e+01 5.80000000e+01 8.20000000e+01 1.01000000e+02 1.20000000e+02 1.86000000e+02 1.46000000e+02 1.25000000e+02 1.51000000e+02 1.94000000e+02 1.61000000e+02 1.84000000e+02 1.58000000e+02 1.89000000e+02 1.77000000e+02 1.95000000e+02 1.45000000e+02 1.66000000e+02 2.06000000e+02 1.54000000e+02 1.98000000e+02 2.12000000e+02 2.38000000e+02 2.29000000e+02 1.85000000e+02 1.76000000e+02 2.39000000e+02 1.55000000e+02 2.07000000e+02 2.32000000e+02 diff --git a/codec2-dev/raw/speech_orig_16k.wav b/codec2-dev/raw/speech_orig_16k.wav new file mode 100644 index 0000000000000000000000000000000000000000..737d9a5770bb2105e62c75066676568151b90970 GIT binary patch literal 345644 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 z%0A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

<4PE4xO-K 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

)e=S(=c? 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 E4-l{4LjV8( literal 0 HcmV?d00001 diff --git a/codec2-dev/src/CMakeLists.txt b/codec2-dev/src/CMakeLists.txt index 7dc9e8c0..7d758d37 100644 --- a/codec2-dev/src/CMakeLists.txt +++ b/codec2-dev/src/CMakeLists.txt @@ -66,6 +66,13 @@ set(CODEBOOKSNEWAMP1_ENERGY ${D}/newamp1_energy_q.txt ) + +# generated wideband map +set(C2WB_MAP + ${D}/c2wideband_map.txt +) + + # when crosscompiling we need a native executable if(CMAKE_CROSSCOMPILING) include(ExternalProject) @@ -146,6 +153,40 @@ add_custom_command( DEPENDS generate_codebook ${CODEBOOKSNEWAMP1_ENERGY} ) + + +# when crosscompiling we need a native executable +if(CMAKE_CROSSCOMPILING) + include(ExternalProject) + ExternalProject_Add(codec2_native + SOURCE_DIR ${CMAKE_SOURCE_DIR} + BUILD_COMMAND $(MAKE) generate_wideband_map + INSTALL_COMMAND ${CMAKE_COMMAND} -E copy src/generate_wideband_map ${CMAKE_CURRENT_BINARY_DIR} + ) + add_executable(generate_wideband_map IMPORTED) + set_target_properties(generate_wideband_map PROPERTIES + IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/generate_wideband_map) + add_dependencies(generate_wideband_map codec2_native) +else(CMAKE_CROSSCOMPILING) +# Build code generator binaries. These do not get installed. + # generate_codebook + add_executable(generate_wideband_map generate_wideband_map.c) + target_link_libraries(generate_wideband_map ${CMAKE_REQUIRED_LIBRARIES}) + # Make native builds available for cross-compiling. + export(TARGETS generate_wideband_map + FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake) +endif(CMAKE_CROSSCOMPILING) + + +# c2wideband_map.h +add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/c2wideband_map.h + COMMAND generate_wideband_map c2wideband_map ${C2WB_MAP} > ${CMAKE_CURRENT_BINARY_DIR}/c2wideband_map.h + DEPENDS generate_wideband_map ${C2WB_MAP} +) + + + # # codec2 library sources # @@ -188,6 +229,7 @@ set(CODEC2_SRCS freedv_data_channel.c varicode.c modem_stats.c + c2wideband.c ) set(CODEC2_PUBLIC_HEADERS diff --git a/codec2-dev/src/c2dec.c b/codec2-dev/src/c2dec.c index 57f08154..1a590ef4 100644 --- a/codec2-dev/src/c2dec.c +++ b/codec2-dev/src/c2dec.c @@ -98,11 +98,13 @@ int main(int argc, char *argv[]) else if (strcmp(argv[1],"700") == 0) mode = CODEC2_MODE_700; else if (strcmp(argv[1],"700B") == 0) - mode = CODEC2_MODE_700B; - else if (strcmp(argv[1],"700C") == 0) + mode = CODEC2_MODE_700B; + else if (strcmp(argv[1],"700C") == 0) mode = CODEC2_MODE_700C; + else if (strcmp(argv[1],"WB") == 0) + mode = CODEC2_MODE_WB; else { - fprintf(stderr, "Error in mode: %s. Must be 3200, 2400, 1600, 1400, 1300, 1200, 700, 700B or 700C\n", argv[1]); + fprintf(stderr, "Error in mode: %s. Must be 3200, 2400, 1600, 1400, 1300, 1200, 700, 700B, 700C or WB\n", argv[1]); exit(1); } bit_rate = atoi(argv[1]); @@ -320,7 +322,7 @@ void print_help(const struct option* long_options, int num_opts, char* argv[]) int i; char *option_parameters; fprintf(stderr, "\nc2dec - Codec 2 decoder and bit error simulation program\n" - "usage: %s 3200|2400|1600|1400|1300|1200|700|700B InputFile OutputRawFile [OPTIONS]\n\n" + "usage: %s 3200|2400|1600|1400|1300|1200|700|700B|WB InputFile OutputRawFile [OPTIONS]\n\n" "Options:\n", argv[0]); for(i=0; i. + + */ + +#include +#include +#include +#include +#include +#include + +#include "defines.h" +#include "codec2_fft.h" +#include "sine.h" +#include "nlp.h" +#include "dump.h" +#include "lpc.h" +#include "quantise.h" +#include "phase.h" +#include "interp.h" +#include "postfilter.h" +#include "codec2.h" +#include "lsp.h" +#include "codec2_internal.h" +#include "machdep.h" +#include "codec2.h" +#include "newamp1.h" + +#include "c2wideband.h" +#include "c2wideband_map.h" + +float mean(float data[], int n); +int unit_test(); +float std(float data[], int rows); +void diff_de(int rows, int cols, float D[rows][cols], float E[rows][cols], float diff_de[rows][cols]); +void array_col_to_row(int rows, int cols, float data[rows][cols], int col, float res[]); +void std_on_cols(int rows, int cols, float data[rows][cols], float res[]); +void setup_map(WIDEBAND_MAP * wb_map, int Nt, int K); +#define C2WB_PLOT +#ifdef C2WB_PLOT +static int total_frames; +static int curr_block_pos; +#endif + + +//TODO: move all this to the standard codec2.c functions +#ifdef IGNORE + +int main(int argc, char *argv[]) { + struct CODEC2 *codec2; + FILE *fin; + FILE *fout; + short *buf; + unsigned char *bits; + int nsam, nbit, i, r; + int errno = -1; + for (i = 0; i < 10; i++) { + r = codec2_rand(); + printf("[%d] r = %d\n", i, r); + } + + if (argc != 3) { + printf("usage: %s InputRawSpeechFile OutputRawSpeechFile\n", argv[0]); + exit(1); + } + + if ((fin = fopen(argv[1], "rb")) == NULL) { + fprintf(stderr, "Error opening input speech file: %s: %s.\n", + argv[1], strerror(errno)); + exit(1); + } + + if ((fout = fopen(argv[2], "wb")) == NULL) { + fprintf(stderr, "Error opening output speech file: %s: %s.\n", + argv[2], strerror(errno)); + exit(1); + } + +#ifdef DUMP + dump_on("c2demo"); +#endif + + /* Note only one set of Codec 2 states is required for an encoder + and decoder pair. */ + + codec2 = codec2_create(CODEC2_MODE_WB); + nsam = C2WB_SPERF; //codec2_samples_per_frame(codec2); + buf = (short*) malloc(nsam * sizeof (short)); + nbit = C2WB_BPERF; //codec2_bits_per_frame(codec2); + bits = (unsigned char*) malloc(nbit * sizeof (char)); + + while (fread(buf, sizeof (short), nsam, fin) == (size_t) nsam) { + codec2_encode_wb(codec2, bits, buf); + codec2_decode_wb(codec2, buf, bits); + fwrite(buf, sizeof (short), nsam, fout); + } + + free(buf); + free(bits); + codec2_destroy(codec2); + + fclose(fin); + fclose(fout); + + return 0; +} +#endif + +void codec2_encode_wb(struct CODEC2 *c2, unsigned char * bits, short speech[]) { + return; +} + +void codec2_decode_wb(struct CODEC2 *c2, short speech[], const unsigned char * bits) { + return; +} + +void calculate_Am_freqs_kHz(float Wo, int L, float Am_freqs_kHz[L]) { + //(1:L)*Wo*4/pi; + + for (int i = 0; i < L; i++) { + Am_freqs_kHz[i] = i * Wo * 4 / PI; + } +} + + +// Adapted from newamp.m + +void resample_const_rate_f_mel(C2CONST *c2const, MODEL * model, float K, float* rate_K_surface, float* rate_K_sample_freqs_kHz) { + mel_sample_freqs_kHz(rate_K_sample_freqs_kHz, K, 100, 0.95 * c2const->Fs / 2); + resample_const_rate_f(c2const, model, rate_K_surface, rate_K_sample_freqs_kHz, K); +} + + +// Updates rate_K_vec with the corrected values +// function [rate_K_vec_corrected orig_error error nasty_error_log nasty_error_m_log] = correct_rate_K_vec(rate_K_vec, rate_K_sample_freqs_kHz, AmdB, AmdB_, K, Wo, L, Fs) + +void correct_rate_K_vec(MODEL *model, float rate_K_vec[], float rate_K_sample_freqs_kHz[], float Am_freqs_kHz[], float orig_AmdB[], int K, float Wo, int L, int Fs, float rate_K_vec_corrected[]) { + + /* + % aliasing correction -------------------------------------- + + % The mel sample rate decreases as frequency increases. Look for + % any regions above 1000Hz where we have missed definition of a + % spectral peak (formant) due to aliasing. Adjust the rate K + % sample levels to restore peaks. Theory is that correct + % definition of a formant is less important than the frequency of + % the formant. As long as we define a formant in that general + % frequency area it will sound OK. + */ + + + // this is passed in + //Am_freqs_kHz = (1:L)*Wo*4/pi; + + //% Lets see where we have made an error + float error[MAX_AMP + 1]; + //float orig_error[MAX_AMP+1]; + float AmdB_[MAX_AMP + 1]; + + float nasty_error_freq; + float rate_K_prev_sample_kHz; + float rate_K_next_sample_kHz; + + int Ncorrections = 3; //% maximum number of rate K samples to correct + int error_thresh = 3; //% only worry about errors larger than thresh + + int closest_k = 0; + + // regenerate the AmdB values from the updated model + for (int i = 0; i < MAX_AMP + 1; i++) { + AmdB_[i] = 20 * log10(model->A[i]); + } + + // calculate error between original AmdB and the new values + for (int i = 0; i < MAX_AMP + 1; i++) { + int a = orig_AmdB[i] - AmdB_[i]; + error[i] = a; + // orig_error[i] = a; + } + + + + //% first 1000Hz is densely sampled so ignore + int start_m = floor(L * 1000 / (Fs / 2)); + for (int i = 0; i < start_m; i++) { + error[i] = 0; + } + //start_m = floor(L*1000/(Fs/2)); + //error(1:start_m) = 0; % first 1000Hz is densly sampled so ignore + + // ignore these + //float nasty_error_m_log = []; + //float nasty_error_log = []; + + + // could probably memcpy this, but I need to think about it... + // TODO copy?? + for (int i = 0; i < K; i++) { + //rate_K_vec_corrected = rate_K_vec + rate_K_vec_corrected[i] = rate_K_vec[i]; + } + + for (int i = 0; i < Ncorrections; i++) { + + // [mx mx_m] = max(error); + int mx_m = 0; + int mx = 0; + for (int m = 0; m < start_m; m++) { + if (error[m] > mx) { + mx_m = m; + mx = error[m]; + } + } + + if (mx > error_thresh) { + + // ignore these + //nasty_error_log = [nasty_error_log mx]; + //nasty_error_m_log = [nasty_error_m_log mx_m]; + + //% find closest rate K sample to nasty error + + nasty_error_freq = (float) mx_m * Wo * Fs / (2 * PI * 1000); + + //[tmp closest_k] = min(abs(rate_K_sample_freqs_kHz - nasty_error_freq)); + closest_k = -1; + float cka = K; + for (int k = 0; k < K; k++) { + float a = abs(rate_K_sample_freqs_kHz[k] - nasty_error_freq); + + if (closest_k == -1 || a < cka) { + closest_k = k; + cka = a; + } + } + + // this sets the value from the original AmdB value set for the model prior to recalculation + // TODO - check this is correct + rate_K_vec_corrected[closest_k] = orig_AmdB[mx_m]; + + //% zero out error in this region and look for another large error region + + // here I'm assuming that the required result is a zero based index + // rather than an Octave 1 based index + // closest_k is already 0 based in this code + // TODO - check this + int k = (0 > closest_k - 1 ? 0 : closest_k - 1); + //k = max(1, closest_k-1); + + rate_K_prev_sample_kHz = rate_K_sample_freqs_kHz[k]; + + + // again, assuming the required result is 0 rather than 1 based + // TODO - check + k = (K - 1 < closest_k + 1 ? K : closest_k + 1); + //k = min(K, closest_k+1); + + rate_K_next_sample_kHz = rate_K_sample_freqs_kHz[k]; + + int st = -1; + int st_m = 0; + int en = -1; + int en_m = 0; + for (int m = 0; m < C2WB_K - 1; m++) { + //[tmp st_m] = min(abs(Am_freqs_kHz - rate_K_prev_sample_kHz)); + //[tmp en_m] = min(abs(Am_freqs_kHz - rate_K_next_sample_kHz)); + int pa = abs(Am_freqs_kHz[m] - rate_K_prev_sample_kHz); + int na = abs(abs(Am_freqs_kHz[m] - rate_K_next_sample_kHz)); + if (st == -1 || pa < st) { + st = pa; + st_m = m; + } + if (en == -1 || na < en) { + en = na; + en_m = m; + } + } + if (closest_k == K) + en_m = L; + + for (int m = st_m; m < en_m; m++) { + error[m] = 0; + } + //error(st_m:en_m) = 0; + } + } + + + +} + +void diff_de(int rows, int cols, float D[rows][cols], float E[rows][cols], float diff_de[rows][cols]) { + + + for (int col = 0; col < cols; col++) { + for (int row = 0; row < rows; row++) { + diff_de[row][col] = D[row][col] - E[row][col]; + } + } + +} + +float mean(float data[], int n) { + float sum = 0.0; + for (int i = 0; i < n; ++i) { + sum += data[i]; + } + + return sum / n; +} + +void array_col_to_row(int rows, int cols, float data[rows][cols], int col, float res[]) { + for (int row = 0; row < rows; row++) { + res[row] = data[row][col]; + } +} + +float std(float data[], int rows) { + float standardDeviation = 0.0; + + for (int i = 0; i < rows; ++i) { + standardDeviation += pow(data[i] - mean(data, rows), 2); + } + return sqrt(standardDeviation / rows); +} + +void std_on_cols(int rows, int cols, float data[rows][cols], float res[]) { + float row_from_col[cols]; + for (int col = 0; col < cols; col++) { + array_col_to_row(rows, cols, data, col, row_from_col); + res[col] = std(row_from_col, rows); + } +} + +float mean_std_diff_de(int rows, int cols, float D[rows][cols], float E[rows][cols]) { + float matrix_diff_de[rows][cols]; + float std_array[cols]; + diff_de(rows, cols, D, E, matrix_diff_de); + std_on_cols(rows, cols, matrix_diff_de, std_array); + return mean(std_array, cols); +} + +//TODO : everything + +void dct2(int rows, int cols, float matrix[], float res[rows][cols]) { + + for (int r = 0; r < rows; r++) { + for (int c = 0; c < cols; c++) { + res[r][c] = (float) rand() / RAND_MAX; + } + } + /* + + if m == 1 + y = dct (x.', n).'; + elseif n == 1 + y = dct (x, m); + else + y = dct (dct (x, m).', n).'; + endif + */ + +} + +//TODO : everything + +void idct2(int rows, int cols, float inrks[rows][cols], float rate_K_surface_block[]) { + int K = C2WB_K; + for (int k = 0; k < K; k++) { + rate_K_surface_block[k] = (float) rand() / RAND_MAX; + } +} +//% Encode/decoder a 160ms block of model parameters +//% TODO: (i) quantisation of DCT coeffs (ii) break into separate encoder and decoder functions +// +//function [model_block_ dct2_sd qn rate_K_surface_block rate_K_surface_block_] = wideband_enc_dec(model_block, rmap, cmap) + +void wideband_enc_dec(C2CONST *c2const, int n_block_frames, MODEL model_block[n_block_frames], WIDEBAND_MAP * wb_map, + MODEL model_block_[n_block_frames], float dct2_sd[n_block_frames], int * p_qn, float rate_K_surface_block[n_block_frames][C2WB_K], float rate_K_surface_block_[n_block_frames][C2WB_K]) { + + // c2wideband_const; + // + // sim_quant = 1; % used to simulate quantisation, set to 1,2,4, etc + // dist_dB = 2; % use enough coefficients to get this distortion ond DCT coeffs + int sim_quant = 1; + float dist_dB = 2; + + // int Fs = c2const->Fs; + // int L; + // float Wo; + + int K = C2WB_K; + int Nt = C2WB_NT; + + int rows = Nt; + int cols = K; + int dec = C2WB_DEC; + printf("starting iteration\n"); + // iterate through the frames in the block + for (int f = 0; f < n_block_frames; f++) { + printf("processing frame %d of %d\n", f, n_block_frames); + + float rate_K_sample_freqs_kHz[C2WB_K]; + //MODEL * model = &model_block[f]; + + + // % Resample variable rate L vectors to fixed length rate K. We have + // % left high end correction out for now, this is less of an issue + // % with a higher K + + + // [rate_K_surface_block rate_K_sample_freqs_kHz] = resample_const_rate_f_mel(model_block, K, Fs); + printf("resample_const_rate_f_mel\n"); + resample_const_rate_f_mel(c2const, &model_block[f], K, rate_K_surface_block[f], rate_K_sample_freqs_kHz); + + // % decimate down to 20ms time resolution, and DCT + + // D = dct2(rate_K_surface_block(1:dec:Nt*dec,:)); + + float D[rows][cols]; + float E[rows][cols]; + printf("dct2\n"); + dct2(rows, cols, rate_K_surface_block[f], D); + + // % So D is the 2D block of DCT coeffs at the encoder. We want to + // % create a quantised version at the "decoder" E. This loop copies + // % DCTs coeffs from D to E, until we get beneath a distortion + // % threshold. + // + // % This is essentially variable rate quantisation, but gives us + // % some idea of the final bit rate. In practice we will also need + // % to constrain the total number of bits (ie bit rate), and + // % quantise each coefficient. + // + // % Turns out than mean SD (across many blocks/frames) is about the + // % same in the DCT domain as the rate K domain. So we can just + // % measure MSE between D and E to estimate mean SD of the rate K + // % vectors after quantisation. + + // E = mapped = zeros(Nt,K); + for (int r = 0; r < rows; r++) { + memset(E[r], '\0', cols * sizeof (float)); + } + + // qn = 0; + *p_qn = 0; + + // adct2_sd = mean(std(D-E)); + + float adct2_sd; + + + adct2_sd = mean_std_diff_de(rows, cols, D, E); + + printf("while adct2_sd > dist_dB (dist_dB=%f)\n", dist_dB); + // while adct2_sd > dist_dB + //TODO : validate the addition of *p_qn limit check is correct + while (adct2_sd > dist_dB && *p_qn < C2WB_NT) { + + // qn++; + // --- this has moved to the end to cope with 0 base + assert(*p_qn < C2WB_NT); + int rmapqn = wb_map->rmap[*p_qn]; + int cmapqn = wb_map->cmap[*p_qn]; + assert(rmapqn < rows); + assert(cmapqn < cols); + // E(rmap(qn), cmap(qn)) = sim_quant*round(D(rmap(qn), cmap(qn))/sim_quant); + E[rmapqn][cmapqn] = sim_quant * round(D[rmapqn][cmapqn] / sim_quant); + // adct2_sd = mean(std(D-E)); + adct2_sd = mean_std_diff_de(rows, cols, D, E); + + //printf("qn %d %f\n", *p_qn, adct2_sd); + + (*p_qn)++; + // %printf("qn %d %f\n", qn, adct2_sd); + // end + } + + // % note neat trick to interpolate to 10ms frames despite dec to 20ms, this means + // % we don't need a separate decode side interpolator. + + // dct2_sd = mean(std(D-E)); + + + dct2_sd[f] = mean_std_diff_de(rows, cols, D, E); + + + // rate_K_surface_block_ = idct2([sqrt(dec)*E; zeros(Nt*(dec-1), K)]); + float inrks[rows * dec][K]; + + printf("setting inrks\n"); + for (int r = 0; r < rows; r++) { + for (int c = 0; c < cols; c++) { + inrks[r][c] = sqrt(dec) * E[r][c]; + } + } + for (int r = 0; r < Nt * (dec - 1); r++) { + for (int c = 0; c < K; c++) { + inrks[r + rows][c] = 0; + } + } + + + //TODO ??? + //= [sqrt(dec)*E; zeros(Nt*(dec-1), K)]; + printf("idct2\n"); + idct2(rows, cols, inrks, rate_K_surface_block_[f]); + + // model_block_ = resample_rate_L(model_block, rate_K_surface_block_, rate_K_sample_freqs_kHz, Fs); + printf("resample_rate_L\n"); + resample_rate_L(c2const, &model_block[f], rate_K_surface_block_[f], rate_K_sample_freqs_kHz, K); + //endfunction + } +} + +void setup_map(WIDEBAND_MAP * wb_map, int Nt, int K) { + + /* + % map that defines order we read out and quantise DCT coeffs + % TODO: for C port we need an Octave function to write Map to a C + % include file + + map = load("c2wideband_map"); + + % create arrays to reverse map quantiser_num to r,c Luts + + rmap = cmap = zeros(1,Nt*K); + for r=1:Nt + for c=1:K + quantiser_num = map(r,c); + rmap(quantiser_num) = r; + cmap(quantiser_num) = c; + end + end + + */ + + + int quantiser_num; + + memset(wb_map->rmap, '\0', Nt * K * sizeof *wb_map->rmap); + memset(wb_map->cmap, '\0', Nt * K * sizeof *wb_map->cmap); + + for (int r = 0; r < Nt; r++) { + for (int c = 0; c < K; c++) { + quantiser_num = c2wideband_map[r][c]; + wb_map->rmap[quantiser_num] = r; + wb_map->cmap[quantiser_num] = c; + } + } + +} + +/* +% --------------------------------------------------------------------------------------- +% rate K mel-resampling, high end correction, and DCT experiment workhorse + +function [model_ rate_K_surface] = experiment_rate_K_dct2(model, plots=1) + */ + +//TODO - review and produce a unit test for this +// this is really just a draft at this point +void experiment_rate_K_dct2(C2CONST *c2const, MODEL model_frames[], int frames, int vq_en, int plots, int* voicing, float *mean_) { + + + // newamp; + // c2wideband_const; + // [frames nc] = size(model); + + int n_block_frames = C2WB_NT * C2WB_DEC; + + int K = C2WB_K; + int Nt = C2WB_NT; + //int dec = C2WB_DEC; + WIDEBAND_MAP wb_map; + + + +#ifdef C2WB_PLOT + total_frames = frames; +#endif + + // % break into blocks of (Nt time samples) x (K freq samples) + + // Nblocks = floor(frames/(Nt*dec)); + // %printf("frames: %d Nblocks: %d\n", frames, Nblocks); + //int Nblocks = floor(frames/(Nt*dec)); + + + setup_map(&wb_map, Nt, K); + + // Step through the model in blocks of 8 frames + for (int f = 0; f < frames; f += n_block_frames) { + MODEL * model_block = &model_frames[f]; + +#ifdef C2WB_PLOT + curr_block_pos = f; +#endif + rate_K_dct2(c2const, n_block_frames, model_block, &wb_map); + + + } + +} + + + + +//TODO - review and produce a unit test for this +// this is really just a draft at this point +void rate_K_dct2(C2CONST *c2const, int n_block_frames, MODEL model_block[n_block_frames], WIDEBAND_MAP * wb_map) { + + //% per-block processing ---------------------------------------------------- + + // % init a bunch of output variables + + // rate_K_surface_ = zeros(Nblocks*Nt*dec, K); + // sumnz = zeros(1,Nblocks); + // dct2_sd = zeros(1,Nblocks); + // model_ = []; + + + int Nblocks = n_block_frames; + int dec = C2WB_DEC; + int Nt = C2WB_NT; + int K = C2WB_K; + int Tf = C2WB_TF; + int rate_K_surface_size = Nblocks * Nt * dec; + + float rate_K_surface_block[rate_K_surface_size][K]; // rate K vecs for each frame, form a surface that makes pretty graphs + float rate_K_surface_block_[rate_K_surface_size][K]; + +#ifdef C2WB_PLOT + float rate_K_surface[total_frames][K]; + float rate_K_surface_[total_frames][K]; + MODEL model_[total_frames]; +#endif + + float sumnz[Nblocks]; + float dct2_sd[Nblocks]; + int qn; + + MODEL model_block_[n_block_frames]; + + //for n=1:Nblocks + for (int n = 0; n < Nblocks; n++) { + //st = (n-1)*dec*Nt+1; en = st + dec*Nt - 1; + int st = (n - 1) * dec * Nt + 1; + int en = st + dec * Nt - 1; + //%printf("st: %d en: %d\n", st, en); + + //[model_block_ adct2_sd qn rate_K_surface_block rate_K_surface_block_] = wideband_enc_dec(model(st:en,:), rmap, cmap); + wideband_enc_dec(c2const, n_block_frames, model_block, wb_map, + model_block_, &dct2_sd[n], &qn, &rate_K_surface_block[n], &rate_K_surface_block_[n] + ); + +#ifdef C2WB_PLOT + //model_ = [model_; model_block_]; + model_[curr_block_pos + n] = model_block_[n]; + + //% log these for plotting/development + + //rate_K_surface(st:en,:) = rate_K_surface_block; + //rate_K_surface_(st:en,:) = rate_K_surface_block_; + int pst = 0; + for (int p = st; p < en; p++) { + for (int k = 0; k < K; k++) { + rate_K_surface[p][k] = rate_K_surface_block[n + pst][k]; + rate_K_surface_[p][k] = rate_K_surface_block_[n + pst][k]; + } + pst++; + } + //dct2_sd(n) = adct2_sd; + sumnz[n] = (float) qn; + // already handled in call +#endif + + //end + } + + +#ifdef C2WB_PLOT + printf("average dct spectral distortion: %3.2f dB\n", mean(dct2_sd, Nblocks)); + printf("mean number of coeffs/DCT: %3.2f/%d\n", mean(sumnz, Nblocks), Nt * K); + printf("coeffs/second: %3.2f\n", mean(sumnz, Nblocks) / (Nt * Tf * dec)); + printf("bits/s: %3.2f\n", 2.9 * mean(sumnz, Nblocks) / (Nt * Tf * dec)); + + //TODO + //dist = std((rate_K_surface_(1:dec:Nblocks*Nt*dec,:) - rate_K_surface(1:dec:Nblocks*Nt*dec,:))'); + //float dist = + //if plots + //figure(1); clf; plot(dist); title('Rate K SD'); + //printf("Rate K spectral distortion mean: %3.2f dB var: %3.2f\n", mean(dist), var(dist)); + //end +#endif + + + +} diff --git a/codec2-dev/src/c2wideband.h b/codec2-dev/src/c2wideband.h new file mode 100644 index 00000000..d41379c1 --- /dev/null +++ b/codec2-dev/src/c2wideband.h @@ -0,0 +1,57 @@ +/* + * File: c2wideband.h + * Author: phil + * + * Created on 02 July 2017, 20:42 + */ + +#ifndef C2WIDEBAND_H +#define C2WIDEBAND_H + +#include "defines.h" +#include "phase.h" +#include "quantise.h" +#include "newamp1.h" +#include "codec2_internal.h" + +#define C2WB_K 30 /* rate K vector length */ +#define C2WB_FS 16000 + +#define C2WB_NT 8 /* number of blocks in time = 160ms blocks */ +#define C2WB_TF 0.02 /* 20ms frames */ +#define C2WB_DEC 2 /* decimation factor */ +#define C2WB_SPERF 30 /* samples per frame */ +//TODO: decide what this is +#define C2WB_BPERF 256 /* bits per frame */ + + +typedef struct { + int rmap[C2WB_K * C2WB_NT]; + int cmap[C2WB_K * C2WB_NT]; +} WIDEBAND_MAP; + + + +void codec2_decode_wb(struct CODEC2 *c2, short speech[], const unsigned char * bits); + +void calculate_Am_freqs_kHz(float Wo, int L, float p_Am_freqs_kHz[]); +void resample_const_rate_f_mel(C2CONST *c2const, MODEL * model, float K, float* rate_K_surface, float* rate_K_sample_freqs_kHz); +void correct_rate_K_vec(MODEL *model, float rate_K_vec[], float rate_K_sample_freqs_kHz[], float Am_freqs_kHz[], float orig_AmdB[], int K, float Wo, int L, int Fs, float rate_K_vec_corrected[]); +void batch_rate_K_dct2(C2CONST *c2const, MODEL model_frames[], int frames, int vq_en, int plots, int* voicing, float *mean_); +void rate_K_dct2(C2CONST *c2const, int n_block_frames, MODEL model_block[n_block_frames], WIDEBAND_MAP * wb_map); +void wideband_enc_dec(C2CONST *c2const, int n_block_frames, MODEL model_block[], WIDEBAND_MAP * wb_map, + MODEL model_block_[], float * p_dct2_sd, int * p_qn , float rate_K_surface_block[][C2WB_K], float rate_K_surface_block_[][C2WB_K] + ); +void codec2_decode_wb(struct CODEC2 *c2, short speech[], const unsigned char * bits); +void codec2_encode_wb(struct CODEC2 *c2, unsigned char * bits, short speech[]); + + +#ifdef __cplusplus +extern "C" { +#endif +#ifdef __cplusplus +} +#endif + +#endif /* C2WIDEBAND_H */ + diff --git a/codec2-dev/src/c2wideband_map.h b/codec2-dev/src/c2wideband_map.h new file mode 100644 index 00000000..9ea5a3a7 --- /dev/null +++ b/codec2-dev/src/c2wideband_map.h @@ -0,0 +1,20 @@ +/* THIS IS A GENERATED FILE. Edit generate_wideband_map.c and its input */ + +/* + * This intermediary file and the files that used to create it are under + * The LGPL. See the file COPYING. + */ + +#include "defines.h" + + /* ./codec2-dev/src/codebook/c2wideband_map.txt */ +static const float c2wideband_map[8][30] = { +{ 1, 3, 7, 8, 11, 15, 19, 26, 21, 24, 20, 30, 38, 48, 29, 32, 42, 64, 63, 54, 56, 50, 72, 91, 78, 67, 57, 70, 76, 104 }, +{ 2, 5, 12, 22, 23, 33, 31, 43, 34, 39, 44, 41, 49, 60, 51, 77, 97, 90, 114, 81, 121, 113, 80, 99, 118, 109, 89, 102, 107, 119 }, +{ 4, 9, 16, 27, 40, 45, 47, 55, 46, 61, 65, 66, 75, 83, 68, 106, 94, 127, 136, 138, 137, 141, 88, 150, 159, 147, 133, 128, 190, 131 }, +{ 6, 18, 28, 52, 84, 62, 73, 79, 71, 98, 85, 93, 87, 112, 115, 110, 129, 199, 142, 170, 218, 162, 174, 205, 143, 164, 172, 175, 202, 216 }, +{ 10, 25, 35, 69, 74, 92, 96, 135, 111, 156, 95, 105, 126, 134, 163, 215, 149, 148, 153, 228, 180, 230, 211, 213, 240, 224, 209, 222, 226, 173 }, +{ 13, 37, 53, 108, 86, 117, 103, 100, 124, 122, 201, 192, 203, 219, 191, 169, 220, 214, 139, 204, 236, 179, 181, 200, 193, 221, 235, 187, 208, 217 }, +{ 14, 36, 59, 116, 130, 178, 140, 132, 157, 152, 168, 160, 123, 197, 183, 234, 144, 223, 165, 167, 231, 196, 171, 233, 182, 225, 188, 237, 227, 210 }, +{ 17, 58, 82, 101, 120, 186, 146, 125, 151, 194, 161, 184, 158, 189, 177, 195, 145, 166, 206, 154, 198, 212, 238, 229, 185, 176, 239, 155, 207, 232 } +}; diff --git a/codec2-dev/src/codebook/c2wideband_map.txt b/codec2-dev/src/codebook/c2wideband_map.txt new file mode 100644 index 00000000..946aa194 --- /dev/null +++ b/codec2-dev/src/codebook/c2wideband_map.txt @@ -0,0 +1,8 @@ + 1.00000000e+00 3.00000000e+00 7.00000000e+00 8.00000000e+00 1.10000000e+01 1.50000000e+01 1.90000000e+01 2.60000000e+01 2.10000000e+01 2.40000000e+01 2.00000000e+01 3.00000000e+01 3.80000000e+01 4.80000000e+01 2.90000000e+01 3.20000000e+01 4.20000000e+01 6.40000000e+01 6.30000000e+01 5.40000000e+01 5.60000000e+01 5.00000000e+01 7.20000000e+01 9.10000000e+01 7.80000000e+01 6.70000000e+01 5.70000000e+01 7.00000000e+01 7.60000000e+01 1.04000000e+02 + 2.00000000e+00 5.00000000e+00 1.20000000e+01 2.20000000e+01 2.30000000e+01 3.30000000e+01 3.10000000e+01 4.30000000e+01 3.40000000e+01 3.90000000e+01 4.40000000e+01 4.10000000e+01 4.90000000e+01 6.00000000e+01 5.10000000e+01 7.70000000e+01 9.70000000e+01 9.00000000e+01 1.14000000e+02 8.10000000e+01 1.21000000e+02 1.13000000e+02 8.00000000e+01 9.90000000e+01 1.18000000e+02 1.09000000e+02 8.90000000e+01 1.02000000e+02 1.07000000e+02 1.19000000e+02 + 4.00000000e+00 9.00000000e+00 1.60000000e+01 2.70000000e+01 4.00000000e+01 4.50000000e+01 4.70000000e+01 5.50000000e+01 4.60000000e+01 6.10000000e+01 6.50000000e+01 6.60000000e+01 7.50000000e+01 8.30000000e+01 6.80000000e+01 1.06000000e+02 9.40000000e+01 1.27000000e+02 1.36000000e+02 1.38000000e+02 1.37000000e+02 1.41000000e+02 8.80000000e+01 1.50000000e+02 1.59000000e+02 1.47000000e+02 1.33000000e+02 1.28000000e+02 1.90000000e+02 1.31000000e+02 + 6.00000000e+00 1.80000000e+01 2.80000000e+01 5.20000000e+01 8.40000000e+01 6.20000000e+01 7.30000000e+01 7.90000000e+01 7.10000000e+01 9.80000000e+01 8.50000000e+01 9.30000000e+01 8.70000000e+01 1.12000000e+02 1.15000000e+02 1.10000000e+02 1.29000000e+02 1.99000000e+02 1.42000000e+02 1.70000000e+02 2.18000000e+02 1.62000000e+02 1.74000000e+02 2.05000000e+02 1.43000000e+02 1.64000000e+02 1.72000000e+02 1.75000000e+02 2.02000000e+02 2.16000000e+02 + 1.00000000e+01 2.50000000e+01 3.50000000e+01 6.90000000e+01 7.40000000e+01 9.20000000e+01 9.60000000e+01 1.35000000e+02 1.11000000e+02 1.56000000e+02 9.50000000e+01 1.05000000e+02 1.26000000e+02 1.34000000e+02 1.63000000e+02 2.15000000e+02 1.49000000e+02 1.48000000e+02 1.53000000e+02 2.28000000e+02 1.80000000e+02 2.30000000e+02 2.11000000e+02 2.13000000e+02 2.40000000e+02 2.24000000e+02 2.09000000e+02 2.22000000e+02 2.26000000e+02 1.73000000e+02 + 1.30000000e+01 3.70000000e+01 5.30000000e+01 1.08000000e+02 8.60000000e+01 1.17000000e+02 1.03000000e+02 1.00000000e+02 1.24000000e+02 1.22000000e+02 2.01000000e+02 1.92000000e+02 2.03000000e+02 2.19000000e+02 1.91000000e+02 1.69000000e+02 2.20000000e+02 2.14000000e+02 1.39000000e+02 2.04000000e+02 2.36000000e+02 1.79000000e+02 1.81000000e+02 2.00000000e+02 1.93000000e+02 2.21000000e+02 2.35000000e+02 1.87000000e+02 2.08000000e+02 2.17000000e+02 + 1.40000000e+01 3.60000000e+01 5.90000000e+01 1.16000000e+02 1.30000000e+02 1.78000000e+02 1.40000000e+02 1.32000000e+02 1.57000000e+02 1.52000000e+02 1.68000000e+02 1.60000000e+02 1.23000000e+02 1.97000000e+02 1.83000000e+02 2.34000000e+02 1.44000000e+02 2.23000000e+02 1.65000000e+02 1.67000000e+02 2.31000000e+02 1.96000000e+02 1.71000000e+02 2.33000000e+02 1.82000000e+02 2.25000000e+02 1.88000000e+02 2.37000000e+02 2.27000000e+02 2.10000000e+02 + 1.70000000e+01 5.80000000e+01 8.20000000e+01 1.01000000e+02 1.20000000e+02 1.86000000e+02 1.46000000e+02 1.25000000e+02 1.51000000e+02 1.94000000e+02 1.61000000e+02 1.84000000e+02 1.58000000e+02 1.89000000e+02 1.77000000e+02 1.95000000e+02 1.45000000e+02 1.66000000e+02 2.06000000e+02 1.54000000e+02 1.98000000e+02 2.12000000e+02 2.38000000e+02 2.29000000e+02 1.85000000e+02 1.76000000e+02 2.39000000e+02 1.55000000e+02 2.07000000e+02 2.32000000e+02 diff --git a/codec2-dev/src/codec2.c b/codec2-dev/src/codec2.c index de79710c..17c9a329 100644 --- a/codec2-dev/src/codec2.c +++ b/codec2-dev/src/codec2.c @@ -48,7 +48,7 @@ #include "machdep.h" #include "bpf.h" #include "bpfb.h" - +#include "c2wideband.h" /*---------------------------------------------------------------------------*\ FUNCTION HEADERS @@ -103,7 +103,7 @@ struct CODEC2 * codec2_create(int mode) struct CODEC2 *c2; int i,l; - if (!((mode >= 0) && (mode <= CODEC2_MODE_700C))) { + if (!((mode >= 0) && (mode <= CODEC2_MODE_WB))) { return NULL; } @@ -264,6 +264,9 @@ int codec2_bits_per_frame(struct CODEC2 *c2) { return 28; if (c2->mode == CODEC2_MODE_700C) return 28; + //TODO: verify this + if (c2->mode == CODEC2_MODE_WB) + return 64; return 0; /* shouldn't get here */ } @@ -298,7 +301,8 @@ int codec2_samples_per_frame(struct CODEC2 *c2) { return 320; if (c2->mode == CODEC2_MODE_700C) return 320; - + if (c2->mode == CODEC2_MODE_WB) + return 160; return 0; /* shouldnt get here */ } @@ -327,6 +331,9 @@ void codec2_encode(struct CODEC2 *c2, unsigned char *bits, short speech[]) if (c2->mode == CODEC2_MODE_700C) codec2_encode_700c(c2, bits, speech); #endif + if (c2->mode == CODEC2_MODE_WB) + codec2_encode_wb(c2, bits, speech); + } void codec2_decode(struct CODEC2 *c2, short speech[], const unsigned char *bits) @@ -359,6 +366,8 @@ void codec2_decode_ber(struct CODEC2 *c2, short speech[], const unsigned char *b if (c2->mode == CODEC2_MODE_700C) codec2_decode_700c(c2, speech, bits); #endif + if (c2->mode == CODEC2_MODE_WB) + codec2_decode_wb(c2, speech, bits); } diff --git a/codec2-dev/src/codec2.h b/codec2-dev/src/codec2.h index 0e720f92..98ed3202 100644 --- a/codec2-dev/src/codec2.h +++ b/codec2-dev/src/codec2.h @@ -42,6 +42,7 @@ #define CODEC2_MODE_700 6 #define CODEC2_MODE_700B 7 #define CODEC2_MODE_700C 8 +#define CODEC2_MODE_WB 9 struct CODEC2; diff --git a/codec2-dev/src/generate_wideband_map.c b/codec2-dev/src/generate_wideband_map.c new file mode 100644 index 00000000..7687ec06 --- /dev/null +++ b/codec2-dev/src/generate_wideband_map.c @@ -0,0 +1,156 @@ +/*---------------------------------------------------------------------------*\ + + FILE........: generate_wideband_map.c + AUTHOR......: Phil Ayres + DATE CREATED: 17 Jul 2017 + + Generate header file containing wideband DCT2 map, runs at compile time. + Adapted from generate_codebook.c + +\*---------------------------------------------------------------------------*/ + +/* + All rights reserved. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License version 2.1, as + published by the Free Software Foundation. This program is + distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program; if not, see . +*/ + +#include +#include +#include +#include +#include "c2wideband.h" + +static const int Nt = C2WB_NT; +static const int K = C2WB_K; + +static const char usage[] = +"Usage: %s filename array_name\n" +"\tCreate C code for wideband DCT2 map.\n"; + +static const char format[] = +"The table format must be:\n" +"\t8 rows by 30 (Nt x K) floating point numbers to fill the specified dimensions.\n"; + +static const char header[] = +"/* THIS IS A GENERATED FILE. Edit generate_wideband_map.c and its input */\n\n" +"/*\n" +" * This intermediary file and the files that used to create it are under \n" +" * The LGPL. See the file COPYING.\n" +" */\n\n" +"#include \"defines.h\"\n\n"; + + +static void +dump_array(float b[Nt][K]) +{ + + printf("static const float c2wideband_map[%d][%d] = {\n", Nt, K); + for (int row = 0; row < Nt; row++ ) { + printf("{ "); + for (int col = 0; col < K; col++ ) { + printf(" %g", b[row][col]); + if ( col < K - 1 ) + printf(", "); + else + printf(" }"); + } + if ( row < Nt - 1 ) + printf(",\n"); + else + printf("\n"); + } + printf("};\n"); +} + + + +float +get_float(FILE * in, const char * name, char * * cursor, char * buffer, + int size) +{ + for ( ; ; ) { + char * s = *cursor; + char c; + + while ( (c = *s) != '\0' && !isdigit(c) && c != '-' && c != '.' ) + s++; + + /* Comments start with "#" and continue to the end of the line. */ + if ( c != '\0' && c != '#' ) { + char * end = 0; + float f = 0; + + f = strtod(s, &end); + + if ( end != s ) + *cursor = end; + return f; + } + + if ( fgets(buffer, size, in) == NULL ) { + fprintf(stderr, "%s: Format error. %s\n", name, format); + exit(1); + } + *cursor = buffer; + } +} + +static void +load(FILE * file, const char * name, float b[Nt][K]) +{ + char line[1024]; + char * cursor = line; + + *cursor = '\0'; + + for (int row = 0; row < Nt; row++ ) { + + for (int col = 0; col < K; col++ ) { + + b[row][col] = get_float(file, name, &cursor, line, sizeof(line)); + } + } + +} + + +int main(int argc, char * * argv) +{ + float b[Nt][K]; + int i; + + if ( argc < 2 ) { + fprintf(stderr, usage, argv[0]); + fprintf(stderr, format); + exit(1); + } + + i=0; + FILE * in = fopen(argv[i + 2], "r"); + + if ( in == NULL ) { + perror(argv[i + 2]); + exit(1); + } + + load(in, argv[i + 2], b); + + fclose(in); + + printf(header); + + printf(" /* %s */\n", argv[i + 2]); + dump_array(b); + + return 0; +} diff --git a/codec2-dev/unittest/CMakeLists.txt b/codec2-dev/unittest/CMakeLists.txt index a4b06b9e..2cae7a66 100644 --- a/codec2-dev/unittest/CMakeLists.txt +++ b/codec2-dev/unittest/CMakeLists.txt @@ -95,3 +95,6 @@ target_link_libraries(tsrc samplerate) add_executable(tlininterp tlininterp.c) add_executable(tdec tdec.c) + +add_executable(tc2wideband tc2wideband.c ../src/c2wideband.c) +target_link_libraries(tc2wideband codec2) diff --git a/codec2-dev/unittest/tc2wideband.c b/codec2-dev/unittest/tc2wideband.c new file mode 100644 index 00000000..f6c2ab62 --- /dev/null +++ b/codec2-dev/unittest/tc2wideband.c @@ -0,0 +1,239 @@ +#include +#include +#include +#include +#include +#include + +#include "c2wideband.h" +#include "codec2.h" +#include "defines.h" +#include "codec2_fft.h" +#include "sine.h" +#include "nlp.h" +#include "dump.h" +#include "octave.h" +#include "newamp1.h" +#include "quantise.h" + +float mean(float data[], int n); +int unit_test(); +float std(float data[], int rows); +void diff_de(int rows, int cols, float D[rows][cols], float E[rows][cols], float diff_de[rows][cols]); +void array_col_to_row(int rows, int cols, float data[rows][cols], int col, float res[]); +void std_on_cols(int rows, int cols, float data[rows][cols], float res[]); +float mean_std_diff_de(int rows, int cols, float D[rows][cols], float E[rows][cols]); +void test_wideband_enc_dec(); +void setup_map(WIDEBAND_MAP * wb_map, int Nt, int K); + +char *fn; + +void test(char * tfn) { + fn = tfn; + printf("test function: %s\n", fn); +} + +void test_failed() { + printf("Failed to calculate %s.\n", fn); + exit(1); +} + +void test_failed_s(char * expected, char * res) { + + printf("Failed to calculate %s.\n", fn); + + printf("expected: %s\ngot: %s\n", expected, res); + exit(1); +} + +void test_failed_f(float expected, float res) { + + printf("Failed to calculate %s.\n", fn); + printf("expected: %f\ngot: %f\n", expected, res); + exit(1); +} + +int main(int argc, char *argv[]) { + + printf("Testing file c2wideband\n"); + + test("mean"); + int n = 5; + float in[] = {1.0, 2.0, 4.0, 6.0, 10.0}; + float res_f; + float expect_f; + + res_f = mean(in, n); + expect_f = 23.0 / 5; + if (res_f != expect_f) { + test_failed_f(expect_f, res_f); + } + + test("std"); + res_f = std(in, n); + expect_f = 3.2000000000000002; + if (res_f != expect_f) { + test_failed_f(expect_f, res_f); + } + + + test("diff_de"); + int rows = 5; + int cols = 3; + float D[rows][cols]; + float E[rows][cols]; + float res_diff_de[rows][cols]; + float expect_diff_de[rows][cols]; + + for (int r = 0; r < rows; r++) { + for (int c = 0; c < cols; c++) { + float d = rand(); + float e = rand(); + D[r][c] = d; + E[r][c] = e; + expect_diff_de[r][c] = d - e; + } + } + + diff_de(rows, cols, D, E, res_diff_de); + + if (memcmp(res_diff_de, expect_diff_de, rows * cols * sizeof (float)) != 0) { + test_failed(); + } + + + test("array_col_to_row"); + float data[rows][cols]; + float res_data[rows]; + float expect_data[cols][rows]; + for (int r = 0; r < rows; r++) { + for (int c = 0; c < cols; c++) { + float d = rand(); + data[r][c] = d; + expect_data[c][r] = d; + } + } + for (int c = 0; c < cols; c++) { + + array_col_to_row(rows, cols, data, c, res_data); + if (memcmp(res_data, expect_data[c], cols * sizeof (float)) != 0) { + test_failed(); + } + } + + + test("std_on_cols"); + + cols = 4; + + float data_std[5][4] = { + {1.0, 1.0, 4.0, 6.0}, + {1.0, 2.0, 5.5, 6.0}, + {1.0, 4.0, 6.0, 6.0}, + {1.0, 6.0, 3.3, 6.0}, + {1.0, 10.0, -0.2, 6.0} + }; + + float res_data_std[cols]; + float expect_data_std[] = {0.0, 3.2000000000000002, 2.1903424389807178, 0.0}; + + std_on_cols(rows, cols, data_std, res_data_std); + if (memcmp(res_data_std, expect_data_std, cols * sizeof (float)) != 0) { + test_failed(fn); + } + + test("mean_std_diff_de"); + + cols = 4; + + float data_std_d[5][4] = { + {2.0, 1.0, 5.0, 6.0}, + {1.0, 2.0, 10.5, 6.0}, + {4.0, 4.0, 12.0, 6.0}, + {1.0, 6.0, 4.6, 6.0}, + {6.5, 10.0, 0.0, 6.0} + }; + + float data_std_e[5][4] = { + {1.0, 0.0, 1.0, 0.0}, + {0.0, 0.0, 5.0, 0.0}, + {3.0, 0.0, 6.0, 0.0}, + {0.0, 0.0, 1.3, 0.0}, + {5.5, 0.0, 0.2, 0.0} + }; + + float expected_msd = (3.2000000000000002 + 2.1903424389807178) / cols; + + float res_msd; + res_msd = mean_std_diff_de(rows, cols, data_std_d, data_std_e); + if (abs(res_msd - expected_msd) > 0.00001) { + test_failed_f(res_msd, expected_msd); + } + + test_wideband_enc_dec(); + + + return 1; +} + +void test_wideband_enc_dec() { + + test("wideband_enc_dec"); + + short *buf; + unsigned char *bits; + //int nsam, nbit, i, r; + int nbit; + int nsam; + int n_block_frames = C2WB_NT * C2WB_DEC; + int test_me = 123; + int K = C2WB_K; + int Nt = C2WB_NT; + int Fs = C2WB_FS; + int dec = C2WB_DEC; + int Nblocks = n_block_frames; + int rate_K_surface_size = Nblocks * Nt * dec; + + struct CODEC2 * codec2 = codec2_create(CODEC2_MODE_WB); + + C2CONST c2const = c2const_create(Fs); + nsam = C2WB_SPERF; //codec2_samples_per_frame(codec2); + nbit = C2WB_BPERF; //codec2_bits_per_frame(codec2); + + buf = (short*) malloc(nsam * sizeof (short)); + bits = (unsigned char*) malloc(nbit * sizeof (char)); + + WIDEBAND_MAP wb_map; + setup_map(&wb_map, Nt, K); + + MODEL model_block[n_block_frames]; + MODEL model_block_[n_block_frames]; + float dct2_sd[Nblocks]; + int qn; + float rate_K_surface_block[rate_K_surface_size][K]; // rate K vecs for each frame, form a surface that makes pretty graphs + float rate_K_surface_block_[rate_K_surface_size][K]; + + + for (int n = 0; n < n_block_frames; n++) { + model_block[n].L = 10; + model_block[n].Wo = (float) rand() / RAND_MAX; + for (int i = 0; i < MAX_AMP + 1; i++) { + model_block[n].phi[i] = (float) rand() / RAND_MAX; + model_block[n].A[i] = (float) rand() / RAND_MAX; + } + model_block[n].voiced = round((float) rand() / RAND_MAX); + } + + int n = 0; + + printf("setup complete. now calling the function\n"); + + wideband_enc_dec(&c2const, n_block_frames, model_block, &wb_map, + model_block_, dct2_sd, &qn, &rate_K_surface_block[n], &rate_K_surface_block_[n]); + + codec2_destroy(codec2); + free(bits); + free(buf); + printf("made it to the end\n"); +} + -- 2.25.1