[x265] [PATCH] no-rdo: Replace optimized merge routine to decrease bitrate by 1.6%

Sumalatha Polureddy sumalatha at multicorewareinc.com
Thu Oct 3 08:35:05 CEST 2013


The CLI  used
D:\sumalatha\projects\hevc\hevc_samples\BasketballDrive_1920x1080_50.y4m -o
bitstream.hevc -r recon.y4m --rect -f 100 --rd 1 --hash 1 --bframes 0

Regards
Sumalatha


On Thu, Oct 3, 2013 at 12:01 PM, Sumalatha Polureddy <
sumalatha at multicorewareinc.com> wrote:

> for basketballdrive for running 30 frames,
>
> rdo
> bitrate: 3216
> PSNR: 38.27
> time: 72 sec
>
> no-rdo(with original merge code)
> bitrate: 3362 (4.5% increase compared with rdo)
> PSNR: 38.223 (almost same quality)
> time: 32 sec ( 55% increase compared with rdo)
>
> no-rdo(with optimized merge code)
> bitrate: 3417(6% increase compared with rdo)
> PSNR: 38.233(almost same qulaity)
> Time: 22.2(69.4% increase compare to rdo)
>
> Regards
> Sumalatha
>
>
>
> On Thu, Oct 3, 2013 at 11:22 AM, Steve Borho <steve at borho.org> wrote:
>
>>
>>
>>
>> On Thu, Oct 3, 2013 at 12:48 AM, <sumalatha at multicorewareinc.com> wrote:
>>
>>> # HG changeset patch
>>> # User sumalatha polureddy
>>> # Date 1380779314 -19800
>>> # Node ID 942db71c75d2a6abb66bbca3d50fdb6a6a721b2c
>>> # Parent  2c73823af5223e38d019dbbca56c2aa7fe58245e
>>> no-rdo: Replace optimized merge routine to decrease bitrate by 1.6%
>>>
>>> In original merge routine, best candidate is selected based on the cost
>>> of
>>> encoding with and without residue.
>>> In optimized routine, the best merge candidate is selected based on cost
>>> without residue which increased bitrate by 1.6%.
>>> So replacing optimized routine with original routine to reduce the
>>> bitrate
>>>
>>
>> What is the performance implication of this?  it sounds like a choice
>> that should probably be left in the user's hands.
>>
>>
>>> diff -r 2c73823af522 -r 942db71c75d2 source/encoder/compress.cpp
>>> --- a/source/encoder/compress.cpp       Wed Oct 02 17:00:40 2013 +0530
>>> +++ b/source/encoder/compress.cpp       Thu Oct 03 11:18:34 2013 +0530
>>> @@ -412,7 +412,7 @@
>>>
>>>          /* Compute  Merge Cost */
>>>          bool earlyDetectionSkip = false;
>>> -        xComputeCostMerge2Nx2N(m_bestMergeCU[depth], m_mergeCU[depth],
>>> &earlyDetectionSkip, m_modePredYuv[3][depth], m_bestMergeRecoYuv[depth]);
>>> +        xCheckRDCostMerge2Nx2N(m_bestMergeCU[depth], m_mergeCU[depth],
>>> &earlyDetectionSkip, m_modePredYuv[3][depth], m_bestMergeRecoYuv[depth]);
>>>
>>>          if (!earlyDetectionSkip)
>>>          {
>>> _______________________________________________
>>> x265-devel mailing list
>>> x265-devel at videolan.org
>>> https://mailman.videolan.org/listinfo/x265-devel
>>>
>>
>>
>>
>> --
>> Steve Borho
>>
>> _______________________________________________
>> x265-devel mailing list
>> x265-devel at videolan.org
>> https://mailman.videolan.org/listinfo/x265-devel
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20131003/bf054e25/attachment-0001.html>


More information about the x265-devel mailing list