Subject: [payload] draft-ietf-payload-rtp-opus-00 and specifying preference to receive stereo

From: Roman Shpount <[email-masked]>
Date: Fri, 1 Mar 2013 16:15:51 -0500

I am sure someone have already asked this, but why do we need "stereo"
optional parameter and always specify number of channels 2 in RTP map? Can
this be replaced by simply saying that receiver specifies its preference to
receive stereo by specifying 2 channels in RTP map and its preference to
receive mono audio by specifying 1 channel in RTP map? We should still
specify that every receiver MUST be able to receive and decode stereo
signals.
_____________
Roman Shpount

---

From: Jean-Marc Valin <[email-masked]>
Date: Fri, 01 Mar 2013 16:56:13 -0500

On 03/01/2013 04:15 PM, Roman Shpount wrote:
> I am sure someone have already asked this, but why do we need
> "stereo" optional parameter and always specify number of channels 2
> in RTP map? Can this be replaced by simply saying that receiver
> specifies its preference to receive stereo by specifying 2 channels
> in RTP map and its preference to receive mono audio by specifying 1
> channel in RTP map? We should still specify that every receiver
> MUST be able to receive and decode stereo signals.

One of the reasons is preventing interop an failure case where one
client would have opus/48000/1 while the other has opus/48000/2. It
also makes it easier to negotiate the case where stereo is used in one
direction, while mono is used in the other direction. The idea is that
stereo=0 really means "stereo isn't useful for me" rather than "this
stream cannot have stereo in it". There are applications where one
might want to send stereo to a client that specified mono, for
example, in conferencing applications where we want to send the same
audio to all participants, or even for "high-quality music on hold"
when we only want a single version of our music. In general, any opus
stream may contain 48 kHz stereo in it, and that's why it's advertised
as such.

	Jean-Marc