This function is deprecated.
int sm_vidmptx_config_codec_rfc3984(struct sm_vidmptx_codec_rfc3984_parms *codecp)
typedef struct sm_vidmptx_codec_rfc3984_parms { tSMVidMPtxId vidmptx; /* in */ tSM_INT payload_type; /* in */ tSM_INT deaggregate; /* in */ } SM_VIDMPTX_CODEC_RFC3984_PARMS;
Configures an RFC 3984 packetiser, as defined in IETF RFC 3984, to the VidMP[tx] setting the payload type mapping to payload_type.
The packetiser accepts Audio Video Format (AVF) frames from the VidMP[tx] incoming datafeed as input, and composes RTP packets as output.
A newly configured packetiser will not emit any RTP packets until it receives an H.264 I-Frame in the incoming AVF stream. Waiting for an I-Frame attempts to ensure that the video, when rendered by the remote endpoint, starts cleanly and without the picture disruption which will occur were the rendering decoder to attempt to decode P-Frames (Predicted) without an I-Frame as reference.
The packetiser will emit H.264 parameter sets over RTP whenever received in the incoming AVF stream. In practice, this means it will emit parameter sets every I-frame. Although the parameter sets are unlikely to change often, transmitting them with each I-frame allows more robustness against packet loss, the ability for a remote endpoint to start decoding on any I-frame (i.e. mid-stream) and appears to be the norm amongst videophones.
-1
will remove any payload type configuration from the
packetiser preventing its use.
0 if call completed successfully, otherwise a standard error such as:
This function is part of the Prosody RTP processing API.