<p>Jenkins2 <strong>merged</strong> this change.</p><p><a href="https://gerrit.asterisk.org/10623">View Change</a></p><div style="white-space:pre-wrap">Approvals:
Joshua Colp: Looks good to me, but someone else must approve
George Joseph: Looks good to me, approved
Jenkins2: Approved for Submit
</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">RTP: need to reset DTMF last seqno/timestamp on voice packet with marker bit<br><br>The marker bit set on the voice packet indicates the start<br>of a new stream and a new time stamp.<br>Need to reset the DTMF last sequence number and the timestamp<br>of the last END packet.<br><br>If the new time stamp is lower then the timestamp of the last DTMF END packet<br>the asterisk drops all DTMF frames as out of order.<br><br>This bug was caught using Cisco ip-phone SPA50X and codec g722.<br>On SIP session update the SPA50X resets stream indicating it with market bit<br>and a new timestamp is twice smaller then the previous.<br><br>ASTERISK-28162 #close<br><br>Change-Id: If9c5742158fa836ad549713a9814d46a5d2b1620<br>---<br>M res/res_rtp_asterisk.c<br>1 file changed, 10 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c</span><br><span>index 7b006ce..972058e 100644</span><br><span>--- a/res/res_rtp_asterisk.c</span><br><span>+++ b/res/res_rtp_asterisk.c</span><br><span>@@ -5725,6 +5725,16 @@</span><br><span> switch (ast_format_get_type(rtp->f.subclass.format)) {</span><br><span> case AST_MEDIA_TYPE_AUDIO:</span><br><span> rtp->f.frametype = AST_FRAME_VOICE;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ /* The marker bit set on the voice packet indicates the start</span><br><span style="color: hsl(120, 100%, 40%);">+ * of a new stream and a new time stamp. Need to reset the DTMF</span><br><span style="color: hsl(120, 100%, 40%);">+ * last sequence number and the timestamp of the last END packet.</span><br><span style="color: hsl(120, 100%, 40%);">+ */</span><br><span style="color: hsl(120, 100%, 40%);">+ if (mark) {</span><br><span style="color: hsl(120, 100%, 40%);">+ rtp->last_seqno = 0;</span><br><span style="color: hsl(120, 100%, 40%);">+ rtp->last_end_timestamp = 0;</span><br><span style="color: hsl(120, 100%, 40%);">+ }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> break;</span><br><span> case AST_MEDIA_TYPE_VIDEO:</span><br><span> rtp->f.frametype = AST_FRAME_VIDEO;</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.asterisk.org/10623">change 10623</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.asterisk.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.asterisk.org/10623"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: asterisk </div>
<div style="display:none"> Gerrit-Branch: 13 </div>
<div style="display:none"> Gerrit-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: If9c5742158fa836ad549713a9814d46a5d2b1620 </div>
<div style="display:none"> Gerrit-Change-Number: 10623 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Alexei Gradinari <alex2grad@gmail.com> </div>
<div style="display:none"> Gerrit-Reviewer: Alexei Gradinari <alex2grad@gmail.com> </div>
<div style="display:none"> Gerrit-Reviewer: George Joseph <gjoseph@digium.com> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins2 (1000185) </div>
<div style="display:none"> Gerrit-Reviewer: Joshua Colp <jcolp@digium.com> </div>
<div style="display:none"> Gerrit-Reviewer: Kevin Harwell <kharwell@digium.com> </div>