if (argc >= 4) {
Nc = atoi(argv[3]);
- if ((Nc % 2) != 0) {
- fprintf(stderr, "Error number of carriers must be a multiple of 2\n");
- exit(1);
- }
+
if ((Nc < 2) || (Nc > FDMDV_NC_MAX) ) {
fprintf(stderr, "Error number of carriers must be between 2 and %d\n", FDMDV_NC_MAX);
exit(1);
bits_per_fdmdv_frame = fdmdv_bits_per_frame(fdmdv);
bits_per_codec_frame = 2*fdmdv_bits_per_frame(fdmdv);
- assert((bits_per_codec_frame % 8) == 0); /* make sure integer number of bytes per frame */
- bytes_per_codec_frame = bits_per_codec_frame/8;
+ bytes_per_codec_frame = (bits_per_codec_frame+7)/8;
/* malloc some buffers that are dependant on Nc */
byte++;
}
}
- assert(byte == bytes_per_codec_frame);
fwrite(packed_bits, sizeof(char), bytes_per_codec_frame, fout);
sync = 0;
if (argc == 4) {
Nc = atoi(argv[3]);
- if ((Nc % 2) != 0) {
- fprintf(stderr, "Error number of carriers must be a multiple of 2\n");
- exit(1);
- }
if ((Nc < 2) || (Nc > FDMDV_NC_MAX) ) {
fprintf(stderr, "Error number of carriers must be btween 2 and %d\n", FDMDV_NC_MAX);
exit(1);
bits_per_fdmdv_frame = fdmdv_bits_per_frame(fdmdv);
bits_per_codec_frame = 2*fdmdv_bits_per_frame(fdmdv);
- assert((bits_per_codec_frame % 8) == 0); /* make sure integer number of bytes per frame */
- bytes_per_codec_frame = bits_per_codec_frame/8;
+ bytes_per_codec_frame = (bits_per_codec_frame+7)/8;
fprintf(stderr, "bits_per_fdmdv_frame: %d bits_per_codec_frame: %d bytes_per_codec_frame: %d\n",
bits_per_fdmdv_frame, bits_per_codec_frame, bytes_per_codec_frame);
byte++;
}
}
- assert(byte == bytes_per_codec_frame);
fwrite(packed_bits, sizeof(char), bytes_per_codec_frame, fout);
if (argc == 4) {
Nc = atoi(argv[3]);
- if ((Nc % 2) != 0) {
- fprintf(stderr, "Error number of carriers must be a multiple of 2\n");
- exit(1);
- }
+
if ((Nc < 2) || (Nc > FDMDV_NC_MAX) ) {
fprintf(stderr, "Error number of carriers must be btween 2 and %d\n", FDMDV_NC_MAX);
exit(1);
bits_per_fdmdv_frame = fdmdv_bits_per_frame(fdmdv);
bits_per_codec_frame = 2*fdmdv_bits_per_frame(fdmdv);
- assert((bits_per_codec_frame % 8) == 0); /* make sure integer number of bytes per frame */
- bytes_per_codec_frame = bits_per_codec_frame/8;
+ bytes_per_codec_frame = (bits_per_codec_frame+7)/8;
packed_bits = (char*)malloc(bytes_per_codec_frame);
assert(packed_bits != NULL);
byte++;
}
}
- assert(byte == bytes_per_codec_frame);
/* modulate even and odd frames */
if (argc == 3) {
Nc = atoi(argv[2]);
- if ((Nc % 2) != 0) {
- fprintf(stderr, "Error number of carriers must be a multiple of 2\n");
- exit(1);
- }
if ((Nc < 2) || (Nc > FDMDV_NC_MAX) ) {
fprintf(stderr, "Error number of carriers must be between 2 and %d\n", FDMDV_NC_MAX);
exit(1);
bits_per_fdmdv_frame = fdmdv_bits_per_frame(fdmdv);
bits_per_codec_frame = 2*fdmdv_bits_per_frame(fdmdv);
- assert((bits_per_codec_frame % 8) == 0); /* make sure integer number of bytes per frame */
- bytes_per_codec_frame = bits_per_codec_frame/8;
+ bytes_per_codec_frame = (bits_per_codec_frame+7)/8;
fprintf(stderr, "bits_per_fdmdv_frame: %d bits_per_codec_frame: %d bytes_per_codec_frame: %d\n",
bits_per_fdmdv_frame, bits_per_codec_frame, bytes_per_codec_frame);
byte++;
}
}
- assert(byte == bytes_per_codec_frame);
fdmdv_put_test_bits(fdmdv, &test_frame_sync, error_pattern, &bit_errors, &ntest_bits, rx_bits);