Re: RTX support (RFC 4588)

You can use ssrc-multiplexing by setting the SSRC of the RtxParameters in
RtpEncodingParameters.  RtcpParameters is not the right place for this.

Session-multiplexing is not supported by ORTC.



On Mon, Oct 20, 2014 at 2:58 AM, Sergio Garcia Murillo <
sergio.garcia.murillo@gmail.com> wrote:

>  Hi all,
>
> I am currently implementing the RTX RFC on my MCU, so I am a bit obsessed
> with this topic.. :)
>
> I have been looking how ORTC implements it, and not really sure if current
> API would allow to implement it.
>
> According to rfc588, it is possible to do to kind of
>
>    Session-multiplexing: scheme by which the original stream and the
>    associated retransmission stream are sent into two different RTP
>    sessions.
>
>    SSRC-multiplexing: scheme by which the original stream and the
>    retransmission stream are sent in the same RTP session with different
>    SSRC values.
>
>
>
> I am not yet an expert on ORTC apis, so please correct me if I am wrong,
> but it seems that the only way to set/retrieve the ssrc of the stream is
> via the RTCRtpParameters. So I think that in order to support
> SSRC-multiplixing, it would be needed to change:
>
> dictionary RTCRtpParameters {    DOMString                                 muxId <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-muxId> = "";    sequence<RTCRtpCodecParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtpCodecParameters>>           codecs <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-codecs>;    sequence<RTCRtpHeaderExtensionParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtpHeaderExtensionParameters>> headerExtensions <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-headerExtensions>;    sequence<RTCRtpEncodingParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtpEncodingParameters>>        encodings <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-encodings>;    RTCRtcpParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtcpParameters>                         rtcp <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-rtcp>;
> };
>
> by
>
> dictionary RTCRtpParameters {    DOMString                                 muxId <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-muxId> = "";    sequence<RTCRtpCodecParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtpCodecParameters>>           codecs <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-codecs>;    sequence<RTCRtpHeaderExtensionParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtpHeaderExtensionParameters>> headerExtensions <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-headerExtensions>;    sequence<RTCRtpEncodingParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtpEncodingParameters>>        encodings <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-encodings>;     <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtcpParameters>*sequence<RTCRtcpParameters <http://ortc.org/wp-content/uploads/2014/10/ortc.html#idl-def-RTCRtcpParameters>>               rtcps <http://ortc.org/wp-content/uploads/2014/10/ortc.html#widl-RTCRtpParameters-rtcp>;*
> };
>
>
> Regarding how to implement the Session-Multiplexing (if needed to), I
> think it would be more complex, as it would require to add some kind of
> RTCRtpSenderGroup and RTCRtpReceiverGroup objects that would make it
> possible to group several sender/receivers together.
>
> Best regards
> Sergio
>
>

Received on Monday, 20 October 2014 17:22:38 UTC