FreeCalypso > hg > gsm-codec-lib
comparison doc/EFR-library-API @ 545:b07dba7b8a4f
doc/EFR-library-API: document RTP input wrapper
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Thu, 03 Oct 2024 09:26:04 +0000 |
| parents | bd32bb1e8dab |
| children |
comparison
equal
deleted
inserted
replaced
| 544:bd32bb1e8dab | 545:b07dba7b8a4f |
|---|---|
| 183 with params array input, but the SID classification per the rules of GSM 06.81 | 183 with params array input, but the SID classification per the rules of GSM 06.81 |
| 184 section 6.1.1 needs to be provided by the caller. The wrapper in | 184 section 6.1.1 needs to be provided by the caller. The wrapper in |
| 185 EFR_decode_frame() calls both EFR_frame2params() and EFR_sid_classify() before | 185 EFR_decode_frame() calls both EFR_frame2params() and EFR_sid_classify() before |
| 186 passing the work to EFR_decode_params(). | 186 passing the work to EFR_decode_params(). |
| 187 | 187 |
| 188 Decoder RTP input | |
| 189 ================= | |
| 190 | |
| 191 If a network element is receiving GSM-EFR input via RTP and needs to feed this | |
| 192 input to the decoder, the RTP payload handler needs to support both the basic | |
| 193 RTP format of ETSI TS 101 318 (also RFC 3551) and the extended RTP format of | |
| 194 TW-TS-001. Depending on the format received, and depending on bit flags in the | |
| 195 TEH octet in the case of TW-TS-001, the RTP input handler will need to call | |
| 196 either EFR_decode_frame() or EFR_decode_bfi_nodata() with correct bfi and taf | |
| 197 arguments. Seeing that this complex logic should be abstracted away from | |
| 198 applications into the library, we've added the following wrapper function: | |
| 199 | |
| 200 extern int EFR_decode_rtp(struct EFR_decoder_state *st, const uint8_t *rtp_pl, | |
| 201 unsigned rtp_pl_len, int16_t *pcm); | |
| 202 | |
| 203 The semantics and return value of this function are the same as its FRv1 | |
| 204 counterpart gsmfr_fulldec_rtp_in(), documented in FR1-library-API article. | |
| 205 | |
| 188 State reset functions | 206 State reset functions |
| 189 ===================== | 207 ===================== |
| 190 | 208 |
| 191 extern void EFR_encoder_reset(struct EFR_encoder_state *st, int dtx); | 209 extern void EFR_encoder_reset(struct EFR_encoder_state *st, int dtx); |
| 192 extern void EFR_decoder_reset(struct EFR_decoder_state *st); | 210 extern void EFR_decoder_reset(struct EFR_decoder_state *st); |
