<?xml version='1.0' encoding='utf-8'?>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">

<!-- Converted to v3 by Sarah 01/29/20 -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="info"
     docName="draft-ietf-netvc-requirements-10" ipr="trust200902"
     submissionType="IETF" xml:lang="en" version="3" number="0000"
     consensus="true" symRefs="true" sortRefs="true" tocInclude="true">
<?rfc text-list-symbols="o.-*+"?>
<front>
<title abbrev="Video Codec Requirements and Evaluation">Video Codec Requirements and Evaluation Methodology</title>
<seriesInfo name="RFC" value="0000"  />

	<author fullname="Alexey Filippov" initials="A." surname="Filippov">
      <organization>Huawei Technologies</organization>
      <address>
        <email>alexey.filippov@huawei.com</email>
        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>
	<author fullname="Andrey Norkin" initials="A." surname="Norkin">
      <organization>Netflix</organization>
      <address>
        <email>anorkin@netflix.com</email>
      </address>
    </author>
	<author fullname="Jose Roberto Alvarez" initials="J.R." surname="Alvarez">
      <organization>Huawei Technologies</organization>
      <address>
        <email>j.alvarez@ieee.org</email>
      </address>
    </author>
	<date month="February" year="2020"/>
    <keyword>Internet-Draft</keyword>
<!-- [rfced] Please insert any keywords (beyond those that appear in 
the title) for use on https://www.rfc-editor.org/search.
-->

<keyword>example</keyword>


    <abstract>
      <t>
   This document provides requirements for a video codec designed
   mainly for use over the Internet. In addition, this document
   describes an evaluation methodology needed for measuring the
   compression efficiency to ensure whether the stated requirements are
   fulfilled or not.
      </t>
    </abstract>   
</front>

<middle>
<section title="Introduction"> <!-- 1, line 97-->
<t>This document presents the requirements for a video codec designed mainly for
use over the Internet. The requirements encompass a wide range
of applications that use data transmission over the Internet, including
Internet video streaming, IPTV, peer-to-peer video conferencing, video
sharing, screencasting, game streaming, and video monitoring /
surveillance. For each application, typical resolutions, frame rates, and
picture-access modes are presented.
Specific requirements related to data transmission over packet-loss networks
are considered, as well. In this document, when we discuss data-protection
techniques, we only refer to methods designed and implemented to protect data
inside the video codec, since there are many existing techniques that protect
generic data transmitted over networks with packet losses. From the
theoretical point of view, both packet-loss and bit-error robustness can be
beneficial for video codecs. In practice, packet losses are a more significant
problem than bit corruption in IP networks. It is worth noting that there is
an evident interdependence between possible amount of delay and the necessity
of error-robust video streams:
</t>
<t>o  If an amount of delay is not crucial for an application, then reliable
transport protocols such as TCP that retransmit undelivered packets can be
used to guarantee correct decoding of transmitted data.
</t>
<t>o  If the amount of delay must be kept low, then either data transmission
should be error free (e.g., by using managed networks), or the compressed
video stream should be error resilient.
</t>
<t>Thus, error resilience can be useful for delay-critical applications to
provide low delay in a packet-loss environment.
</t>
</section> <!-- ends: "1 from line 97-->


<section anchor="defs" title="Definitions and Abbreviations Used in This
			      Document"> <!-- 2, line 113-->

<dl newline="true">
<dt>High dynamic range imaging</dt>
<dd>A set of techniques that allow a greater dynamic range of exposures or
values (i.e., a wider range of values between light and dark areas) than normal
digital imaging techniques. The intention is to accurately represent the wide
range of intensity levels found in examples such as exterior scenes that
include light-colored items struck by direct sunlight and areas of deep shadow
<xref target="HDR"/>.</dd>
<dt>Random access period</dt>
<dd>The period of time between the two closest independently decodable frames
(pictures).</dd>
<dt>RD-point</dt>
<dd>A point in a two-dimensional rate-distortion space where the values of
bitrate and quality metric are used as x- and y-coordinates, respectively</dd>
<dt>Visually lossless compression</dt>
<dd>A form or manner of lossy compression where the data that are lost
after the file is compressed and decompressed is not detectable to the eye;
the compressed data appears identical to the uncompressed data <xref
target="COMPRESSION"/>.</dd>
<dt>Wide color gamut</dt>
<dd>A certain complete color subset (e.g., considered in <xref target="PARAMETER" />)
that supports a wider range of colors (i.e., an extended range of colors that
can be generated by a specific input or output device such as a video camera,
<!--[rfced] We have created references for the documents cited below. Please
advise whether they should be listed as Normative or Informative. In addition,
we don't see discussion of color gamuts in BT.709, suggested by
the citation below. Please review citation for accuracy.

Original:
Wide color gamut is a certain complete color subset ... that supports a wider
range of colors ... than conventional color gamuts
(e.g., considered in ITU-R BT.601 or BT.709).
--> 
monitor, or printer and can be interpreted by a color model) than conventional
color gamuts (e.g., considered in <xref target="STUDIO" /> or <xref
target="HDTV" />).</dd>
</dl>

<!-- Table:  2 columns, with header row plus two rows -->
<table anchor="Abbrevs">  <!-- Assign an anchor -->
  <name>Abbreviations used in the text of this document</name> 
  <thead>
    <tr>
      <th>Abbreviation</th>    <!-- <th>:  header -->
      <th>Meaning</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>AI</td>
      <td>All-Intra (each picture is intra-coded)</td>
    </tr>
    <tr>
      <td>BD-Rate</td>
      <td>Bjontegaard Delta Rate</td>
    </tr>
    <tr>
      <td>FIZD</td>
      <td>just the First picture is Intra-coded, Zero structural Delay</td>
    </tr>
    <tr>
      <td>GOP</td>
      <td>Group of Picture</td>
    </tr>
    <tr>
      <td>HBR</td>
      <td>High Bitrate Range </td>
    </tr>
    <tr>
      <td>HDR</td>
      <td>High Dynamic Range</td>
    </tr>
    <tr>
      <td>HRD</td>
      <td>Hypothetical Reference Decoder</td>
    </tr>
    <tr>
      <td>IPTV</td>
      <td>Internet Protocol Television</td>
    </tr>
    <tr>
      <td>LBR</td>
      <td>Low Bitrate Range</td>
    </tr>
    <tr>
      <td>MBR</td>
      <td>Medium Bitrate Range</td>
    </tr>
    <tr>
      <td>MOS</td>
      <td>Mean Opinion Score</td>
    </tr>
    <tr>
      <td>MS-SSIM</td>
      <td>Multi-Scale Structural Similarity quality index</td>
    </tr>
    <tr>
      <td>PAM</td>
      <td>Picture Access Mode</td>
    </tr>
    <tr>
      <td>PSNR</td>
      <td>Peak Signal-to-Noise Ratio</td>
    </tr>
    <tr>
      <td>QoS</td>
      <td>Quality of Service</td>
    </tr>
    <tr>
      <td>QP</td>
      <td>Quantization Parameter</td>
    </tr>
    <tr>
      <td>RA</td>
      <td>Random Access</td>
    </tr>
    <tr>
      <td>RAP</td>
      <td>Random Access Period</td>
    </tr>
    <tr>
      <td>RD</td>
      <td>Rate-Distortion</td>
    </tr>
    <tr>
      <td>SEI</td>
      <td>Supplemental Enhancement Information</td>
    </tr>
    <tr>
      <td>SNR</td>
      <td>Signal-to-Noise Ratio</td>
    </tr>
    <tr>
      <td>UGC</td>
      <td>User-Generated Content</td>
    </tr>
    <tr>
      <td>VDI</td>
      <td>Virtual Desktop Infrastructure</td>
    </tr>
    <tr>
      <td>VUI</td>
      <td>Video Usability Information</td>
    </tr>
    <tr>
      <td>WCG</td>
      <td>Wide Color Gamut</td>
    </tr>
  </tbody>
</table>



</section> <!-- ends: "2 from line 113-->
<section title="Applications"> <!-- 3, line 191-->
<t>In this section, an overview of video codec applications that are currently
available on the Internet market is presented. It is worth noting that there
are different use cases for each application that define a target platform,
and hence there are different types of communication channels involved (e.g.,
wired or wireless channels), which are characterized by different qualities of
service as well as bandwidth; for instance, wired channels are considerably
more free from error than wireless channels and therefore require different QoS
<!--[rfced] FYI, we were having difficulty parsing the following
sentence. Please review the changes for technical accuracy.

Original:
The target platform, the channel bandwidth and the
channel quality determine resolutions, frame-rates and quality or
bit-rates for video streams to be encoded or decoded.

Changed to:
The target platform, the channel bandwidth, and the channel quality                  
determine resolutions, frame rates, and quality (bitrates) for encoding or
decoding video streams.
-->
approaches. The target platform, the channel bandwidth, and the channel quality
determine resolutions, frame rates, and quality (bitrates) for encoding or
decoding video streams. By default, color format YCbCr 4:2:0 is assumed for
the application scenarios listed below.
</t>
<section title="Internet Video Streaming"> <!-- 3.1, line 197-->
<t>Typical content for this application is movies, TV shows, and
animation. Internet video streaming uses a variety of client devices and has
to operate under changing network conditions. For this reason, an adaptive
streaming model has been widely adopted. Video material is encoded at
different quality levels and different resolutions, which are then chosen by a
client depending on its capabilities and current network bandwidth. An example
combination of resolutions and bitrates is shown in <xref target="vid-stream" />.
</t>
<t>A video encoding pipeline in on-demand Internet video streaming typically operates as follows:
</t>
<ul>
<li>Video is encoded in the cloud by software encoders.
</li>
<li>Source video is split into chunks, each of which is encoded separately, in parallel.
</li>
<li>Closed-GOP encoding in which 2-to-5-second intrapicture intervals (or longer) are used.
</li>
<li>Encoding is perceptually optimized. Perceptual quality is important and should be considered during the codec development.
</li>
</ul>

<table anchor="vid-stream">  <!-- Assign an anchor -->
  <name>Internet video streaming: typical values of resolutions, frame rates,
  and RAPs</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th>Resolution  *</th>    <!-- <th>:  headings -->
      <th>Frame rate, fps</th>
      <th>PAM</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>4K, 3840x2160</td>
      <td rowspan="10">24/1.001, 24, 25, 30/1.001, 30, 50, 60/1.001, 60, 100,
      120/1.001, 120. The set of frame rates presented in this table is taken
      from Table 1 in <xref target="PARAMETER"/></td>
      <td>RA</td>
    </tr>
    <tr>
      <td>2K (1080p), 1920x1080</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>1080i, 1920x1080*</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>720p, 1280x720</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>576p (EDTV), 720x576</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>576i (SDTV), 720x576*</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>480p (EDTV), 720x480</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>480i (SDTV), 720x480*</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>512x384</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>QVGA, 320x240</td>
      <td>RA</td>
    </tr>
  </tbody>
</table>


<t>
*NB: Interlaced content can be handled at the higher system level
   and not necessarily by using specialized video coding tools.  It is
   included in this table only for the sake of completeness, as most
   video content today is in the progressive format.
</t>	

<t>The characteristics and requirements of this application scenario are as follows:
</t>
<ul>
<li>High encoder complexity (up to 10x and more) can be tolerated, since
encoding happens once and in parallel for different segments.
</li>
<li>Decoding complexity should be kept at reasonable levels to enable efficient decoder implementation.
</li>
<li><t>Support and efficient encoding of a wide range of content types and formats is required:</t>
<ul>
<li>High Dynamic Range (HDR), Wide Color Gamut (WCG), high-resolution
(currently, up to 4K), and high-frame-rate content are important use cases; the
codec should be able to encode such content efficiently.
</li>
<li>Coding-efficiency improvement at both lower and higher resolutions is
important, since low resolutions are used when streaming in low-bandwidth
conditions.
</li>
<li>Improvement on both "easy" and "difficult" content in terms
   of compression efficiency at the same quality level
   contributes to the overall bitrate/storage savings.
</li>
<li>Film grain (and sometimes other types of noise) is often present in the streaming movie-type content and is usually a part of the creative intent.
</li>
</ul></li>
<li>Significant improvements in compression efficiency between generations of
video standards are desirable, since this scenario typically assumes long-term
support of legacy video codecs.
</li>
<li>Random access points are inserted frequently (one per 2-5 seconds) to enable switching between resolutions and fast-forward playback.
</li>
<li>The elementary stream should have a model that allows easy parsing and
identification of the sample components.
</li>
<li>Middle QP values are normally used in streaming; this is also the range
where compression efficiency is important for this scenario.
</li>
<li>Scalability or other forms of supporting multiple quality representations are beneficial if they do not incur significant bitrate overhead and if mandated in the first version.
</li>

</ul>
</section> <!-- ends: "3.1 from line 197-->
<section title="Internet Protocol Television (IPTV)"> <!-- 3.2, line 269-->
<t>This is a service for delivering television content over IP-based networks. IPTV may be classified into two main groups based on the type of delivery, as follows:
</t>
<ul>
<li>unicast (e.g., for video on demand), where delay is not crucial;
</li>
<li>multicast/broadcast (e.g., for transmitting news) where delay related to
zapping -- i.e., stream changing -- is important.
</li>
</ul>
<t>In the IPTV scenario, traffic is transmitted over managed (QoS- based)
networks. Typical content used in this application is news, movies, cartoons,
series, TV shows, etc. One important requirement for both groups is random
access to pictures -- i.e., random access period (RAP) -- should be kept small
enough (approximately, 1-5 seconds). Optional requirements are as follows:
</t>
<ul>
<li>Temporal (frame-rate) scalability;
</li>
<li>Resolution and quality (SNR) scalability.
</li>
</ul>
<t>For this application, typical values of resolutions, frame rates, and RAPs
are presented in <xref target="IPTV" />.
</t>

<table anchor="IPTV">  <!-- Assign an anchor -->
  <name>IPTV: typical values of resolutions, frame rates, and RAPs</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th>Resolution  *</th>    <!-- <th>:  headings -->
      <th>Frame rate, fps</th>
      <th>PAM</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>2160p (4K),3840x2160</td>
      <td rowspan="8">24/1.001, 24, 25, 30/1.001, 30, 50, 60/1.001, 60, 100,
      120/1.001, 120. The set of frame rates presented in this table is taken
      from Table 2 in <xref target="PARAMETER" /></td>
      <td>RA</td>
    </tr>
    <tr>
      <td>1080p, 1920x1080</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>1080i, 1920x1080*</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>720p, 1280x720</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>576p (EDTV), 720x576</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>576i (SDTV), 720x576*</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>480p (EDTV), 720x480</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>480i (SDTV), 720x480*</td>
      <td>RA</td>
    </tr>
  </tbody>
</table>

<t>
*NB: Interlaced content can be handled at the higher system level
   and not necessarily by using specialized video coding tools.  It is
   included in this table only for the sake of completeness, as most
   video content today is in a progressive format.
</t>

</section> <!-- ends: "3.2 from line 269-->
<section title="Video Conferencing"> <!-- 3.3, line 319-->
<t>This is a form of video connection over the Internet. This form allows
users to establish connections to two or more people by two- way video and
audio transmission for communication in real time. For this application, both
stationary and mobile devices can be used. The main requirements are as
follows:
</t>
<ul>
<li>Delay should be kept as low as possible (the preferable and maximum
end-to-end delay values should be less than 100 ms <xref target="SG-16"/> and 320 ms <xref target="QoE"/>, respectively);
</li>
<li>Temporal (frame-rate) scalability;
</li>
<li>Error robustness.
</li>
</ul>

<t>Support of resolution and quality (SNR) scalability is highly
desirable. For this application, typical values of resolutions, frame rates,
and RAPs are presented in <xref target="vid-conf"/>.
</t>
<!-- Table:  3 columns, with header row plus three rows -->
<table anchor="vid-conf">  <!-- Assign an anchor -->
  <name>Video conferencing: typical values of resolutions, frame rates, and
  RAPs</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th>Resolution</th>    <!-- <th>:  headings -->
      <th>Frame rate, fps</th>
      <th>PAM</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>1080p,  1920x1080 </td>
      <td>15, 30</td>
      <td>FIZD</td>
    </tr>
    <tr>
      <td>720p,  1280x720</td>
      <td>30, 60</td>
      <td>FIZD</td>
    </tr>
    <tr>
      <td>4CIF,  704x576</td>
      <td>30, 60</td>
      <td>FIZD</td>
    </tr>
    <tr>
      <td>4SIF,  704x480</td>
      <td>30, 60</td>
      <td>FIZD</td>
    </tr>
    <tr>
      <td>VGA,  640x480 </td>
      <td>30, 60</td>
      <td>FIZD</td>
    </tr>
    <tr>
      <td>360p,  640x360</td>
      <td>30, 60</td>
      <td>FIZD</td>
    </tr>

  </tbody>
</table>



</section> <!-- ends: "3.3 from line 319-->
<section title="Video Sharing"> <!-- 3.4, line 358-->
<t>This is a service that allows people to upload and share video data (using
live streaming or not) and watch those videos. It is also known as video hosting. A
typical User-Generated Content (UGC) scenario for this application is to
capture video using mobile cameras such as GoPros or cameras integrated into
smartphones (amateur video). The main requirements are as follows:
</t>
<ul>
<li>Random access to pictures for downloaded video data;
</li>
<li>Temporal (frame-rate) scalability;
</li>
<li>Error robustness.
</li>
</ul>
<t>Support of resolution and quality (SNR) scalability is highly
desirable. For this application, typical values of resolutions, frame rates,
and RAPs are presented in <xref target="vid-share" />.
</t>

<!-- Table:  3 columns, with header row plus three rows -->
<table anchor="vid-share">  <!-- Assign an anchor -->
  <name>Video sharing: typical values of resolutions, frame rates <xref
  target="YOUTUBE" />, and
  RAPs</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th>Resolution</th>    <!-- <th>:  headings -->
      <th>Frame rate, fps</th>
      <th>PAM</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>2160p (4K),3840x2160</td>
      <td>24, 25, 30, 48, 50, 60</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>1440p (2K),2560x1440</td>
      <td>24, 25, 30, 48, 50, 60</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>1080p, 1920x1080</td>
      <td>24, 25, 30, 48, 50, 60</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>720p, 1280x720</td>
      <td>24, 25, 30, 48, 50, 60</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>480p, 854x480</td>
      <td>24, 25, 30, 48, 50, 60</td>
      <td>RA</td>
    </tr>
    <tr>
      <td>360p, 640x360 </td>
      <td>24, 25, 30, 48, 50, 60</td>
      <td>RA</td>
    </tr>
  </tbody>
</table>


</section> <!-- ends: "3.4 from line 358-->
<section title="Screencasting"> <!-- 3.5, line 373-->
<t>This is a service that allows users to record and distribute
computer-desktop screen output. This service requires efficient compression of
computer-generated content with high visual quality up to visually and
mathematically (numerically) lossless <xref target="HEVC-EXT" />. Currently, this application
includes business presentations (PowerPoint, Word documents, email messages,
etc.), animation (cartoons), gaming content, and data visualization -- i.e., the
type of content that is characterized by fast motion, rotation, smooth shade,
3D effect, highly saturated colors with full resolution, clear textures,
sharp edges with distinct colors <xref target="HEVC-EXT" />), virtual desktop
infrastructure (VDI),
screen/desktop sharing and collaboration, supervisory control and data
acquisition (SCADA) display, automotive/navigation display, cloud gaming, factory automation
display, wireless display, display wall,
digital operating room (DiOR), etc. For this application, an important
requirement is the support of low-delay configurations with zero structural
delay for a wide range of video formats (e.g., RGB) in addition to YCbCr 4:2:0
and YCbCr 4:4:4 <xref target="HEVC-EXT" />. For this application, typical values of resolutions,
frame rates, and RAPs are presented in <xref target="screencast" />.
</t>


<table anchor="screencast">  <!-- Assign an anchor -->
  <name>Screencasting for RGB and YCbCr 4:4:4 format: typical values of
  resolutions, frame rates, and RAPs</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th align="center">Resolution</th>    <!-- <th>:  headings -->
      <th align="center">Frame rate, fps</th>
      <th align="center">PAM</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td colspan="3" align="center">Input color format: RGB 4:4:4</td>
    </tr>
    <tr>
      <td>5k, 5120x2880</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>4k, 3840x2160</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>WQXGA, 2560x1600</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>WUXGA, 1920x1200</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>WSXGA+, 1680x1050</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>WXGA, 1280x800</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>XGA, 1024x768</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>SVGA, 800x600</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>VGA, 640x480</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td colspan="3" align="center">Input color format: YCbCr 4:4:4</td>
    </tr>
    <tr>
      <td>5k, 5120x2880</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>4k, 3840x2160</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>1440p (2K), 2560x1440</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>1080p, 1920x1080</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
    <tr>
      <td>720p, 1280x720</td>
      <td>15, 30, 60</td>
      <td>AI, RA, FIZD</td>
    </tr>
  </tbody>
</table>




</section> <!-- ends: "3.5 from line 373-->
<section title="Game Streaming"> <!-- 3.6, line 380-->
<t>This is a service that provides game content over the Internet to different
local devices such as notebooks and gaming tablets. In this category of
applications, the server renders 3D games in a cloud server and streams the game to
any device with a wired or wireless broadband connection <xref target="GAME"
/>. There are low-latency requirements for transmitting user interactions and
receiving game data with a turnaround delay of less than 100 ms. This allows
anyone to play (or resume) full-featured games from anywhere in the Internet
<xref target="GAME" />. An example of this application is Nvidia Grid <xref
target="GAME" />. Another category application is broadcast of video games
played by people over the Internet in real time or for later viewing <xref
target="GAME" />. There are many companies, such as Twitch and YY in China, that enable
game broadcasting <xref target="GAME" />. Games typically contain a lot of
sharp edges and large motion <xref target="GAME" />. The main requirements are
as follows:
</t>
<ul>
<li>Random access to pictures for game broadcasting;
</li>
<li>Temporal (frame-rate) scalability;
</li>
<li>Error robustness.
</li>
</ul>
<t>Support of resolution and quality (SNR) scalability is highly
desirable. For this application, typical values of resolutions, frame rates,
and RAPs are similar to ones presented in <xref target="vid-conf"/>.
</t>
</section> <!-- ends: "3.6 from line 380-->
<section title="Video Monitoring / Surveillance"> <!-- 3.7, line 393-->
<t>This is a type of live broadcasting over IP-based networks. Video streams
are sent to many receivers at the same time. A new receiver may connect to the
stream at an arbitrary moment, so the random access period should be kept small
enough (approximately, ~1-5 seconds). Data are transmitted publicly in the
case of video monitoring and privately in the case of video surveillance,
respectively. For IP cameras that have to capture, process, and encode video
data, complexity -- including computational and hardware complexity, as well as
memory bandwidth -- should be kept low to allow real-time processing. In
addition, support of a high dynamic range and a monochrome mode (e.g., for
infrared cameras) as well as resolution and quality (SNR) scalability is an
essential requirement for video surveillance. In some use cases, high
video-signal fidelity is required even after lossy compression. Typical values
of
resolutions, frame rates, and RAPs for video monitoring / surveillance
applications are presented in <xref target="monitoring"/>.
</t>


<table anchor="monitoring">  <!-- Assign an anchor -->
  <name>Video monitoring / surveillance: typical values of resolutions,
  frame rates, and RAPs</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th>Resolution</th>    <!-- <th>:  headings -->
      <th>Frame rate, fps</th>
      <th>PAM</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>2160p (4K),3840x2160</td>
      <td>12, 25, 30</td>
      <td>RA, FIZD</td>
    </tr>
    <tr>
      <td>5Mpixels, 2560x1920</td>
      <td>12, 25, 30</td>
      <td>RA, FIZD</td>
    </tr>
    <tr>
      <td>1080p, 1920x1080</td>
      <td>25, 30</td>
      <td>RA, FIZD</td>
    </tr>
    <tr>
      <td>1.3Mpixels, 1280x960</td>
      <td>25, 30</td>
      <td>RA, FIZD</td>
    </tr>
    <tr>
      <td>720p, 1280x720</td>
      <td>25, 30</td>
      <td>RA, FIZD</td>
    </tr>
    <tr>
      <td>SVGA, 800x600 </td>
      <td>25, 30</td>
      <td>RA, FIZD</td>
    </tr>
  </tbody>
</table>


</section> <!-- ends: "3.7 from line 393-->
</section> <!-- ends: "3 from line 191-->
<section title="Requirements"> <!-- 4, line 401-->
<t>Taking the requirements discussed above for specific video applications,
this section proposes requirements for an Internet video codec.
</t>
<section anchor="gen-reqs" title="General Requirements"> <!-- 4.1, line 406-->

<section anchor="efficiency" title="Efficiency">
<!--[rfced] The section cited below does not seem to contain applications or
use cases, as described. Please review.

Original:
The most basic requirement is coding efficiency, i.e.
compression performance on both "easy" and "difficult" content for
applications and use cases in Section 2.
-->
<t>The most basic requirement is coding efficiency -- i.e., compression
performance on both "easy" and "difficult" content for applications and use
<!--[rfced] Is the correct expansion for HEVC "High Efficiency Video Coding"?

Original:
The codec should provide
higher coding efficiency over state-of-the-art video codecs such as
HEVC/H.265 and VP9

Perhaps:
The codec should provide
higher coding efficiency over state-of-the-art video codecs such as
High Efficiency Video Coding (HEVC/H.265) and VP9
--> 
cases in <xref target="defs" />. The codec should provide higher coding efficiency over
state-of-the-art video codecs such as HEVC/H.265 and VP9 by at least 25%, in
accordance with the methodology described in <xref target="gen-reqs"/> of this document. For
higher resolutions, the coding efficiency improvements are expected to be
higher than for lower resolutions.  <!-- 4.1.1, line 408-->
</t>
</section>

<section anchor="profiles" title="Specification and Profiles">
<t>Good-quality specification and well-defined profiles and levels are
required to enable device interoperability and facilitate decoder
implementations. A profile consists of a subset of entire bitstream syntax
elements, and consequently it also defines the necessary tools for decoding a
conforming bitstream of that profile. A level imposes a set of numerical
limits to the values of some syntax elements. An example of codec levels to be
supported is presented in <xref target="codec-levels"/>. An actual level
definition should include constraints on features that impact the decoder
complexity. For example, these features might be as follows: maximum bitrate,
line buffer size, memory usage, etc.
</t>

<table anchor="codec-levels">  <!-- Assign an anchor -->
  <name>Codec levels</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th>Level</th>    <!-- <th>:  header -->
      <th>Example picture resolution at highest frame rate</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>1</td>
      <td>128x96(12,288*)@30.0&br;176x144(25,344*)@15.0</td>
    </tr>
    <tr>
      <td>2</td>
      <td>352x288(101,376*)@30.0</td>
    </tr>
    <tr>
      <td>3</td>
      <td>352x288(101,376*)@60.0&br;640x360(230,400*)@30.0</td>
    </tr>
    <tr>
      <td>4</td>
      <td>640x360(230,400*)@60.0&br;960x540(518,400*)@30.0</td>
    </tr>
    <tr>
      <td>5</td>
      <td>720x576(414,720*)@75.0&br;960x540(518,400*)@60.0&br;1280x720(921,600*)@30.0</td>
    </tr>
    <tr>
      <td>6</td>
      <td>1,280x720(921,600*)@68.0&br;2,048x1,080(2,211,840*)@30.0</td>
    </tr>
    <tr>
      <td>7</td>
      <td>1,280x720(921,600*)@120.0</td>
    </tr>
    <tr>
      <td>8</td>
      <td>1,920x1,080(2,073,600*)@120.0&br;3,840x2,160(8,294,400*)@30.0&br;4,096x2,160(8,847,360*)@30.0</td>
    </tr>
    <tr>
      <td>9</td>
      <td>1,920x1,080(2,073,600*)@250.0&br;4,096x2,160(8,847,360*)@60.0</td>
    </tr>
    <tr>
      <td>10</td>
      <td>1,920x1,080(2,073,600*)@300.0&br;4,096x2,160(8,847,360*)@120.0</td>
    </tr>
    <tr>
      <td>11</td>
      <td>3,840x2,160(8,294,400*)@120.0&br;8,192x4,320(35,389,440*)@30.0</td>
    </tr>
    <tr>
      <td>12</td>
      <td>3,840x2,160(8,294,400*)@250.0&br;8,192x4,320(35,389,440*)@60.0</td>
    </tr>
    <tr>
      <td>13</td>
      <td>3,840x2,160(8,294,400*)@300.0&br;8,192x4,320(35,389,440*)@120.0</td>
    </tr>
  </tbody>
</table>



<t>
   *NB: The quantities of pixels are presented for applications in which a
   picture can have an arbitrary size (e.g., screencasting)
</t>
</section>

<section anchor="syntax" title="Bitstream Syntax">
<t>Bitstream syntax should allow extensibility and backward
compatibility. New features can be supported easily by using metadata (such as
SEI messages, VUI, and headers) without affecting the bitstream compatibility
with legacy decoders. A newer version of the decoder shall be able to play
bitstreams of an older version of the same or lower profile and level.
</t>
</section>

<section anchor="model" title="Bitstream Model">
<t> 
<!--[rfced] We have created references for the documents cited below. Please
advise whether they should be listed as Normative or Informative.

Original:
A bitstream should have a model that allows easy parsing and
identification of the sample components (such as ISO/IEC14496-10,
Annex B or ISO/IEC 14496-15).
-->
A bitstream should have a model that allows easy parsing and
identification of the sample components (such as Annex B of <xref
target="ADVANCED" /> or <xref target="NAL"/>). In particular, information
needed for packet handling
(e.g., frame type) should not require parsing anything below the header
level. <!-- 4.1.4, line 414-->
</t> 
</section>

<section anchor="tools" title="Perceptual-Quality Tools">
<t>
Perceptual-quality tools (such as adaptive QP and quantization matrices) should be supported by the codec bitstream. <!-- 4.1.5, line 416-->
</t> <!-- ends: "4.1.5 from line 416-->
</section>

<section anchor="buffer" title="Buffer Model">
<t>
The codec specification shall define a buffer model such as hypothetical reference decoder (HRD). <!-- 4.1.6, line 418-->
</t> <!-- ends: "4.1.6 from line 418-->
</section>

<section anchor="integration" title="Integration">
<t>
Specifications providing integration with system and delivery layers should be developed. <!-- 4.1.7, line 420-->
</t> <!-- ends: "4.1.7 from line 420-->
</section>

</section> <!-- ends: "4.1 from line 406-->

<section title="Basic Requirements"> <!-- 4.2, line 423-->
<section title="Input Source Formats"> <!-- 4.2.1, line 425-->
<ul>
<li>Bit depth: 8 and 10 bits (up to 12 bits for a high profile) per color component;
</li>
<li><t>Color sampling formats:</t>
<ul>
<li>YCbCr 4:2:0;
</li>
<li>YCbCr 4:4:4, YCbCr 4:2:2, and YCbCr 4:0:0 (preferably in different profile(s)).
</li>
</ul></li>
<li>For profiles with bit depth of 10 bits per sample or higher, support of high dynamic range and wide color gamut.
</li>
<li>Support of arbitrary resolution according to the level constraints for
applications in which a picture can have an arbitrary size (e.g., in screencasting).
</li>
<li>Exemplary input source formats for codec profiles are shown in <xref target="exemplary"/>.
</li>
</ul>


<table anchor="exemplary">  <!-- Assign an anchor -->
  <name>Exemplary input source formats for codec profiles</name>
  <thead>
    <tr>
      <th>Profile</th>    <!-- <th>:  headings -->
      <th>Bit depths per color component</th>
      <th>Color sampling formats</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>1</td>
      <td>8 and 10</td>
      <td>4:0:0 and 4:2:0</td>
    </tr>
    <tr>
      <td>2</td>
      <td>8 and 10</td>
      <td>4:0:0, 4:2:0 and 4:4:4</td>
    </tr>
    <tr>
      <td>3</td>
      <td>8, 10 and 12</td>
      <td>4:0:0, 4:2:0, 4:2:2 and 4:4:4</td>
    </tr>
  </tbody>
</table>

</section> <!-- ends: "4.2.1 from line 425-->
<section title="Coding Delay"> <!-- 4.2.2, line 466-->
<ul>
<li><t>Support of configurations with zero structural delay, also referred to
as "low-delay" configurations.</t>
<ul>
<li>Note 1: End-to-end delay should be no more than 320 ms <xref target="QoE" />, but
it is preferable for its value to be less than 100 ms <xref target="SG-16"/>.
</li>
</ul></li>
<li>Support of efficient random access point encoding (such as intracoding and
resetting of context variables), as well as efficient switching between
multiple quality representations.
</li>
<li>Support of configurations with nonzero structural delay (such as
out-of-order or multipass encoding) for applications without low-delay
requirements, if such configurations provide additional compression efficiency
improvements.
</li>
</ul>
</section> <!-- ends: "4.2.2 from line 466-->
<section title="Complexity"> <!-- 4.2.3, line 485-->
<ul>
<li>Feasible real-time implementation of both an encoder and a decoder supporting a chosen subset of tools for hardware and software implementation on a wide range of state-of-the-art platforms. The real-time encoder tools subset should provide meaningful improvement in compression efficiency at reasonable complexity of hardware and software encoder implementations as compared to real-time implementations of state-of-the-art video compression technologies such as HEVC/H.265 and VP9.
</li>
<li>High-complexity software encoder implementations used by offline encoding applications can have 10x or more complexity increase compared to state-of-the-art video compression technologies such as HEVC/H.265 and VP9.
</li>
</ul>
</section> <!-- ends: "4.2.3 from line 485-->
<section title="Scalability"> <!-- 4.2.4, line 495-->
<ul>
<li>Temporal (frame-rate) scalability should be supported.
</li>
</ul>
</section> <!-- ends: "4.2.4 from line 495-->
<section title="Error Resilience"> <!-- 4.2.5, line 501-->
<ul>
<li>Tools that are complementary to the error-protection
mechanisms implemented on the transport level should be supported.
</li>
<li>The codec should support mechanisms that facilitate packetization of a bitstream for common network protocols.
</li>
<li>Packetization mechanisms should enable frame-level error recovery by means of retransmission or error concealment.
</li>
<li>The codec should support effective mechanisms for allowing decoding and reconstruction of significant parts of pictures in the event that parts of the picture data are lost in transmission.
</li>
<li>The bitstream specification shall support independently decodable subframe
units similar to slices or independent tiles. It shall be possible for the
encoder to restrict the bitstream to allow parsing of the bitstream after a
packet loss and communication of it to the decoder.
</li>
</ul>
</section> <!-- ends: "4.2.5 from line 501-->
</section> <!-- ends: "4.2 from line 423-->
<section title="Optional Requirements"> <!-- 4.3, line 519-->
<section title="Input Source Formats"> <!-- 4.3.1, line 522-->
<ul>
<li>Bit depth: up to 16 bits per color component.
</li>
<li>Color sampling formats: RGB 4:4:4.
</li>
<li>Auxiliary channel (e.g., alpha channel) support.
</li>
</ul>
</section> <!-- ends: "4.3.1 from line 522-->
<section title="Scalability"> <!-- 4.3.2, line 534-->
<ul>
<li>Resolution and quality (SNR) scalability that provides a low-compression
efficiency penalty (increase of up to 5% of BD-rate <xref target="PSNR" /> per
layer with reasonable increase of both computational and hardware complexity)
can be supported in the main profile of the codec being developed by the NETVC
Working Group. Otherwise, a separate profile is needed to support these types of
scalability.
</li>
<li>Computational complexity scalability (i.e., computational complexity is
decreasing along with degrading picture quality) is desirable.
</li>
</ul>
</section> <!-- ends: "4.3.2 from line 534-->
<section title="Complexity"> <!-- 4.3.3, line 544-->
<t>Tools that enable parallel processing (e.g., slices, tiles, and wave-front
propagation processing) at both encoder and decoder sides are highly desirable
for many applications.
</t>
<ul>
<li>High-level multicore parallelism: encoder and decoder operation,
especially entropy encoding and decoding, should allow multiple frames or
subframe regions (e.g., 1D slices, 2D tiles, or partitions) to be processed
concurrently, either independently or with deterministic dependencies that can
be efficiently pipelined.
</li>
<!--[rfced] Please advise on how best to expand the abbreviations SIMD and
GPU.

Original:
Low-level instruction set parallelism: favor algorithms that are
SIMD/GPU friendly over inherently serial algorithms
--> 
<li>Low-level instruction-set parallelism: favor algorithms that are SIMD/GPU
friendly over inherently serial algorithms
</li>
</ul>
</section> <!-- ends: "4.3.3 from line 544-->
<section title="Coding Efficiency"> <!-- 4.3.4, line 557-->
<t>Compression efficiency on noisy content, content with film grain, computer
generated content, and low resolution materials is desirable.
</t>
</section> <!-- ends: "4.3.4 from line 557-->
</section> <!-- ends: "4.3 from line 519-->
</section> <!-- ends: "4 from line 401-->
<section title="Evaluation Methodology"> <!-- 5, line 563-->
<t>As shown in <xref target="QP"/>, compression-performance testing is
performed in 3 overlapped ranges that encompass 10 different bitrate values:
</t>
<ul>
<li>Low bitrate range (LBR) is the range that contains the 4 lowest bitrates of the 10 specified bitrates (1 of the 4 bitrate values is shared with the neighboring range);
</li>
<li>Medium bitrate range (MBR) is the range that contains the 4 medium bitrates of the 10 specified bitrates (2 of the 4 bitrate values are shared with the neighboring ranges);
</li>
<li>High bitrate range (HBR) is the range that contains the 4 highest bitrates of the 10 specified bitrates (1 of the 4 bitrate values is shared with the neighboring range).
</li>
</ul>
<t>Initially, for the codec selected as a reference one (e.g., HEVC or VP9), a
set of 10 QP (quantization parameter) values should be specified as in <xref
target="I-D.ietf-netvc-testing" />, and corresponding quality values should be calculated. In
<xref target="QP"/>, QP and quality values are denoted as QP0, QP1, QP2,..., QP8, QP9 and
Q0, Q1, Q2,..., Q8, and Q9, respectively. To guarantee the overlaps of quality
levels between the bitrate ranges of the reference and tested codecs, a
quality-alignment procedure should be performed for each range's outermost
(left- and rightmost) quality levels Qk of the reference codec (i.e., for Q0,
Q3, Q6, and Q9) and the quality levels Q'k (i.e., Q'0, Q'3, Q'6, and Q'9) of
the tested codec. Thus, these quality levels Q'k and, hence, the corresponding
QP value QP'k (i.e., QP'0, QP'3, QP'6, and QP'9) of the tested codec should be
selected using the following formulas:
</t>
<sourcecode>
Q'k =   min { abs(Q'i - Qk) },
      i in R

QP'k = argmin { abs(Q'i(QP'i) - Qk(QPk)) },
       i in R
</sourcecode>

<t>where R is the range of the QP indexes of the tested codec -- i.e., the
candidate Internet video codec. The inner quality levels (i.e., Q'1, Q'2, Q'4,
Q'5, Q'7, and Q'8), as well as their corresponding QP values of each range
(i.e., QP'1, QP'2, QP'4, QP'5, QP'7, and QP'8), should be as equidistantly
spaced as possible between the left- and rightmost quality levels without
explicitly mapping their values using the procedure described above.
</t>

<!--[rfced] Please provide alt text for Figure 1.
--> 
<figure anchor="QP">
<name>Quality/QP alignment for compression performance evaluation
</name>

<artwork>

QP'9 QP'8  QP'7 QP'6 QP'5 QP'4 QP'3 QP'2 QP'1 QP'0 &lt;+-----
 ^     ^    ^    ^    ^    ^    ^    ^    ^    ^    | Tested
 |     |    |    |    |    |    |    |    |    |    | codec
Q'0   Q'1  Q'2  Q'3  Q'4  Q'5  Q'6  Q'7  Q'8  Q'9  &lt;+-----
 ^               ^              ^              ^
 |               |              |              |
Q0    Q1    Q2   Q3   Q4   Q5   Q6   Q7   Q8   Q9  &lt;+-----
 ^    ^     ^    ^    ^    ^    ^    ^    ^    ^    | Reference
 |    |     |    |    |    |    |    |    |    |    | codec
QP9  QP8   QP7  QP6  QP5  QP4  QP3  QP2  QP1  QP0  &lt;+-----
+----------------+--------------+--------------+---------&gt;
^                ^              ^              ^     Bitrate
|-------LBR------|              |-----HBR------|
                 ^              ^
                 |------MBR-----|

</artwork>

</figure>

<t>Since the QP mapping results may vary for different sequences, this quality
alignment procedure eventually needs to be performed separately for each quality
assessment index and each sequence used for codec-performance evaluation to
fulfill the requirements described above.
</t>
<t>To assess the quality of output (decoded) sequences, two indexes are
separately computed, PSNR <xref target="IMAGE"/> and MS-SSIM <xref
target="IMAGE"/><xref target="MULTI-SCALE"/>. In the case
of the YCbCr color format, PSNR should be calculated for each color plane,
whereas MS-SSIM is calculated for the luma channel only. In the case of the RGB
color format, both metrics are computed for R, G, and B channels. Thus, for
each sequence, 30 RD-points for PSNR (i.e., three RD-curves, one for each
channel) and 10 RD-points for MS-SSIM (i.e., one RD-curve, for luma channel
only) should be calculated in the case of YCbCr. If content is encoded as RGB,
60 RD-points (30 for PSNR and 30 for MS-SSIM) should be calculated -- i.e., three
RD- curves (one for each channel) are computed for PSNR as well as three
RD-curves (one for each channel) for MS-SSIM.
</t>
<t>Finally, to obtain an integral estimation, BD-rate savings <xref
target="PSNR" /> should be
computed for each range and each quality index. In addition, average values
over all 3 ranges should be provided for both PSNR and MS-SSIM. A list of
video sequences that should be used for testing are defined in <xref
target="I-D.ietf-netvc-testing" />, as are the 10 QP values
for the reference codec. Testing processes should use the
information on the codec applications presented in this document. As the
reference for evaluation, state-of-the-art video codecs such as HEVC/H.265
<xref target="HETEROGENEOUS"/><xref target="CODING"/> or VP9 must be used. The reference source
code of the HEVC/H.265 codec
can be found at <xref target="HEVC"/>. The HEVC/H.265 codec must be configured
according to <xref target="CONDITIONS"/>
and <xref target="intra-period" />.
</t>


<table anchor="intra-period"> 
  <name>Intraperiods for different HEVC/H.265 encoding modes according to
  [CONDITIONS]</name>    <!-- Give the table a title -->
  <thead>
    <tr>
      <th>Intra-period, second</th>    <!-- <th>:  header -->
      <th>HEVC/H.265 encoding mode according to <xref target="CONDITIONS"/></th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>AI</td>
      <td>Intra Main or Intra Main10</td>
    </tr>
    <tr>
      <td>RA</td>
      <td>Random access Main or&br;Random access Main10</td>
    </tr>
    <tr>
      <td>FIZD</td>
      <td>Low delay Main or&br;Low delay Main10</td>
    </tr>
  </tbody>
</table>

<!--[rfced] The following sentence refers to a section that does not exist in
this document. If it refers to a section in another document, please specify.

Original:
According to the coding efficiency requirement described in Section
3.1.1, BD-rate savings calculated for each color plane and averaged
for all the video sequences used to test the NETVC codec should be...
--> 
<t>According to the coding efficiency requirement described in Section 3.1.1,
BD-rate savings calculated for each color plane and averaged for all the video
sequences used to test the NETVC codec should be, at least,
</t>
<ul>
<li>25% if calculated over the whole bitrate range;
</li>
<li>15% if calculated for each bitrate subrange (LBR, MBR, HBR).
</li>
</ul>
<t>Since values of the two objective metrics (PSNR and MS-SSIM) are available
for some color planes, each value should meet these coding efficiency
requirements. That is, the final BD-rate saving denoted as S is calculated for
a given color plane as follows:
</t>
<sourcecode>
S = min { S_psnr, S_ms-ssim },
</sourcecode>
<t>where S_psnr and S_ms-ssim are BD-rate savings calculated for the given color plane using PSNR and MS-SSIM metrics, respectively.
</t>
<t>In addition to the objective quality measures defined above, subjective
evaluation must also be performed for the final NETVC codec adoption. For
subjective tests, the MOS-based evaluation procedure must be used as described
in Section 2.1 of <xref target="IMAGE" />. For perception-oriented tools that primarily impact subjective quality, additional tests may also be individually assigned even for intermediate evaluation, subject to a decision of the NETVC WG.
</t>
</section> <!-- ends: "5 from line 563-->
<section title="Security Considerations"> <!-- 6, line 648-->
<t>This document itself does not address any security considerations. However,
it is worth noting that a codec implementation (for both an encoder and a
decoder) should take into consideration the worst-case computational
complexity, memory bandwidth, and physical memory size needed to process the
potentially untrusted input (e.g., the decoded pictures used as references).
</t>
</section> <!-- ends: "6 from line 648-->
<section title="IANA Considerations"> <!-- 7, line 653-->
<t>This document has no IANA actions.
</t>
</section> <!-- ends: "7 from line 653-->
</middle>
<back>
<displayreference target="I-D.ietf-netvc-testing" to="TESTING"/>
<references> <!-- start overall Ref section -->
      <name>References</name>
      <references> <!-- start of normative -->
        <name>Normative References</name>

	<reference anchor="PARAMETER" target="https://www.itu.int/rec/R-REC-BT.2020-2-201510-I/en">
	  <front>
	    <title>Parameter values for ultra-high definition television systems
	    for production and international programme exchange</title>
	    <author>
              <organization>ITU-R</organization>
	    </author>
	    <date month="October" year="2015" />
	  </front>
	  <seriesInfo name="ITU-R Recommendation" value="BT.2020-2" />
	</reference>

<reference anchor="QoE" target="https://www.itu.int/rec/T-REC-G.1091/en">

     <front>
       <title>Quality of Experience requirements for telepresence
       services</title>
       <author>
         <organization>ITU-T</organization>
       </author>
       <date month="October" year="2014" />
     </front>
     <seriesInfo name="ITU-T Recommendation" value="G.1091" />
</reference>

<reference anchor="IMAGE" target="https://www.iso.org/standard/63637.html">
     <front>
       <title>Information technology -- Advanced image coding and evaluation --
       Part 1: Guidelines for image coding system evaluation</title>
       <author>
         <organization>ISO</organization>
       </author>
       <date month="October" year="2017" />
     </front>
     <seriesInfo name="ISO/IEC" value="TR 29170-1:2017" />
</reference>

<reference anchor="HETEROGENEOUS" target="https://www.iso.org/standard/67660.html">
     <front>
       <title>Information technology -- High efficiency coding and media
       delivery in heterogeneous environments -- Part 2: High efficiency video
       coding</title>
       <author>
         <organization>ISO</organization>
       </author>
       <date month="May" year="2018" />
     </front>
     <seriesInfo name="ISO/IEC" value="23008-2:2015" />
</reference>

<!--[rfced] The cited version of ITU-T H.265 (2013) has been superceded by a
newer version (2019). May we update the reference to the newer version?
-->
<reference anchor="CODING" target="https://www.itu.int/rec/T-REC-H.265">

     <front>
       <title>High efficiency video coding</title>

       <author>
         <organization>ITU-T</organization>
       </author>

       <date month="April" year="2013" />
     </front>
     <seriesInfo name="ITU-T Recommendation" value="H.265" />
</reference>
<reference anchor="HEVC" target="https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/">
     <front>
       <title>High Efficiency Video Coding (HEVC) reference software (HEVC
         Test Model also known as HM)</title>
       <author>
         <organization>Fraunhofer Institute for
	 Telecommunications</organization>
       </author>
     </front>
</reference>
      </references> <!-- end of normative -->

<references> <!-- start of informative -->
        <name>Informative References</name>

<reference anchor="HDR"
	   target="http://www.digitizationguidelines.gov/term.php?term=highdynamicrangeimaging">
     <front>
       <title>Term: High dynamic range imaging</title>
       <author>
         <organization>Federal Agencies Digital Guidelines Initiative</organization>
       </author>
     </front>
</reference>

<reference anchor="COMPRESSION"
	   target="http://www.digitizationguidelines.gov/term.php?term=compressionvisuallylossless">
     <front>
       <title>Term: Compression, visually lossless</title>
       <author>
         <organization>Federal Agencies Digital Guidelines Initiative</organization>
       </author>
     </front>
</reference>

<reference anchor="SG-16" target="https://www.itu.int/md/T13-SG16-C-0988/en">
     <front>
       <title>The case for scalability support in version 1 of Future Video Coding</title>
       <author surname="Wenger" initials="S">
         <organization>ITU-T</organization>
       </author>
       <date month="September" year="2015" />
     </front>
     <seriesInfo name="SG 16 (Study Period 2013)" value="Contribution 988" />
</reference>

<reference anchor="YOUTUBE"
	   target="https://support.google.com/youtube/answer/1722171?hl=en">
     <front>
       <title>Recommended upload encoding settings</title>
       <author>
         <organization>YouTube</organization>
       </author>
     </front>
</reference>

<reference anchor="HEVC-EXT" target="https://mpeg.chiariglione.org/standards/mpeg-h/high-efficiency-video-coding/requirements-extension-hevc-coding-screen-content">
     <front>
       <title>Requirements for an extension of HEVC for coding of screen content</title>
       <author surname="Yu" initials="H" role="editor"/>
       <author surname="McCann" initials="K" role="editor"/>
       <author surname="Cohen" initials="R" role="editor"/>
       <author surname="Amon" initials="P" role="editor"/>
       <date month="January" year="2014" />
     </front>
     <seriesInfo name="ISO/IEC JTC 1/SC 29/WG 11 Moving Picture Experts Group"
		 value="MPEG2013/N14174" />
     <seriesInfo name="San Jose," value="USA" />
</reference>

<reference anchor="GAME" target="">
     <front>
       <title>Game streaming requirement for Future Video Coding</title>
       <author surname="Parhy" initials="M"/>
       <date month="June" year="2015" />
     </front>
     <seriesInfo name="ISO/IEC JTC 1/SC 29/WG 11 Moving Picture Experts Group"
		 value="N36771" />
     <seriesInfo name="Warsaw," value="Poland" />
</reference>
<reference anchor="PSNR" target="https://www.itu.int/wftp3/av-arch/video-site/0104_Aus/">
     <front>
       <title>Calculation of average PSNR differences between RD-curves</title>
       <author surname="Bjontegaard" initials="G">
         <organization>ITU-T</organization>
       </author>
       <date month="April" year="2001" />
     </front>
     <seriesInfo name="SG 16" value="VCEG-M33" />
</reference>

<!-- draft-ietf-netvc-testing-09 exists  -->
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml3/reference.I-D.draft-ietf-netvc-testing-09.xml"/>

<reference anchor="MULTI-SCALE" target="https://ieeexplore.ieee.org/document/1292216">
     <front>
       <title>Multiscale structural similarity for image quality assessment</title>
       <author surname="Wang" initials="Z"/>
       <author surname="Simoncelli" initials="E.P."/>
       <author surname="Bovik" initials="A.C."/>
       <date month="November" year="2003" />
     </front>
     <seriesInfo name="IEEE" value="Thirty-Seventh Asilomar Conference on
				   Signals, Systems and Computers" />
     <seriesInfo name="DOI" value="10.1109/ACSSC.2003.1292216" />
</reference>

<reference anchor="CONDITIONS"
	   target="http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=7281">
     <front>
       <title>Common HM test conditions and software reference configurations</title>
       <author surname="Bossen" initials="F">
       </author>
       <date month="April" year="2013" />
     </front>
     <seriesInfo name="Joint Collaborative Team on Video Coding (JCT-VC) of
		       the ITU-T Video Coding Experts Group (ITU-T Q.6/SG 16)
		       and ISO/IEC Moving Picture Experts Group (ISO/IEC JTC
		       1/SC 29/WG 11)" value="" />
     <seriesInfo name="Document" value="JCTVC-L1100" />
</reference>

<reference anchor="STUDIO" target="https://www.itu.int/rec/R-REC-BT.601/">
  <front>
    <title>Studio encoding parameters of digital television for standard 4:3
    and wide screen 16:9 aspect ratios</title>
    <author>
      <organization>ITU-R</organization>
    </author>
    <date month="March" year="2011" />
  </front>
  <seriesInfo name="ITU-R Recommendation" value="BT.601" />
</reference>

<reference anchor="ADVANCED" target="https://www.iso.org/standard/75400.html">
     <front>
       <title>Information technology -- Coding of audio-visual objects -- Part
       10: Advanced video coding</title>
       <author>
         <organization>ISO/IEC</organization>
       </author>
     </front>
     <seriesInfo name="ISO/IEC DIS" value="14496-10" />
</reference>

<reference anchor="NAL" target="https://www.iso.org/standard/74429.html">
     <front>
       <title>Information technology — Coding of audio-visual objects — Part
       15: Carriage of network abstraction layer (NAL) unit structured video
       in the ISO base media file format</title>
       <author>
         <organization>ISO/IEC</organization>
       </author>
     </front>
     <seriesInfo name="ISO/IEC" value="14496-15" />
</reference>

<reference anchor="HDTV" target="https://www.itu.int/rec/R-REC-BT.709">
  <front>
    <title>Parameter values for the HDTV standards for production and
    international programme exchange</title>
    <author>
      <organization>ITU-R</organization>
    </author>
    <date month="June" year="2015" />
  </front>
  <seriesInfo name="ITU-R Recommendation" value="BT.709" />
</reference>

</references> <!-- end of informative -->
</references> <!-- end of overall Ref section -->

<section anchor="sect-8" numbered="false" toc="default">
<name>Acknowledgments</name>
<t>The authors would like to thank Mr. Paul Coverdale, Mr. Vasily
Rufitskiy, and Dr. Jianle Chen for many useful discussions on this
document and their help while preparing it, as well as Mr. Mo Zanaty,
Dr. Minhua Zhou, Dr. Ali Begen, Mr. Thomas Daede, Mr. Adam Roach,
Dr. Thomas Davies, Mr. Jonathan Lennox, Dr. Timothy Terriberry,
Mr. Peter Thatcher, Dr. Jean-Marc Valin, Mr. Roman Danyliw, Mr. Jack
Moffitt, Mr. Greg Coppa, and Mr. Andrew Krupiczka for their valuable
comments on different revisions of this document.
</t>
</section>

</back>
</rfc>
<!-- generated from file draft-ietf-netvc-requirements-10.nroff with nroff2xml 0.1.0 by Tomek Mrugalski -->
