Re: RTCRtpRtxParameters lacks "apt"

The codecPayloadType is not specified in the RtpRtxParameters.  The
RtpRtxParameters are per-encoding, while the payload types are not.
Payload types are specified in RtpParameters.  Only the codec name is
referenced in the RtpEncodingParameters.   The RTX payload type should
be specified in the RtpCodecParameters, not in the RtpRtxParameters.

The spec currently says for RtpCodecParameters: "The codecs to send or
receive (could include RTX and CN as well)."  So, if you want an RTX
payload type, put it in there.  While it's not explicitly called out,
I assume the "formats" dictionary could have an APT=OTHER_PAYLOAD_TYPE
key/value pair.

On Wed, Oct 15, 2014 at 4:47 AM, Iñaki Baz Castillo <ibc@aliax.net> wrote:
> Please, let me refactor my text as it was wrong. Instead of audio and
> video with same SSRC (which is 100% wrong) let me talk about a single
> stream (let's say video) with two codecs:
>
>
>
> So the peer may announce this:
>
> - video h264
>   - ssrc = 111111
>   - codecPayloadType = 111
>   - rtx.ssrc = 111112
>
> - video vp8
>   - ssrc = 111111
>   - codecPayloadType = 222
>   - rtx.ssrc = 111112
>
> Now we receive a RTP packet with SSRC=111112. We don't know whether it
> is a rtx for h264 or vp8. And we MUST NOT check its payload-type since
> it is supposed to mean:
>
>        <number>: indicates the dynamic payload type number assigned
>         to the retransmission payload format in an rtpmap attribute.
>
> This is, the payload in the rtx packet will never be 111 or 222.
>
>
> So finally the info we need to accomplish this RTX stuff would be
> something like:
>
> - video h264
>   - ssrc = 111111
>   - codecPayloadType = 111
>   - rtx.ssrc = 111112
>   - rtx.codecPayloadType = 991
>
> - video vp8
>   - ssrc = 111111
>   - codecPayloadType = 222
>   - rtx.ssrc = 111112
>   - rtx.codecPayloadType = 992
>
>
> Now if a RTP packet with SSRC=111112 and payload-type=992 we know that
> it is a retransmission of a vp8 packet.
>
>
> At the end, we need to extend the RTCRtpRtxParameters dictionary:
>
> ------------------------
> dictionary RTCRtpRtxParameters {
>     unsigned long    ssrc;
>     payloadtype       codecPayloadType;
> };
> ------------------------
>
>
>
> --
> Iñaki Baz Castillo
> <ibc@aliax.net>
>

Received on Wednesday, 15 October 2014 21:36:14 UTC