Return-Path: <victor.demjanenko@vocal.com>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id 25FED3A0BAC;
 Wed,  8 Apr 2020 08:48:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 3.102
X-Spam-Level: ***
X-Spam-Status: No, score=3.102 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, GB_SUMOF=5, HTML_MESSAGE=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001]
 autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id qDOUk5e6Hg6u; Wed,  8 Apr 2020 08:48:32 -0700 (PDT)
Received: from host105.olm1.com (host105.olm1.com [72.236.255.15])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id 3D2263A0BA1;
 Wed,  8 Apr 2020 08:48:29 -0700 (PDT)
Received: from HERTELLT (cpe-98-5-223-142.buffalo.res.rr.com [98.5.223.142])
 by host105.olm1.com (Postfix) with ESMTPSA id 9DB22B93C3E;
 Wed,  8 Apr 2020 11:48:27 -0400 (EDT)
From: <victor.demjanenko@vocal.com>
To: "'Benjamin Kaduk'" <kaduk@mit.edu>,
 "'Barry Leiba'" <barryleiba@computer.org>
Cc: "'Roni Even \(A\)'" <roni.even@huawei.com>, "'The IESG'" <iesg@ietf.org>, 
 "'Catherine Meadows'" <catherine.meadows@nrl.navy.mil>,
 "'IETF SecDir'" <secdir@ietf.org>, <draft-ietf-payload-tsvcis@ietf.org>,
 "'Ali Begen'" <ali.begen@networked.media>, <avtcore-chairs@ietf.org>,
 <avt@ietf.org>, "'Dave Satterlee \(Vocal\)'" <Dave.Satterlee@vocal.com>,
 "'IETF discussion list'" <ietf@ietf.org>,
 <draft-ietf-payload-tsvcis.all@ietf.org>, <victor.demjanenko@vocal.com>
References: <001601d57af9$405efcf0$c11cf6d0$@vocal.com>
 <6E58094ECC8D8344914996DAD28F1CCD23D79BC0@DGGEMM506-MBX.china.huawei.com>
 <034a01d58a73$f4d3a1c0$de7ae540$@vocal.com>
 <037e01d58a92$72287510$56795f30$@vocal.com>
 <CALaySJLSkZnC_jsQtk+Ybq03RWYJeujdeft+zGsv9uZ5wjcwCg@mail.gmail.com>
 <20191101001153.GQ88302@kduck.mit.edu>
 <06e101d59f15$ee937b30$cbba7190$@vocal.com> <20191125064606.GL32847@mit.edu>
 <CALaySJJNovsSWuCB_R3Dc7ci7did2Zu20haU5o7b6pSpRYP5nw@mail.gmail.com>
 <00c601d5e339$965ebd90$c31c38b0$@vocal.com>
 <20200214194321.GF43385@kduck.mit.edu>
In-Reply-To: <20200214194321.GF43385@kduck.mit.edu>
Date: Wed, 8 Apr 2020 11:48:26 -0400
Message-ID: <002b01d60dbd$25675f80$70361e80$@vocal.com>
MIME-Version: 1.0
Content-Type: multipart/mixed;
 boundary="----=_NextPart_000_002C_01D60D9B.9E56D0F0"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQLglFUw/9Hrg4xFnJGl+gKOw+IttgKP/a5DAUK4sQ4C/qBe9QJw6xekAqUwBBcB6AFNSwEOtkf1AdJM/WIBsvGQ0QGhq9LkpYGDUMA=
Content-Language: en-us
Archived-At: <https://mailarchive.ietf.org/arch/msg/avt/-nAuNBE_AGEMPYquNfgqVixp-mA>
X-Mailman-Approved-At: Thu, 16 Apr 2020 22:29:36 -0700
Subject: Re: [AVTCORE] Benjamin Kaduk's Discuss on
 draft-ietf-payload-tsvcis-03: (with DISCUSS and COMMENT)
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Audio/Video Transport Core Maintenance <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/avt>,
 <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/avt/>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avt>,
 <mailto:avt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 08 Apr 2020 15:48:41 -0000

This is a multipart message in MIME format.

------=_NextPart_000_002C_01D60D9B.9E56D0F0
Content-Type: multipart/alternative;
 boundary="----=_NextPart_001_002D_01D60D9B.9E56D0F0"


------=_NextPart_001_002D_01D60D9B.9E56D0F0
Content-Type: text/plain;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi Ben,

With this social distancing situation, I'm finally catching up on open =
items myself.  I have made the changes as we have discussed and =
incorporated your suggestions.  I believe the changes are fully =
contained in the two paragraphs below:

Section 2 (last paragraph) - Clarification for octet count

(was)
In order to accommodate a varying amount of TSVCIS augmented speech
data, it is only necessary to specify the number of octets
containing the packed TSVCIS parameters.  The encoding to do so is
presented in Section 3.2.  TSVCIS specifically uses the NRL VDR in two
configurations using 15 and 35 packed octet parameters [TSVCIS]. =20

(now)
In order to accommodate a varying amount of TSVCIS augmented speech
data, an octet count specifies the number of octets representing
the packed TSVCIS parameters.  The encoding to do so is presented in
Section 3.2.  TSVCIS specifically uses the NRL VDR in two
configurations using a fixed set of 15 and 35 packed octet
parameters in a standardized order [TSVCIS]. =20


Section 3.1 (first sentence in last paragraph) - Clarification for CODA, =
CODB

(was)
It should be noted that CODB for MELPe 600 bps mode MAY deviate from
the value in Table 1 when bit 55 is used as an end-to-end framing bit.

(now)
It should be noted that CODB for MELPe 600 bps mode MAY deviate from
the value in Table 1 when bit 55 is used as an alternating 1/0
end-to-end framing bit. =20

Ben, I believe this addresses your comments and requests for =
clarifications as per our email discussion chain below.

Thanks for you comments and with your concurrence (and my home =
computer's cooperation), I will post a new draft hopefully acceptable =
for final approval.

Regards to all and stay on the good side of Darwin.

Victor


-----Original Message-----
From: Benjamin Kaduk <kaduk@mit.edu>=20
Sent: Friday, February 14, 2020 2:43 PM
To: victor.demjanenko@vocal.com; 'Barry Leiba' <barryleiba@computer.org>
Cc: 'Roni Even (A)' <roni.even@huawei.com>; 'The IESG' <iesg@ietf.org>; =
'Catherine Meadows' <catherine.meadows@nrl.navy.mil>; 'IETF SecDir' =
<secdir@ietf.org>; draft-ietf-payload-tsvcis@ietf.org; 'Ali Begen' =
<ali.begen@networked.media>; avtcore-chairs@ietf.org; avt@ietf.org; =
'Dave Satterlee (Vocal)' <Dave.Satterlee@vocal.com>; 'IETF discussion =
list' <ietf@ietf.org>; draft-ietf-payload-tsvcis.all@ietf.org
Subject: Re: Benjamin Kaduk's Discuss on draft-ietf-payload-tsvcis-03: =
(with DISCUSS and COMMENT)

Hi Barry,

As Victor notes, this one was/is waiting on me; he did reply (offlist) =
on
15 January but I seem to have missed it amid a deluge of other mail that =
arrived at that time.  Thanks for the reminder, and thanks Victor for =
re-sending the comments.
(inline)

On Fri, Feb 14, 2020 at 08:20:54AM -0500, victor.demjanenko@vocal.com =
wrote:
> HI Barry,
>=20
> Thanks for recalling this was still outstanding.  I had emailed Ben =
just after the holidays and did not realize we had no response.  The =
below is what we suggested to Ben to address concerns he raised.
>=20
> --------------------
> Hi Ben,
>=20
> Hope your holidays were good.  Our were both good and busy.  =
Deliveries for two NASA projects and the holidays kept us from =
responding sooner.  But we do want to get this draft completed.
>=20
> With your permission, I=E2=80=99d like to address your comments =
directly, resolve what changes we should make and then publish a new =
version with a summary of our out-of-band discussions.  We don=E2=80=99t =
have a lot of experience with drafting such documents and would like to =
know exactly what is needed to make this draft acceptable.
>=20
> I believe there are two comments/issues to address:
>=20
> 1)	CODA, CODB
>=20
> Your comment ends by stating:  =E2=80=9C(Or, of course, the use of =
CODB as an alternating 1/0 bit as the framing usage could be documented =
instead.)=E2=80=9D  We can do this as follows:
>=20
> (original)
> It should be noted that CODB for MELPe 600 bps mode MAY deviate from
>    the value in Table 1 when bit 55 is used as an end-to-end framing
>    bit. Frame decoding would remain distinct as CODA being zero on its
>    own would indicate a 7-byte frame for either 2400 or 600 bps rate =
and
>    the use of 600 bps speech coding could be deduced from the RTP
>    timestamp (and anticipated by the SDP negotiations).
>=20
> (adding =E2=80=9Calternating 1/0=E2=80=9D)
> It should be noted that CODB for MELPe 600 bps mode MAY deviate from
>    the value in Table 1 when bit 55 is used as an alternating 1/0 =
end-to-end framing
>    bit. Frame decoding would remain distinct as CODA being zero on its
>    own would indicate a 7-byte frame for either 2400 or 600 bps rate =
and
>    the use of 600 bps speech coding could be deduced from the RTP
>    timestamp (and anticipated by the SDP negotiations).
>=20
> I think this change would be sufficient to address your concern about =
what to expect for CODB.

This looks like the minimal sufficient change, yes.  (I use "minimal"
because I would say more if I was writing it, but I don't think I can =
insist that you write it the way I would -- it's your document after =
all!)

> 2.    Packing and unpacking
>=20
> You are correct that I am trying to vaguely describe a middle layer =
shim that is neither RTP nor speech coder.  So it definitely does need =
to be clear.  The vagueness comes from the speech coder description =
being a FOUO document.  Its now unclassified so I can potentially say =
more (and I did make some enhancements of the parameter description =
already). =20
>=20
> So I am trying to understand exactly what you think is vague in our =
current description:
>=20
> TSVCIS augmented speech data is derived from the signal processing
>    and data already performed by the MELPe speech coder.  For the
>    purposes of this specification, only the general parameter nature =
of
>    TSVCIS will be characterized.  Depending on the bandwidth available
>    (and FEC requirements), a varying number of TSVCIS-specific speech
>    coder parameters need to be transported.  These are first =
byte-packed
>    and then conveyed from encoder to decoder.
>=20
>    Byte packing of TSVCIS speech data into packed parameters is
>    processed as per the following example:
>=20
>       Three-bit field: bits A, B, and C (A is MSB, C is LSB)
>       Five-bit field: bits D, E, F, G, and H (D is MSB, H is LSB)
>=20
>            MSB                                              LSB
>             0      1      2      3      4      5      6      7
>         +------+------+------+------+------+------+------+------+
>         |   H  |   G  |   F  |   E  |   D  |   C  |   B  |   A  |=20
>         +------+------+------+------+------+------+------+------+
>=20
>    This packing method places the three-bit field "first" in the =
lowest
>    bits followed by the next five-bit field.  Parameters may be split
>    between octets with the most significant bits in the earlier octet.
>    Any unfilled bits in the last octet MUST be filled with zero.

[not actually relevant to the Discuss part, but if there is always =
exactly one 3-bit parameter and one 5-bit parameter, then this text =
allowing splitting across octets will never be used and is potentially =
confusing to mention.]

>    In order to accommodate a varying amount of TSVCIS augmented speech
>    data, it is only necessary to specify the number of octets =
containing
>    the packed TSVCIS parameters.  The encoding to do so is presented=20
> in

I think the "only necessary to specify the number of octets" is the key =
stumbling point, for me -- I need to know the number of octets as well =
as the order of the parameters within the list, which is more =
information than just the number of octets.

>    Section 3.2.  TSVCIS specifically uses the NRL VDR in two
>    configurations using 15 and 35 packed octet parameters [TSVCIS]. =20

I think I failed to internalize the "two configurations using 15 and 35 =
packed octet parameters" the first time I read the document, as this =
does help give the reader a clue that [TSVCIS] gives a good picture of =
what parameters go where.  So it seems like we could easily append to =
that, for "using a fixed set of 15 and 35 packed octet parameters in a =
fixed order [TSVCIS]" and that would resolve my concerns.

> The speech coder description of the parameters is the following:
>=20
> =20
>=20
> So the three bit pitch is first (bits 56 to 58), followed by a five =
bit amplitude (bits 59 to 63) and then an array of spectral components, =
each 8-bit wide (starting at bit 64).

[And maybe TSVCIS specifes that the spectral components are derived from =
some fundamental harmonic decomposition that naturally quantizes to a =
number-of-parameters/accuracy tradeoff with a natural order.  If so, we =
could also rely on that instead of my proposed change above; let me know =
if you want to explore that path further.]

> Based on this information, I=E2=80=99m not sure what we should add to =
our=20
> draft to make the description of packing/unpacking clearer.  Can you=20
> make any suggestions or does this table help you with what you did not =

> know?  (I don=E2=80=99t think I should put this table into the draft =
RFC=20
> however.)

Hopefully the above helps to clarify.

Thanks, and sorry for the delay.

-Ben

> Thanks for your attention and comments.
>=20
> Victor & Dave
>=20
>=20
>=20
> -----Original Message-----
> From: Barry Leiba <barryleiba@computer.org>
> Sent: Friday, February 14, 2020 7:38 AM
> To: Benjamin Kaduk <kaduk@mit.edu>
> Cc: victor.demjanenko@vocal.com; Roni Even (A) <roni.even@huawei.com>; =

> The IESG <iesg@ietf.org>; Catherine Meadows=20
> <catherine.meadows@nrl.navy.mil>; IETF SecDir <secdir@ietf.org>;=20
> draft-ietf-payload-tsvcis@ietf.org; Ali Begen=20
> <ali.begen@networked.media>; avtcore-chairs@ietf.org; avt@ietf.org;=20
> Dave Satterlee (Vocal) <Dave.Satterlee@vocal.com>; IETF discussion=20
> list <ietf@ietf.org>;  draft-ietf-payload-tsvcis.all@ietf.orgygv=20
> Subject: Re: Benjamin Kaduk's Discuss on draft-ietf-payload-tsvcis-03: =

> (with DISCUSS and COMMENT)
>=20
> This is still outstanding, since November.  Victor, where are we on =
this one?
>=20
> Barry
>=20
> On Mon, Nov 25, 2019 at 1:46 AM Benjamin Kaduk <kaduk@mit.edu> wrote:
> >
> > Hi Victor,
> >
> > On Tue, Nov 19, 2019 at 03:14:21PM -0500, =
victor.demjanenko@vocal.com wrote:
> > > Hi Ben,
> > >
> > > Sorry I overlooked sending you a response.  I would like to=20
> > > address the two concerns you have by explaining what the speech =
coders are doing.
> >
> > Thanks for the extra clarifications.  To supply one of my own: I'm=20
> > not concerned that the protocol doesn't work as implemented, but=20
> > just want to make sure that the document includes enough information =

> > to admit new implementations without guesswork.  That is to say,=20
> > "either tell me how to do it or tell me where to look that tells me =
how to do it".
> >
> > > WRT to 600 bps MELP, there is one TSVCIS mode that uses one bit=20
> > > beyond the 54-bit frame for MELP 600 as a frame sync which =
alternates between frames.
> > > With two or more MELP 600bps frames in one RTP packet, if any=20
> > > frame indicates 600 bps by CODA being 0 and CODB being 1, then we=20
> > > know the stream is 600bps.  If there is a single frame in an RTP=20
> > > packet, you can still deduce this by looking at every other RTP=20
> > > packet (every other MELP 600bps
> > > frame) and by the timestamp advance.  Most likely the two ends=20
> > > would negotiate 600 bps in SDP anyways so there really should not=20
> > > be a problem.  I know it's not pretty but its workable.  I hope=20
> > > this explanation helps you with the concerns for this issue.
> >
> > In this case, the use as an "end-to-end framing bit" (i.e., the=20
> > alternating behavior you describe above) is not explicitly stated;=20
> > one might imagine a scheme where the framing usage is to have the=20
> > bit cycle through 1, 1, 0, and 0, or some other scheme.  I'd suggest =

> > to note in the document that if any instance of (CODA, CODB) =3D=3D =
(0,=20
> > 1) is observed, then the 600bps mode is in use.  It might also be=20
> > helpful to include the observation that two successive MELPe=20
> > payloads with CODA =3D=3D CODB =3D=3D 0 indicates the 2400bps mode =
(and that=20
> > seeing them in a single RTP packet is decisive, whereas additional=20
> > information about packet non-loss would be needed in the=20
> > one-MELPe-frame-per-RTP-packet case), but that would be a fair bit=20
> > of additional text and might be diminishing returns.  (Or, of=20
> > course, the use of CODB as an alternating 1/0 bit as the framing=20
> > usage could be documented
> > instead.)
> >
> > > As for the TSVCIS parameter packing/unpacking, this is really=20
> > > simple.  There is exactly on three bit parameter, exactly one five =

> > > bit parameter and a variable number of eight bit parameters.  In=20
> > > our view, the speech coder itself (or a wrapper for it) is=20
> > > responsible for preparing the block of octets.  RTP then just=20
> > > transports it.  On receive, the complementary wrapper reverses the =
packing operation.
> > > I hope this clarifies and explains the simplicity.
> >
> > That's exactly what I expected to happen; however, it's not what I=20
> > believe the current text of the document is describing. =20
> > Specifically, I think that the current text implies that the=20
> > "preparing the block of octets" and "complementary wrapper reverses=20
> > the packing operation" are supposed to be part of the RTP payload=20
> > format that this document describes, but this document does not have =

> > enough information to actually perform those operations reversibly.  =

> > If the packing is to be done in the speech coder, then this document =

> > doesn't need to talk about the packing at all (e.g., at the end of=20
> > Section 2); if we need to keep the packing/wrapper in this document=20
> > then we need to indicate that there's a defined priority order for=20
> > the (8-octet) TSVCIS parameters in the TSVCIS references, to allow =
the packing/unpacking to be deterministic.
> >
> > Thanks,
> >
> > Ben
> >
> > >
> > > -----Original Message-----
> > > From: Benjamin Kaduk <kaduk@mit.edu>
> > > Sent: Thursday, October 31, 2019 8:12 PM
> > > To: Barry Leiba <barryleiba@computer.org>
> > > Cc: victor.demjanenko@vocal.com; Roni Even (A)=20
> > > <roni.even@huawei.com>; The IESG <iesg@ietf.org>; Catherine=20
> > > Meadows <catherine.meadows@nrl.navy.mil>; IETF SecDir=20
> > > <secdir@ietf.org>; draft-ietf-payload-tsvcis@ietf.org; Ali Begen=20
> > > <ali.begen@networked.media>; avtcore-chairs@ietf.org;=20
> > > avt@ietf.org; Dave Satterlee (Vocal) <Dave.Satterlee@vocal.com>;=20
> > > IETF discussion list <ietf@ietf.org>;=20
> > > draft-ietf-payload-tsvcis.all@ietf.org
> > > Subject: Re: Benjamin Kaduk's Discuss on
> > > draft-ietf-payload-tsvcis-03: (with DISCUSS and COMMENT)
> > >
> > > I don't think so, unfortunately.
> > >
> > > I do see the clarification about CODB's potential for deviation=20
> > > from Table 1, that only the 600 bps MELPe is allowed to deviate,=20
> > > and that CODA gets us to "it's one of 2400 or 600 bps" and the RTP =

> > > timestamp disambiguates that
> > > 600 bps is in use.  But, it seems that this means that the=20
> > > recipient in general should not rely on CODB to differentiate 600=20
> > > from 2400 bps, and instead is more robustly implemented by=20
> > > *always* using the RTP timestamp to detect 600 bps, since that=20
> > > will always work and CODB will sometimes not work under conditions =

> > > not fully specified here.  So, if we are unwilling or unable to=20
> > > clarify what those conditions are (e.g., whether at a minimum=20
> > > mutual agreement is required), then I think we need to describe=20
> > > this procedure of consulting the RTP timestamp as the default =
behavior and avoid giving the impression that CODB should be used to do =
so.
> > >
> > > Additionally, I don't see anything to address my concern about=20
> > > TSVCIS parameter decoding.  To be clear, the procedure I see this=20
> > > document describing is that:
> > > - TSVCIS gives parameters (and their lengths in bits) to the codec
> > >   described in this document
> > > - this document specifies how to densely encode those parameters =
into a
> > >   byetstream
> > > - RTP transmits that encoded bytestream to the peer
> > > - the codec specified by this is responsible for turning that =
encoded
> > >   bystream back into a list of TSVCIS parameters (and their length =

> > > in bits)
> > >
> > > I don't see how that last step is attainable with only the=20
> > > information provided by this document.  I *assume* that one of the =

> > > TSVCIS specifications has a canonical (ordered) listing of=20
> > > parameters, and that the list of parmeters given to this codec in=20
> > > the first step will always be an initial prefix of that list, but=20
> > > that's just me guessing at how to make sense of the stated=20
> > > procedure given insufficient information.  I don't think it's=20
> > > appropriate to make the reader of an RFC guess at what to do; we=20
> > > need to either say how to do it or give a pointer to an external =
reference that does.
> > >
> > > -Ben
> > >
> > > On Tue, Oct 29, 2019 at 02:26:09PM -0400, Barry Leiba wrote:
> > > > Ben, does the -04 version address everything?
> > > >
> > > > Barry
> > > >
> > > > On Thu, Oct 24, 2019 at 1:42 PM <victor.demjanenko@vocal.com> =
wrote:
> > > > >
> > > > > I forgot to address security comments in one email.  The =
changes are:
> > > > >
> > > > > Section 8, second paragraph - Suggested edit by reviewer
> > > > >
> > > > > (was)
> > > > >    This RTP payload format and the TSVCIS decoder do not =
exhibit any
> > > > >    significant non-uniformity in the receiver-side =
computational
> > > > >    complexity for packet processing and thus are unlikely to =
pose a
> > > > >    denial-of-service threat due to the receipt of pathological =
data.
> > > > >    Additionally, the RTP payload format does not contain any =
active
> > > > >    content.
> > > > >
> > > > > (now)
> > > > >    This RTP payload format and the TSVCIS decoder, to the best =
of our
> > > > >    knowledge, do not exhibit any significant non-uniformity in =
the
> > > > >    receiver-side computational complexity for packet =
processing and thus
> > > > >    are unlikely to pose a denial-of-service threat due to the =
receipt of
> > > > >    pathological data. Additionally, the RTP payload format =
does not
> > > > >    contain any active content.
> > > > >
> > > > >
> > > > > Section 8, third paragraph - Suggested edit by reviewer
> > > > >
> > > > > (was)
> > > > >    Please see the security considerations discussed in =
[RFC6562]
> > > > >    regarding VAD and its effect on bitrates.
> > > > >
> > > > > (now)
> > > > >    Please see the security considerations discussed in =
[RFC6562]
> > > > >    regarding Voice Activity Detect (VAD) and its effect on =
bitrates.
> > > > >
> > > > > Victor
> > > > >
> > > > > -----Original Message-----
> > > > > From: victor.demjanenko@vocal.com=20
> > > > > <victor.demjanenko@vocal.com>
> > > > > Sent: Thursday, October 24, 2019 10:05 AM
> > > > > To: 'Roni Even (A)' <roni.even@huawei.com>; 'Benjamin Kaduk'
> > > > > <kaduk@mit.edu>; 'The IESG' <iesg@ietf.org>
> > > > > Cc: draft-ietf-payload-tsvcis@ietf.org; 'Ali Begen'
> > > > > <ali.begen@networked.media>; avtcore-chairs@ietf.org;=20
> > > > > avt@ietf.org; 'Dave Satterlee (Vocal)'
> > > > > <Dave.Satterlee@vocal.com>
> > > > > Subject: RE: Benjamin Kaduk's Discuss on
> > > > > draft-ietf-payload-tsvcis-03: (with DISCUSS and COMMENT)
> > > > >
> > > > > Hi Everyone,
> > > > >
> > > > > First we want to thank everyone for their review and comments=20
> > > > > for this
> > > draft RFC.  We believe we reviewed all the comments and=20
> > > suggestions and incorporated them adequately in the next draft=20
> > > (04).  We'd like to send out this list of exact changes in case=20
> > > anyone has additional comments or thinks the clarifications are=20
> > > inadequate.  We would be most happy to address concerns before =
publishing draft 04 tomorrow.
> > > > >
> > > > > With so many emails from a half dozen or more reviewers, we=20
> > > > > apologize
> > > that we cannot address each sender individually.  We hope this=20
> > > detail is sufficient for everyone.
> > > > >
> > > > > Again, many thanks to all.
> > > > >
> > > > > Victor & Dave
> > > > >
> > > > > --------------------------------------------------------------
> > > > > --
> > > > > ----
> > > > > --------------------------
> > > > >
> > > > > Section 1.1 - Suggested reference to RFC 8088 added.
> > > > >
> > > > > (was)
> > > > >    Best current practices for writing an RTP payload format
> > > > >    specification were followed [RFC2736].
> > > > >
> > > > > (now)
> > > > >    Best current practices for writing an RTP payload format
> > > > >    specification were followed [RFC2736] [RFC8088].
> > > > >
> > > > >
> > > > > Section 2, paragraphs 3 and 4 - Suggested edits by reviewers
> > > > >
> > > > > (was)
> > > > >    In addition to the augmented speech data, the TSVCIS =
specification
> > > > >    identifies which speech coder and framing bits are to be =
encrypted,
> > > > >    and how they are protected by forward error correction =
(FEC)
> > > > >    techniques (using block codes).  At the RTP transport =
layer, only the
> > > > >    speech coder related bits need to be considered and are =
conveyed in
> > > > >    unencrypted form.  In most IP-based network deployments, =
standard
> > > > >    link encryption methods (SRTP, VPNs, FIPS 140 link =
encryptors or Type
> > > > >    1 Ethernet encryptors) would be used to secure the RTP =
speech
> > > > >    contents.  Further, it is desirable to support the highest =
voice
> > > > >    quality between endpoints which is only possible without =
the overhead
> > > > >    of FEC.
> > > > >
> > > > >    TSVCIS augmented speech data is derived from the signal =
processing
> > > > >    and data already performed by the MELPe speech coder.  For =
the
> > > > >    purposes of this specification, only the general parameter =
nature of
> > > > >    TSVCIS will be characterized.  Depending on the bandwidth =
available
> > > > >    (and FEC requirements), a varying number of TSVCIS specific =
speech
> > > > >    coder parameters need to be transported.  These are first =
byte-packed
> > > > >    and then conveyed from encoder to decoder.
> > > > >
> > > > > (now)
> > > > >    In addition to the augmented speech data, the TSVCIS =
specification
> > > > >    identifies which speech coder and framing bits are to be =
encrypted,
> > > > >    and how they are protected by forward error correction =
(FEC)
> > > > >    techniques (using block codes).  At the RTP transport =
layer, only the
> > > > >    speech-coder-related bits need to be considered and are =
conveyed in
> > > > >    unencrypted form.  In most IP-based network deployments, =
standard
> > > > >    link encryption methods (SRTP, VPNs, FIPS 140 link =
encryptors or Type
> > > > >    1 Ethernet encryptors) would be used to secure the RTP =
speech
> > > > >    contents.
> > > > >
> > > > >    TSVCIS augmented speech data is derived from the signal =
processing
> > > > >    and data already performed by the MELPe speech coder.  For =
the
> > > > >    purposes of this specification, only the general parameter =
nature of
> > > > >    TSVCIS will be characterized.  Depending on the bandwidth =
available
> > > > >    (and FEC requirements), a varying number of TSVCIS-specific =
speech
> > > > >    coder parameters need to be transported.  These are first =
byte-packed
> > > > >    and then conveyed from encoder to decoder.
> > > > >
> > > > >
> > > > > Section 3, last sentence paragraph 3 - Suggested edit by=20
> > > > > reviewer
> > > > >
> > > > > (was)
> > > > >    When more than one codec data frame is
> > > > >    present in a single RTP packet, the timestamp is, as =
always, that of
> > > > >    the oldest data frame represented in the RTP packet.
> > > > >
> > > > > (now)
> > > > >    When more than one codec data frame is
> > > > >    present in a single RTP packet, the timestamp specified is =
that of
> > > > >    the oldest data frame represented in the RTP packet.
> > > > >
> > > > >
> > > > > Section 3.1, last paragraph - Clarified permission for MELP=20
> > > > > 600 end-to-end framing bit
> > > > >
> > > > > (was)
> > > > >    It should be noted that CODB for both the 2400 and 600 bps =
modes MAY
> > > > >    deviate from the values in Table 1 when bit 55 is used as =
an end-to-
> > > > >    end framing bit.  Frame decoding would remain distinct as =
CODA being
> > > > >    zero on its own would indicate a 7-byte frame for either =
rate and the
> > > > >    use of 600 bps speech coding could be deduced from the RTP =
timestamp
> > > > >    (and anticipated by the SDP negotiations).
> > > > >
> > > > > (now)
> > > > >    It should be noted that CODB for MELPe 600 bps mode MAY =
deviate from
> > > > >    the value in Table 1 when bit 55 is used as an end-to-end =
framing
> > > > >    bit. Frame decoding would remain distinct as CODA being =
zero on its
> > > > >    own would indicate a 7-byte frame for either 2400 or 600 =
bps rate and
> > > > >    the use of 600 bps speech coding could be deduced from the =
RTP
> > > > >    timestamp (and anticipated by the SDP negotiations).
> > > > >
> > > > >
> > > > > Section 3.2, first paragraph - Clarifications requested by=20
> > > > > reviewers
> > > > >
> > > > > (was)
> > > > >    The TSVCIS augmented speech data as packed parameters MUST =
be placed
> > > > >    immediately after a corresponding MELPe 2400 bps payload in =
the same
> > > > >    RTP packet.  The packed parameters are counted in octets =
(TC).  In
> > > > >    the preferred placement, shown in Figure 6, a single =
trailing octet
> > > > >    SHALL be appended to include a two-bit rate code, CODA and =
CODB,
> > > > >    (both bits set to one) and a six-bit modified count (MTC).  =
The
> > > > >    special modified count value of all ones (representing a =
MTC value of
> > > > >    63) SHALL NOT be used for this format as it is used as the =
indicator
> > > > >    for the alternate packing format shown next.  In a standard
> > > > >    implementation, the TSVCIS speech coder uses a minimum of =
15 octets
> > > > >    for parameters in octet packed form.  The modified count =
(MTC) MUST
> > > > >    be reduced by 15 from the full octet count (TC).  Computed =
MTC =3D TC-
> > > > >    15.  This accommodates a maximum of 77 parameter octets =
(maximum
> > > > >    value of MTC is 62, 77 is the sum of 62+15).
> > > > >
> > > > > (now)
> > > > >    The TSVCIS augmented speech data as packed parameters MUST =
be placed
> > > > >    immediately after a corresponding MELPe 2400 bps payload in =
the same
> > > > >    RTP packet.  The packed parameters are counted in octets =
(TC).  The
> > > > >    preferred placement SHOULD be used for TSVCIS payloads with =
TC less
> > > > >    than or equal to 77 octets, is shown in Figure 6.  In the =
preferred
> > > > >    placement, a single trailing octet SHALL be appended to =
include a
> > > > >    two-bit rate code, CODA and CODB, (both bits set to one) =
and a six-
> > > > >    bit modified count (MTC).  The special modified count value =
of all
> > > > >    ones (representing a MTC value of 63) SHALL NOT be used for =
this
> > > > >    format as it is used as the indicator for the alternate =
packing
> > > > >    format shown next.  In a standard implementation, the =
TSVCIS speech
> > > > >    coder uses a minimum of 15 octets for parameters in octet =
packed
> > > > >    form.  The modified count (MTC) MUST be reduced by 15 from =
the full
> > > > >    octet count (TC).  Computed MTC =3D TC-15.  This =
accommodates a maximum
> > > > >    of 77 parameter octets (maximum value of MTC is 62, 77 is =
the sum of
> > > > >    62+15).
> > > > >
> > > > >
> > > > > Section 3.3, first paragraph - Suggested edit by reviewer
> > > > >
> > > > > (was)
> > > > >    A TSVCIS RTP packet consists of zero or more TSVCIS coder =
frames
> > > > >    (each consisting of MELPe and TSVCIS coder data) followed =
by zero or
> > > > >    one MELPe comfort noise frame.  The presence of a comfort =
noise frame
> > > > >    can be determined by its rate code bits in its last octet.
> > > > >
> > > > > (now)
> > > > >    A TSVCIS RTP packet payload consists of zero or more =
consecutive
> > > > >    TSVCIS coder frames (each consisting of MELPe 2400 and =
TSVCIS coder
> > > > >    data), with the oldest frame first, followed by zero or one =
MELPe
> > > > >    comfort noise frame.  The presence of a comfort noise frame =
can be
> > > > >    determined by its rate code bits in its last octet.
> > > > >
> > > > >
> > > > > Section 3.3, fourth paragraph - Clarification requested by=20
> > > > > reviewers
> > > > >
> > > > > (was)
> > > > >    TSVCIS coder frames in a single RTP packet MAY be of =
different coder
> > > > >    bitrates.  With the exception for the variable length =
TSVCIS
> > > > >    parameter frames, the coder rate bits in the trailing byte =
identify
> > > > >    the contents and length as per Table 1.
> > > > >
> > > > > (now)
> > > > >    TSVCIS coder frames in a single RTP packet MAY have varying =
TSVCIS
> > > > >    parameter octet counts.  Its packed parameter octet count =
(length) is
> > > > >    indicated in the trailing byte(s).  All MELPe frames in a =
single RTP
> > > > >    packet MUST be of the same coder bitrate.  For all MELPe =
coder
> > > > >    frames, the coder rate bits in the trailing byte identify =
the
> > > > >    contents and length as per Table 1.
> > > > >
> > > > >
> > > > > Section 4.1 - Editor note removed
> > > > >
> > > > >
> > > > > Section 4.1 - Change controller is now
> > > > >
> > > > > (now)
> > > > >    Change controller: IETF, contact <avt@ietf.org>
> > > > >
> > > > >
> > > > > Section 5, first paragraph - Suggested edits by reviewers
> > > > >
> > > > > (was)
> > > > >    A primary application of TSVCIS is for radio communications =
of voice
> > > > >    conversations, and discontinuous transmissions are normal.  =
When
> > > > >    TSVCIS is used in an IP network, TSVCIS RTP packet =
transmissions may
> > > > >    cease and resume frequently.  RTP synchronization source =
(SSRC)
> > > > >    sequence number gaps indicate lost packets to be filled by =
PLC, while
> > > > >    abrupt loss of RTP packets indicates intended discontinuous
> > > > >    transmissions.
> > > > >
> > > > > (now)
> > > > >    A primary application of TSVCIS is for radio communications =
of voice
> > > > >    conversations, and discontinuous transmissions are normal.  =
When
> > > > >    TSVCIS is used in an IP network, TSVCIS RTP packet =
transmissions may
> > > > >    cease and resume frequently.  RTP synchronization source =
(SSRC)
> > > > >    sequence number gaps indicate lost packets to be filled by =
Packet
> > > > >    Loss Concealment (PLC), while abrupt loss of RTP packets =
indicates
> > > > >    intended discontinuous transmissions.  Resumption of voice
> > > > >    transmission SHOULD be indicated by the RTP marker bit (M) =
set to 1.
> > > > >
> > > > >
> > > > > Section 10 - Added reference
> > > > >
> > > > > (added)
> > > > >    [RFC8088]  Westerlund, M., "How to Write an RTP Payload =
Format",
> > > > >               RFC 8088, DOI 10.17487/RFC8088, May 2017,
> > > > >               <http://www.rfc-editor.org/info/rfc8088>.
> > > > >
> > > > > --------------------------------------------------------------
> > > > > --
> > > > > ----
> > > > > -----------------------------
> > > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: Roni Even (A) <roni.even@huawei.com>
> > > > > Sent: Sunday, October 6, 2019 2:09 AM
> > > > > To: victor.demjanenko@vocal.com; 'Benjamin Kaduk'=20
> > > > > <kaduk@mit.edu>; 'The IESG' <iesg@ietf.org>
> > > > > Cc: draft-ietf-payload-tsvcis@ietf.org; 'Ali Begen'
> > > > > <ali.begen@networked.media>; avtcore-chairs@ietf.org;=20
> > > > > avt@ietf.org; 'Dave Satterlee (Vocal)'
> > > > > <Dave.Satterlee@vocal.com>
> > > > > Subject: RE: Benjamin Kaduk's Discuss on
> > > > > draft-ietf-payload-tsvcis-03: (with DISCUSS and COMMENT)
> > > > >
> > > > > Hi,
> > > > > About the reference to TSVCIS.
> > > > > The RTP payload is about how to encapsulate the payload in an=20
> > > > > RTP
> > > packet. The objective is to define how an RTP stack can insert the =

> > > tsvcis frames and  extract the tsvcis frames from the RTP packet.
> > > Typically it is not required to understand the payload structure=20
> > > in order to be able to perform the encapsulation.
> > > > > This is why the reference to the payload is Informational and=20
> > > > > we did not require to have it publically available.  If there=20
> > > > > is a need to understand the payload itself for the=20
> > > > > encapsulating than we need more information in the RTP payload =

> > > > > specification and a publically available normative reference.=20
> > > > > I think this is not the case here
> > > > >
> > > > > Roni Even
> > > > >
> > > > > AVTCore co-chair (ex Payload)
> > > > >
> > > > > -----Original Message-----
> > > > > From: victor.demjanenko@vocal.com=20
> > > > > [mailto:victor.demjanenko@vocal.com]
> > > > > Sent: Saturday, October 05, 2019 12:18 AM
> > > > > To: 'Benjamin Kaduk'; 'The IESG'
> > > > > Cc: draft-ietf-payload-tsvcis@ietf.org; 'Ali Begen';
> > > avtcore-chairs@ietf.org; avt@ietf.org; 'Victor Demjanenko, Ph.D.'; =

> > > 'Dave Satterlee (Vocal)'
> > > > > Subject: RE: Benjamin Kaduk's Discuss on
> > > > > draft-ietf-payload-tsvcis-03: (with DISCUSS and COMMENT)
> > > > >
> > > > > Everyone,
> > > > >
> > > > > Thanks for the comments.  I think I mis-understood the=20
> > > > > ambiguity with
> > > respect to to changing rates within a RTP packet.  That was not=20
> > > plan.  An RTP packet must have MELP speech frames of the same =
rate.
> > > What is possible is that the amount of augmented TSVCIS speech=20
> > > data may vary from one speech frame to the next.  This allows for=20
> > > a dynamic VDR as suggested by the NRL paper.  So an RTP packet may =

> > > have varying TSVCIS data but must always have MELPe 2400 data.
> > > > >
> > > > > Again backwards parsing is necessary but the timestamp=20
> > > > > uniformly
> > > increments 22.5msec per combined MELP/TSVCIS speech frame.
> > > > >
> > > > > The NRL is a good public reference on the VDR aspects.  The=20
> > > > > actual
> > > TSVCIS spec we had was FOUO so we could not replicate its detail.  =

> > > (I believe a later spec is public or at least partially public.  I =

> > > am trying to get this.)  The opaque data is pretty obvious with =
the TSVCIS spec in hand.
> > > > >
> > > > > We will address the issues/concerns raised next week.  Other=20
> > > > > business
> > > had priority.
> > > > >
> > > > > Thank you and enjoy the weekend.
> > > > >
> > > > > Regards,
> > > > >
> > > > > Victor & Dave
> > > > >
> > > > > -----Original Message-----
> > > > > From: Benjamin Kaduk via Datatracker <noreply@ietf.org>
> > > > > Sent: Wednesday, October 2, 2019 10:40 PM
> > > > > To: The IESG <iesg@ietf.org>
> > > > > Cc: draft-ietf-payload-tsvcis@ietf.org; Ali Begen=20
> > > > > <ali.begen@networked.media>; avtcore-chairs@ietf.org;=20
> > > > > ali.begen@networked.media; avt@ietf.org
> > > > > Subject: Benjamin Kaduk's Discuss on =
draft-ietf-payload-tsvcis-03:
> > > > > (with DISCUSS and COMMENT)
> > > > >
> > > > > Benjamin Kaduk has entered the following ballot position for
> > > > > draft-ietf-payload-tsvcis-03: Discuss
> > > > >
> > > > > When responding, please keep the subject line intact and reply =

> > > > > to all email addresses included in the To and CC lines. (Feel=20
> > > > > free to cut this introductory paragraph, however.)
> > > > >
> > > > >
> > > > > Please refer to
> > > > > https://www.ietf.org/iesg/statement/discuss-criteria.html
> > > > > for more information about IESG DISCUSS and COMMENT positions.
> > > > >
> > > > >
> > > > > The document, along with other ballot positions, can be found =
here:
> > > > > https://datatracker.ietf.org/doc/draft-ietf-payload-tsvcis/
> > > > >
> > > > >
> > > > >
> > > > > --------------------------------------------------------------
> > > > > --
> > > > > ----
> > > > > --
> > > > > DISCUSS:
> > > > > --------------------------------------------------------------
> > > > > --
> > > > > ----
> > > > > --
> > > > >
> > > > > I support Magnus' point about the time-ordering of adjacent=20
> > > > > frames in a
> > > packet.
> > > > >
> > > > > Additionally, I am not sure that there's quite enough here to=20
> > > > > be
> > > interoperably implementable.  Specifically, we seem to be lacking=20
> > > a description of how an encoder or decoder knows which TSVCIS=20
> > > parameters, and in what order, to byte-pack or unpack, =
respectively.
> > > One might surmise that there is a canonical listing in [TSVCIS],=20
> > > but this document does not say that, and furthermore [TSVCIS] is =
only listed as an informative reference.
> > > (I couldn't get my hands on my copy, at least on short notice.) =20
> > > If we limited ourselves to treating the TSVCIS parameters as an=20
> > > entirely opaque blob (codec, convey these N octets to the peer=20
> > > with the appropriate one- or two-byte trailer for payload type=20
> > > identification and framing), that would be interoperably=20
> > > implementable, since the black-box bits are up to some other codec =
to interpret.
> > > > >
> > > > > In a similar vein, we mention but do not completely specify=20
> > > > > the
> > > potential for using CODB as an end-to-end framing bit, in Section
> > > 3.1 (see Comment), which is not interoperably implementable =
without further details.
> > > > >
> > > > >
> > > > > --------------------------------------------------------------
> > > > > --
> > > > > ----
> > > > > --
> > > > > COMMENT:
> > > > > --------------------------------------------------------------
> > > > > --
> > > > > ----
> > > > > --
> > > > >
> > > > > Where is [TSVCIS] available?
> > > > >
> > > > > Is [NRLVDR] the same as
> > > > > https://apps.dtic.mil/dtic/tr/fulltext/u2/a588068.pdf ?  A URL =

> > > > > in the
> > > references would be helpful.
> > > > >
> > > > > Is additional TSVCIS data only present after 2400bps MELPe and =

> > > > > the first
> > > thing to get dropped under bandwidth pressure?  The abstract and=20
> > > introduction imply this by calling out MELPe 2400 bps speech=20
> > > parameters explicitly, but Section 3 says that TSVCIS augments=20
> > > standard 600, 1200, and
> > > 2400 bps MELP frames.
> > > > >
> > > > > It's helpful that Section 3.3 gives some general guidance for=20
> > > > > decoding
> > > this payload type ("[t]he way to determine the number of=20
> > > TSVCIS/MELPe frames is to identify each frame type and length"),=20
> > > but I think some generic considerations would be very helpful to=20
> > > the reader much earlier, along the lines of "MELPe and TSVCIS data =

> > > payloads are decoded from the end, using the CODA and CODB (and,=20
> > > if necessary, CODC and others) bits to determine the type of =
payload.
> > > For MELPe payloads the type also indicates the payload length,=20
> > > whereas for TSVCIS data an additional length field is present, in=20
> > > one of two possible formats.  A TSVCIS coder frame consists of a=20
> > > MELPe data payload followed by zero or one TSVCIS data payload;=20
> > > after the TSVCIS payload's presence/length is determined, then the =

> > > preceding MELPe payload can be determined and decoded.  Per=20
> > > Section 3.3, multiple TSVCIS frames can be present in a single RTP =
packet."
> > > This (or something like it) would also serve to clarify the role =
of the COD* bits, which is otherwise only implicitly introduced.
> > > > >
> > > > > Section 1.1
> > > > >
> > > > > RFC 2736 is BCP 36 (but it's updated by RFC 8088 which is for=20
> > > > > some
> > > reason an Informational document and not part of BCP 36?!).
> > > > >
> > > > > Section 2
> > > > >
> > > > >    In addition to the augmented speech data, the TSVCIS =
specification
> > > > >    identifies which speech coder and framing bits are to be =
encrypted,
> > > > >    and how they are protected by forward error correction =
(FEC)
> > > > >    techniques (using block codes).  At the RTP transport =
layer, only the
> > > > >    speech coder related bits need to be considered and are =
conveyed in
> > > > >    unencrypted form.  In most IP-based network deployments,=20
> > > > > standard
> > > > >
> > > > > Am I reading this correctly that this text is just summarizing =

> > > > > what's in
> > > the TSVCIS spec in terms of what needs to be in unencrypted form,=20
> > > so the "only the speech coder related bits[...]" is not new=20
> > > information from this document?  I'm not sure I agree with the=20
> > > conclusion, regardless -- won't the
> > > (MELPe) speech coder bits be enough to convey the semantic content =

> > > of the audio stream, something that one might desire to keep =
confidential?
> > > > >
> > > > >    link encryption methods (SRTP, VPNs, FIPS 140 link =
encryptors or Type
> > > > >    1 Ethernet encryptors) would be used to secure the RTP =
speech
> > > > >    contents.  Further, it is desirable to support the highest =
voice
> > > > >    quality between endpoints which is only possible without =
the overhead
> > > > >    of FEC.
> > > > >
> > > > > I think I'm missing a step in how this conclusion was reached.
> > > > >
> > > > >    TSVCIS will be characterized.  Depending on the bandwidth =
available
> > > > >    (and FEC requirements), a varying number of TSVCIS specific =
speech
> > > > >    coder parameters need to be transported.  These are first =
byte-packed
> > > > >    and then conveyed from encoder to decoder.
> > > > >
> > > > > Per the Discuss point, how do I know which parameters need to=20
> > > > > be
> > > transported, and in what order?
> > > > >
> > > > >    Byte packing of TSVCIS speech data into packed parameters =
is
> > > > >    processed as per the following example:
> > > > >
> > > > >       Three-bit field: bits A, B, and C (A is MSB, C is LSB)
> > > > >       Five-bit field: bits D, E, F, G, and H (D is MSB, H is
> > > > > LSB)
> > > > >
> > > > >            MSB                                              =
LSB
> > > > >             0      1      2      3      4      5      6      7
> > > > >         =
+------+------+------+------+------+------+------+------+
> > > > >         |   H  |   G  |   F  |   E  |   D  |   C  |   B  |   A =
 |
> > > > >        =20
> > > > > +------+------+------+------+------+------+------+------+
> > > > >
> > > > >    This packing method places the three-bit field "first" in =
the lowest
> > > > >    bits followed by the next five-bit field.  Parameters may =
be split
> > > > >    between octets with the most significant bits in the =
earlier octet.
> > > > >    Any unfilled bits in the last octet MUST be filled with =
zero.
> > > > >
> > > > > I agree with Adam that this is very unclear.  A is the MSB of=20
> > > > > the
> > > three-bit field but the LSB of the octet overall?
> > > > > We probably need an example of splitting a parameter across=20
> > > > > octets as
> > > well, to get the bit ordering right.
> > > > >
> > > > > Section 3.1
> > > > >
> > > > >    It should be noted that CODB for both the 2400 and 600 bps =
modes MAY
> > > > >    deviate from the values in Table 1 when bit 55 is used as =
an end-to-
> > > > >    end framing bit.  Frame decoding would remain distinct as=20
> > > > > CODA being
> > > > >
> > > > > Where is the use of CODB as an end-to-end framing bit defined? =
=20
> > > > > If we're
> > > going to provide neither a complete description of how to do it=20
> > > nor a reference to a better description, we probably shouldn't =
mention it at all.
> > > > >
> > > > > Section 3.2
> > > > >
> > > > >    RTP packet.  The packed parameters are counted in octets =
(TC).  In
> > > > >    the preferred placement, shown in Figure 6, a single =
trailing octet
> > > > >    SHALL be appended to include a two-bit rate code, CODA and=20
> > > > > CODB,
> > > > >
> > > > > I'd consider saying something about this being the preferred=20
> > > > > format
> > > > > ("placement") due to its shorter length than the alternative,=20
> > > > > and say
> > > that it "SHOULD be used for TSVCIS payloads with TC less than or=20
> > > equal to 77 octetes".
> > > > >
> > > > > Section 3.3
> > > > >
> > > > > When a longer packetization interval is used, is that=20
> > > > > indicated by
> > > signaling or RTP timestamps or otherwise?
> > > > >
> > > > >    TSVCIS coder frames in a single RTP packet MAY be of =
different coder
> > > > >    bitrates.  With the exception for the variable length =
TSVCIS
> > > > >    parameter frames, the coder rate bits in the trailing byte =
identify
> > > > >    the contents and length as per Table 1.
> > > > >
> > > > > Maybe also note that the penultimate octet gives the length =
there?
> > > > >
> > > > >    Information describing the number of frames contained in an =
RTP
> > > > >    packet is not transmitted as part of the RTP payload.  The =
way to
> > > > >    determine the number of TSVCIS/MELPe frames is to identify =
each frame
> > > > >    type and length thereby counting the total number of octets =
within
> > > > >    the RTP packet.
> > > > >
> > > > > terminology nit: if a frame is the combination of MELPe and=20
> > > > > TSVCIS
> > > payload data units then there are two layres of decoding to get a=20
> > > length for the frame, since we have to get the TSVCIS length and =
then the MELPe length.
> > > > >
> > > > > Section 4.2
> > > > >
> > > > >    Parameter "ptime" cannot be used for the purpose of=20
> > > > > specifying the
> > > > >
> > > > > nit: missing article ("The parameter")
> > > > >
> > > > >    will be impossible to distinguish which mode is about to be =
used
> > > > >    (e.g., when ptime=3D68, it would be impossible to =
distinguish if the
> > > > >    packet is carrying one frame of 67.5 ms or three frames of =
22.5 ms).
> > > > >
> > > > > So how is the operating mode determined, then?
> > > > > (I think this is the same question I asked above)
> > > > >
> > > > > Section 4.4
> > > > >
> > > > >    For example, if offerer bitrates are "2400,600" and answer =
bitrates
> > > > >    are "600,2400", the initial bitrate is 600.  If other =
bitrates are
> > > > >    provided by the answerer, any common bitrate between the =
offer and
> > > > >    answer MAY be used at any time in the future.  Activation =
of these
> > > > >    other common bitrates is beyond the scope of this document.
> > > > >
> > > > > It seems important to specify whether this requires a new O/A=20
> > > > > exchange
> > > or can be done "spontaneously" by just encoding different frame =
types.
> > > > > (It seems like the latter is possible, on first glance, and=20
> > > > > this is implied by Section 3.3's discussion of mixing them in=20
> > > > > a single
> > > > > packet.)
> > > > >
> > > > > Section 5
> > > > >
> > > > > Please expand PLC at first use (not second).
> > > > >
> > > > > Section 6
> > > > >
> > > > > I don't understand the PLC usage.  Is the idea that a=20
> > > > > receiver, on
> > > seeing an SSRC gap, constructs fictitious PLC frames to "fill the =
gap"
> > > > > and passes the resulting stream to the decoder?
> > > > >
> > > > > Section 8
> > > > >
> > > > >    and important considerations in [RFC7201].  Applications =
SHOULD use
> > > > >    one or more appropriate strong security mechanisms.  The =
rest of this
> > > > >    section discusses the security-impacting properties of the =
payload
> > > > >    format itself.
> > > > >
> > > > > I thought we described TSVCIS itself (much earlier in the
> > > > > document) as
> > > requiring encryption for some data; wouldn't that translate to a =
"MUST"
> > > > > here and not a "SHOULD"?
> > > > >
> > > > >
> > > > >
> > >
> =20

------=_NextPart_001_002D_01D60D9B.9E56D0F0
Content-Type: text/html;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3DUTF-8">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
16.0.12527.20242">
<TITLE>RE: Benjamin Kaduk's Discuss on draft-ietf-payload-tsvcis-03: =
(with DISCUSS and COMMENT)</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Hi =
Ben,</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">With this =
social</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT =
FACE=3D"Calibri">distancing situation, I'm finally catching up on open =
items myself.&nbsp; I have made the changes as we have discussed and =
incorporated</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT FACE=3D"Calibri">your =
suggestions.&nbsp; I believe the changes are fully contained in the two =
paragraphs below:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Section 2 (last =
paragraph) - Clarification for octet count</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">(was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">In order to =
accommodate a varying amount of TSVCIS augmented =
speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">data,</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><U> <FONT FACE=3D"Calibri">it =
is only necessary to specify the number of octets</FONT></U></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><U><FONT FACE=3D"Calibri">containing =
the packed TSVCIS parameters</FONT></U></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT FACE=3D"Calibri">.&nbsp; The encoding to do so =
is</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">presented in =
Section 3.2.&nbsp; TSVCIS specifically uses the NRL VDR in =
two</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">configurations =
using</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><U> <FONT FACE=3D"Calibri">15 =
and 35 packed octet parameters</FONT></U></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT FACE=3D"Calibri"> [TSVCIS].&nbsp; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">(now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">In order to =
accommodate a varying amount of TSVCIS augmented =
speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">data,</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><U> <FONT FACE=3D"Calibri">an =
octet count specifies the number of octets =
representing</FONT></U></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><U><FONT FACE=3D"Calibri">the packed =
TSVCIS parameters</FONT></U></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">.&nbsp; The encoding to do so is presented =
in</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Section =
3.2.&nbsp; TSVCIS specifically uses the NRL VDR in two</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">configurations =
using</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><U> <FONT FACE=3D"Calibri">a =
fixed set of 15 and 35 packed octet</FONT></U></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><U><FONT FACE=3D"Calibri">parameters =
in a</FONT></U></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><U> <FONT =
FACE=3D"Calibri">standardized</FONT></U></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><U><FONT FACE=3D"Calibri"> order</FONT></U></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT FACE=3D"Calibri"> [TSVCIS].&nbsp; =
</FONT></SPAN></P>
<BR>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Section 3.1 =
(first sentence in last paragraph) - Clarification for CODA, =
CODB</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">(was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">It should be =
noted that CODB for MELPe 600 bps mode MAY deviate =
from</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">the value in =
Table 1 when bit 55 is used</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><U> <FONT FACE=3D"Calibri">as an end-to-end framing =
bit</FONT></U></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">(now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">It should be =
noted that CODB for MELPe 600 bps mode MAY deviate =
from</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">the value in =
Table 1 when bit 55 is used</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><U> <FONT FACE=3D"Calibri">as an alternating =
1/0</FONT></U></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><U><FONT FACE=3D"Calibri">end-to-end =
framing bit</FONT></U></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">.&nbsp; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Ben, I believe =
this addresses your comments and requests for clarifications as per our =
email discussion chain be</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">low.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Thanks for you =
comments and with your concurrence (and my home computer's cooperation), =
I will post a new draft hopefully acceptable for final =
approval.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Regards to all =
and stay</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT FACE=3D"Calibri">on =
the good side of Darwin.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">Victor</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN></P>
<BR>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">-----Original =
Message-----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">From: Benjamin =
Kaduk &lt;kaduk@mit.edu&gt; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Sent: Friday, =
February 14, 2020 2:43 PM</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">To: =
victor.demjanenko@vocal.com; 'Barry Leiba' =
&lt;barryleiba@computer.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Cc: 'Roni Even =
(A)' &lt;roni.even@huawei.com&gt;; 'The IESG' &lt;iesg@ietf.org&gt;; =
'Catherine Meadows' &lt;catherine.meadows@nrl.navy.mil&gt;; 'IETF =
SecDir' &lt;secdir@ietf.org&gt;; draft-ietf-payload-tsvcis@ietf.org; =
'Ali Begen' &lt;ali.begen@networked.media&gt;; avtcore-chairs@ietf.org; =
avt@ietf.org; 'Dave Satterlee (Vocal)' &lt;Dave.Satterlee@vocal.com&gt;; =
'IETF discussion list' &lt;ietf@ietf.org&gt;; =
draft-ietf-payload-tsvcis.all@ietf.org</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Subject: Re: =
Benjamin Kaduk's Discuss on draft-ietf-payload-tsvcis-03: (with DISCUSS =
and COMMENT)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Hi =
Barry,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">As Victor =
notes, this one was/is waiting on me; he did reply (offlist) =
on</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">15 January but =
I seem to have missed it amid a deluge of other mail that arrived at =
that time.&nbsp; Thanks for the reminder, and thanks Victor for =
re-sending the comments.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">(inline)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">On Fri, Feb 14, =
2020 at 08:20:54AM -0500, victor.demjanenko@vocal.com =
wrote:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; HI =
Barry,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Thanks for =
recalling this was still outstanding.&nbsp; I had emailed Ben just after =
the holidays and did not realize we had no response.&nbsp; The below is =
what we suggested to Ben to address concerns he =
raised.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
--------------------</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Hi =
Ben,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Hope your =
holidays were good.&nbsp; Our were both good and busy.&nbsp; Deliveries =
for two NASA projects and the holidays kept us from responding =
sooner.&nbsp; But we do want to get this draft =
completed.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; With your =
permission, I=E2=80=99d like to address your comments directly, resolve =
what changes we should make and then publish a new version with a =
summary of our out-of-band discussions.&nbsp; We don=E2=80=99t have a =
lot of experience with drafting such documents and would like to know =
exactly what is needed to make this draft acceptable.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; I believe =
there are two comments/issues to address:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
1)&nbsp;&nbsp;&nbsp; CODA, CODB</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Your =
comment ends by stating:&nbsp; =E2=80=9C(Or, of course, the use of CODB =
as an alternating 1/0 bit as the framing usage could be documented =
instead.)=E2=80=9D&nbsp; We can do this as follows:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
(original)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; It should =
be noted that CODB for MELPe 600 bps mode MAY deviate =
from</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; the value in Table 1 when bit 55 =
is used as an end-to-end framing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; bit. Frame decoding would remain =
distinct as CODA being zero on its</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; own would indicate a 7-byte =
frame for either 2400 or 600 bps rate and</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; the use of 600 bps speech coding =
could be deduced from the RTP</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; timestamp (and anticipated by =
the SDP negotiations).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; (adding =
=E2=80=9Calternating 1/0=E2=80=9D)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; It should =
be noted that CODB for MELPe 600 bps mode MAY deviate =
from</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; the value in Table 1 when bit 55 =
is used as an alternating 1/0 end-to-end framing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; bit. Frame decoding would remain =
distinct as CODA being zero on its</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; own would indicate a 7-byte =
frame for either 2400 or 600 bps rate and</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; the use of 600 bps speech coding =
could be deduced from the RTP</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; timestamp (and anticipated by =
the SDP negotiations).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; I think =
this change would be sufficient to address your concern about what to =
expect for CODB.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">This looks like =
the minimal sufficient change, yes.&nbsp; (I use =
&quot;minimal&quot;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">because I would =
say more if I was writing it, but I don't think I can insist that you =
write it the way I would -- it's your document after =
all!)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
2.&nbsp;&nbsp;&nbsp; Packing and unpacking</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; You are =
correct that I am trying to vaguely describe a middle layer shim that is =
neither RTP nor speech coder.&nbsp; So it definitely does need to be =
clear.&nbsp; The vagueness comes from the speech coder description being =
a FOUO document.&nbsp; Its now unclassified so I can potentially say =
more (and I did make some enhancements of the parameter description =
already).&nbsp; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; So I am =
trying to understand exactly what you think is vague in our current =
description:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; TSVCIS =
augmented speech data is derived from the signal =
processing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; and data already performed by =
the MELPe speech coder.&nbsp; For the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; purposes of this specification, =
only the general parameter nature of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; TSVCIS will be =
characterized.&nbsp; Depending on the bandwidth =
available</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; (and FEC requirements), a =
varying number of TSVCIS-specific speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; coder parameters need to be =
transported.&nbsp; These are first byte-packed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; and then conveyed from encoder =
to decoder.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; Byte packing of TSVCIS speech =
data into packed parameters is</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; processed as per the following =
example:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Three-bit =
field: bits A, B, and C (A is MSB, C is LSB)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Five-bit =
field: bits D, E, F, G, and H (D is MSB, H is LSB)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp; =
MSB&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
LSB</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
7</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------+------+------+------+------+------+------+------+</FONT></SPAN></=
P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp; H&nbsp; |&nbsp;&nbsp; G&nbsp; |&nbsp;&nbsp; F&nbsp; =
|&nbsp;&nbsp; E&nbsp; |&nbsp;&nbsp; D&nbsp; |&nbsp;&nbsp; C&nbsp; =
|&nbsp;&nbsp; B&nbsp; |&nbsp;&nbsp; A&nbsp; | </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------+------+------+------+------+------+------+------+</FONT></SPAN></=
P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; This packing method places the =
three-bit field &quot;first&quot; in the lowest</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; bits followed by the next =
five-bit field.&nbsp; Parameters may be split</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; between octets with the most =
significant bits in the earlier octet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; Any unfilled bits in the last =
octet MUST be filled with zero.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">[not actually =
relevant to the Discuss part, but if there is always exactly one 3-bit =
parameter and one 5-bit parameter, then this text allowing splitting =
across octets will never be used and is potentially confusing to =
mention.]</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; In order to accommodate a =
varying amount of TSVCIS augmented speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; data, it is only necessary to =
specify the number of octets containing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; the packed TSVCIS =
parameters.&nbsp; The encoding to do so is presented </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
in</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">I think the =
&quot;only necessary to specify the number of octets&quot; is the key =
stumbling point, for me -- I need to know the number of octets as well =
as the order of the parameters within the list, which is more =
information than just the number of octets.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; Section 3.2.&nbsp; TSVCIS =
specifically uses the NRL VDR in two</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;&nbsp;&nbsp;&nbsp; configurations using 15 and 35 =
packed octet parameters [TSVCIS].&nbsp; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">I think I =
failed to internalize the &quot;two configurations using 15 and 35 =
packed octet parameters&quot; the first time I read the document, as =
this does help give the reader a clue that [TSVCIS] gives a good picture =
of what parameters go where.&nbsp; So it seems like we could easily =
append to that, for &quot;using a fixed set of 15 and 35 packed octet =
parameters in a fixed order [TSVCIS]&quot; and that would resolve my =
concerns.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; The speech =
coder description of the parameters is the following:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt;&nbsp; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; So the =
three bit pitch is first (bits 56 to 58), followed by a five bit =
amplitude (bits 59 to 63) and then an array of spectral components, each =
8-bit wide (starting at bit 64).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">[And maybe =
TSVCIS specifes that the spectral components are derived from some =
fundamental harmonic decomposition that naturally quantizes to a =
number-of-parameters/accuracy tradeoff with a natural order.&nbsp; If =
so, we could also rely on that instead of my proposed change above; let =
me know if you want to explore that path further.]</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Based on =
this information, I=E2=80=99m not sure what we should add to our =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; draft to =
make the description of packing/unpacking clearer.&nbsp; Can you =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; make any =
suggestions or does this table help you with what you did not =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
know?&nbsp; (I don=E2=80=99t think I should put this table into the =
draft RFC </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
however.)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Hopefully the =
above helps to clarify.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">Thanks, and =
sorry for the delay.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">-Ben</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Thanks for =
your attention and comments.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Victor =
&amp; Dave</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
-----Original Message-----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; From: =
Barry Leiba &lt;barryleiba@computer.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Sent: =
Friday, February 14, 2020 7:38 AM</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; To: =
Benjamin Kaduk &lt;kaduk@mit.edu&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Cc: =
victor.demjanenko@vocal.com; Roni Even (A) &lt;roni.even@huawei.com&gt;; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; The IESG =
&lt;iesg@ietf.org&gt;; Catherine Meadows </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&lt;catherine.meadows@nrl.navy.mil&gt;; IETF SecDir =
&lt;secdir@ietf.org&gt;; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
draft-ietf-payload-tsvcis@ietf.org; Ali Begen </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&lt;ali.begen@networked.media&gt;; avtcore-chairs@ietf.org; =
avt@ietf.org; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Dave =
Satterlee (Vocal) &lt;Dave.Satterlee@vocal.com&gt;; IETF discussion =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; list =
&lt;ietf@ietf.org&gt;;&nbsp; draft-ietf-payload-tsvcis.all@ietf.orgygv =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; Subject: =
Re: Benjamin Kaduk's Discuss on draft-ietf-payload-tsvcis-03: =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; (with =
DISCUSS and COMMENT)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; This is =
still outstanding, since November.&nbsp; Victor, where are we on this =
one?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
Barry</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; On Mon, =
Nov 25, 2019 at 1:46 AM Benjamin Kaduk &lt;kaduk@mit.edu&gt; =
wrote:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; Hi =
Victor,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; On =
Tue, Nov 19, 2019 at 03:14:21PM -0500, victor.demjanenko@vocal.com =
wrote:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Hi Ben,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Sorry I overlooked sending you a response.&nbsp; I would like to =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
address the two concerns you have by explaining what the speech coders =
are doing.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
Thanks for the extra clarifications.&nbsp; To supply one of my own: I'm =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; not =
concerned that the protocol doesn't work as implemented, but =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; just =
want to make sure that the document includes enough information =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; to =
admit new implementations without guesswork.&nbsp; That is to say, =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&quot;either tell me how to do it or tell me where to look that tells me =
how to do it&quot;.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
WRT to 600 bps MELP, there is one TSVCIS mode that uses one bit =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
beyond the 54-bit frame for MELP 600 as a frame sync which alternates =
between frames.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
With two or more MELP 600bps frames in one RTP packet, if any =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
frame indicates 600 bps by CODA being 0 and CODB being 1, then we =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
know the stream is 600bps.&nbsp; If there is a single frame in an RTP =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
packet, you can still deduce this by looking at every other RTP =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
packet (every other MELP 600bps</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
frame) and by the timestamp advance.&nbsp; Most likely the two ends =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
would negotiate 600 bps in SDP anyways so there really should not =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
be a problem.&nbsp; I know it's not pretty but its workable.&nbsp; I =
hope </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
this explanation helps you with the concerns for this =
issue.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; In =
this case, the use as an &quot;end-to-end framing bit&quot; (i.e., the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
alternating behavior you describe above) is not explicitly stated; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; one =
might imagine a scheme where the framing usage is to have the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; bit =
cycle through 1, 1, 0, and 0, or some other scheme.&nbsp; I'd suggest =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; to =
note in the document that if any instance of (CODA, CODB) =3D=3D (0, =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; 1) is =
observed, then the 600bps mode is in use.&nbsp; It might also be =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
helpful to include the observation that two successive MELPe =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
payloads with CODA =3D=3D CODB =3D=3D 0 indicates the 2400bps mode (and =
that </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
seeing them in a single RTP packet is decisive, whereas additional =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
information about packet non-loss would be needed in the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
one-MELPe-frame-per-RTP-packet case), but that would be a fair bit =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; of =
additional text and might be diminishing returns.&nbsp; (Or, of =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
course, the use of CODB as an alternating 1/0 bit as the framing =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; usage =
could be documented</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
instead.)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
As for the TSVCIS parameter packing/unpacking, this is really =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
simple.&nbsp; There is exactly on three bit parameter, exactly one five =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
bit parameter and a variable number of eight bit parameters.&nbsp; In =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
our view, the speech coder itself (or a wrapper for it) is =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
responsible for preparing the block of octets.&nbsp; RTP then just =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
transports it.&nbsp; On receive, the complementary wrapper reverses the =
packing operation.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
I hope this clarifies and explains the simplicity.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
That's exactly what I expected to happen; however, it's not what I =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
believe the current text of the document is describing.&nbsp; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
Specifically, I think that the current text implies that the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&quot;preparing the block of octets&quot; and &quot;complementary =
wrapper reverses </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; the =
packing operation&quot; are supposed to be part of the RTP payload =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
format that this document describes, but this document does not have =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
enough information to actually perform those operations =
reversibly.&nbsp; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; If =
the packing is to be done in the speech coder, then this document =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
doesn't need to talk about the packing at all (e.g., at the end of =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
Section 2); if we need to keep the packing/wrapper in this document =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; then =
we need to indicate that there's a defined priority order for =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; the =
(8-octet) TSVCIS parameters in the TSVCIS references, to allow the =
packing/unpacking to be deterministic.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
Thanks,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
Ben</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
-----Original Message-----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
From: Benjamin Kaduk &lt;kaduk@mit.edu&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Sent: Thursday, October 31, 2019 8:12 PM</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
To: Barry Leiba &lt;barryleiba@computer.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Cc: victor.demjanenko@vocal.com; Roni Even (A) </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&lt;roni.even@huawei.com&gt;; The IESG &lt;iesg@ietf.org&gt;; Catherine =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Meadows &lt;catherine.meadows@nrl.navy.mil&gt;; IETF SecDir =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&lt;secdir@ietf.org&gt;; draft-ietf-payload-tsvcis@ietf.org; Ali Begen =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&lt;ali.begen@networked.media&gt;; avtcore-chairs@ietf.org; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
avt@ietf.org; Dave Satterlee (Vocal) &lt;Dave.Satterlee@vocal.com&gt;; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
IETF discussion list &lt;ietf@ietf.org&gt;; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
draft-ietf-payload-tsvcis.all@ietf.org</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Subject: Re: Benjamin Kaduk's Discuss on</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
draft-ietf-payload-tsvcis-03: (with DISCUSS and =
COMMENT)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
I don't think so, unfortunately.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
I do see the clarification about CODB's potential for deviation =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
from Table 1, that only the 600 bps MELPe is allowed to deviate, =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
and that CODA gets us to &quot;it's one of 2400 or 600 bps&quot; and the =
RTP </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
timestamp disambiguates that</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
600 bps is in use.&nbsp; But, it seems that this means that the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
recipient in general should not rely on CODB to differentiate 600 =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
from 2400 bps, and instead is more robustly implemented by =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
*always* using the RTP timestamp to detect 600 bps, since that =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
will always work and CODB will sometimes not work under conditions =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
not fully specified here.&nbsp; So, if we are unwilling or unable to =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
clarify what those conditions are (e.g., whether at a minimum =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
mutual agreement is required), then I think we need to describe =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
this procedure of consulting the RTP timestamp as the default behavior =
and avoid giving the impression that CODB should be used to do =
so.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Additionally, I don't see anything to address my concern about =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
TSVCIS parameter decoding.&nbsp; To be clear, the procedure I see this =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
document describing is that:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
- TSVCIS gives parameters (and their lengths in bits) to the =
codec</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;&nbsp;&nbsp; described in this document</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
- this document specifies how to densely encode those parameters into =
a</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;&nbsp;&nbsp; byetstream</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
- RTP transmits that encoded bytestream to the peer</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
- the codec specified by this is responsible for turning that =
encoded</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;&nbsp;&nbsp; bystream back into a list of TSVCIS parameters (and =
their length </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
in bits)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
I don't see how that last step is attainable with only the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
information provided by this document.&nbsp; I *assume* that one of the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
TSVCIS specifications has a canonical (ordered) listing of =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
parameters, and that the list of parmeters given to this codec in =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
the first step will always be an initial prefix of that list, but =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
that's just me guessing at how to make sense of the stated =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
procedure given insufficient information.&nbsp; I don't think it's =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
appropriate to make the reader of an RFC guess at what to do; we =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
need to either say how to do it or give a pointer to an external =
reference that does.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
-Ben</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
On Tue, Oct 29, 2019 at 02:26:09PM -0400, Barry Leiba =
wrote:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; Ben, does the -04 version address everything?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; Barry</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; On Thu, Oct 24, 2019 at 1:42 PM &lt;victor.demjanenko@vocal.com&gt; =
wrote:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I forgot to address security comments in one email.&nbsp; The =
changes are:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 8, second paragraph - Suggested edit by =
reviewer</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; This RTP payload format and the TSVCIS =
decoder do not exhibit any</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; significant non-uniformity in the =
receiver-side computational</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; complexity for packet processing and thus =
are unlikely to pose a</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; denial-of-service threat due to the receipt =
of pathological data.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Additionally, the RTP payload format does =
not contain any active</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; content.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; This RTP payload format and the TSVCIS =
decoder, to the best of our</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; knowledge, do not exhibit any significant =
non-uniformity in the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; receiver-side computational complexity for =
packet processing and thus</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; are unlikely to pose a denial-of-service =
threat due to the receipt of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; pathological data. Additionally, the RTP =
payload format does not</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; contain any active =
content.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 8, third paragraph - Suggested edit by =
reviewer</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Please see the security considerations =
discussed in [RFC6562]</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; regarding VAD and its effect on =
bitrates.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Please see the security considerations =
discussed in [RFC6562]</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; regarding Voice Activity Detect (VAD) and =
its effect on bitrates.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Victor</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; -----Original Message-----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; From: victor.demjanenko@vocal.com </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;victor.demjanenko@vocal.com&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Sent: Thursday, October 24, 2019 10:05 AM</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; To: 'Roni Even (A)' &lt;roni.even@huawei.com&gt;; 'Benjamin =
Kaduk'</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;kaduk@mit.edu&gt;; 'The IESG' =
&lt;iesg@ietf.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Cc: draft-ietf-payload-tsvcis@ietf.org; 'Ali =
Begen'</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;ali.begen@networked.media&gt;; avtcore-chairs@ietf.org; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; avt@ietf.org; 'Dave Satterlee (Vocal)'</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;Dave.Satterlee@vocal.com&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Subject: RE: Benjamin Kaduk's Discuss on</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; draft-ietf-payload-tsvcis-03: (with DISCUSS and =
COMMENT)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Hi Everyone,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; First we want to thank everyone for their review and comments =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; for this</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
draft RFC.&nbsp; We believe we reviewed all the comments and =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
suggestions and incorporated them adequately in the next draft =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
(04).&nbsp; We'd like to send out this list of exact changes in case =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
anyone has additional comments or thinks the clarifications are =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
inadequate.&nbsp; We would be most happy to address concerns before =
publishing draft 04 tomorrow.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; With so many emails from a half dozen or more reviewers, we =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; apologize</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
that we cannot address each sender individually.&nbsp; We hope this =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
detail is sufficient for everyone.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Again, many thanks to all.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Victor &amp; Dave</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; =
--------------------------------------------------------------</FONT></SP=
AN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --------------------------</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 1.1 - Suggested reference to RFC 8088 =
added.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Best current practices for writing an RTP =
payload format</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; specification were followed =
[RFC2736].</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Best current practices for writing an RTP =
payload format</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; specification were followed [RFC2736] =
[RFC8088].</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 2, paragraphs 3 and 4 - Suggested edits by =
reviewers</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; In addition to the augmented speech data, =
the TSVCIS specification</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; identifies which speech coder and framing =
bits are to be encrypted,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and how they are protected by forward error =
correction (FEC)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; techniques (using block codes).&nbsp; At the =
RTP transport layer, only the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; speech coder related bits need to be =
considered and are conveyed in</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; unencrypted form.&nbsp; In most IP-based =
network deployments, standard</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; link encryption methods (SRTP, VPNs, FIPS =
140 link encryptors or Type</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; 1 Ethernet encryptors) would be used to =
secure the RTP speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; contents.&nbsp; Further, it is desirable to =
support the highest voice</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; quality between endpoints which is only =
possible without the overhead</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; of FEC.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS augmented speech data is derived from =
the signal processing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and data already performed by the MELPe =
speech coder.&nbsp; For the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; purposes of this specification, only the =
general parameter nature of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS will be characterized.&nbsp; =
Depending on the bandwidth available</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; (and FEC requirements), a varying number of =
TSVCIS specific speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; coder parameters need to be =
transported.&nbsp; These are first byte-packed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and then conveyed from encoder to =
decoder.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; In addition to the augmented speech data, =
the TSVCIS specification</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; identifies which speech coder and framing =
bits are to be encrypted,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and how they are protected by forward error =
correction (FEC)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; techniques (using block codes).&nbsp; At the =
RTP transport layer, only the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; speech-coder-related bits need to be =
considered and are conveyed in</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; unencrypted form.&nbsp; In most IP-based =
network deployments, standard</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; link encryption methods (SRTP, VPNs, FIPS =
140 link encryptors or Type</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; 1 Ethernet encryptors) would be used to =
secure the RTP speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; contents.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS augmented speech data is derived from =
the signal processing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and data already performed by the MELPe =
speech coder.&nbsp; For the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; purposes of this specification, only the =
general parameter nature of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS will be characterized.&nbsp; =
Depending on the bandwidth available</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; (and FEC requirements), a varying number of =
TSVCIS-specific speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; coder parameters need to be =
transported.&nbsp; These are first byte-packed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and then conveyed from encoder to =
decoder.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3, last sentence paragraph 3 - Suggested edit by =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; reviewer</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; When more than one codec data frame =
is</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; present in a single RTP packet, the =
timestamp is, as always, that of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the oldest data frame represented in the RTP =
packet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; When more than one codec data frame =
is</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; present in a single RTP packet, the =
timestamp specified is that of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the oldest data frame represented in the RTP =
packet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3.1, last paragraph - Clarified permission for MELP =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; 600 end-to-end framing bit</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; It should be noted that CODB for both the =
2400 and 600 bps modes MAY</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; deviate from the values in Table 1 when bit =
55 is used as an end-to-</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; end framing bit.&nbsp; Frame decoding would =
remain distinct as CODA being</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; zero on its own would indicate a 7-byte =
frame for either rate and the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; use of 600 bps speech coding could be =
deduced from the RTP timestamp</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; (and anticipated by the SDP =
negotiations).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; It should be noted that CODB for MELPe 600 =
bps mode MAY deviate from</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the value in Table 1 when bit 55 is used as =
an end-to-end framing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; bit. Frame decoding would remain distinct as =
CODA being zero on its</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; own would indicate a 7-byte frame for either =
2400 or 600 bps rate and</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the use of 600 bps speech coding could be =
deduced from the RTP</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; timestamp (and anticipated by the SDP =
negotiations).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3.2, first paragraph - Clarifications requested by =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; reviewers</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; The TSVCIS augmented speech data as packed =
parameters MUST be placed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; immediately after a corresponding MELPe 2400 =
bps payload in the same</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; RTP packet.&nbsp; The packed parameters are =
counted in octets (TC).&nbsp; In</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the preferred placement, shown in Figure 6, =
a single trailing octet</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; SHALL be appended to include a two-bit rate =
code, CODA and CODB,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; (both bits set to one) and a six-bit =
modified count (MTC).&nbsp; The</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; special modified count value of all ones =
(representing a MTC value of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; 63) SHALL NOT be used for this format as it =
is used as the indicator</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; for the alternate packing format shown =
next.&nbsp; In a standard</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; implementation, the TSVCIS speech coder uses =
a minimum of 15 octets</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; for parameters in octet packed form.&nbsp; =
The modified count (MTC) MUST</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; be reduced by 15 from the full octet count =
(TC).&nbsp; Computed MTC =3D TC-</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; 15.&nbsp; This accommodates a maximum of 77 =
parameter octets (maximum</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; value of MTC is 62, 77 is the sum of =
62+15).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; The TSVCIS augmented speech data as packed =
parameters MUST be placed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; immediately after a corresponding MELPe 2400 =
bps payload in the same</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; RTP packet.&nbsp; The packed parameters are =
counted in octets (TC).&nbsp; The</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; preferred placement SHOULD be used for =
TSVCIS payloads with TC less</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; than or equal to 77 octets, is shown in =
Figure 6.&nbsp; In the preferred</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; placement, a single trailing octet SHALL be =
appended to include a</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; two-bit rate code, CODA and CODB, (both bits =
set to one) and a six-</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; bit modified count (MTC).&nbsp; The special =
modified count value of all</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; ones (representing a MTC value of 63) SHALL =
NOT be used for this</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; format as it is used as the indicator for =
the alternate packing</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; format shown next.&nbsp; In a standard =
implementation, the TSVCIS speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; coder uses a minimum of 15 octets for =
parameters in octet packed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; form.&nbsp; The modified count (MTC) MUST be =
reduced by 15 from the full</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; octet count (TC).&nbsp; Computed MTC =3D =
TC-15.&nbsp; This accommodates a maximum</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; of 77 parameter octets (maximum value of MTC =
is 62, 77 is the sum of</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; 62+15).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3.3, first paragraph - Suggested edit by =
reviewer</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; A TSVCIS RTP packet consists of zero or more =
TSVCIS coder frames</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; (each consisting of MELPe and TSVCIS coder =
data) followed by zero or</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; one MELPe comfort noise frame.&nbsp; The =
presence of a comfort noise frame</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; can be determined by its rate code bits in =
its last octet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; A TSVCIS RTP packet payload consists of zero =
or more consecutive</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS coder frames (each consisting of =
MELPe 2400 and TSVCIS coder</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; data), with the oldest frame first, followed =
by zero or one MELPe</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; comfort noise frame.&nbsp; The presence of a =
comfort noise frame can be</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; determined by its rate code bits in its last =
octet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3.3, fourth paragraph - Clarification requested by =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; reviewers</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS coder frames in a single RTP packet =
MAY be of different coder</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; bitrates.&nbsp; With the exception for the =
variable length TSVCIS</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; parameter frames, the coder rate bits in the =
trailing byte identify</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the contents and length as per Table =
1.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS coder frames in a single RTP packet =
MAY have varying TSVCIS</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; parameter octet counts.&nbsp; Its packed =
parameter octet count (length) is</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; indicated in the trailing byte(s).&nbsp; All =
MELPe frames in a single RTP</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; packet MUST be of the same coder =
bitrate.&nbsp; For all MELPe coder</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; frames, the coder rate bits in the trailing =
byte identify the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; contents and length as per Table =
1.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 4.1 - Editor note removed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 4.1 - Change controller is now</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Change controller: IETF, contact =
&lt;avt@ietf.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 5, first paragraph - Suggested edits by =
reviewers</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (was)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; A primary application of TSVCIS is for radio =
communications of voice</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; conversations, and discontinuous =
transmissions are normal.&nbsp; When</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS is used in an IP network, TSVCIS RTP =
packet transmissions may</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; cease and resume frequently.&nbsp; RTP =
synchronization source (SSRC)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; sequence number gaps indicate lost packets =
to be filled by PLC, while</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; abrupt loss of RTP packets indicates =
intended discontinuous</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; transmissions.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (now)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; A primary application of TSVCIS is for radio =
communications of voice</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; conversations, and discontinuous =
transmissions are normal.&nbsp; When</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS is used in an IP network, TSVCIS RTP =
packet transmissions may</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; cease and resume frequently.&nbsp; RTP =
synchronization source (SSRC)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; sequence number gaps indicate lost packets =
to be filled by Packet</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Loss Concealment (PLC), while abrupt loss of =
RTP packets indicates</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; intended discontinuous transmissions.&nbsp; =
Resumption of voice</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; transmission SHOULD be indicated by the RTP =
marker bit (M) set to 1.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 10 - Added reference</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (added)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; [RFC8088]&nbsp; Westerlund, M., &quot;How to =
Write an RTP Payload Format&quot;,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; =
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp; RFC 8088, DOI 10.17487/RFC8088, May =
2017,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; =
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp; &lt;<A =
HREF=3D"http://www.rfc-editor.org/info/rfc8088">http://www.rfc-editor.org=
/info/rfc8088</A>&gt;.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; =
--------------------------------------------------------------</FONT></SP=
AN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; -----------------------------</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; -----Original Message-----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; From: Roni Even (A) =
&lt;roni.even@huawei.com&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Sent: Sunday, October 6, 2019 2:09 AM</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; To: victor.demjanenko@vocal.com; 'Benjamin Kaduk' =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;kaduk@mit.edu&gt;; 'The IESG' =
&lt;iesg@ietf.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Cc: draft-ietf-payload-tsvcis@ietf.org; 'Ali =
Begen'</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;ali.begen@networked.media&gt;; avtcore-chairs@ietf.org; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; avt@ietf.org; 'Dave Satterlee (Vocal)'</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;Dave.Satterlee@vocal.com&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Subject: RE: Benjamin Kaduk's Discuss on</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; draft-ietf-payload-tsvcis-03: (with DISCUSS and =
COMMENT)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Hi,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; About the reference to TSVCIS.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; The RTP payload is about how to encapsulate the payload in an =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; RTP</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
packet. The objective is to define how an RTP stack can insert the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
tsvcis frames and&nbsp; extract the tsvcis frames from the RTP =
packet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Typically it is not required to understand the payload structure =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
in order to be able to perform the encapsulation.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; This is why the reference to the payload is Informational and =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; we did not require to have it publically available.&nbsp; If =
there </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; is a need to understand the payload itself for the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; encapsulating than we need more information in the RTP payload =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; specification and a publically available normative reference. =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I think this is not the case here</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Roni Even</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; AVTCore co-chair (ex Payload)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; -----Original Message-----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; From: victor.demjanenko@vocal.com </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; [<A =
HREF=3D"mailto:victor.demjanenko@vocal.com">mailto:victor.demjanenko@voca=
l.com</A>]</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Sent: Saturday, October 05, 2019 12:18 AM</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; To: 'Benjamin Kaduk'; 'The IESG'</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Cc: draft-ietf-payload-tsvcis@ietf.org; 'Ali =
Begen';</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
avtcore-chairs@ietf.org; avt@ietf.org; 'Victor Demjanenko, Ph.D.'; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
'Dave Satterlee (Vocal)'</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Subject: RE: Benjamin Kaduk's Discuss on</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; draft-ietf-payload-tsvcis-03: (with DISCUSS and =
COMMENT)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Everyone,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Thanks for the comments.&nbsp; I think I mis-understood the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ambiguity with</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
respect to to changing rates within a RTP packet.&nbsp; That was not =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
plan.&nbsp; An RTP packet must have MELP speech frames of the same =
rate.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
What is possible is that the amount of augmented TSVCIS speech =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
data may vary from one speech frame to the next.&nbsp; This allows for =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
a dynamic VDR as suggested by the NRL paper.&nbsp; So an RTP packet may =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
have varying TSVCIS data but must always have MELPe 2400 =
data.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Again backwards parsing is necessary but the timestamp =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; uniformly</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
increments 22.5msec per combined MELP/TSVCIS speech =
frame.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; The NRL is a good public reference on the VDR aspects.&nbsp; =
The </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; actual</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
TSVCIS spec we had was FOUO so we could not replicate its detail.&nbsp; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
(I believe a later spec is public or at least partially public.&nbsp; I =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
am trying to get this.)&nbsp; The opaque data is pretty obvious with the =
TSVCIS spec in hand.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; We will address the issues/concerns raised next week.&nbsp; =
Other </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; business</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
had priority.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Thank you and enjoy the weekend.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Regards,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Victor &amp; Dave</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; -----Original Message-----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; From: Benjamin Kaduk via Datatracker =
&lt;noreply@ietf.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Sent: Wednesday, October 2, 2019 10:40 PM</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; To: The IESG &lt;iesg@ietf.org&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Cc: draft-ietf-payload-tsvcis@ietf.org; Ali Begen =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; &lt;ali.begen@networked.media&gt;; avtcore-chairs@ietf.org; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ali.begen@networked.media; avt@ietf.org</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Subject: Benjamin Kaduk's Discuss on =
draft-ietf-payload-tsvcis-03:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (with DISCUSS and COMMENT)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Benjamin Kaduk has entered the following ballot position =
for</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; draft-ietf-payload-tsvcis-03: Discuss</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; When responding, please keep the subject line intact and reply =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; to all email addresses included in the To and CC lines. (Feel =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; free to cut this introductory paragraph, =
however.)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Please refer to</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; <A =
HREF=3D"https://www.ietf.org/iesg/statement/discuss-criteria.html">https:=
//www.ietf.org/iesg/statement/discuss-criteria.html</A></FONT></SPAN></P>=


<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; for more information about IESG DISCUSS and COMMENT =
positions.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; The document, along with other ballot positions, can be found =
here:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; <A =
HREF=3D"https://datatracker.ietf.org/doc/draft-ietf-payload-tsvcis/">http=
s://datatracker.ietf.org/doc/draft-ietf-payload-tsvcis/</A></FONT></SPAN>=
</P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; =
--------------------------------------------------------------</FONT></SP=
AN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; DISCUSS:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; =
--------------------------------------------------------------</FONT></SP=
AN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I support Magnus' point about the time-ordering of adjacent =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; frames in a</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
packet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Additionally, I am not sure that there's quite enough here to =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; be</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
interoperably implementable.&nbsp; Specifically, we seem to be lacking =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
a description of how an encoder or decoder knows which TSVCIS =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
parameters, and in what order, to byte-pack or unpack, =
respectively.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
One might surmise that there is a canonical listing in [TSVCIS], =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
but this document does not say that, and furthermore [TSVCIS] is only =
listed as an informative reference.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
(I couldn't get my hands on my copy, at least on short notice.)&nbsp; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
If we limited ourselves to treating the TSVCIS parameters as an =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
entirely opaque blob (codec, convey these N octets to the peer =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
with the appropriate one- or two-byte trailer for payload type =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
identification and framing), that would be interoperably =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
implementable, since the black-box bits are up to some other codec to =
interpret.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; In a similar vein, we mention but do not completely specify =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
potential for using CODB as an end-to-end framing bit, in =
Section</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
3.1 (see Comment), which is not interoperably implementable without =
further details.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; =
--------------------------------------------------------------</FONT></SP=
AN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; COMMENT:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; =
--------------------------------------------------------------</FONT></SP=
AN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; ----</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; --</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Where is [TSVCIS] available?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Is [NRLVDR] the same as</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; <A =
HREF=3D"https://apps.dtic.mil/dtic/tr/fulltext/u2/a588068.pdf">https://ap=
ps.dtic.mil/dtic/tr/fulltext/u2/a588068.pdf</A> ?&nbsp; A URL =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; in the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
references would be helpful.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Is additional TSVCIS data only present after 2400bps MELPe and =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; the first</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
thing to get dropped under bandwidth pressure?&nbsp; The abstract and =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
introduction imply this by calling out MELPe 2400 bps speech =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
parameters explicitly, but Section 3 says that TSVCIS augments =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
standard 600, 1200, and</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
2400 bps MELP frames.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; It's helpful that Section 3.3 gives some general guidance for =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; decoding</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
this payload type (&quot;[t]he way to determine the number of =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
TSVCIS/MELPe frames is to identify each frame type and length&quot;), =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
but I think some generic considerations would be very helpful to =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
the reader much earlier, along the lines of &quot;MELPe and TSVCIS data =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
payloads are decoded from the end, using the CODA and CODB (and, =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
if necessary, CODC and others) bits to determine the type of =
payload.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
For MELPe payloads the type also indicates the payload length, =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
whereas for TSVCIS data an additional length field is present, in =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
one of two possible formats.&nbsp; A TSVCIS coder frame consists of a =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
MELPe data payload followed by zero or one TSVCIS data payload; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
after the TSVCIS payload's presence/length is determined, then the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
preceding MELPe payload can be determined and decoded.&nbsp; Per =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
Section 3.3, multiple TSVCIS frames can be present in a single RTP =
packet.&quot;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
This (or something like it) would also serve to clarify the role of the =
COD* bits, which is otherwise only implicitly =
introduced.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 1.1</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; RFC 2736 is BCP 36 (but it's updated by RFC 8088 which is for =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; some</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
reason an Informational document and not part of BCP =
36?!).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 2</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; In addition to the augmented speech data, =
the TSVCIS specification</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; identifies which speech coder and framing =
bits are to be encrypted,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and how they are protected by forward error =
correction (FEC)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; techniques (using block codes).&nbsp; At the =
RTP transport layer, only the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; speech coder related bits need to be =
considered and are conveyed in</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; unencrypted form.&nbsp; In most IP-based =
network deployments, </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; standard</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Am I reading this correctly that this text is just summarizing =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; what's in</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
the TSVCIS spec in terms of what needs to be in unencrypted form, =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
so the &quot;only the speech coder related bits[...]&quot; is not new =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
information from this document?&nbsp; I'm not sure I agree with the =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
conclusion, regardless -- won't the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
(MELPe) speech coder bits be enough to convey the semantic content =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
of the audio stream, something that one might desire to keep =
confidential?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; link encryption methods (SRTP, VPNs, FIPS =
140 link encryptors or Type</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; 1 Ethernet encryptors) would be used to =
secure the RTP speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; contents.&nbsp; Further, it is desirable to =
support the highest voice</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; quality between endpoints which is only =
possible without the overhead</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; of FEC.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I think I'm missing a step in how this conclusion was =
reached.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS will be characterized.&nbsp; =
Depending on the bandwidth available</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; (and FEC requirements), a varying number of =
TSVCIS specific speech</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; coder parameters need to be =
transported.&nbsp; These are first byte-packed</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and then conveyed from encoder to =
decoder.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Per the Discuss point, how do I know which parameters need to =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; be</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
transported, and in what order?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Byte packing of TSVCIS speech data into =
packed parameters is</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; processed as per the following =
example:</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Three-bit field: bits A, =
B, and C (A is MSB, C is LSB)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Five-bit field: bits D, E, =
F, G, and H (D is MSB, H is</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; LSB)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; =
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
MSB&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
LSB</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; =
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------+------+------+------+------+------+------+------+</FONT></SPAN></=
P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp;&nbsp; =
H&nbsp; |&nbsp;&nbsp; G&nbsp; |&nbsp;&nbsp; F&nbsp; |&nbsp;&nbsp; =
E&nbsp; |&nbsp;&nbsp; D&nbsp; |&nbsp;&nbsp; C&nbsp; |&nbsp;&nbsp; =
B&nbsp; |&nbsp;&nbsp; A&nbsp; |</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; =
+------+------+------+------+------+------+------+------+</FONT></SPAN></=
P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; This packing method places the three-bit =
field &quot;first&quot; in the lowest</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; bits followed by the next five-bit =
field.&nbsp; Parameters may be split</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; between octets with the most significant =
bits in the earlier octet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Any unfilled bits in the last octet MUST be =
filled with zero.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I agree with Adam that this is very unclear.&nbsp; A is the =
MSB of </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
three-bit field but the LSB of the octet overall?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; We probably need an example of splitting a parameter across =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; octets as</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
well, to get the bit ordering right.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3.1</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; It should be noted that CODB for both the =
2400 and 600 bps modes MAY</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; deviate from the values in Table 1 when bit =
55 is used as an end-to-</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; end framing bit.&nbsp; Frame decoding would =
remain distinct as </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; CODA being</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Where is the use of CODB as an end-to-end framing bit =
defined?&nbsp; </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; If we're</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
going to provide neither a complete description of how to do it =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
nor a reference to a better description, we probably shouldn't mention =
it at all.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3.2</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; RTP packet.&nbsp; The packed parameters are =
counted in octets (TC).&nbsp; In</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the preferred placement, shown in Figure 6, =
a single trailing octet</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; SHALL be appended to include a two-bit rate =
code, CODA and </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; CODB,</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I'd consider saying something about this being the preferred =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; format</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (&quot;placement&quot;) due to its shorter length than the =
alternative, </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; and say</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
that it &quot;SHOULD be used for TSVCIS payloads with TC less than or =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
equal to 77 octetes&quot;.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 3.3</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; When a longer packetization interval is used, is that =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; indicated by</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
signaling or RTP timestamps or otherwise?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; TSVCIS coder frames in a single RTP packet =
MAY be of different coder</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; bitrates.&nbsp; With the exception for the =
variable length TSVCIS</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; parameter frames, the coder rate bits in the =
trailing byte identify</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the contents and length as per Table =
1.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Maybe also note that the penultimate octet gives the length =
there?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Information describing the number of frames =
contained in an RTP</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; packet is not transmitted as part of the RTP =
payload.&nbsp; The way to</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; determine the number of TSVCIS/MELPe frames =
is to identify each frame</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; type and length thereby counting the total =
number of octets within</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; the RTP packet.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; terminology nit: if a frame is the combination of MELPe and =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; TSVCIS</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
payload data units then there are two layres of decoding to get a =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
length for the frame, since we have to get the TSVCIS length and then =
the MELPe length.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 4.2</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; Parameter &quot;ptime&quot; cannot be used =
for the purpose of </FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; specifying the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; nit: missing article (&quot;The =
parameter&quot;)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; will be impossible to distinguish which mode =
is about to be used</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; (e.g., when ptime=3D68, it would be =
impossible to distinguish if the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; packet is carrying one frame of 67.5 ms or =
three frames of 22.5 ms).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; So how is the operating mode determined, =
then?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (I think this is the same question I asked =
above)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 4.4</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; For example, if offerer bitrates are =
&quot;2400,600&quot; and answer bitrates</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; are &quot;600,2400&quot;, the initial =
bitrate is 600.&nbsp; If other bitrates are</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; provided by the answerer, any common bitrate =
between the offer and</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; answer MAY be used at any time in the =
future.&nbsp; Activation of these</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; other common bitrates is beyond the scope of =
this document.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; It seems important to specify whether this requires a new O/A =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; exchange</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
or can be done &quot;spontaneously&quot; by just encoding different =
frame types.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; (It seems like the latter is possible, on first glance, and =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; this is implied by Section 3.3's discussion of mixing them in =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; a single</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; packet.)</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 5</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Please expand PLC at first use (not second).</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 6</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I don't understand the PLC usage.&nbsp; Is the idea that a =
</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; receiver, on</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
seeing an SSRC gap, constructs fictitious PLC frames to &quot;fill the =
gap&quot;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; and passes the resulting stream to the =
decoder?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; Section 8</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; and important considerations in =
[RFC7201].&nbsp; Applications SHOULD use</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; one or more appropriate strong security =
mechanisms.&nbsp; The rest of this</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; section discusses the security-impacting =
properties of the payload</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;&nbsp;&nbsp;&nbsp; format itself.</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; I thought we described TSVCIS itself (much earlier in =
the</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; document) as</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
requiring encryption for some data; wouldn't that translate to a =
&quot;MUST&quot;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt; here and not a &quot;SHOULD&quot;?</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; &gt; =
&gt; &gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT FACE=3D"Calibri">&gt; &gt; =
&gt;</FONT></SPAN></P>

<P DIR=3DLTR><SPAN LANG=3D"en-us"><FONT =
FACE=3D"Calibri">&gt;</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT FACE=3D"Arial" SIZE=3D2 =
COLOR=3D"#000000"> &lt;&lt;...&gt;&gt; </FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN></P>

</BODY>
</HTML>
------=_NextPart_001_002D_01D60D9B.9E56D0F0--

------=_NextPart_000_002C_01D60D9B.9E56D0F0
Content-Type: text/plain;
	name="changes_04_05.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename="changes_04_05.txt"

Section 2 (first sentence in last paragraph) - Clarification for octet count

(was)
In order to accommodate a varying amount of TSVCIS augmented speech
data, it is only necessary to specify the number of octets
containing the packed TSVCIS parameters.  The encoding to do so is
presented in Section 3.2.  TSVCIS specifically uses the NRL VDR in two
configurations using 15 and 35 packed octet parameters [TSVCIS].  

(now)
In order to accommodate a varying amount of TSVCIS augmented speech
data, an octect count specifies the number of octets representing
the packed TSVCIS parameters.  The encoding to do so is presented in
Section 3.2.  TSVCIS specifically uses the NRL VDR in two
configurations using a fixed set of 15 and 35 packed octet
parameters in a fixed order [TSVCIS].  


Section 3.1 (first sentence in last paragraph) - Clarification for CODA, CODB

(was)
It should be noted that CODB for MELPe 600 bps mode MAY deviate from
the value in Table 1 when bit 55 is used as an end-to-end framing bit.

(now)
It should be noted that CODB for MELPe 600 bps mode MAY deviate from
the value in Table 1 when bit 55 is used as an alternating 1/0
end-to-end framing bit.  



------=_NextPart_000_002C_01D60D9B.9E56D0F0--


