FreeCalypso > hg > themwi-system-sw
comparison mgw/pstn2gsm.c @ 97:9aed16c30622
mgw p2g: set M bit when restarting forwarding after no-forward
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 25 Sep 2022 20:05:02 -0800 |
parents | f24bbfd23c9d |
children | 1579ec0e9fb9 |
comparison
equal
deleted
inserted
replaced
96:f24bbfd23c9d | 97:9aed16c30622 |
---|---|
107 ep->p2g_state = 1; | 107 ep->p2g_state = 1; |
108 ep->p2g_ssrc = pkt.ssrc; | 108 ep->p2g_ssrc = pkt.ssrc; |
109 ep->p2g_last_ts = ntohl(pkt.tstamp); | 109 ep->p2g_last_ts = ntohl(pkt.tstamp); |
110 ep->p2g_last_seq = ntohs(pkt.seq); | 110 ep->p2g_last_seq = ntohs(pkt.seq); |
111 /* actual transcoding and forwarding */ | 111 /* actual transcoding and forwarding */ |
112 if (!(ep->fwd_mode & TMGW_FWD_ENABLE_PSTN2GSM)) | 112 if (!(ep->fwd_mode & TMGW_FWD_ENABLE_PSTN2GSM)) { |
113 ep->p2g_drop_flag = 1; | |
113 return; | 114 return; |
115 } | |
116 if (ep->p2g_drop_flag) { | |
117 ep->p2g_drop_flag = 0; | |
118 m_out = 1; | |
119 } | |
114 for (n = 0; n < SAMPLES_PER_FRAME; n++) | 120 for (n = 0; n < SAMPLES_PER_FRAME; n++) |
115 pcm_samples[n] = pcm_dec_table[pkt.payload[n]]; | 121 pcm_samples[n] = pcm_dec_table[pkt.payload[n]]; |
116 pkt.m_pt = ep->gsm_payload_type; | 122 pkt.m_pt = ep->gsm_payload_type; |
117 if (m_out) | 123 if (m_out) |
118 pkt.m_pt |= 0x80; | 124 pkt.m_pt |= 0x80; |