diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2017-04-25 17:20:38 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2017-04-27 08:50:01 +0000 |
commit | e98afe5808176efb60298a2f764e8e11efaf580b (patch) | |
tree | cb53aebb0bacd93ca77a21ae9152502a6ebf7692 /include/osmocom | |
parent | a67c47cab412b631c19e3f32167b9f5a0edc39ba (diff) |
osmux: Add RTP marker bit support
According to RFC4867 (RTP payload format for AMR):
"The RTP header marker bit (M) SHALL be set to 1 if the first frameblock
carried in the packet contains a speech frame which is the first in a
talkspurt. For all other packets the marker bit SHALL be set to zero (M=0)."
This information bit provides a way for the receiver to better
synchronize the delay with ther sender.
This is specially useful if AMR DTX features are supported and
enabled on the sender.
Change-Id: I0315658159429603f1d80a168718b026015060e9
Diffstat (limited to 'include/osmocom')
-rw-r--r-- | include/osmocom/netif/osmux.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/include/osmocom/netif/osmux.h b/include/osmocom/netif/osmux.h index 1d93aa0..5283059 100644 --- a/include/osmocom/netif/osmux.h +++ b/include/osmocom/netif/osmux.h @@ -13,7 +13,8 @@ /* OSmux header: * - * ft (3 bits): 0=signalling, 1=voice, 2=dummy + * rtp_m (1 bit): RTP M field (RFC3550, RFC4867) + * ft (2 bits): 0=signalling, 1=voice, 2=dummy * ctr (3 bits): Number of batched AMR payloads (starting 0) * amr_f (1 bit): AMR F field (RFC3267) * amr_q (1 bit): AMR Q field (RFC3267) @@ -29,7 +30,8 @@ struct osmux_hdr { #if OSMO_IS_BIG_ENDIAN - uint8_t ft:3, + uint8_t rtp_m:1, + ft:2, ctr:3, amr_f:1, amr_q:1; @@ -37,7 +39,8 @@ struct osmux_hdr { uint8_t amr_q:1, amr_f:1, ctr:3, - ft:3; + ft:2, + rtp_m:1; #endif uint8_t seq; #define OSMUX_CID_MAX 255 /* determined by circuit_id */ |