This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.
Mykola Shchetinin mykola at kingmuffin.comHello, It is about how I got a voice working between UE connected to Osmocom 3G (external call handling - Kamailio PBX) and VoIP softphone connected to the PBX. The part about is IuUP only. (Transcoding comes later) I have a traces of a call where a commercial NITB was used and I compared them to traces which I got from a call where Osmocom system was used. (Osmocom Core consisted of libosmocore of branch laforge/iu_up, osmo-mgw of branch neels/iuup and other stuff from Nightly Builds) My femtocell (nano3g ip.access) uses AMR 12.2k as a codec. The difference in IuUP <-> AMR conversion between two. When converting from IuUP to AMR: - Osmo-mgw only strips IuUP header from RTP payload; - Commercial NITB strips IuUP header and prepends AMR header to RTP payload; When converting from AMR to IuUP: - Osmo-mgw only prepends IuUP header to RTP payload; - Commercial NITB strips AMR header and prepends IuUP header to RTP payload; So that means basically that my femtocell sends AMR payload as IuUP payload without AMR header. And expects AMR payload inside IuUP message without AMR header. IuUP header is 4 bytes. AMR header for octet-aligned mode is 2 bytes. To test this I've modified the code of iuup_cn_node.c so that it does: - when converting from IuUP data (rx_data): after stripping IuUP header it prepends 0xf03c as a header (it is for AMR 12.2k). - when converting to IuUP data (osmo_iuup_cn_tx_payload): before prepending IuUP header it strips AMR header. The call performed had voice on both sides. It was performed between a regular phone connected to a femtocell and a VoIP softphone connected to Kamailio PBX. Kind regards, Mykola