Subject: Re: [MMUSIC] [AVTCORE] RTP Retransmission, FID and BUNDLE

From: Christer Holmberg <[email-masked]>
Date: Tue, 24 Feb 2015 17:37:55 +0000

Hi,

In your first alternative, you include multiple media types in a single m- line (m=application). The question whether we want to allow that is not BUNDLE specific (however, in the beginning of times we did discuss a single-m-line-with-multiple-media-types approach also for BUNDLE, but decided to not do that).

In your second alternative, you use two BUNDLE groups, with separate m- lines for the audio- and video FID streams. From a BUNDLE perspective I see no issues of using two separate BUNDLE groups in that way. And, eventhough the BUNDLE groups from a FID perspective are related, from a pure BUNDLE perspective the BUNDLE groups are independent from each other.

However, perhaps you in draft-ietf-avtcore-multi-media-rtp-session would need some BUNDLE restrictions. For example, if the answerer accepts the "main media" BUNDLE group (foo bar), does it also have to accept the "fid" BUNDLE group (zoo kelp)?

Personally, I like the second alternative better.

Regards,

Christer

>I realize that there is another likely configuration here, and that is

>one where one has one corresponding m= line per source media source also

>in the retransmission RTP session which would result in an example SDP

>like this:

>       v=0

>       o=alice 2890844526 2890844526 IN IP4 atlanta.example.com

>       s=

>       c=IN IP4 atlanta.example.com

>       t=0 0

>       a=group:BUNDLE foo bar

>       a=group:BUNDLE zoo kelp

>       a=group:FID foo zoo

>       a=group:FID bar kelp

>       m=audio 10000 RTP/AVP 0

>       b=AS:200

>       a=mid:foo

>       a=rtpmap:0 PCMU/8000

>       a=extmap 1 urn:ietf:params:rtp-hdrext:sdes:mid

>       m=video 10000 RTP/AVP 31

>       b=AS:1000

>       a=mid:bar

>       a=rtpmap:31 H261/90000

>       a=extmap 1 urn:ietf:params:rtp-hdrext:sdes:mid

>       m=audio 40000 RTP/AVPF 99

>       a=rtpmap:99 rtx/90000

>       a=fmtp:99 apt=0;rtx-time=3000

>       a=mid:zoo

>       a=extmap 1 urn:ietf:params:rtp-hdrext:sdes:mid

>       m=video 40000 RTP/AVPF 100

>       a=rtpmap:100 rtx/90000

>       a=fmtp:199 apt=31;rtx-time=3000

>       a=mid:kelp

>       a=extmap 1 urn:ietf:params:rtp-hdrext:sdes:mid

>So, please provide input on which way you think is the most correct and

>based on what is written in the BUNDLE and other specs

>> MMUSIC,

>> (CC AVTCORE but please reply to MMUSIC only)

>> In draft-ietf-avtcore-multi-media-rtp-session-06 we have the following

>> open issue in Section 7.1:

>>    Open Issue: When using SDP to signal retransmission for one RTP

>>    session with multiple media types and one RTP session for the

>>    retransmission data will cause a situation where one will have

>>    multiple m= lines grouped using FID and the ones belonging to

>>    respective RTP session being grouped using BUNDLE.  This usage might

>>    contradict both the FID semantics [RFC5888] and an assumption in the

>>    RTP retransmission specification [RFC4588].

>> What I understand the concern relates to the correct usage of FID to

>> avoid breaking the semantics of FID when declaring an RTP session that

>> would contain one audio, one video source bundled but a separate RTP

>> session for the retransmission of both these media sources.

>> Lets exemplify with what I believe is the only possible offer for this

>> in regards to FID usage.

>>    SDP Offer (3)

>>        v=0

>>        o=alice 2890844526 2890844526 IN IP4 atlanta.example.com

>>        s=

>>        c=IN IP4 atlanta.example.com

>>        t=0 0

>>        a=group:BUNDLE foo bar

>>        a=group:FID foo zoo

>>        a=group:FID bar zoo

>>        m=audio 10000 RTP/AVP 0

>>        b=AS:200

>>        a=mid:foo

>>        a=rtpmap:0 PCMU/8000

>>        a=extmap 1 urn:ietf:params:rtp-hdrext:sdes:mid

>>        m=video 10000 RTP/AVP 31

>>        b=AS:1000

>>        a=mid:bar

>>        a=rtpmap:31 H261/90000

>>        a=extmap 1 urn:ietf:params:rtp-hdrext:sdes:mid

>>        m=application 40000 RTP/AVPF 99 100

>>        a=rtpmap:99 rtx/90000

>>        a=fmtp:99 apt=0;rtx-time=3000

>>        a=rtpmap:100 rtx/90000

>>        a=fmtp:199 apt=31;rtx-time=3000

>>        a=mid:zoo

>> I think the important aspect here is that one MUST use one FID line per

>> m= line one groups with the retransmission session to avoid the FID MUST

>> NOT have the same address that Roni brought up back in December.

>> Have I missed any limitation or does the above example appear

>> reasonable. If it does then we can write a small informational

>> description about this into the multiple media types document.

>> Cheers

>> Magnus Westerlund