Subject: [AVT] Comments on draft-ietf-avt-rtp-interleave-00.txt

From: Magnus Westerlund <[email-masked]>
Date: Tue, 09 Jul 2002 13:22:17 +0200

Hi,

I have some comments on the interleave draft.

First I would like to discuss the method of doing interleaving. I find 
the idea of using one stride length and then put less than CL/SL frames 
in each packet interesting. It has the advantage that some packet losses 
will have a bigger distance between the some of the lost frames than the 
normal stride length. Note that one can't have more than CL/SL frames in 
each packet or loss the interleaving of at least stride length. The 
scheme requires only three parameters, stride length, cycle length and 
interleaving index at the receiver side, to be able to reconstruct the 
sequence within the cycle. However the proposal with the timestamp seem 
to create some problems with establishing where on the timeline the 
sequence exist. In the case that the first frame in the cycle which has 
the first frames TS is lost one is required to know how many packets 
will be sent in the cycle to be able to reconstruct the timestamps. This 
information is not given to the receiver.

The timestamp problem could be solved by mandating that all packets has 
the same number of frames per packet. This would allow one to 
reconstruct the number of packets per cycle by taking (cycle length) /( 
nr of frames per packet). However this will have a very restricting 
factor on which combinations of cycle length, stride length and frames 
per packet that can be used. This would make it more difficult to have 
any type of adaptation on how the interleaving is done. If all number of 
frames per packet between 2 and CL/SL can be used the sender has some 
possibility during runtime to adapt to network conditions. However due 
to the need to signal CL and SL in SDP multiple payload types would need 
be defined to be able to switch any of these parameters during 
transmission time.

Also there is little written about how the use of CN should be solved. 
If the CN frames are not self identifying for the decoder they must be 
of the same payload type and size as normal audio frames. There is also 
a requirement on having blank frames to cover suppressed frames. If 
these conditions can't be meet I don't see any other solution than to 
prematurely finish the interleaving cycle. I don't see how this can be 
done without the possibilities to dynamically set the cycle length to 
any number of frames.

Specific comments
-----------------
Section 1. First paragraph:
"The standards RTP audio profiles [2] .."
Profiles are in plurals why only a single profile is referenced.

Section 3.
I would really appreciate a initial definition of some crucial terms 
like stride length and cycle length.

The II[n] formula I believe is lacking a pair of parenthesis, shouldn't 
it be like this:
II[n] = (n * SL) mod CL + (n * SL) / CL

Section 4. Second paragraph:
"When multiple frames follow the interleaving header, the offset between 
each
successive frame is the cycle length CL."
The offset between each successive frame is not the CL, it can actually 
be variable. For a maximum number of frames per packet of CL/SL it will 
be at least SL.

Next paragraph:
The definition of which frame lengths are rather loosely defined. To 
have this work it MUST be known which frame sizes that are used. One 
could try to create signaling in SDP that specifies for codec that lacks 
given lengths that this is the number of samples that must be used.

-- 

Magnus Westerlund 

Multimedia Technologies, Ericsson Research ERA/TVA/A
----------------------------------------------------------------------
Ericsson AB                | Phone +46 8 4048287
Torshamsgatan 23           | Fax   +46 8 7575550
S-164 80 Stockholm, Sweden | mailto: [email-masked]

_______________________________________________
Audio/Video Transport Working Group
[email-masked]
https://www1.ietf.org/mailman/listinfo/avt