<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.E-MailFormatvorlage17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hello,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I recently implemented a „multi-rate“ feature for x265 based on the latest x265 version. The target application is adaptive HTTP streaming, where you need the same video encoded at different representations. Basically,
 if you need to encode the same video at different bitrates (different qualities), the multi-rate method allows you to pass some analysis info from a high-quality reference encoding to lower quality dependent encodings, which is then used to constrain the RDO
 (and thus, this leads to a speed-up).<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">This is similar to the analysis-mode option already existing in x265. However, this analysis-mode option is not targeted at encodings at different qualities (the rate-distortion performance is degraded if you use this
 option across different qualities).<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I put my code on github for the moment: <a href="https://github.com/damjeux/multi-rate-x265">
https://github.com/damjeux/multi-rate-x265</a><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">When mr-mode is 1, the CU structure of each CTU is stored in an external file called analysisData.bin<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">When mr-mode is 2, analysisData.bin is loaded and the loaded CU structure is used to constrain the RDO by stopping the recursion in the different compressInterCU and compressIntraCU functions in analysis.cpp<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I have posted some results in a blog post:
<a href="https://damienschroeder.wordpress.com/2016/08/10/multi-rate-hevc-with-x265-for-adaptive-http-streaming/">
https://damienschroeder.wordpress.com/2016/08/10/multi-rate-hevc-with-x265-for-adaptive-http-streaming/</a><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">The implemented method performs better for high rd-levels (--rd 5 and 6), because the compressInterCU_rd0_4() function already constrains the CTU quadtree by using a minDepth.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">For example, with --rd 6, I get an average reduction in encoding time of  10% with no rate-distortion performance decrease (BD-rate -0.002%) in the case where I encode four representations with fixed QP 22, 27, 32, and
 37.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">With crf 22, 27, 32, and 37, I get an average encoding time reduction of 19% and the rate-distortion performance is slightly degraded (BD-rate 0.9%).<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Not sure if there is interest to include such a feature in the official x265, but I thought I should mention this.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Best regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Damien Schroeder<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><i><span style="font-size:9.0pt;mso-fareast-language:DE">Dipl.-Ing. Damien Schroeder<span style="color:black"><o:p></o:p></span></span></i></p>
<p class="MsoNormal"><i><span style="font-size:9.0pt;color:black;mso-fareast-language:DE">Technische Universität München<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span style="font-size:9.0pt;mso-fareast-language:DE">Lehrstuhl für Medientechnik<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span style="font-size:9.0pt;color:black;mso-fareast-language:DE">Chair of Media Technology<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span style="font-size:9.0pt;color:black;mso-fareast-language:DE">Arcisstr. 21, 80333 München<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US" style="font-size:9.0pt;color:black;mso-fareast-language:DE">Building 9, Room 1934<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US" style="font-size:9.0pt;color:black;mso-fareast-language:DE">Phone:</span></i><i><span lang="EN-US" style="font-size:9.0pt;mso-fareast-language:DE">    
<span style="color:black">+49 89 289 23507</span><o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US" style="font-size:9.0pt;color:black;mso-fareast-language:DE">Fax:</span></i><i><span lang="EN-US" style="font-size:9.0pt;mso-fareast-language:DE">        
<span style="color:black">+49 89 289 23523</span><o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US" style="font-size:9.0pt;color:black;mso-fareast-language:DE">Email:</span></i><i><span lang="EN-US" style="font-size:9.0pt;mso-fareast-language:DE">    
<span style="color:black"><a href="mailto:damien.schroeder@tum.de"><span style="color:blue">damien.schroeder@tum.de</span></a></span><o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US" style="font-size:9.0pt;color:black;mso-fareast-language:DE">Web:     
<a href="http://www.lmt.ei.tum.de/"><span style="color:blue">www.lmt.ei.tum.de</span></a><o:p></o:p></span></i></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
</body>
</html>