diff options
| author | drowe67 <[email protected]> | 2023-07-20 08:59:48 +0930 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-07-20 08:59:48 +0930 |
| commit | 06d4c11e699b0351765f10398abb4f663a984f36 (patch) | |
| tree | 33e22af0814c5b6c3d676f096ae8c2ac8a3ed9f0 /unittest/tfreedv_2400B_rawdata.c | |
| parent | 6588e77f38bdebd7adffe091b22e7760d95d0ccb (diff) | |
| parent | 4d6c143c0abec15e1d6ed1fd95d36f80e6cb7df8 (diff) | |
Merge pull request #3 from drowe67/dr-cleanup21.2.0
Cleanup Part 2
Diffstat (limited to 'unittest/tfreedv_2400B_rawdata.c')
| -rw-r--r-- | unittest/tfreedv_2400B_rawdata.c | 155 |
1 files changed, 78 insertions, 77 deletions
diff --git a/unittest/tfreedv_2400B_rawdata.c b/unittest/tfreedv_2400B_rawdata.c index 0af4e8e..f515bb5 100644 --- a/unittest/tfreedv_2400B_rawdata.c +++ b/unittest/tfreedv_2400B_rawdata.c @@ -27,86 +27,87 @@ */ #include <stdio.h> -#include "freedv_api.h" + #include "assert.h" +#include "freedv_api.h" -int main(int argc, char **argv) -{ - struct freedv *f; - int i; - - printf("freedv_api tests for mode 2400B\n"); - - printf("freedv_open(FREEDV_MODE_2400B) "); - f = freedv_open(FREEDV_MODE_2400B); - assert(f != NULL); - printf("Passed\n"); - - printf("freedv_get_mode() "); - int mode = freedv_get_mode(f); - assert(mode == FREEDV_MODE_2400B); - printf("Passed\n"); - - printf("freedv_get_n_max_modem_samples() "); - int max_samples = freedv_get_n_max_modem_samples(f); - assert(max_samples == 1930); - printf("%d Passed\n", max_samples); - - printf("freedv_get_n_nom_modem_samples() "); - int nom_samples = freedv_get_n_nom_modem_samples(f); - assert(nom_samples == 1920); - printf("%d Passed\n", nom_samples); - - printf("freedv_get_n_speech_samples() "); - int speech_samples = freedv_get_n_speech_samples(f); - assert(speech_samples == 320); - printf("%d Passed\n", speech_samples); - - printf("freedv_get_n_bits_per_codec_frame() "); - int codec_bits = freedv_get_bits_per_codec_frame(f); - assert(codec_bits == 52); - printf("%d Passed\n", codec_bits); - - printf("freedv_get_n_bits_per_modem_frame() "); - int frame_bits = freedv_get_bits_per_modem_frame(f); - assert(frame_bits == 52); - printf("%d Passed\n", frame_bits); - - printf("freedv_rawdatatx()/freedv_rawdatarx() "); - int frames = 0; - { - short mod[nom_samples * 10]; - /* Note: A codec frame is only 6.5 bytes! - so the seventh byte will be half empty! - */ - unsigned char payload[7] = { 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x70 }; - for (i = 0; i < 10; i ++) { - freedv_rawdatatx(f, mod + i * nom_samples, payload); - } - int nin = 0; - for (i = 0; i < nom_samples * 9; i += nin) { - nin = freedv_nin(f); - unsigned char payload_rx[7] = {0}; - int r = freedv_rawdatarx(f, payload_rx, mod + i); - if (r) { - int b; - for (b = 0; b < 7; b++) { - if (payload[b] != payload_rx[b]) { - printf("Received codec bits 0x%02x do not match expected 0x%02x\n", payload_rx[b], payload[b]); - } - } - frames++; - } - } +int main(int argc, char **argv) { + struct freedv *f; + int i; + + printf("freedv_api tests for mode 2400B\n"); + + printf("freedv_open(FREEDV_MODE_2400B) "); + f = freedv_open(FREEDV_MODE_2400B); + assert(f != NULL); + printf("Passed\n"); + + printf("freedv_get_mode() "); + int mode = freedv_get_mode(f); + assert(mode == FREEDV_MODE_2400B); + printf("Passed\n"); + + printf("freedv_get_n_max_modem_samples() "); + int max_samples = freedv_get_n_max_modem_samples(f); + assert(max_samples == 1930); + printf("%d Passed\n", max_samples); + + printf("freedv_get_n_nom_modem_samples() "); + int nom_samples = freedv_get_n_nom_modem_samples(f); + assert(nom_samples == 1920); + printf("%d Passed\n", nom_samples); + + printf("freedv_get_n_speech_samples() "); + int speech_samples = freedv_get_n_speech_samples(f); + assert(speech_samples == 320); + printf("%d Passed\n", speech_samples); + + printf("freedv_get_n_bits_per_codec_frame() "); + int codec_bits = freedv_get_bits_per_codec_frame(f); + assert(codec_bits == 52); + printf("%d Passed\n", codec_bits); + + printf("freedv_get_n_bits_per_modem_frame() "); + int frame_bits = freedv_get_bits_per_modem_frame(f); + assert(frame_bits == 52); + printf("%d Passed\n", frame_bits); + + printf("freedv_rawdatatx()/freedv_rawdatarx() "); + int frames = 0; + { + short mod[nom_samples * 10]; + /* Note: A codec frame is only 6.5 bytes! + so the seventh byte will be half empty! + */ + unsigned char payload[7] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x70}; + for (i = 0; i < 10; i++) { + freedv_rawdatatx(f, mod + i * nom_samples, payload); } - if (!frames) { - printf("Did not decode any frames successfully\n"); - goto fail; + int nin = 0; + for (i = 0; i < nom_samples * 9; i += nin) { + nin = freedv_nin(f); + unsigned char payload_rx[7] = {0}; + int r = freedv_rawdatarx(f, payload_rx, mod + i); + if (r) { + int b; + for (b = 0; b < 7; b++) { + if (payload[b] != payload_rx[b]) { + printf("Received codec bits 0x%02x do not match expected 0x%02x\n", + payload_rx[b], payload[b]); + } + } + frames++; + } } - - printf("Tests passed\n"); - return 0; + } + if (!frames) { + printf("Did not decode any frames successfully\n"); + goto fail; + } + + printf("Tests passed\n"); + return 0; fail: - printf("Test failed\n"); - return 1; + printf("Test failed\n"); + return 1; } |
