The session between an MTSI client in a terminal and a client in a remote (IMS or non-IMS) network can be established in many ways, especially when the session is initiated by the remote network and when the remote network does not use the MTSI service.
The SDP will also depend on how and when the MTSI MGW chooses to add information about what formats (other than AMR and AMR-WB) that can be used for inter-working. There are, in general, two methods for MTSI MGWs to add information about the alternative formats. The first method is to add the alternative formats to the original SDP offer from the initiating client as a pre-emptive action. The second method is to leave the original SDP offer unchanged, forward it to the remote network and wait for the answerer to respond and only add the alternative formats if/when the SDP offer was rejected. A further complication is that there might be multiple MGWs in the path for this kind of inter-working and different MGWs might work differently.
The SDP examples included below should therefore be regarded as a few samples of possible SDPs and should not be regarded as a complete description of what might occur in a real implementation.
The MTSI client in terminal could send an SDP offer as shown in Table A.10.1 (narrow-band speech only) or Table A.10.2 (wide-band and narrow-band speech).
In this example, the MTSI MGW intercepts the SIP INVITE with the original SDP offer from the MTSI client in terminal and adds the codecs and formats that are supported for inter-working before forwarding the SDP offer to the remote network.
When an MTSI MGW pre-emptively adds codecs and formats for inter-working it will also remove lines that it does not support. These examples show an MTSI MGW that does not support AVPF nor SDPCapNeg and it will therefore remove the corresponding lines. The SDP offers could look like the examples included in Table A.10.3 (narrow-band speech only) and Table A.10.4 (wide-band and narrow-band speech).
The SDP offer from Table A.10.1 has been modified by adding RTP Payload Types 99 (A-law PCM), 100 (μ-law PCM) and 101 (linear 16 bit PCM with 8 kHz sampling frequency).
The lines "a=tcap:1 RTP/AVPF" and "a=pcfg:1 t=1" are removed because the MTSI MGW does not support AVPF nor SDPCapNeg in this example.
To allow for end-to-end adaptation for AMR and AMR-WB, the MTSI MGW keeps a=maxptime:240.
If the remote network supports AMR, then the received SDP answer should contain at least one RTP Payload Type for AMR but there may also be one or more RTP Payload types for non-AMR codecs. In this case, the MTSI MGW does not need to perform transcoding and may forward the SDP offer to the MTSI client in terminal unchanged.
If the SDP answer contains no AMR RTP Payload Type then the MTSI MGW needs to perform transcoding to and from the format indicated by the remote network. In this case, the MTSI MGW needs to add AMR to the SDP answer that is sent back to the MTSI client in terminal.
The SDP offer from Table A.10.2 has been modified by adding RTP Payload Types 101 (G.722), 102 (linear 16 bit PCM with 16 kHz sampling frequency), 103 (A-law PCM), 104 (μ-law PCM) and 105 (linear 16 bit PCM with 8 kHz sampling frequency).
The lines "a=tcap:1 RTP/AVPF" and "a=pcfg:1 t=1" are removed because the MTSI MGW does not support SDPCapNeg (in this example).
To allow for end-to-end adaptation for AMR and AMR-WB, the MTSI MGW keeps a=maxptime:240.
If the remote network supports AMR-WB or AMR, then the received SDP answer should contain at least one RTP Payload Type for AMR-WB or AMR but there may also be one or more RTP Payload Types for non-AMR codecs. In this case, the MTSI MGW does not need to perform transcoding and can remove the non-AMR RTP Payload Types before forwarding the SDP answer to the MTSI client in terminal.
If the SDP answer contains no AMR-WB or AMR RTP Payload Type then the MTSI MGW needs to perform transcoding to and from the format indicated by the remote network.
In this example, the MTSI MGW either forwards the original SDP offer that was received from the MTSI client in terminal to the remote network or it is not involved in the session setup at all until it is concluded that the same codecs are not supported in the different networks. In this latter case, the MTSI MGW is invoked only if the remote network rejects the SDP offer.
In this case, when the MTSI MGW sends the (new) SDP offer to the remote network it knows that the AMR (and AMR-WB) codecs are not supported by the remote network because the original SDP offer was rejected. It is therefore unnecessary to include these codecs in the (new) SDP offer. The SDP offers could look like the examples included in Table A.10.5 (narrow-band speech only) and Table A.10.6 (wide-band and narrow-band speech).
The remote client may also suggest codecs and configurations when it rejects the SDP offer. Existence of such information can, of course, be used to increase the likelihood that the session setup will be successful. These SDP examples are however designed for the case when no such information is available from the remote network.
The new SDP offer includes RTP Payload Types 99 (A-law PCM), 100 (μ-law PCM) and 101 (linear 16 bit PCM with 8 kHz sampling frequency).
In this case, the maxptime is set to 80, if the MTSI MGW does not support redundancy.
The new SDP offer includes RTP Payload Types 101 (G.722), 102 (linear 16 bit PCM with 16 kHz sampling frequency), 103 (A-law PCM), 104 (μ-law PCM) and 105 (linear 16 bit PCM with 8 kHz sampling frequency).
In this case, the maxptime is set to 80, if the MTSI MGW does not support redundancy.
The MTSI client in a terminal can add, remove and modify the media components during an ongoing MTSI session. This clause describes the SDP offer in the initial SIP INVITE message, see Table A.11.1, and the SDP in the subsequent re-INVITE or UPDATE message for adding and removing a video stream to/from the ongoing MTSI video call session, see Table A.11.2 and Table A.11.3, respectively. Corresponding SDP answers in the SIP 200/OK responses are also described.
The initial video call session contains one video component and one speech component. During the session, the MTSI client in terminal A adds a uni-directional video component (such as one video clip) to the ongoing video call session. The SDP content attribute "a=content:main" and "a=content:alt" are used to label the main and alternative video components respectively (RFC 4796).
This example does not show how to use the content attribute in combination with the grouping attribute, nor does it show how to use the content attribute in combination with the synchronization attribute defined in clause 6.2.6.
The following SDP offer and SDP answer are likely when both MTSI clients in terminals use ECN for speech.
This SDP example is based on the SDP example found in Table A.3.0 except that bandwidth information for the media has been added, zero RTCP bandwidth has been negotiated, and AVPF is not offered.
The SDP offer includes the SDP attribute 'ecn-capable-rtp' to indicate that ECN is supported. The SDP offer further includes the parameters: 'leap' to indicate that the leap-of-faith initiation method is to be used; and 'ect=0' to request that the other endpoint sets the ECN bits to ECT(0). The SDP offer does not include the "rtcp-fb" attribute for negotiating use of the RTCP AVPF ECN feedback messages (RFC 6679). This results in RTP CMR (RFC 4867) being used as the application specific feedback for ECN-triggered adaptation. The SDP offer also proposes to not use RTCP for the session.
The SDP answer is configured in the same way as in the offer to indicate that the ECN usage and its configuration is agreeable to be used in the session.
This SDP example is based on the SDP example found in Table A.3.0 except that bandwidth information for the media has been added. The negotiation of Reduced-Size RTCP is added together with the ECN negotiation. Non-zero RTCP bandwidth and AVPF have also been negotiated.
The SDP offer includes the SDP attribute 'ecn-capable-rtp' to indicate that ECN is supported. The SDP offer further includes the parameters: 'leap' to indicate that the leap-of-faith initiation method is to be used; and 'ect=0' to request that the other endpoint sets the ECN bits to ECT(0). The SDP offer does not include the "rtcp-fb" attribute for negotiating use of the RTCP AVPF ECN feedback messages (RFC 6679). This results in RTCP-APP CMR and reduced-size RTCP being used as the application specific feedback for ECN-related adaptation.
The SDP answer is configured in the same way as in the offer to indicate that the ECN usage and its configuration is agreeable to be used in the session.
The following SDP offer and SDP answer are possible when an MTSI client is inter-working with non-MTSI clients and when the MTSI client supports RTCP AVPF ECN feedback messages and RTCP XR ECN summary reports.
The SDP offer is similar to the offer in Table A.12.2. The line "a=rtcp-fb:* nack ecn" is included to indicate that the RTCP AVPF ECN feedback messages can be used by all payload types for speech. The line "a=rtcp-xr:ecn-sum" is included to indicate that the RTCP XR ECN summary reports can also be used.
Since the offering MTSI client supports the RTCP AVPF ECN feedback messages and RTCP XR ECN summary reports there is no need to insert any media gateway in the path to solve inter-working.
The following SDP offer and SDP answer are likely when both MTSI clients in terminals use ECN for video and TMMBR for rate adaptation.
This SDP example is the same as the SDP example found in Table A.4.4b and Table A.4.4c, except that the negotiation for ECN has been added.
The SDP offer includes the SDP attribute 'ecn-capable-rtp' to indicate that ECN is supported. The SDP offer further includes the parameters: 'leap' to indicate that the leap-of-faith initiation method is to be used; and 'ect=0' to request that the other endpoint sets the ECN bits to ECT(0).
The SDP offer also includes an offer for AVPF to enable sending adaptation requests without following the normal rules for RTCP transmission intervals. TMMBR is also offered to indicate that this can be used for rate adaptation.
The SDP answer is configured in the same way as in the offer to indicate that the ECN usage and its configuration is agreeable to be used in the session.
The following SDP offer and SDP answer are possible when an MTSI client is inter-working with non-MTSI clients not supporting TMMBR and when the MTSI client supports RTCP AVPF ECN feedback messages and RTCP XR ECN summary reports.
This SDP example is the same as the SDP example found in Table A.4.4b and Table A.4.4c, except that the negotiation for ECN has been added.
The SDP offer is similar to the offer in Table A.12.2.1. The line "a=rtcp-fb:* nack ecn" is included to indicate that the RTCP AVPF ECN feedback messages can be used all payload types for video. The line "a=rtcp-xr:ecn-sum" is included to indicate that the RTCP XR ECN summary reports can also be used.
The answering client does not support TMMBR and full intra requests and therefore removes these attribute lines when creating the SDP answer.
Since the offering MTSI client supports the RTCP AVPF ECN feedback messages and RTCP XR ECN summary reports there is no need to insert any media gateway in the path to provide inter-working.
This clause includes SDP examples that may be applicable to an MTSI client in terminal using fixed access. The SDP examples in Annex A.13.2 to A.13.6 show SDPs including PCM, G.729, G.722 and G.729.1. Examples of SDP offers for the AMR and AMR-WB codecs are described in Annex A.1 and the corresponding examples of SDP answers are found in Annex A.3. SDP examples for EVRC, EVRC-B and EVRC-WB are found in [97].
Examples of SDP offer and answer for video are described in Annex A.4.
An example for an SDP offer for real-time text is described in Annex A.5.
These examples also include bandwidth information which is calculated assuming IPv6 and 20 ms packetization.
Table A.13.1 shows an example for the SDP offer and answer negotiation for PCM. The SDP offer uses the static payload type numbers that are defined in RFC 3551 for PCM, i.e. payload type number 0 for μ-law PCM and payload type number 8 for A-law PCM, see also clause 18.4.3. Since static payload type numbers are used, as shown on the m= line, then there is no need for adding any a=rtpmap attribute lines. The answerer chooses to accept A-law PCM and therefore sends an SDP answer with RTP payload type number 8 on the m= line.
The SDPs further describe that the clients prefer to receive speech with 20 ms packetization (ptime is set to 20) but up to 240 ms packetization is allowed.
Table A.13.2 shows an example for how the PCM codec can be negotiated using dynamic payload type numbers. In this case, payload type number 96 is used for μ-law PCM and payload type number 97 is used for A-law PCM. The answerer chooses to accept μ-law PCM.
This example is included here to show that it is possible to use dynamic payload type numbers also for codecs for which static payload type numbers have been defined. It is however preferable to use static payload type numbers, see clause 18.4.3.
The G.722 codec uses an RTP clock rate of 8 kHz even though G.722 is a wideband speech codec that uses a sampling frequency of 16 kHz. This means that the RTP Time Stamp is sampled with 8 kHz.
The SDPs further describe that the clients prefer to receive speech with 20 ms packetization (ptime is set to 20) but up to 240 ms packetization is allowed.
Table A.13.4 shows an example where an MTSI client in terminal using fixed access has been developed to support fixed-mobile interworking without the need for transcoding in a media gateway. It therefore supports the G.722 and PCM codecs that are normally used in fixed networks. In addition, it also supports the AMR-WB and AMR codecs in the same way as an MTSI client in terminal using mobile access would do. The SDP offer includes all these codecs as well as DTMF.
The wideband codecs (AMR-WB and G.722) are listed as preferred over the narrowband codecs (AMR and PCM). This ensures that a wideband service will be set up whenever possible.
The AMR and AMR-WB codecs are listed here as preferred over the PCM and G.722 codecs, respectively, because of their lower bitrate and also because of their bitrate adaptation capabilities.
The SDP offer includes DTMF with both 8 kHz and 16 kHz RTP clock rate since there are codecs with both clock rates in the offer. An answerer is expected to accept the DTMF variant that has the same clock rate as for the accepted codec. This means that when G.722 is accepted then DTMF with 8 kHz clock rate should also be accepted, even though G.722 is a wideband speech codec. This is because G.722 uses 8 kHz clock rate, see RFC 3551.
Since the clock rate of EVS is set to 16 kHz, regardless of the bandwidth in the session, DTMF with 16 kHz RTP clock rate should be accepted when EVS is accepted.