Change the SDP_SAMPLE_RATE macro. It turns out that even though G.722 is 16 kHz,

it is supposed to specified as 8 kHz in the RTP, and RTP timestamps are supposed
to be calculated based on 8 kHz.  (Apparently this is due to a bug in a spec, but
people follow it anyway, because it's the spec ...)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@101989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2008-02-01 23:06:32 +00:00
parent 5f7afc8678
commit 26365fdeca

View File

@@ -6346,7 +6346,12 @@ static void add_noncodec_to_sdp(const struct sip_pvt *p, int format, int sample_
ast_build_string(a_buf, a_size, "a=fmtp:%d 0-16\r\n", rtp_code);
}
#define SDP_SAMPLE_RATE(x) (x == AST_FORMAT_G722) ? 16000 : 8000
/*!
* \note G.722 actually is supposed to specified as 8 kHz, even though it is
* really 16 kHz. Update this macro for other formats as they are added in
* the future.
*/
#define SDP_SAMPLE_RATE(x) 8000
/*! \brief Add Session Description Protocol message */
static enum sip_result add_sdp(struct sip_request *resp, struct sip_pvt *p)