- From: Peter Thatcher <pthatcher@google.com>
- Date: Wed, 15 Oct 2014 14:35:03 -0700
- To: Iñaki Baz Castillo <ibc@aliax.net>
- Cc: "public-ortc@w3.org" <public-ortc@w3.org>
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