FreeCalypso > hg > themwi-system-sw
comparison doc/RTP-BFI-extension @ 177:a851bde42d82
doc/RTP-BFI-extension: update for the current situation
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 17 Feb 2023 19:05:05 -0800 |
parents | 36cce9b0bbe2 |
children | 185225722714 |
comparison
equal
deleted
inserted
replaced
176:f5c4f9a764be | 177:a851bde42d82 |
---|---|
56 as a rigid timing governor) a valid reason exists why this "SHOULD NOT" behavior | 56 as a rigid timing governor) a valid reason exists why this "SHOULD NOT" behavior |
57 is not only acceptable, but becomes necessary. Thus in the case of AMR, we are | 57 is not only acceptable, but becomes necessary. Thus in the case of AMR, we are |
58 good - there is no need to invent our own totally non-standard extensions to | 58 good - there is no need to invent our own totally non-standard extensions to |
59 RTP payload format, it just needs to be a configurable option in the IP-based | 59 RTP payload format, it just needs to be a configurable option in the IP-based |
60 BTS or in OsmoMGW converting from an E1-based BTS to RTP. | 60 BTS or in OsmoMGW converting from an E1-based BTS to RTP. |
61 | |
62 The same situation holds for the rarely-used HR1 codec: RFC 5993 extends GSM-HR | |
63 RTP representation with a ToC byte modeled after the one defined for AMR in RFC | |
64 4867. Just like in AMR, GSM-HR ToC byte allows the possibility of a No_Data | |
65 frame (FT=7 for GSM-HR), with exactly the same semantics - and exactly the same | |
66 argument as above applies for sending such No_Data frames against the general | |
67 SHOULD NOT. | |
61 | 68 |
62 But what about the older FR and EFR codecs? In the case of existing standard | 69 But what about the older FR and EFR codecs? In the case of existing standard |
63 RTP payload formats for FR and EFR, there is no defined way to represent a BFI | 70 RTP payload formats for FR and EFR, there is no defined way to represent a BFI |
64 condition as distinct from any possible good traffic frame, and there lies our | 71 condition as distinct from any possible good traffic frame, and there lies our |
65 challenge. | 72 challenge. |
140 | 147 |
141 Aside from the just-described incompatibility with osmo-bts-trx version, our | 148 Aside from the just-described incompatibility with osmo-bts-trx version, our |
142 current patch has the following outstanding issues which will need to be fixed | 149 current patch has the following outstanding issues which will need to be fixed |
143 before it can be proposed for merging: | 150 before it can be proposed for merging: |
144 | 151 |
145 * Setting of TAF based on the frame number remains to be implemented - right | 152 * The code will need to be extended to support AMR, and possibly HR1 too - our |
146 now we always send TAF=0. | 153 current patch always emits our FR/EFR BFI, implicitly assuming that the speech |
147 | 154 codec is either FR or EFR, as that is how we currently run our network. |
148 * The code will need to be extended to support AMR, and to skip out gracefully | |
149 in the case of totally unsupported codecs like HR1 - our current patch always | |
150 emits our FR/EFR BFI, implicitly assuming that the speech codec is either FR | |
151 or EFR, as that is how we currently run our network. | |
152 | 155 |
153 * A configuration option will need to be implemented, to be controlled from | 156 * A configuration option will need to be implemented, to be controlled from |
154 OsmoBSC, enabling or disabling the non-standard behavior of sending explicit | 157 OsmoBSC or from the BTS' own vty, enabling or disabling the non-standard |
155 BFI packets instead of gaps in the RTP stream. It would probably be best | 158 behavior of sending explicit BFI packets instead of gaps in the RTP stream. |
156 implemented as a tristate option, with the choices being no BFI packets at | 159 It would probably be best implemented as a tristate option, with the choices |
157 all (default), sending BFI packets only for AMR (where a standard encoding | 160 being no BFI packets at all (default), sending BFI packets only for AMR |
158 exists) or sending BFI packets for AMR and also for FR & EFR, using | 161 (where a standard encoding exists) or sending BFI packets for AMR and also |
159 Themyscira encoding for the latter. | 162 for FR & EFR, using Themyscira encoding for the latter. |