Skip to content
Snippets Groups Projects
Commit a05f5052 authored by Timothy B. Terriberry's avatar Timothy B. Terriberry Committed by Martin Storsjö
Browse files

sdp: Make opus declaration conform to the spec

parent 55174668
No related branches found
No related tags found
No related merge requests found
...@@ -583,8 +583,18 @@ static char *sdp_write_media_attributes(char *buff, int size, AVCodecContext *c, ...@@ -583,8 +583,18 @@ static char *sdp_write_media_attributes(char *buff, int size, AVCodecContext *c,
payload_type, c->sample_rate); payload_type, c->sample_rate);
break; break;
case AV_CODEC_ID_OPUS: 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); payload_type);
if (c->channels == 2) {
av_strlcatf(buff, size, "a=fmtp:%d sprop-stereo:1\r\n",
payload_type);
}
break; break;
default: default:
/* Nothing special to do here... */ /* Nothing special to do here... */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment