Hello, The result of your multi-rate feature for x265 looks interesting. I see that you speedup RDO by sharing depth from high quality to low quality encodings. I also see that you compare multi-rate's efficiency against analysis-mode, encoding with CQP. Is there any reason why you have not used ABR/CRF modes to compare results? I would imagine those are more commonly-used modes for encoding instead of fixed-QP encoding for real world use-cases
On Wed, Aug 10, 2016 at 6:42 PM, Schroeder, Damien <damien.schroe...@tum.de> wrote: > Hello, > > > > 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). > > > > 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). > > > > I put my code on github for the moment: https://github.com/damjeux/ > multi-rate-x265 > > > > When mr-mode is 1, the CU structure of each CTU is stored in an external > file called analysisData.bin > > 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 > > > > I have posted some results in a blog post: https://damienschroeder. > wordpress.com/2016/08/10/multi-rate-hevc-with-x265-for- > adaptive-http-streaming/ > > > > 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. > > > > 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. > > > > 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%). > > > > Not sure if there is interest to include such a feature in the official > x265, but I thought I should mention this. > > > > Best regards, > > Damien Schroeder > > > > > > *Dipl.-Ing. Damien Schroeder* > > *Technische Universität München* > > *Lehrstuhl für Medientechnik* > > *Chair of Media Technology* > > *Arcisstr. 21, 80333 München* > > *Building 9, Room 1934* > > *Phone:** +49 89 289 23507* > > *Fax:** +49 89 289 23523* > > *Email:** damien.schroe...@tum.de <damien.schroe...@tum.de>* > > *Web: www.lmt.ei.tum.de <http://www.lmt.ei.tum.de/>* > > > > > > _______________________________________________ > x265-devel mailing list > x265-devel@videolan.org > https://mailman.videolan.org/listinfo/x265-devel > > -- Regards, Kavitha
_______________________________________________ x265-devel mailing list x265-devel@videolan.org https://mailman.videolan.org/listinfo/x265-devel