FreeCalypso > hg > gsm-codec-lib
view libgsmhr1/typedefs.h @ 585:3c6bf0d26ee7 default tip
TW-TS-005 reader: fix maximum line length bug
TW-TS-005 section 4.1 states:
The maximum allowed length of each line is 80 characters, not
including the OS-specific newline encoding.
The implementation of this line length limit in the TW-TS-005 hex file
reader function in the present suite was wrong, such that lines of
the full maximum length could not be read. Fix it.
Note that this bug affects comment lines too, not just actual RTP
payloads. Neither Annex A nor Annex B features an RTP payload format
that goes to the maximum of 40 bytes, but if a comment line goes to
the maximum allowed length of 80 characters not including the
terminating newline, the bug will be triggered, necessitating
the present fix.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 25 Feb 2025 07:49:28 +0000 |
parents | 02a3c88b415d |
children |
line wrap: on
line source
/******************************************************************* * * typedef statements of types used in all half-rate GSM routines * ******************************************************************/ #ifndef __TYPEDEFS #define __TYPEDEFS #include <stdint.h> #define LW_SIGN (int32_t)0x80000000 /* sign bit */ #define LW_MIN (int32_t)0x80000000 #define LW_MAX (int32_t)0x7fffffff #define SW_SIGN (int16_t)0x8000 /* sign bit for Shortword type */ #define SW_MIN (int16_t)0x8000 /* smallest Ram */ #define SW_MAX (int16_t)0x7fff /* largest Ram */ /* Definition of Types * ***********************/ typedef int32_t Longword; /* 32 bit "accumulator" (L_*) */ typedef int16_t Shortword; /* 16 bit "register" (sw*) */ typedef int16_t ShortwordRom; /* 16 bit ROM data (sr*) */ typedef int32_t LongwordRom; /* 32 bit ROM data (L_r*) */ struct NormSw { /* normalized Shortword fractional * number snr.man precedes snr.sh (the * shift count)i */ Shortword man; /* "mantissa" stored in 16 bit * location */ Shortword sh; /* the shift count, stored in 16 bit * location */ }; /* Global constants * ********************/ #define NP 10 /* order of the lpc filter */ #define N_SUB 4 /* number of subframes */ #define F_LEN 160 /* number of samples in a frame */ #define S_LEN 40 /* number of samples in a subframe */ #define A_LEN 170 /* LPC analysis length */ #define OS_FCTR 6 /* maximum LTP lag oversampling * factor */ #define OVERHANG 8 /* vad parameter */ #endif