diff --git a/decode.cc b/decode.cc index 33b9003..26272fc 100644 --- a/decode.cc +++ b/decode.cc @@ -159,7 +159,7 @@ struct Decoder typedef DSP::Const Const; static const int symbol_len = (1280 * rate) / 8000; static const int filter_len = (((21 * rate) / 8000) & ~3) | 1; - static const int guard_len = symbol_len / 8; + static const int guard_len = symbol_len / 4; static const int ldpc_bits = 64800; static const int bch_bits = ldpc_bits - 21600; static const int data_bits = bch_bits - 10 * 16; @@ -529,9 +529,15 @@ int main(int argc, char **argv) case 8000: delete new Decoder(output_data, &input_file, skip_count); break; + case 11025: + delete new Decoder(output_data, &input_file, skip_count); + break; case 16000: delete new Decoder(output_data, &input_file, skip_count); break; + case 22050: + delete new Decoder(output_data, &input_file, skip_count); + break; case 44100: delete new Decoder(output_data, &input_file, skip_count); break; diff --git a/encode.cc b/encode.cc index 439befc..3503d8d 100644 --- a/encode.cc +++ b/encode.cc @@ -27,7 +27,7 @@ template struct Encoder { static const int symbol_len = (1280 * rate) / 8000; - static const int guard_len = symbol_len / 8; + static const int guard_len = symbol_len / 4; static const int ldpc_bits = 64800; static const int bch_bits = ldpc_bits - 21600; static const int data_bits = bch_bits - 10 * 16; @@ -351,9 +351,15 @@ int main(int argc, char **argv) case 8000: delete new Encoder(&output_file, input_data, freq_off, call_sign, oper_mode); break; + case 11025: + delete new Encoder(&output_file, input_data, freq_off, call_sign, oper_mode); + break; case 16000: delete new Encoder(&output_file, input_data, freq_off, call_sign, oper_mode); break; + case 22050: + delete new Encoder(&output_file, input_data, freq_off, call_sign, oper_mode); + break; case 44100: delete new Encoder(&output_file, input_data, freq_off, call_sign, oper_mode); break;