A.1 RFC 4867 Framing
3GPP44.318Generic Access Network (GAN)Mobile GAN interface layer 3 specificationRelease 17TS
RFC 4867 [48] defines the RTP payload format for AMR and AMR-WB codecs. There are two operation modes for the payload format referred to as: bandwidth-efficient mode and octet-aligned mode. Only octet-aligned mode is applicable to GAN.
A.1.1 (void)
A.1.1a Codec and Redundancy Mode Example
Figure A1.1a.1: Codec and Redundancy Mode example
The receiver is currently using Codec Mode 3 with no redundancy.
If the frame loss rate increases over Threshold 2, then the receiver indicates this to the sender by requesting an AMR mode for which single redundancy is used (as signaled in the Redundancy Configuration IE). This configuration is kept until frame loss rate is again lower than Threshold 2 – Hysteresis 2. The receiver indicates this by again requesting a higher AMR mode. By this redundancy mode is also implicitly requested to be no redundancy.
If instead network conditions degrade even more and frame loss rate increases over Threshold 1, the receiver indicates this to sender by requesting an AMR mode for which double redundancy is used (as signaled in the Redundancy Configuration IE). The sender then switches to double redundancy and the requested AMR mode. This configuration is kept until frame success rate is again better than Threshold 1 – Hysteresis 1. The receiver indicates this by again requesting a higher AMR mode. By this redundancy mode is also implicitly requested to be single redundancy.
A.1.2 RFC 4867 Octet-aligned Frame Examples
With RFC 4867 the RTP payload begins with a Codec Mode Request (CMR) field, followed by a number of Table of Content (ToC) entries, and speech data representing one or more speech frame-blocks. In octet-aligned mode, the CMR and ToC fields are padded to an octet. The following diagram shows the general payload format layout:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CMR |R|R|R|R|F| FT |Q|P|P|F| FT |Q|P|P| speech data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
ToC ToC
|<————->|<————->|
CMR (Codec Mode Request): is used for rate adaptation. The value of the CMR field is set to the frame type index of the corresponding speech mode being requested. The frame type index may be 0-7 for AMR, or 0-8 for AMR-WB, as defined in [48]. CMR value 15 indicates that no mode request is present, and other values are for future use.
FT (Frame Type index): indicates either the AMR or AMR-WB speech coding mode or comfort noise (SID) mode of the corresponding frame carried in this payload. E.g. in case of AMR speech, a value of FT=7 indicates that this frame carries AMR 12.2 sample(s).
Q (frame Quality indicator): if set to 0, indicates that the corresponding frame is severely damaged.
The F bit indicates whether another speech frame follows in the same payload (F=1) or if this frame is the last frame in the payload (F=0).
R and P stand for reserved and padding bits, respectively.
The following diagram shows an octet-aligned AMR payload carrying one AMR 12.2 speech frame-block:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CMR=15|R|R|R|R|0| FT=7 |Q|P|P| f1(0..7) | f1(8..15) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| f1(16..23) | …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. | f1(232..239) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|f1(243)|P|P|P|P|
+-+-+-+-+-+-+-+-+
The following diagram shows an octet-aligned AMR payload carrying two AMR 12.2 speech frame-blocks:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CMR=15|R|R|R|R|1| FT=7 |Q|P|P|0| FT=7 |Q|P|P| f1(0..7) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| f1(8..15) | f1(16..23) | …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| f1(232..239) |f1(243)|P|P|P|P| f2(0..7) | f2(8..15) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. | f1(232..239) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|f2(243)|P|P|P|P|
+-+-+-+-+-+-+-+-+
NOTE: The last octet in both speech frames is padded with four 0s to make it octet-aligned.
The following diagram shows an octet-aligned AMR payload carrying one AMR 12.2 speech frame-block (FT=7) and one AMR SID frame (FT=8; 39 bits):
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CMR=15|R|R|R|R|1| FT=7 |Q|P|P|0| FT=8 |Q|P|P| f1(0..7) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| f1(8..15) | f1(16..23) | …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| …. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| f1(232..239) |f1(243)|P|P|P|P| f2(0..7) | f2(8..15) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| f2(16..23) | f2(24..31) | f2(32..38) |P|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The following diagram shows an octet-aligned AMR payload carrying one AMR SID frame (FT=8; 39 bits) as defined in Sections 7.4.3 and 7.4.4 of the main body of this specification for Discontinuous Transmission (DTX):
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CMR=15|R|R|R|R|0| FT=8 |Q|P|P| f1(0..7) | f2(8..15) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| f2(16..23) | f2(24..31) | f2(32..38) |P|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The following diagram shows an octet-aligned AMR payload carrying one AMR NO_DATA frame (FT=15; 0 bits) as defined in Sections 7.4.3 and 7.4.4 of the main body of this specification when no speech or SID frame is available for a period of 480 ms:
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CMR=15|R|R|R|R|0| FT=15 |Q|P|P|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Note that the preceding format shown above that results when no speech or SID frame is received for 480 ms is necessary per Section 7.4.3 and Section 7.4.4. But this formatting is an intentional deviation from Section 4.3.2 of RFC 3267, which says a packet containing only NO_DATA frames should not be transmitted.