idnits 2.17.1 draft-ietf-xrblock-rtcp-xr-loss-conceal-11.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (March 29, 2014) is 3675 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'G.711' is mentioned on line 494, but not defined == Missing Reference: 'RFCXXXX' is mentioned on line 962, but not defined ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) Summary: 1 error (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Audio/Video Transport Working Group A. Clark 3 Internet-Draft Telchemy 4 Intended status: Standards Track G. Zorn 5 Expires: September 30, 2014 Network Zen 6 C. Bi 7 STTRI 8 Q. Wu, Ed. 9 Huawei 10 March 29, 2014 12 RTCP XR Report Block for Concealment metrics Reporting on Audio 13 Applications 14 draft-ietf-xrblock-rtcp-xr-loss-conceal-11.txt 16 Abstract 18 This document defines two RTCP XR Report Blocks that allows the 19 reporting of concealment metrics for audio applications of RTP. 21 Status of this Memo 23 This Internet-Draft is submitted in full conformance with the 24 provisions of BCP 78 and BCP 79. 26 Internet-Drafts are working documents of the Internet Engineering 27 Task Force (IETF). Note that other groups may also distribute 28 working documents as Internet-Drafts. The list of current Internet- 29 Drafts is at http://datatracker.ietf.org/drafts/current/. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 This Internet-Draft will expire on September 30, 2014. 38 Copyright Notice 40 Copyright (c) 2014 IETF Trust and the persons identified as the 41 document authors. All rights reserved. 43 This document is subject to BCP 78 and the IETF Trust's Legal 44 Provisions Relating to IETF Documents 45 (http://trustee.ietf.org/license-info) in effect on the date of 46 publication of this document. Please review these documents 47 carefully, as they describe your rights and restrictions with respect 48 to this document. Code Components extracted from this document must 49 include Simplified BSD License text as described in Section 4.e of 50 the Trust Legal Provisions and are provided without warranty as 51 described in the Simplified BSD License. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 56 1.1. Loss Concealment and Concealment Seconds Metrics 57 Reporting Block . . . . . . . . . . . . . . . . . . . . . 3 58 1.2. RTCP and RTCP XR Reports . . . . . . . . . . . . . . . . . 4 59 1.3. Performance Metrics Framework . . . . . . . . . . . . . . 4 60 1.4. Applicability . . . . . . . . . . . . . . . . . . . . . . 4 61 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 62 2.1. Standards Language . . . . . . . . . . . . . . . . . . . . 5 63 2.2. Notations . . . . . . . . . . . . . . . . . . . . . . . . 5 64 3. Loss Concealment Block . . . . . . . . . . . . . . . . . . . . 6 65 3.1. Report Block Structure . . . . . . . . . . . . . . . . . . 6 66 3.2. Definition of Fields in Loss Concealment Metrics Block . . 6 67 4. Concealment Seconds Block . . . . . . . . . . . . . . . . . . 11 68 4.1. Report Block Structure . . . . . . . . . . . . . . . . . . 11 69 4.2. Definition of Fields in Concealed Seconds Metrics Block . 12 70 5. SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . 16 71 5.1. SDP rtcp-xr-attrib Attribute Extension . . . . . . . . . . 16 72 5.2. Offer/Answer Usage . . . . . . . . . . . . . . . . . . . . 16 73 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 74 6.1. New RTCP XR Block Type values . . . . . . . . . . . . . . 17 75 6.2. New RTCP XR SDP Parameters . . . . . . . . . . . . . . . . 17 76 6.3. Contact information for registrations . . . . . . . . . . 17 77 7. Security Considerations . . . . . . . . . . . . . . . . . . . 18 78 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 19 79 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 20 80 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 21 81 10.1. Normative References . . . . . . . . . . . . . . . . . . . 21 82 10.2. Informative References . . . . . . . . . . . . . . . . . . 21 83 Appendix A. Metrics represented using RFC6390 Template . . . . . 22 84 Appendix B. Change Log . . . . . . . . . . . . . . . . . . . . . 29 85 B.1. draft-ietf-xrblock-rtcp-xr-loss-conceal-11 . . . . . . . . 29 86 B.2. draft-ietf-xrblock-rtcp-xr-loss-conceal-09 . . . . . . . . 29 87 B.3. draft-ietf-xrblock-rtcp-xr-loss-conceal-07 . . . . . . . . 29 88 B.4. draft-ietf-xrblock-rtcp-xr-loss-conceal-06 . . . . . . . . 29 89 B.5. draft-ietf-xrblock-rtcp-xr-loss-conceal-05 . . . . . . . . 29 90 B.6. draft-ietf-xrblock-rtcp-xr-loss-conceal-04 . . . . . . . . 29 91 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 31 93 1. Introduction 95 1.1. Loss Concealment and Concealment Seconds Metrics Reporting Block 97 At any instant, the audio output at a receiver may be classified as 98 either 'normal' or 'concealed'. 'Normal' refers to playout of audio 99 payload received from the remote end, and also includes locally 100 generated signals such as announcements, tones and comfort noise. 101 Concealment refers to playout of locally-generated signals used to 102 mask the impact of network impairments or to reduce the audibility of 103 jitter buffer adaptations. 105 This draft defines two new concealment related block types to augment 106 those defined in [RFC3611] for use in a range of RTP applications. 107 These two block types extend packet loss concealment mechanism 108 defined in section 4.7.6 of RFC3611. 110 The first block type provides metrics for actions taken by the 111 receiver to mitigate the effect of packet loss and packet discard. 112 Specifically, the first metric (On-Time Playout Duration) reports the 113 duration of normal playout of data which the receiver obtained from 114 the sender's stream. A second metric (Loss Concealment Duration) 115 reports the total time during which the receiver played out media 116 data which was manufactured locally, because the sender's data for 117 these periods was not available due to packet loss or discard. A 118 similar metric (Buffer Adjustment Concealment Duration) reports the 119 duration of playout of locally-manufactured data replacing data which 120 is unavailable due to adaptation of an adaptive de-jitter buffer. 121 Further metrics (Playout Interrupt Count and Mean Playout Interrupt 122 Size) report the number of times normal playout was interrupted, and 123 the mean duration of these interruptions. 125 Loss Concealment Duration and Buffer Adjustment Concealment Duration 126 are reported separately because buffer adjustment is typically 127 arranged to occur in silence periods so may have very little impact 128 on user experience, whilst loss concealment may occur at any time. 130 The second block type provides metrics for concealment seconds, which 131 are measured at the receiving end of the RTP stream. Specifically, 132 the first metric (Unimpaired Seconds) reports the number of whole 133 seconds occupied only with normal playout of data which the receiver 134 obtained from the sender's stream. The second metric (Concealed 135 Seconds) reports the number of whole seconds during which the 136 receiver played out any locally-generated media data. A third 137 metric, Severely Concealed Seconds (SCS), reports the number of whole 138 seconds during which the receiver played out locally-generated data 139 for more than SCS Threshold. 141 These metrics belongs to the class of transport-related terminal 142 metrics defined in [RFC6792]. 144 1.2. RTCP and RTCP XR Reports 146 The use of RTCP for reporting is defined in [RFC3550]. [RFC3611] 147 defined an extensible structure for reporting using an RTCP Extended 148 Report (XR). This draft defines a new Extended Report block that 149 MUST be used as defined in [RFC3550] and [RFC3611]. 151 1.3. Performance Metrics Framework 153 The Performance Metrics Framework [RFC6390] provides guidance on the 154 definition and specification of performance metrics. The RTP 155 Monitoring Architectures [RFC6792] provides guideline for reporting 156 block format using RTCP XR. The Metrics Block described in this 157 document are in accordance with those guidelines. 159 1.4. Applicability 161 These metrics are applicable to audio applications of RTP and the 162 audio component of Audio/Video applications in which the packet loss 163 concealment machinery is contained at the receiving end to mitigate 164 the impact of network impairments to user's perception of media 165 quality. 167 2. Terminology 169 2.1. Standards Language 171 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 172 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 173 document are to be interpreted as described in RFC2119 [RFC2119]. 175 2.2. Notations 177 This report block makes use of binary fractions. The terminology 178 used is 180 Numeric formats S X:Y 182 where S indicates a two's complement signed representation, X 183 the number of bits prior to the decimal place and Y the number 184 of bits after the decimal place. 186 Hence 8:8 represents an unsigned number in the range 0.0 to 187 255.996 with a granularity of 0.0039. S7:8 would represent the 188 range -127.996 to +127.996. 0:16 represents a proper binary 189 fraction with range 191 0.0 to 1 - 1/65536 = 0.9999847 193 though note that use of flag values at the top of the numeric 194 range slightly reduces this upper limit. For example, if the 195 16- bit values 0xfffe and 0xffff are used as flags for "over- 196 range" and "unavailable" conditions, a 0:16 quantity has range 198 0.0 to 1 - 3/65536 = 0.9999542 200 3. Loss Concealment Block 202 The metrics block described here are intended to be used as described 203 in this section, in conjunction with information from the Measurement 204 Information block [RFC6776]. Instances of this Metrics Block refer 205 by Synchronization source (SSRC) to the separate auxiliary 206 Measurement Information block [RFC6776] which describes measurement 207 periods in use (see [RFC6776] section 4.2). This Metrics Block 208 relies on the measurement period in the Measurement Information block 209 indicating the span of the report and SHOULD be sent in the same 210 compound RTCP packet as the measurement information block. If the 211 measurement period is not received in the same compound RTCP packet 212 as this Metrics Block, this metrics block MUST be discarded. 214 3.1. Report Block Structure 216 Loss Concealment Metrics Block 218 0 1 2 3 219 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 220 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 221 | BT=NLC | I |plc| rsv. | block length=5 | 222 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 223 | SSRC of Source | 224 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 225 | On-time Playout Duration | 226 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 227 | Loss Concealment Duration | 228 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 229 | Buffer Adjustment Concealment Duration | 230 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 231 | Playout Interrupt Count | Reserved. | 232 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 233 | Mean Playout Interrupt Size | 234 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 236 Figure 1: Report Block Structure 238 3.2. Definition of Fields in Loss Concealment Metrics Block 240 Block type (BT): 8 bits 242 A Loss Concealment Metrics Report Block is identified by the 243 constant NLC. 245 [Note to RFC Editor: please replace NLC with the IANA provided 246 RTCP XR block type for this block.] 248 Interval Metric flag (I): 2 bit 250 This field is used to indicate whether the Loss Concealment 251 metrics are Sampled, Interval or Cumulative metrics: 253 I=10: Interval Duration - the reported value applies to the 254 most recent measurement interval duration between successive 255 metrics reports. 257 I=11: Cumulative Duration - the reported value applies to the 258 accumulation period characteristic of cumulative measurements. 260 I=01: Sampled Value - the reported value is a sampled 261 instantaneous value ( Not allowed in this block). 263 I=00: Reserved value- this value is reserved for future use. 265 In this document, Loss Concealment Metrics can only be measured 266 over definite intervals, and cannot be sampled. Senders MUST NOT 267 use the values I=00 or I=01. If a block is received with I=00 or 268 I=01, the receiver MUST discard the block. 270 Packet Loss Concealment Method (plc): 2 bits 272 This field is used to identify the packet loss concealment method 273 in use at the receiver, according to the following code: 275 bits 014-015 277 0 = silence insertion 279 1 = simple replay, no attenuation 281 2 = simple replay, with attenuation 283 3 = enhancement 285 Other values reserved 287 Note that the enhancement method (plc =3 ) for packet loss 288 concealment offers an improved audio quality and a better 289 robustness against packet losses [G.711] and is equivalent to 290 enhanced in section 4.7.6 of [RFC3611]. 292 Reserved (resv): 4 bits 294 These bits are reserved. They MUST be set to zero by senders and 295 ignored by receivers (See [RFC6709] section 4.2). 297 block length: 16 bits 299 The length of this report block in 32-bit words, minus one. For 300 the Loss Concealment Block, the block length is equal to 5. 302 SSRC of source: 32 bits 304 As defined in Section 4.1 of [RFC3611]. 306 On-time Playout Duration: 32 bits 308 'On-time' playout is the uninterrupted, in-sequence playout of 309 valid decoded audio information originating from the remote 310 endpoint. This includes comfort noise during periods of remote 311 talker silence, if VAD [VAD] is used, and locally generated or 312 regenerated tones and announcements. 314 An equivalent definition is that on-time playout is playout of any 315 signal other than those used for concealment. 317 On-time playout duration is expressed in units of RTP timestamp 318 and MUST include both speech and silence intervals, whether VAD is 319 used or not. 321 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 322 MUST be reported to indicate an over-range measurement. If the 323 measurement is unavailable, the value 0xFFFFFFFF MUST be reported. 325 Loss Concealment Duration: 32 bits 327 The duration, expressed in units of RTP timestamp, of audio 328 playout corresponding to Loss-type concealment. 330 Loss-type concealment is reactive insertion or deletion of samples 331 in the audio playout stream due to effective frame loss at the 332 audio decoder. "Effective frame loss" is the event in which a 333 frame of coded audio is simply not present at the audio decoder 334 when required. In this case, substitute audio samples are 335 generally formed, at the decoder or elsewhere, to reduce audible 336 impairment. 338 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 339 MUST be reported to indicate an over-range measurement. If the 340 measurement is unavailable, the value 0xFFFFFFFF MUST be reported. 342 Buffer Adjustment Concealment Duration: 32 bits 344 The duration, expressed in units of RTP timestamp, of audio 345 playout corresponding to Buffer Adjustment-type concealment, if 346 known. 348 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 349 MUST be reported to indicate an over-range measurement. If the 350 measurement is unavailable, the value 0xFFFFFFFF MUST be reported. 352 Buffer Adjustment-type concealment is proactive or controlled 353 insertion or deletion of samples in the audio playout stream due 354 to jitter buffer adaptation, re-sizing or re-centering decisions 355 within the endpoint. 357 Because this insertion is controlled, rather than occurring 358 randomly in response to losses, it is typically less audible than 359 loss-type concealment. For example, jitter buffer adaptation 360 events may be constrained to occur during periods of talker 361 silence, in which case only silence duration is affected, or 362 sophisticated time-stretching methods for insertion/deletion 363 during favorable periods in active speech may be employed. 365 Concealment events which cannot be classified as Buffer 366 Adjustment-type MUST be classified as Loss-type. 368 Playout Interrupt Count: 16 bits 370 The number of interruptions to normal playout which occurred 371 during the reporting period. 373 If the measured value exceeds 0xFFFD, the value 0xFFFE MUST be 374 reported to indicate an over-range measurement. If the 375 measurement is unavailable, the value 0xFFFF MUST be reported. 377 Reserved (resv): 16 bits 379 These bits are reserved. They MUST be set to zero by senders and 380 ignored by receivers (See [RFC6709] section 4.2). 382 Mean Playout Interrupt Size: 32 bits 384 The mean duration, expressed in units of RTP timestamp, of 385 interruptions to normal playout which occurred during the 386 reporting period. 388 If the measured value exceeds 0xFFFD, the value 0xFFFE MUST be 389 reported to indicate an over-range measurement. If the 390 measurement is unavailable, the value 0xFFFF MUST be reported. 392 4. Concealment Seconds Block 394 This sub-block described here is intended to be used as described in 395 this section, in conjunction with information from the Measurement 396 Information block [RFC6776] and provides a description of potentially 397 audible impairments due to lost and discarded packets at the 398 endpoint, expressed on a time basis analogous to a traditional PSTN 399 T1/E1 errored seconds metric. Instances of this Metrics Block refer 400 by Synchronization source (SSRC) to the separate auxiliary 401 Measurement Information block [RFC6776] which describes measurement 402 periods in use (see [RFC6776] section 4.2). This Metrics Block 403 relies on the measurement period in the Measurement Information block 404 indicating the span of the report and SHOULD be sent in the same 405 compound RTCP packet as the measurement information block. If the 406 measurement period is not received in the same compound RTCP packet 407 as this Metrics Block, this metrics block MUST be discarded. 409 The following metrics are based on successive one second intervals as 410 declared by a RTP clock. This RTP clock does not need to be 411 synchronized to any external time reference. The starting time of 412 this clock is unspecified. Note that this implies that the same loss 413 pattern could result in slightly different count values, depending on 414 where the losses occur relative to the particular one-second 415 demarcation points. For example, two loss events occurring 50ms 416 apart could result in either one concealed second or two, depending 417 on the particular one second boundaries used. 419 The seconds in this sub-block are not necessarily calendar seconds. 420 At the tail end of a session, periods of time of less than one second 421 shall be incorporated into these counts if they exceed 500ms and 422 shall be disregarded if they are less than 500ms. 424 4.1. Report Block Structure 426 Concealed Seconds Metrics Block 428 0 1 2 3 429 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 430 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 431 | BT=NCS | I |plc|Rserved| block length=4 | 432 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 433 | SSRC of Source | 434 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 435 | Unimpaired Seconds | 436 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 437 | Concealed Seconds | 438 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 439 | Severely Concealed Seconds | RESERVED | SCS Threshold | 440 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 442 Figure 2: Report Block Structure 444 4.2. Definition of Fields in Concealed Seconds Metrics Block 446 Block type (BT): 8 bits 448 A Concealed Seconds Metrics Report Block is identified by the 449 constant NCS. 451 [Note to RFC Editor: please replace NCS with the IANA provided 452 RTCP XR block type for this block.] 454 Interval Metric flag (I): 2 bit 456 This field is used to indicate whether the Concealment Seconds 457 Metrics are Sampled, Interval or Cumulative metrics: 459 I=10: Interval Duration - the reported value applies to the 460 most recent measurement interval duration between successive 461 metrics reports. 463 I=11: Cumulative Duration - the reported value applies to the 464 accumulation period characteristic of cumulative measurements. 466 I=01: Sampled Value - the reported value is a sampled 467 instantaneous value (Not allowed in this block). 469 I=00: Reserved value- this value is reserved for future use. 471 In this document, Concealment Seconds Metrics can only be measured 472 over definite intervals, and cannot be sampled. Senders MUST NOT 473 use the values I=00 or I=01. If a block is received with I=00 or 474 I=01, the receiver MUST discard the block. 476 Packet Loss Concealment Method (plc): 2 bits 478 This field is used to identify the packet loss concealment method 479 in use at the receiver, according to the following code: 481 bits 014-015 482 0 = silence insertion 484 1 = simple replay, no attenuation 486 2 = simple replay, with attenuation 488 3 = enhancement 490 Other values reserved 492 Note that the enhancement method (plc =3 ) for packet loss 493 concealment offers an improved audio quality and a better 494 robustness against packet losses [G.711] and is equivalent to 495 enhanced in section 4.7.6 of [RFC3611]. 497 Reserved (resv): 4 bits 499 These bits are reserved. They MUST be set to zero by senders and 500 ignored by receivers (See [RFC6709] section 4.2). 502 Block Length: 16 bits 504 The length of this report block in 32-bit words, minus one. For 505 the Concealment Seconds Block, the block length is equal to 4. 507 SSRC of source: 32 bits 509 As defined in Section 4.1 of [RFC3611]. 511 Unimpaired Seconds: 32 bits 513 A count of the number of unimpaired Seconds that have occurred. 515 An unimpaired Second is defined as a continuous period of one 516 second during which no frame loss or discard due to late arrival 517 has occurred. Every second in a session must be classified as 518 either OK or Concealed. 520 Normal playout of comfort noise or other silence concealment 521 signal during periods of talker silence, if VAD is used, shall be 522 counted as unimpaired seconds. 524 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 525 MUST be reported to indicate an over-range measurement. If the 526 measurement is unavailable, the value 0xFFFFFFFF MUST be reported. 528 Concealed Seconds: 32 bits 530 A count of the number of Concealed Seconds that have occurred. 532 A Concealed Second is defined as a continuous period of one second 533 during which any frame loss or discard due to late arrival has 534 occurred. 536 Equivalently, a concealed second is one in which some Loss-type 537 concealment has occurred. Buffer adjustment-type concealment 538 SHOULD NOT cause Concealed Seconds to be incremented, with the 539 following exception. An implementation MAY cause Concealed 540 Seconds to be incremented for 'emergency' buffer adjustments made 541 during talkspurts. 543 Loss-type concealment is reactive insertion or deletion of samples 544 in the audio playout stream due to effective frame loss at the 545 audio decoder. "Effective frame loss" is the event in which a 546 frame of coded audio is simply not present at the audio decoder 547 when required. In this case, substitute audio samples are 548 generally formed, at the decoder or elsewhere, to reduce audible 549 impairment. 551 Buffer Adjustment-type concealment is proactive or controlled 552 insertion or deletion of samples in the audio playout stream due 553 to jitter buffer adaptation, re-sizing or re-centering decisions 554 within the endpoint. 556 Because this insertion is controlled, rather than occurring 557 randomly in response to losses, it is typically less audible than 558 loss-type concealment. For example, jitter buffer adaptation 559 events may be constrained to occur during periods of talker 560 silence, in which case only silence duration is affected, or 561 sophisticated time-stretching methods for insertion/deletion 562 during favorable periods in active speech may be employed. For 563 these reasons, buffer adjustment-type concealment MAY be exempted 564 from inclusion in calculations of Concealed Seconds and Severely 565 Concealed Seconds. 567 However, an implementation SHOULD include buffer-type concealment 568 in counts of Concealed Seconds and Severely Concealed Seconds if 569 the event occurs at an 'inopportune' moment, with an emergency or 570 large, immediate adaptation during active speech, or for 571 unsophisticated adaptation during speech without regard for the 572 underlying signal, in which cases the assumption of low-audibility 573 cannot hold. In other words, jitter buffer adaptation events 574 which may be presumed to be audible SHOULD be included in 575 Concealed Seconds and Severely Concealed Seconds counts. 577 Concealment events which cannot be classified as Buffer 578 Adjustment- type MUST be classified as Loss-type. 580 For clarification, the count of Concealed Seconds MUST include the 581 count of Severely Concealed Seconds. 583 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 584 MUST be reported to indicate an over-range measurement. If the 585 measurement is unavailable, the value 0xFFFFFFFF MUST be reported. 587 Severely Concealed Seconds: 16 bits 589 A count of the number of Severely Concealed Seconds. 591 A Severely Concealed Second is defined as a non-overlapping period 592 of one second during which the cumulative amount of time that has 593 been subject to frame loss or discard due to late arrival, exceeds 594 the SCS Threshold. 596 If the measured value exceeds 0xFFFD, the value 0xFFFE MUST be 597 reported to indicate an over-range measurement. If the 598 measurement is unavailable, the value 0xFFFF MUST be reported. 600 Reserved: 8 bits 602 These bits are reserved. They MUST be set to zero by senders and 603 ignored by receivers (See [RFC6709] section 4.2). 605 SCS Threshold: 8 bits 607 The SCS Threshold is defined as the percentage of packets 608 corresponding to lost or discarded frames that must occur within a 609 one second period in order for the second to be classified as a 610 Severely Concealed Second. This is expressed in numeric format 611 0:8 and hence can represent a range of 0 to 99.6 percent loss or 612 discard. 614 A default threshold of 5% effective frame loss (50ms effective 615 frame loss ) per second is suggested. This corresponds to an SCS 616 Threshold in hexadecimal of 0x0D. 618 5. SDP Signaling 620 [RFC3611] defines the use of SDP (Session Description Protocol) 621 [RFC4566] for signaling the use of XR blocks. XR blocks MAY be used 622 without prior signaling. 624 5.1. SDP rtcp-xr-attrib Attribute Extension 626 This section augments the SDP attribute "rtcp-xr" [RFC3611] by 627 providing two additional values of "xr-format" to signal the use of 628 two report blocks defined in this document. 630 xr-format =/ xr-conceal-block 631 / xr-conc-sec-block 633 xr-conceal-block = "loss-conceal" 634 xr-conc-sec-block = "conc-sec" ["=" thresh] 636 thresh = 1*DIGIT ; threshold for SCS (ms) 637 DIGIT = %x30-39 639 5.2. Offer/Answer Usage 641 When SDP is used in offer-answer context, the SDP Offer/Answer usage 642 defined in [RFC3611] applies. Note that "thresh" is declared by the 643 offer. 645 6. IANA Considerations 647 New block types for RTCP XR are subject to IANA registration. For 648 general guidelines on IANA considerations for RTCP XR, refer to 649 [RFC3611]. 651 6.1. New RTCP XR Block Type values 653 This document assigns two block type values in the IANA "RTP Control 654 Protocol Extended Reports (RTCP XR) Block Type Registry ": 656 Name: LCB 657 Long Name: Loss Concealment Block 658 Value 659 Reference: Section 3.1 661 Name: CSB 662 Long Name: Concealment Seconds Block 663 Value 664 Reference: Section 4.1 666 [Note to RFC Editor: please replace and with the RTCP XR 667 block type assigned by IANA for this block.] 669 6.2. New RTCP XR SDP Parameters 671 This document also registers two new parameters in the "RTP Control 672 Protocol Extended Reports (RTCP XR) Session Description Protocol 673 (SDP) Parameters Registry": 675 o "loss-conceal" 677 o "conc-sec" 679 6.3. Contact information for registrations 681 The contact information for the registrations is: 683 RAI Area Directors 685 rai-ads@tools.ietf.org 687 7. Security Considerations 689 It is believed that this proposed RTCP XR report block introduces no 690 new security considerations beyond those described in [RFC3611]. 691 This block does not provide per-packet statistics so the risk to 692 confidentiality documented in Section 7, paragraph 3 of [RFC3611] 693 does not apply. 695 8. Contributors 697 Geoff Hunt wrote the initial draft of this document. 699 9. Acknowledgements 701 The authors gratefully acknowledge reviews and feedback provided by 702 Bruce Adams, Philip Arden, Amit Arora, Bob Biskner, Kevin Connor, 703 Claus Dahm, Randy Ethier, Roni Even, Jim Frauenthal, Albert Higashi, 704 Tom Hock, Shane Holthaus, Paul Jones, Rajesh Kumar, Keith Lantz, 705 Mohamed Mostafa, Amy Pendleton, Colin Perkins, Mike Ramalho, Ravi 706 Raviraj, Albrecht Schwarz, Tom Taylor, Hideaki Yamada ,Alissa 707 Cooper,Meral Shirazipour and MORTON, ALFRED C (AL). 709 10. References 711 10.1. Normative References 713 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 714 Requirement Levels", March 1997. 716 [RFC3550] Schulzrinne, H., "RTP: A Transport Protocol for Real-Time 717 Applications", RFC 3550, July 2003. 719 [RFC3611] Friedman, T., Caceres, R., and A. Clark, "RTP Control 720 Protocol Extended Reports (RTCP XR)", November 2003. 722 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 723 Description Protocol", July 2006. 725 [RFC6776] Wu, Q., "Measurement Identity and information Reporting 726 using SDES item and XR Block", RFC 6776, August 2012. 728 10.2. Informative References 730 [RFC6390] Clark, A. and B. Claise, "Framework for Performance Metric 731 Development", RFC 6390, October 2011. 733 [RFC6709] Carpenter, B., Aboba, B., and S. Cheshire, "Design 734 Considerations for Protocol Extensions", RFC 6709, 735 September 2012. 737 [RFC6792] Hunt, G., "Monitoring Architectures for RTP", RFC 6792, 738 November 2012. 740 [VAD] "http://en.wikipedia.org/wiki/Voice_activity_detection". 742 Appendix A. Metrics represented using RFC6390 Template 744 RFC EDITOR NOTE: please change XXXX in [RFCXXXX] by the new RFC 745 number, when assigned. 747 a. On-time Playout Duration Metric 749 * Metric Name: On-time Playout Duration 751 * Metric Description: 'On-time' playout is the uninterrupted, 752 in-sequence playout of valid decoded audio information 753 originating from the remote endpoint. On-time playout 754 Duration is playout duration of any signal other than those 755 used for concealment 757 * Method of Measurement or Calculation: See section 3. 2, On- 758 time Playout Duration definition [RFCXXXX]. 760 * Units of Measurement: See section 3.2, On-time Playout 761 Duration definition [RFCXXXX]. 763 * Measurement Point(s) with Potential Measurement Domain: See 764 section 1.1, 3rd paragraph [RFCXXXX]. 766 * Measurement Timing: See section 3, 1st paragraph [RFCXXXX] for 767 measurement timing and section 3.2 [RFCXXXX] for Interval 768 Metric flag. 770 * Use and applications: See section 1.4 [RFCXXXX]. 772 * Reporting model: See RFC3611. 774 b. Loss Concealment Duration Metric 776 * Metric Name: Loss Concealment Duration 777 * Metric Description: The duration of audio playout 778 corresponding to Loss-type concealment. 780 * Method of Measurement or Calculation: See section 3.2, Loss 781 Concealment Duration definition [RFCXXXX]. 783 * Units of Measurement: See section 3.2, Loss Concealment 784 Duration definition [RFCXXXX]. 786 * Measurement Point(s) with Potential Measurement Domain: See 787 section 1.1, 3rd paragraph [RFCXXXX]. 789 * Measurement Timing: See section 3, 1st paragraph [RFCXXXX] for 790 measurement timing and section 3. 2 [RFCXXXX] for Interval 791 Metric flag. 793 * Use and applications: See section 1.4 [RFCXXXX]. 795 * Reporting model: See RFC3611. 797 c. Buffer Adjustment Concealment Duration Metric 799 * Metric Name: Buffer Adjustment Concealment Duration 801 * Metric Description: The duration of audio playout 802 corresponding to Buffer Adjustment-type concealment. 804 * Method of Measurement or Calculation: See section 3. 2, Buffer 805 Adjustment Concealment Duration definition [RFCXXXX]. 807 * Units of Measurement: See section 3.2, Buffer Adjustment 808 Concealment Duration definition [RFCXXXX]. 810 * Measurement Point(s) with Potential Measurement Domain: See 811 section 1.1, 3rd paragraph [RFCXXXX]. 813 * Measurement Timing: See section 3, 1st paragraph [RFCXXXX] for 814 measurement timing and section 3.2 [RFCXXXX] for Interval 815 Metric flag. 817 * Use and applications: See section 1.4 [RFCXXXX]. 819 * Reporting model: See RFC3611. 821 d. Playout Interrupt Count Metric 823 * Metric Name: Playout Interrupt Count 825 * Metric Description: The number of interruptions to normal 826 playout which occurred during the reporting period. 828 * Method of Measurement or Calculation: See section 3. 2, 829 Playout Interrupt Count definition [RFCXXXX]. 831 * Units of Measurement: See section 3.2, Playout Interrupt Count 832 definition [RFCXXXX]. 834 * Measurement Point(s) with Potential Measurement Domain: See 835 section 1.1, 3rd paragraph [RFCXXXX]. 837 * Measurement Timing: See section 3, 1st paragraph [RFCXXXX] for 838 measurement timing and section 3.2 [RFCXXXX] for Interval 839 Metric flag. 841 * Use and applications: See section 1.4 [RFCXXXX]. 843 * Reporting model: See RFC3611. 845 e. Mean Playout Interrupt Size Metric 846 * Metric Name: Mean Playout Interrupt Size 848 * Metric Description: The mean duration of interruptions to 849 normal playout which occurred during the reporting period. 851 * Method of Measurement or Calculation: See section 3. 2, 852 Playout Interrupt Count definition [RFCXXXX]. 854 * Units of Measurement: See section 3.2, Playout Interrupt Count 855 definition [RFCXXXX]. 857 * Measurement Point(s) with Potential Measurement Domain: See 858 section 1.1, 3rd paragraph [RFCXXXX]. 860 * Measurement Timing: See section 3, 1st paragraph [RFCXXXX] for 861 measurement timing and section 3.2 [RFCXXXX] for Interval 862 Metric flag. 864 * Use and applications: See section 1.4 [RFCXXXX]. 866 * Reporting model: See RFC3611. 868 f. Unimpaired Seconds Metric 870 * Metric Name: Unimpaired Seconds 872 * Metric Description: A count of the number of unimpaired 873 Seconds that have occurred. 875 * Method of Measurement or Calculation: See section 4. 2, 876 Unimpaired Seconds definition [RFCXXXX]. 878 * Units of Measurement: See section 4.2, Unimpaired Seconds 879 definition [RFCXXXX]. 881 * Measurement Point(s) with Potential Measurement Domain: See 882 section 1.1, 5th paragraph [RFCXXXX]. 884 * Measurement Timing: See section 4, 1st paragraph [RFCXXXX] for 885 measurement timing and section 4.2 paragraph [RFCXXXX] for 886 Interval Metric flag. 888 * Use and applications: See section 1.4 [RFCXXXX]. 890 * Reporting model: See RFC3611. 892 g. Concealed Seconds Metric 894 * Metric Name: Concealed Seconds 896 * Metric Description: A count of the number of Concealed Seconds 897 that have occurred. 899 * Method of Measurement or Calculation: See section 4. 2, 900 Concealed Seconds definition [RFCXXXX]. 902 * Units of Measurement: See section 4.2, Concealed Seconds 903 definition [RFCXXXX]. 905 * Measurement Point(s) with Potential Measurement Domain: See 906 section 1.1, 5th paragraph [RFCXXXX]. 908 * Measurement Timing: See section 4, 1st paragraph [RFCXXXX] for 909 measurement timing and section 4.2 [RFCXXXX] for Interval 910 Metric flag. 912 * Use and applications: See section 1.4 [RFCXXXX]. 914 * Reporting model: See RFC3611. 916 h. Severely Concealed Seconds Metric 918 * Metric Name: Severely Concealed Seconds 920 * Metric Description: A count of the number of Severely 921 Concealed Seconds that have occurred. 923 * Method of Measurement or Calculation: See section 4. 2, 924 Severely Concealed Seconds definition [RFCXXXX]. 926 * Units of Measurement: See section 4.2, Severely Concealed 927 Seconds definition [RFCXXXX]. 929 * Measurement Point(s) with Potential Measurement Domain: See 930 section 1.1, 5th paragraph [RFCXXXX]. 932 * Measurement Timing: See section 4, 1st paragraph [RFCXXXX] for 933 measurement timing and section 4.2 [RFCXXXX] for Interval 934 Metric flag. 936 * Use and applications: See section 1.4 [RFCXXXX]. 938 * Reporting model: See RFC3611. 940 i. SCS Threshold Metric 942 * Metric Name: SCS Threshold 944 * Metric Description: The amount of time corresponding to lost 945 or discarded frames that must occur within a one second period 946 in order for the second to be classified as a Severely 947 Concealed Second. 949 * Method of Measurement or Calculation: See section 4. 2, SCS 950 Threshold definition [RFCXXXX]. 952 * Units of Measurement: See section 4.2, SCS Threshold 953 definition [RFCXXXX]. 955 * Measurement Point(s) with Potential Measurement Domain: See 956 section 1.1, 5th paragraph [RFCXXXX]. 958 * Measurement Timing: See section 4, 1st paragraph [RFCXXXX] for 959 measurement timing and section 4.2 [RFCXXXX] for Interval 960 Metric flag. 962 * Use and applications: See section 1.4 [RFCXXXX]. 964 * Reporting model: See RFC3611. 966 Appendix B. Change Log 968 Note to the RFC-Editor: please remove this section prior to 969 publication as an RFC. 971 B.1. draft-ietf-xrblock-rtcp-xr-loss-conceal-11 973 The following are the major changes to previous version : 975 o Address comments recieved in Gen-Art Review and OPS-DIR Review. 977 B.2. draft-ietf-xrblock-rtcp-xr-loss-conceal-09 979 The following are the major changes to previous version : 981 o Only Version Number changes. 983 B.3. draft-ietf-xrblock-rtcp-xr-loss-conceal-07 985 The following are the major changes to previous version : 987 o Change units for threshold and units used for reporting in loss 988 concealment block and concealment seconds block. 990 o Change 16bit "Mean Playout Interrupt Size" into 32bits. 992 B.4. draft-ietf-xrblock-rtcp-xr-loss-conceal-06 994 The following are the major changes to previous version : 996 o Comments in the WGLC are addressed in this version. 998 B.5. draft-ietf-xrblock-rtcp-xr-loss-conceal-05 1000 The following are the major changes to previous version : 1002 o Add text to clarify the definition of enhanced method. 1004 o Add appendix to apply RFC6390 template to the metrics. 1006 B.6. draft-ietf-xrblock-rtcp-xr-loss-conceal-04 1008 The following are the major changes to previous version : 1010 o Merge Concealment Seconds draft into this draft (i.e.,Loss 1011 Concealment draft). 1013 o Updated references. 1015 Authors' Addresses 1017 Alan Clark 1018 Telchemy Incorporated 1019 2905 Premiere Parkway, Suite 280 1020 Duluth, GA 30097 1021 USA 1023 Email: alan.d.clark@telchemy.com 1025 Glen Zorn 1026 Network Zen 1027 77/440 Soi Phoomjit, Rama IV Road 1028 Phra Khanong, Khlong Toie 1029 Bangkok 10110 1030 Thailand 1032 Phone: +66 (0) 87 502 4274 1033 Email: gwz@net-zen.net 1035 Claire Bi 1036 Shanghai Research Institure of China Telecom Corporation Limited 1037 No.1835,South Pudong Road 1038 Shanghai 200122 1039 China 1041 Email: bijy@sttri.com.cn 1043 Qin Wu (editor) 1044 Huawei 1045 101 Software Avenue, Yuhua District 1046 Nanjing, Jiangsu 210012 1047 China 1049 Email: sunseawq@huawei.com