Bug #1802
closedAMR DTX Downlink: We are not sending ONSET ?!?
100%
Description
When we first receive valid (non-SID) RTP AMR frames again in downlink, we need to start the proper ONSET procedure, both for AMR/HR and AMR/FR. The L1 API of osmo-bts-sysmo and osmo-bts-litecell15 provides GsmL1_TchPlType_Amr_Onset for that.
Related issues
Updated by laforge over 7 years ago
- Related to Bug #1803: osmo-bts-litecell15: AMR FR: some RTP buffers are never released added
Updated by msuraev over 7 years ago
- Status changed from New to Stalled
Fix is waiting for review in gerrit #691.
Updated by msuraev over 7 years ago
- Status changed from Stalled to In Progress
- % Done changed from 0 to 10
Note to self: FACCH should also trigger onset event followed by actual data.
Updated by msuraev over 7 years ago
Gerrit #691 has been merged to master but in dsp trace there are still missing onset frames - most likely due to some issue with libosmoabis which leads to marker bit not being propagated to callback function. Investigation is in progress.
Updated by msuraev over 7 years ago
- % Done changed from 10 to 80
Should be fixed by gerrit # 1030, 1031. Waiting for test confirmation.
Updated by msuraev over 7 years ago
- Related to Bug #1801: AMR DTX: downlink logic flawed added
Updated by msuraev over 7 years ago
The reason ONSET is not sent on talkspurt is broken metadata (markbit) from ortp:
The macros like rtp_get_markbit() are defined as follows:
#define rtp_get_markbit(mp)»····(((rtp_header_t*)((mp)->b_rptr))->markbit)
so they use mp->b_rptr as a pointer to the header of the RTP packet.
However, the current code, you first use something like
rtp_get_payload(mp, &mp->b_rptr);
Which usee b_rptr as an output value and actually advances it to the
start of the packet payload.
I strongly suggest that you use something like
uint8_t *payload;
int payload_size;
payload_size = rtp_get_payload(mp, &payload);
which will keep b_rptr pointing to the header and thus make the
above-mentioend macros still work.
Updated by msuraev over 7 years ago
- Status changed from In Progress to Resolved
- Assignee changed from msuraev to laforge
- % Done changed from 80 to 100
With latest fix to libosmo-abis we're no getting marker bit and hence sending onset.