int sm_vmptx_config_codec_tetra(struct sm_vmptx_codec_tetra_parms *codecp)
typedef struct sm_vmptx_codec_tetra_parms { tSMVMPtxId vmptx; /* in */ tSM_INT payload_type; /* in */ } SM_VMPTX_CODEC_TETRA_PARMS;
There is not currently a standard packet encoding for wrapping TETRA-encoded speech into RTP. This implementation creates RTP frames that have standard RTP header followed by: ETSI two octet Payload header (with bits for framing rate, frame number, information element control, traffic type, contents control and payload) - the payload header follows the format described in ETSI TS 100 392-3-8 V0.0.8 section 5.2.1 TETRA ISI payload encoding. Two 18 octet tetra frames - each frame consisting of BFI bit followed by 137 bits of tetra encoded data (holding 30ms of encoded audio data according to traffic type 0 followed by 6 padding bits) - thus this pair of frames conveys 60ms of audio.
The tetra encoded data in the 18 octet tetra frames is always traffic type 0 - ACELP (ETS 300 395-2, 4.2.2.7) following MSB-LSB bit order.
This requires the module tetra to have been downloaded.
-1
will remove any payload type configuration from the
codec preventing its use.
0 if call completed successfully, otherwise a standard error such as:
This function is part of the Prosody RTP processing API.