draft-ietf-xrblock-rtcp-xr-video-lc-01.txt   draft-ietf-xrblock-rtcp-xr-video-lc-02.txt 
XRBLOCK R. Huang XRBLOCK R. Huang
INTERNET-DRAFT Huawei INTERNET-DRAFT Huawei
Intended Status: Standards Track A. Clark Intended Status: Standards Track A. Clark
Expires: January 7, 2016 Telchemy Expires: March 14, 2016 Telchemy
July 6, 2015 September 11, 2015
RTCP XR Report Block for Loss Concealment Metrics Reporting on RTCP XR Report Block for Loss Concealment Metrics Reporting on
Video Applications Video Applications
draft-ietf-xrblock-rtcp-xr-video-lc-01 draft-ietf-xrblock-rtcp-xr-video-lc-02
Abstract Abstract
This draft defines a new video loss concealment block type to augment This document defines a new RTCP XR Report Block that allows the
those defined in [RFC3611] and [RFC7294] for use in a range of RTP reporting of loss concealment metrics for video applications of RTP.
video applications. This XR report block completes ones defined in [RFC3611] and
[RFC7294].
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as other groups may also distribute working documents as
Internet-Drafts. Internet-Drafts.
skipping to change at page 2, line 20 skipping to change at page 2, line 20
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 RTCP and RTCP XR Reports . . . . . . . . . . . . . . . . . . 3 1.1 RTCP and RTCP XR Reports . . . . . . . . . . . . . . . . . . 3
1.2 Performance Metrics Framework . . . . . . . . . . . . . . . 3 1.2 Performance Metrics Framework . . . . . . . . . . . . . . . 3
1.3 Applicability . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 Applicability . . . . . . . . . . . . . . . . . . . . . . . 3
2 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Video Loss Concealment Methods . . . . . . . . . . . . . . . . 4 3 Video Loss Concealment Methods . . . . . . . . . . . . . . . . 4
4. Video Loss Concealment Report Block . . . . . . . . . . . . . 5 4 Video Loss Concealment Report Block . . . . . . . . . . . . . . 5
5 SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . . 8 5 SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.1 SDP rtcp-xr-attrib Attribute Extension . . . . . . . . . . . 8 5.1 SDP rtcp-xr-attrib Attribute Extension . . . . . . . . . . . 9
5.2 Offer/Answer Usage . . . . . . . . . . . . . . . . . . . . . 8 5.2 Offer/Answer Usage . . . . . . . . . . . . . . . . . . . . . 9
6 Security Considerations . . . . . . . . . . . . . . . . . . . . 9 6 Security Considerations . . . . . . . . . . . . . . . . . . . . 9
7 IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 9 7 IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 10
7.1 New RTCP XR Block Type Value . . . . . . . . . . . . . . . . 9 7.1 New RTCP XR Block Type Value . . . . . . . . . . . . . . . . 10
7.2 New RTCP XR SDP Parameter . . . . . . . . . . . . . . . . . 9 7.2 New RTCP XR SDP Parameter . . . . . . . . . . . . . . . . . 10
7.3 Contact Information for registrations . . . . . . . . . . . 9 7.3 Contact Information for registrations . . . . . . . . . . . 10
8 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 10 8 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 10
9 References . . . . . . . . . . . . . . . . . . . . . . . . . . 10 9 References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
9.1 Normative References . . . . . . . . . . . . . . . . . . . 10 9.1 Normative References . . . . . . . . . . . . . . . . . . . 10
9.2 Informative References . . . . . . . . . . . . . . . . . . 11 9.2 Informative References . . . . . . . . . . . . . . . . . . 11
Appendix A. Metrics Represented Using the Template from RFC 6390 . 11 Appendix A. Metrics Represented Using the Template from RFC 6390 . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 15
1 Introduction 1 Introduction
Multimedia applications often suffer from packet losses in IP Multimedia applications often suffer from packet losses in IP
skipping to change at page 3, line 33 skipping to change at page 3, line 33
This draft defines one new video loss concealment block type to This draft defines one new video loss concealment block type to
augment those defined in [RFC3611] and [RFC7294] for use in a range augment those defined in [RFC3611] and [RFC7294] for use in a range
of RTP video applications. The metrics defined in this draft belong of RTP video applications. The metrics defined in this draft belong
to the class of transport-related terminal metrics defined in to the class of transport-related terminal metrics defined in
[RFC6792]. [RFC6792].
1.1 RTCP and RTCP XR Reports 1.1 RTCP and RTCP XR Reports
The use of RTCP for reporting is defined in [RFC3550]. [RFC3611] The use of RTCP for reporting is defined in [RFC3550]. [RFC3611]
defines an extensible structure for reporting using an RTCP Extended defines an extensible structure for reporting using an RTCP Extended
Report (XR). This draft defines a new Extended Report block that MUST Report (XR). This draft defines a new Extended Report block that is
be used as defined in [RFC3550] and [RFC3611]. used as defined in [RFC3550] and [RFC3611].
1.2 Performance Metrics Framework 1.2 Performance Metrics Framework
The Performance Metrics Framework [RFC6390] provides guidance on the The Performance Metrics Framework [RFC6390] provides guidance on the
definition and specification of performance metrics. The RTP definition and specification of performance metrics. The RTP
Monitoring Architectures [RFC6792] provides guidelines for reporting Monitoring Architectures [RFC6792] provides guidelines for reporting
block format using RTCP XR. The XR block type described in this block format using RTCP XR. The XR block type described in this
document are in accordance with the guidelines in [RFC6390] and document are in accordance with the guidelines in [RFC6390] and
[RFC6792]. [RFC6792].
1.3 Applicability 1.3 Applicability
These metrics are applicable to video applications of RTP and the These metrics are applicable to video applications the video
video component of Audio/Video applications in which packet loss component of Audio/Video applications using RTP and applying packet
concealment mechanisms are incorporated into the receiving endpoint loss concealment mechanisms which are incorporated into the receiving
to mitigate the impact of network impairments on QoE. For example, in endpoint to mitigate the impact of network impairments on QoE. For
an IPTV system Set Top Boxes could use this RTCP XR block to report example, in an IPTV system Set Top Boxes could use this RTCP XR block
loss and loss concealment metrics to an IPTV management system to to report loss and loss concealment metrics to an IPTV management
enable the service provider to monitor the quality of the IPTV system to enable the service provider to monitor the quality of the
service being delivered to end users. IPTV service being delivered to end users.
2 Terminology 2 Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [KEYWORDS]. document are to be interpreted as described in [KEYWORDS].
3 Video Loss Concealment Methods 3 Video Loss Concealment Methods
Video loss concealment mechanisms can be classified into 4 types as Video loss concealment mechanisms can be classified into 4 types as
skipping to change at page 4, line 29 skipping to change at page 4, line 29
The impaired video frame is not displayed, instead, the previously The impaired video frame is not displayed, instead, the previously
displayed frame is frozen for the duration of the loss event. displayed frame is frozen for the duration of the loss event.
b) Inter-frame extrapolation b) Inter-frame extrapolation
If an area of the video frame is damaged by loss, the same area from If an area of the video frame is damaged by loss, the same area from
the previous frame(s) can be used to estimate what the missing pixels the previous frame(s) can be used to estimate what the missing pixels
would have been. This can work well in a scene with no motion but can would have been. This can work well in a scene with no motion but can
be very noticeable if there is significant movement from one frame to be very noticeable if there is significant movement from one frame to
another. Simple decoders may simply re-use the pixels that were in another. Simple decoders can simply re-use the pixels that were in
the missing area while more complex decoders may try to use several the missing area while more complex decoders can try to use several
frames to do a more complex extrapolation. Another example of a frames to do a more complex extrapolation. Another example of a
sophisticated form of inter-frame repair is to estimate the motion of sophisticated form of inter-frame repair is to estimate the motion of
the damaged region based on the motion of surrounding regions, and the damaged region based on the motion of surrounding regions, and
use that to select what part of the previous frame to use for repair. use that to select what part of the previous frame to use for repair.
Some important frames, such as IDR frames, may not depend on any
other frames and may be involved in a scene change. Using inter-frame
extrapolation method to conceal the loss of these frames may not
obtain a quite satisfactory result.
c) Interpolation c) Interpolation
A decoder may user the undamaged pixels in the video frame to A decoder uses the undamaged pixels in the video frame to estimate
estimate what the missing block of pixels should have. what the missing block of pixels should have.
d) Error Resilient Encoding d) Error Resilient Encoding
The sender may encode the message in a redundant way so that receiver The sender encodes the message in a redundant way so that receiver
can correct errors using the redundant information. The redundant can correct errors using the redundant information.There are usually
data useful for error resiliency performed at the decoder can be two kinds of Error Resilient Encoding: One is that the redundant data
embedded into the compressed image/video bitstream. For example, the useful for error resiliency performed at the decoder can be embedded
encoder may select a crucial area of an original video frame, extract into the compressed image/video bitstream. For example, the encoder
some important characteristics of this area as the redundant can select a crucial area of an original video frame, extract some
information, e.g., redundant motion vector of the first macroblock in important characteristics of this area as the redundant information,
a slice of this area and redundant motion vector difference of other e.g., redundant motion vector of the first macroblock in a slice of
macroblocks in this slice of this area, and imperceptibly embed them this area and redundant motion vector difference of other macroblocks
into other parts of the video frame sent in a different RTP packet or in this slice of this area, and imperceptibly embed them into other
in the next frame, e.g., other slices of this area. FEC is also parts of the video frame sent in a different RTP packet or in the
another error resilient method. next frame, e.g., other slices of this area. The other is bit-block
level encoding, e.g., FEC.
In this document, we differentiate between frame freeze and the other Usually, methods b,c,d are deployed together to provide a
3 concealment mechanisms described. comprehensive loss concealment in some complex decoders, while method
a is relatively independent and may be only applied in some simple
decoders. Moreover, frame freeze method repairs video based on frames
while the other methods repair video based on fine-grained elements,
such as macroblock or bit-block, which will cause the measurement
metrics of frame freeze and the other methods slightly different.
Thus, In this document, we differentiate between frame freeze and the
other 3 concealment mechanisms described.
4. Video Loss Concealment Report Block 4 Video Loss Concealment Report Block
This block reports the video loss concealment metrics to complement This block reports the video loss concealment metrics to complement
the audio metrics defined in [RFC7294]. The report block SHOULD be in the audio metrics defined in [RFC7294]. The report block MUST be sent
conjunction with the information from the Measurement Information in conjunction with the information from the Measurement Information
Block [RFC6776]. Instances of this metrics block refer by SSRC to the Block [RFC6776]. Instances of this metric block refer by SSRC to the
separate auxiliary Measurement Information Block [RFC6776]. This separate auxiliary Measurement Information Block [RFC6776]. This
metrics block relies on the measurement period in the Measurement metric block relies on the measurement period in the Measurement
Information Block indicating the span of the report and SHOULD be Information Block indicating the span of the report. If the
sent in the same compound RTCP packet as the Measurement Information measurement period is not received in the same compound RTCP packet
Block. If the measurement period is not received in the same compound as this metric block, this metric block MUST be discarded at the
RTCP packet as this metric block, this metric block MUST be receiving side. The metrics in this report block are based on
discarded. It should be noted that the metrics in this report block measurements that are typically made at the time that a video frame
are based on measurements that are typically made at the time that a is decoded and rendered for playout.
video frame is decoded and rendered for playout. The metrics in this
block MUST be measured at a consistent point.
The video loss concealment report block has the following format: The video loss concealment report block has the following format:
0 1 2 3 0 1 2 3
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BT=VLC | I | V | RSV | block length | | BT=VLC | I | V | RSV | block length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SSRC of Source | | SSRC of Source |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 6, line 4 skipping to change at page 6, line 11
| Concealed Duration | | Concealed Duration |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mean Frame Freeze Duration (optional) | | Mean Frame Freeze Duration (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MIFP | MCFP | FFSC | Reserved | | MIFP | MCFP | FFSC | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Format for the Video Loss Concealment Report Block Figure 1: Format for the Video Loss Concealment Report Block
Block Type (BT): 8 bits Block Type (BT): 8 bits
A Video Loss Concealment Report Block is identified by the A Video Loss Concealment Report Block is identified by the
constant VLC. constant VLC.
[Note to RFC Editor: Please replace VLC with the IANA provided [Note to RFC Editor: Please replace VLC with the IANA provided
RTCP XR block type for this block.] RTCP XR block type for this block.]
Interval Metric Flag (I): 2 bits Interval Metric Flag (I): 2 bits
This field indicates whether the reported metric is an interval, This field indicates whether the reported metrics are interval,
cumulative, or sampled metric [RFC6792]: cumulative, or sampled metrics [RFC6792]:
I=10: Interval Duration - the reported value applies to the I=10: Interval Duration - the reported value applies to the
most recent measurement interval duration between successive most recent measurement interval duration between successive
metrics reports. metrics reports.
I=11: Cumulative Duration - the reported value applies to the I=11: Cumulative Duration - the reported value applies to the
accumulation period characteristic of cumulative measurements. accumulation period characteristic of cumulative measurements.
I=01: Sampled Value - this value MUST NOT be used for this I=01: Sampled Value - this value MUST NOT be used for this
block type. block type.
I=00: Reserved. I=00: Reserved.
Video Loss Concealment Method Type (V): 2 bits Video Loss Concealment Method Type (V): 2 bits
This field is used to identify the video loss concealment method This field is used to identify the video loss concealment method
type used at the receiver. Each bit indicates one method type, as type used at the receiver. The value is defined as follow:
follow:
V=10 - Frame freeze V=10 - Frame freeze
V=11 - Other Loss Concealment Method V=11 - Other Loss Concealment Method
V=01&00 - Reserved V=01&00 - Reserved
If Frame freeze and other loss concealment method are used If Frame freeze and other loss concealment method are used
together for the media stream, 2 report blocks, one with V=10 for together for the media stream, 2 report blocks, one with V=10 for
frame freeze and one with V=11 for other loss concealment method frame freeze and one with V=11 for other loss concealment method
SHOULD be compounded together to report the whole concealment SHOULD be compounded together to report the whole concealment
information. information.
RSV: 4 bits
These bits are reserved for future use. They MUST be set to zero
by senders and ignored by receivers (see Section 4.2 of
[RFC6709]).
block length: 16 bits block length: 16 bits
This field is in accordance with the definition in [RFC3611]. In This field is in accordance with the definition in [RFC3611]. In
this report block, it MUST be set to 6 when V=10 and be set to 5 this report block, it MUST be set to 6 when V=10 and be set to 5
when V=11. The block MUST be discarded if the block length is set when V=11. The block MUST be discarded if the block length is set
to a different value. to a different value.
SSRC of source: 32 bits SSRC of source: 32 bits
As defined in Section 4.1 of [RFC3611]. As defined in Section 4.1 of [RFC3611].
Impaired Duration: 32 bits Impaired Duration: 32 bits
The total time length, expressed in units of RTP timestamp, of The total time length, expressed in units of RTP timestamp from
video impaired by transmission loss before applying any loss the sending side of the reporting block, of video impaired by
concealment methods. transmission loss before applying any loss concealment methods.
Two values are reserved: A value of 0xFFFFFFFE indicates out of Two values are reserved: A value of 0xFFFFFFFE indicates out of
range (that is, a measured value exceeding 0xFFFFFFFD) and a value range (that is, a measured value exceeding 0xFFFFFFFD) and a value
of 0xFFFFFFFF indicates that the measurement is unavailable. of 0xFFFFFFFF indicates that the measurement is unavailable.
Concealed Duration: 32 bits Concealed Duration: 32 bits
The total time length, expressed in units of RTP timestamp, of The total time length, expressed in units of RTP timestamp from
concealed damaged video pictures on which loss concealment method the sending side of the reporting block, of concealed damaged
corresponding to V is applied. video pictures on which loss concealment method corresponding to
Video Loss Concealment Method Type is applied.
Two values are reserved: A value of 0xFFFFFFFE indicates out of Two values are reserved: A value of 0xFFFFFFFE indicates out of
range (that is, a measured value exceeding 0xFFFFFFFD) and a value range (that is, a measured value exceeding 0xFFFFFFFD) and a value
of 0xFFFFFFFF indicates that the measurement is unavailable. of 0xFFFFFFFF indicates that the measurement is unavailable.
Mean Frame Freeze Duration: 32 bits Mean Frame Freeze Duration: 32 bits
Mean Frame Freeze Duration is the mean duration, expressed in Mean Frame Freeze Duration is the mean duration, expressed in
units of RTP timestamp, of the frame freeze events. The value of units of RTP timestamp from the sending side of the reporting
Mean Frame Freeze Duration shall be calculated by summing the block, of the frame freeze events. The value of Mean Frame Freeze
total duration of all frame freeze events and dividing by the Duration is calculated by summing the total duration of all frame
number of events. This metric is optional. It only exists freeze events and dividing by the number of events. This metric is
whenV=10. optional. It only exists when Video Loss Concealment Method
Type=10.
Mean Impaired Frame Proportion (MIFP): 8 bits Mean Impaired Frame Proportion (MIFP): 8 bits
Mean Impaired Frame Proportion is the mean proportion of each Mean Impaired Frame Proportion is the mean proportion of each
video frame impaired by loss before applying any loss concealment video frame impaired by loss before applying any loss concealment
method during the interval, expressed as a fixed point number with method during the interval, expressed as a fixed point number with
the binary point at the left edge of the field. It is calculated the binary point at the left edge of the field. It is calculated
by summing the impaired proportion of each video frame and by summing the impaired proportion of each video frame and
dividing by the number of frames during this period. The impaired dividing by the number of frames during this period. The impaired
proportion of each video frame is obtained by dividing the number proportion of each video frame is obtained by dividing the number
of missing macroblocks from this video frame by the total of missing macroblocks from this video frame by the total
macroblock number of the video frame, which is equivalent to macroblock number of the video frame, which is equivalent to
taking the integer part after multiplying the fraction by 256. If multiplying the result of the division by 256, limiting the
a video frame is totally lost, a value of 0xFF shall be used for maximum value to 255 (to avoid overflow), and taking the integer
the frame when calculating the mean value. part.
If a video frame is totally lost, a value of 0xFF SHOULD be used
for the frame when calculating the mean value.
Mean Concealed Frame Proportion (MCFP): 8 bits Mean Concealed Frame Proportion (MCFP): 8 bits
Mean Concealed Frame Proportion is the mean proportion of each Mean Concealed Frame Proportion is the mean proportion of each
video frame to which loss concealment (using V) was applied during video frame to which loss concealment (depicted as "V" in the
the interval, expressed as a fixed point number with the binary definition of "Video Loss Concealment Method Type") was applied
point at the left edge of the field. It is calculated by summing during the interval, expressed as a fixed point number with the
the concealed proportion of each video frame and dividing by the binary point at the left edge of the field. It is calculated by
number of frames during this period. The concealed proportion of summing the concealed proportion of each video frame and dividing
each video frame is obtained by dividing the number of concealed by the number of frames during this period. The concealed
macroblocks from this video frame by the total macroblock number proportion of each video frame is obtained by dividing the number
of the video frame, which is equivalent to taking the integer part of concealed macroblocks from this video frame by the total
after multiplying the fraction by 256. If a lost video frame is macroblock number of the video frame, which is equivalent to
totally concealed, a value of 0xFF and if there are no concealed multiplying the result of the division by 256, limiting the
macroblocks, a value of 0, shall be used for the frame when maximum value to 255 (to avoid overflow), and taking the integer
calculating the mean value. part.
If a lost video frame is totally concealed, a value of 0xFF and if
there are no concealed macroblocks, a value of 0, SHOULD be used
for the frame when calculating the mean value. For Video Loss
Concealment Method Type=10, each frame covered in the period of
frame freeze is considered to be totally concealed, which means a
value of 0xFF MUST be assigned.
Fraction of Frames Subject to Concealment (FFSC): 8 bits Fraction of Frames Subject to Concealment (FFSC): 8 bits
Fraction of Frames Subject to Concealment is calculated by Fraction of Frames Subject to Concealment is calculated by
dividing the number of frames to which loss concealment (using V) dividing the number of frames to which loss concealment (using
was applied by the total number of frames and expressing this Video Loss Concealment Method Type) was applied by the total
value as a fixed point number with the binary point at the left number of frames and expressing this value as a fixed point number
edge of the field. It is equivalent to taking the integer part with the binary point at the left edge of the field. It is
after multiplying the fraction by 256. A value of 0 indicates that equivalent to multiplying the result of the division by 256,
there were no concealed frame and a value of 0xFF indicates that limiting the maximum value to 255 (to avoid overflow), and taking
the frames in the entire measurement interval are all concealed. the integer part.
A value of 0 indicates that there were no concealed frame and a
value of 0xFF indicates that the frames in the entire measurement
interval are all concealed.
Reserved: 8 bits Reserved: 8 bits
These bits are reserved for future use. They MUST be set to zero These bits are reserved for future use. They MUST be set to zero
by senders and ignored by receivers (see Section 4.2 of by senders and ignored by receivers (see Section 4.2 of
[RFC6709]). [RFC6709]).
5 SDP Signaling 5 SDP Signaling
[RFC3611] defines the use of SDP (Session Description Protocol) for [RFC3611] defines the use of SDP (Session Description Protocol) for
signaling the use of RTCP XR blocks. However XR blocks MAY be used signaling the use of RTCP XR blocks.
without prior signaling (see section 5 of [RFC3611]).
5.1 SDP rtcp-xr-attrib Attribute Extension 5.1 SDP rtcp-xr-attrib Attribute Extension
This session augments the SDP attribute "rtcp-xr" defined in Section This session augments the SDP attribute "rtcp-xr" defined in Section
5.1 of [RFC3611] by providing an additional value of "xr-format" to 5.1 of [RFC3611] by providing an additional value of "xr-format" to
signal the use of the report block defined in this document. signal the use of the report block defined in this document.
xr-format =/ xr-vlc-block xr-format =/ xr-vlc-block
xr-vlc-block = "video-loss-concealment" xr-vlc-block = "vlc"
5.2 Offer/Answer Usage 5.2 Offer/Answer Usage
When SDP is used in offer-answer context, the SDP Offer/Answer usage When SDP is used in offer-answer context, the SDP Offer/Answer usage
defined in [RFC3611] for unilateral "rtcp-xr" attribute parameters defined in section 5.2 of [RFC3611] for unilateral "rtcp-xr"
applies. For detailed usage of Offer/Answer for unilateral attribute parameters applies. For detailed usage of Offer/Answer for
parameter, refer to section 5.2 of [RFC3611]. unilateral parameter, refer to section 5.2 of [RFC3611].
6 Security Considerations 6 Security Considerations
It is believed that this RTCP XR block introduces no new security It is believed that this RTCP XR block introduces no new security
considerations beyond those described in [RFC3611]. This block does considerations beyond those described in [RFC3611]. This block does
not provide per-packet statistics, so the risk to confidentially not provide per-packet statistics, so the risk to confidentially
documented in Section 7, paragraph 3 of [RFC3611] does not apply. documented in Section 7, paragraph 3 of [RFC3611] does not apply.
An attacker may put incorrect information in the Video Loss An attacker is likely to put incorrect information in the Video Loss
Concealment reports, which will be affect the estimation of video Concealment reports, which will affect the estimation of video loss
loss concealment mechanisms performance and QoE of users. concealment mechanisms performance and QoE of users. Implementers
Implementers should consider the guidance in [RFC7202] for using SHOULD consider the guidance in [RFC7202] for using appropriate
appropriate security mechanisms, i.e., where security is a concern, security mechanisms, i.e., where security is a concern, the
the implementation should apply encryption and authentication to the implementation SHOULD apply encryption and authentication to the
report block. For example, this can be achieved by using the AVPF report block. For example, this can be achieved by using the AVPF
profile together with the Secure RTP profile as defined in [RFC3711]; profile together with the Secure RTP profile as defined in [RFC3711];
an appropriate combination of the two profiles (an "SAVPF") is an appropriate combination of the two profiles (an "SAVPF") is
specified in [RFC5124]. However, other mechanisms also exist specified in [RFC5124]. However, other mechanisms also exist
(documented in [RFC7201]) and might be more suitable. (documented in [RFC7201]) and might be more suitable.
7 IANA Considerations 7 IANA Considerations
New block types for RTCP XR are subject to IANA registration. For New block types for RTCP XR are subject to IANA registration. For
general guidelines on IANA considerations for RTCP XR, refer to general guidelines on IANA considerations for RTCP XR, please refer
[RFC3611]. to [RFC3611].
7.1 New RTCP XR Block Type Value 7.1 New RTCP XR Block Type Value
This document assigns the block type value VLC in the IANA "RTP This document assigns the block type value VLC in the IANA "RTP
Control Protocol Extended Reports (RTCP XR) Block Type Registry" to Control Protocol Extended Reports (RTCP XR) Block Type Registry" to
the "Video Loss Concealment Metrics Report Block". the "Video Loss Concealment Metric Report Block".
[Note to RFC Editor: please replace VLC with the IANA provided RTCP [Note to RFC Editor: please replace VLC with the IANA provided RTCP
XR block type for this block.] XR block type for this block.]
7.2 New RTCP XR SDP Parameter 7.2 New RTCP XR SDP Parameter
This document also registers a new parameter "video-loss-concealment" This document also registers a new parameter "video-loss-concealment"
in the "RTP Control Protocol Extended Reports (RTCP XR) Session in the "RTP Control Protocol Extended Reports (RTCP XR) Session
Description Protocol (SDP) Parameters Registry". Description Protocol (SDP) Parameters Registry".
7.3 Contact Information for registrations 7.3 Contact Information for registrations
The following contact information is provided for all registrations The contact information for the registration is:
in this document:
Rachel Huang (rachel.huang@huawei.com) RAI Area Directors
101 Software Avenue, Yuhua District rai-ads@tools.ietf.org
Nanjing, Jiangsu 210012
China
8 Acknowledgements 8 Acknowledgements
The author would like to thank Colin Perkins, Roni Even for their The author would like to thank Colin Perkins, Roni Even for their
valuable comments. valuable comments.
9 References 9 References
9.1 Normative References 9.1 Normative References
[KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V.
Jacobson, "RTP: A Transport Protocol for Real-Time
Applications", STD 64, RFC 3550, July 2003.
[RFC3611] Friedman, T., Ed., Caceres, R., Ed., and A. Clark, Ed.,
"RTP Control Protocol Extended Reports (RTCP XR)",
RFC 3611, November 2003.
[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Description Protocol", RFC 4566, July 2006.
[RFC3711] Baugher, M., McGrew, D., Naslund, M., Carrara, E., and K.
Norrman, "The Secure Real-time Transport Protocol (SRTP)",
RFC 3711, March 2004.
[RFC5124] Ott, J. and E. Carrara, "Extended Secure RTP Profile for
Real-time Transport Control Protocol (RTCP)-Based Feedback
(RTP/SAVPF)", RFC 5124, February 2008.
[RFC5105] Lendl, O., "ENUM Validation Token Format Definition",
RFC 5105, December 2007.
[RFC4588] Rey, J., Leon, D., Miyazaki, A., Varsa, V., and R.
Hakenberg, "RTP Retransmission Payload Format", RFC 4588,
July 2006.
[RFC6776] Clark, A. and Q. Wu, "Measurement Identity and Information [RFC6776] Clark, A. and Q. Wu, "Measurement Identity and Information
Reporting Using a Source Description (SDES) Item and an Reporting Using a Source Description (SDES) Item and an
RTCP Extended Report (XR) Block", RFC6776, October 2012. RTCP Extended Report (XR) Block", RFC6776, October 2012.
[RFC7201] Westerlund, M. and C., Perkins, "Qptions for Securing RTP [RFC7201] Westerlund, M. and C., Perkins, "Qptions for Securing RTP
Sessions", RFC 7201, April 2014. Sessions", RFC 7201, April 2014.
[RFC7202] Perkins, C. and M., Westerlund, "Securing the RTP [RFC7202] Perkins, C. and M., Westerlund, "Securing the RTP
Framework: Why RTP Does Not Mandate a Single Media Framework: Why RTP Does Not Mandate a Single Media
Security Solution", RFC 7202, April 2014. Security Solution", RFC 7202, April 2014.
skipping to change at page 11, line 50 skipping to change at page 11, line 47
timestamp. timestamp.
* Measurement Point(s) with Potential Measurement Domain: It is * Measurement Point(s) with Potential Measurement Domain: It is
measured at the receiving end of the RTP stream. measured at the receiving end of the RTP stream.
* Measurement Timing: See paragraph 1 of Section 4. * Measurement Timing: See paragraph 1 of Section 4.
* Use and Applications: The metric is applicable to video * Use and Applications: The metric is applicable to video
applications of RTP and the video component of Audio/Video applications of RTP and the video component of Audio/Video
applications in which packet loss concealment mechanisms are applications in which packet loss concealment mechanisms are
incorporated into the receiving endpoint to mitigate the impact of applied to the receiving endpoint to mitigate the impact of
network impairments on QoE. network impairments on QoE.
b. Video Concealed Duration Metric b. Video Concealed Duration Metric
* Metric Name: Video Concealed Duration Metric * Metric Name: Video Concealed Duration Metric
* Metric Description: The total time length of concealed damaged * Metric Description: The total time length of concealed damaged
video pictures on which loss concealment method corresponding to V video pictures on which loss concealment method corresponding to
is applied. Video Loss Concealment Method Type is applied.
* Method of Measurement or Calculation: The metric is based on * Method of Measurement or Calculation: The metric is based on
measurements that are typically made at the time that a video measurements that are typically made at the time that a video
frame is decoded and rendered for playout. frame is decoded and rendered for playout.
* Units of Measurement: This metric is expressed in units of RTP * Units of Measurement: This metric is expressed in units of RTP
timestamp. timestamp.
* Measurement Point(s) with Potential Measurement Domain: It is * Measurement Point(s) with Potential Measurement Domain: It is
measured at the receiving end of the RTP stream. measured at the receiving end of the RTP stream.
* Measurement Timing: See paragraph 2 of Section 4. * Measurement Timing: See paragraph 1 of Section 4.
* Use and Applications: These metrics are applicable to video * Use and Applications: These metrics are applicable to video
applications of RTP and the video component of Audio/Video applications of RTP and the video component of Audio/Video
applications in which packet loss concealment mechanisms are applications in which packet loss concealment mechanisms are
incorporated into the receiving endpoint to mitigate the impact of incorporated into the receiving endpoint to mitigate the impact of
network impairments on QoE. network impairments on QoE.
c. Mean Video Frame Freeze Duration Metric c. Mean Video Frame Freeze Duration Metric
* Metric Name: Mean Video Frame Freeze Duration Metric * Metric Name: Mean Video Frame Freeze Duration Metric
* Metric Description: The mean duration of the frame freeze * Metric Description: The mean duration of the frame freeze
events. events.
* Method of Measurement or Calculation: The metric is based on * Method of Measurement or Calculation: The metric is based on
measurements that are typically made at the time that a video measurements that are typically made at the time that a video
frame is decoded and rendered for playout. The metric shall be frame is decoded and rendered for playout. The metric is
calculated by summing the total duration of all frame freeze calculated by summing the total duration of all frame freeze
events and dividing by the number of events. events and dividing by the number of events.
* Units of Measurement: This metric is expressed in units of RTP * Units of Measurement: This metric is expressed in units of RTP
timestamp. timestamp.
* Measurement Point(s) with Potential Measurement Domain: It is * Measurement Point(s) with Potential Measurement Domain: It is
measured at the receiving end of the RTP stream. measured at the receiving end of the RTP stream.
* Measurement Timing: See paragraph 2 of Section 4. * Measurement Timing: See paragraph 1 of Section 4.
* Use and Applications: These metrics are applicable to video * Use and Applications: These metrics are applicable to video
applications of RTP and the video component of Audio/Video applications of RTP and the video component of Audio/Video
applications in which packet loss concealment mechanisms are applications in which packet loss concealment mechanisms are
incorporated into the receiving endpoint to mitigate the impact of incorporated into the receiving endpoint to mitigate the impact of
network impairments on QoE. network impairments on QoE.
d. Mean Impaired Video Frame Proportion Metric d. Mean Impaired Video Frame Proportion Metric
* Metric Name: Mean Impaired Video Frame Proportion Metric * Metric Name: Mean Impaired Video Frame Proportion Metric
skipping to change at page 13, line 25 skipping to change at page 13, line 21
* Metric Description: Mean proportion of each video frame impaired * Metric Description: Mean proportion of each video frame impaired
by loss before applying any loss concealment method during the by loss before applying any loss concealment method during the
interval. interval.
* Method of Measurement or Calculation: The metric is based on * Method of Measurement or Calculation: The metric is based on
measurements that are typically made at the time that a video measurements that are typically made at the time that a video
frame is decoded and rendered for playout. It is calculated by frame is decoded and rendered for playout. It is calculated by
summing the impaired proportion of each video frame and dividing summing the impaired proportion of each video frame and dividing
by the number of frames during this period. The impaired by the number of frames during this period. The impaired
proportion of each video frame is obtained by dividing the number proportion of each video frame is obtained by dividing the number
of lost RTP packets from this video frame by the total packet of missing macroblocks from this video frame by the total
number of the video frame, which is equivalent to taking the macroblock number of the video frame, which is equivalent to
integer part after multiplying the loss fraction by 256. If a multiplying the result of the division by 256, limiting the
video frame is totally lost, a value of 0xFF shall be used for the maximum value to 255 (to avoid overflow), and taking the integer
frame when calculating the mean value. part.
* Units of Measurement: This metric is expressed as a fixed point * Units of Measurement: This metric is expressed as a fixed point
number with the binary point at the left edge of the field. number with the binary point at the left edge of the field.
* Measurement Point(s) with Potential Measurement Domain: It is * Measurement Point(s) with Potential Measurement Domain: It is
measured at the receiving end of the RTP stream. measured at the receiving end of the RTP stream.
* Measurement Timing: See paragraph 2 of Section 4. * Measurement Timing: See paragraph 1 of Section 4.
* Use and Applications: These metrics are applicable to video * Use and Applications: These metrics are applicable to video
applications of RTP and the video component of Audio/Video applications of RTP and the video component of Audio/Video
applications in which packet loss concealment mechanisms are applications in which packet loss concealment mechanisms are
incorporated into the receiving endpoint to mitigate the impact of incorporated into the receiving endpoint to mitigate the impact of
network impairments on QoE. network impairments on QoE.
e. Mean Concealed Video Frame Proportion Metric e. Mean Concealed Video Frame Proportion Metric
* Metric Name: Mean Concealed Video Frame Proportion Metric * Metric Name: Mean Concealed Video Frame Proportion Metric
* Metric Description: Mean proportion of each video frame to which * Metric Description: Mean proportion of each video frame to which
loss concealment (using V) was applied during the interval. loss concealment (using Video Loss Concealment Method Type) was
applied during the interval.
* Method of Measurement or Calculation: The metric is based on * Method of Measurement or Calculation: The metric is based on
measurements that are typically made at the time that a video measurements that are typically made at the time that a video
frame is decoded and rendered for playout. It is calculated by frame is decoded and rendered for playout. It is calculated by
summing the concealed proportion of each video frame and dividing summing the concealed proportion of each video frame and dividing
by the number of frames during this period. The concealed by the number of frames during this period. The concealed
proportion of each video frame is obtained by dividing the number proportion of each video frame is obtained by dividing the number
of concealed macroblocks from this video frame by the total of concealed macroblocks from this video frame by the total
macroblock number of the video frame, which is equivalent to macroblock number of the video frame, which is equivalent to
taking the integer part after multiplying the fraction by 256. If multiplying the result of the division by 256, limiting the
a lost video frame is totally concealed, a value of 0xFF and if maximum value to 255 (to avoid overflow), and taking the integer
there are no concealed macroblocks, a value of 0, shall be used part.
for the frame when calculating the mean value.
* Units of Measurement: This metric is expressed as a fixed point * Units of Measurement: This metric is expressed as a fixed point
number with the binary point at the left edge of the field. number with the binary point at the left edge of the field.
* Measurement Point(s) with Potential Measurement Domain: It is * Measurement Point(s) with Potential Measurement Domain: It is
measured at the receiving end of the RTP stream. measured at the receiving end of the RTP stream.
* Measurement Timing: See paragraph 2 of Section 4. * Measurement Timing: See paragraph 1 of Section 4.
* Use and Applications: These metrics are applicable to video * Use and Applications: These metrics are applicable to video
applications of RTP and the video component of Audio/Video applications of RTP and the video component of Audio/Video
applications in which packet loss concealment mechanisms are applications in which packet loss concealment mechanisms are
incorporated into the receiving endpoint to mitigate the impact of incorporated into the receiving endpoint to mitigate the impact of
network impairments on QoE. network impairments on QoE.
f. Fraction of Video Frames Subject to Concealment Metric f. Fraction of Video Frames Subject to Concealment Metric
* Metric Name: Fraction of Video Frames Subject to Concealment * Metric Name: Fraction of Video Frames Subject to Concealment
Metric Metric
* Metric Description: Proportion of concealed video frames to * Metric Description: Proportion of concealed video frames to
which loss concealment (using V) was applied comparing to the which loss concealment (using Video Loss Concealment Method Type)
total number of frames during the interval. was applied comparing to the total number of frames during the
interval.
* Method of Measurement or Calculation: The metric is based on * Method of Measurement or Calculation: The metric is based on
measurements that are typically made at the time that a video measurements that are typically made at the time that a video
frame is decoded and rendered for playout. This metric is frame is decoded and rendered for playout. This metric is
calculated by dividing the number of frames to which loss calculated by dividing the number of frames to which loss
concealment (using V) was applied by the total number of frames. concealment (using Video Loss Concealment Method Type) was applied
It is equivalent to taking the integer part after multiplying the by the total number of frames. It is equivalent to multiplying the
fraction by 256. A value of 0 indicates that there were no result of the division by 256, limiting the maximum value to 255
concealed frame and a value of 0xFF indicates that the frames in (to avoid overflow), and taking the integer part.
the entire measurement interval are all concealed.
* Units of Measurement: This metric is expressed as a fixed point * Units of Measurement: This metric is expressed as a fixed point
number with the binary point at the left edge of the field. number with the binary point at the left edge of the field.
* Measurement Point(s) with Potential Measurement Domain: It is * Measurement Point(s) with Potential Measurement Domain: It is
measured at the receiving end of the RTP stream. measured at the receiving end of the RTP stream.
* Measurement Timing: See paragraph 2 of Section 4. * Measurement Timing: See paragraph 1 of Section 4.
* Use and Applications: These metrics are applicable to video * Use and Applications: These metrics are applicable to video
applications of RTP and the video component of Audio/Video applications of RTP and the video component of Audio/Video
applications in which packet loss concealment mechanisms are applications in which packet loss concealment mechanisms are
incorporated into the receiving endpoint to mitigate the impact of incorporated into the receiving endpoint to mitigate the impact of
network impairments on QoE. network impairments on QoE.
Authors' Addresses Authors' Addresses
Rachel Huang Rachel Huang
 End of changes. 53 change blocks. 
170 lines changed or deleted 170 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/