aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordrowe67 <[email protected]>2024-05-03 05:23:55 +0930
committerDavid Rowe <[email protected]>2024-05-03 05:23:55 +0930
commitd026cfede7053c7f38bfed6f5089b403e961a45a (patch)
tree982f3a6fecb742c8d24494b3ceff1d4ce503c44b
parentd321ccf46fa12b62a6a229749f2deb9701b8a805 (diff)
automatically compute the number of used data bits in a codeword from other waveform parameters
-rw-r--r--src/interldpc.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/interldpc.c b/src/interldpc.c
index 8cec647..b94f711 100644
--- a/src/interldpc.c
+++ b/src/interldpc.c
@@ -76,9 +76,11 @@ void ldpc_mode_specific_setup(struct OFDM *ofdm, struct LDPC *ldpc) {
set_data_bits_per_frame(ldpc, 156);
ldpc->protection_mode = LDPC_PROT_2020B;
}
- if (!strcmp(ofdm->mode, "datac4")) set_data_bits_per_frame(ldpc, 448);
- if (!strcmp(ofdm->mode, "datac13")) set_data_bits_per_frame(ldpc, 128);
- if (!strcmp(ofdm->mode, "datac14")) set_data_bits_per_frame(ldpc, 40);
+
+ /* compute the number of data bits used in the codeword */
+ int data_bits_per_frame = ofdm->bitsperpacket - ofdm->nuwbits -
+ ofdm->ntxtbits - ldpc->NumberParityBits;
+ set_data_bits_per_frame(ldpc, data_bits_per_frame);
}
/* LDPC encode frame - generate parity bits and a codeword, applying the