Merge commit 'a05f5052fef3b3743fab7846da12861d8a8098ec'

* commit 'a05f5052fef3b3743fab7846da12861d8a8098ec':
  sdp: Make opus declaration conform to the spec

Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2014-09-29 20:26:12 +02:00
commit 77ab7407c2
1 changed files with 11 additions and 1 deletions

View File

@ -597,8 +597,18 @@ static char *sdp_write_media_attributes(char *buff, int size, AVCodecContext *c,
}
break;
case AV_CODEC_ID_OPUS:
av_strlcatf(buff, size, "a=rtpmap:%d opus/48000\r\n",
/* The opus RTP draft says that all opus streams MUST be declared
as stereo, to avoid negotiation failures. The actual number of
channels can change on a packet-by-packet basis. The number of
channels a receiver prefers to receive or a sender plans to send
can be declared via fmtp parameters (both default to mono), but
receivers MUST be able to receive and process stereo packets. */
av_strlcatf(buff, size, "a=rtpmap:%d opus/48000/2\r\n",
payload_type);
if (c->channels == 2) {
av_strlcatf(buff, size, "a=fmtp:%d sprop-stereo:1\r\n",
payload_type);
}
break;
default:
/* Nothing special to do here... */