[x265] [PATCH] add condition to handle i400

Pradeep Ramachandran pradeep at multicorewareinc.com
Mon May 22 10:19:02 CEST 2017


On Mon, May 22, 2017 at 12:08 PM, <bhavna at multicorewareinc.com> wrote:

> # HG changeset patch
> # User Bhavna Hariharan <bhavna at multicorewareinc.com>
> # Date 1495434924 -19800
> #      Mon May 22 12:05:24 2017 +0530
> # Node ID 355cf3582263acc9bbcb8faa24f1dfa009f41de3
> # Parent  b4149e898b508ae540f1d90bc3c56132a94e3e8f
> add condition to handle i400
>

Pushed to default branch.


>
> diff -r b4149e898b50 -r 355cf3582263 doc/reST/cli.rst
> --- a/doc/reST/cli.rst  Fri May 19 17:50:52 2017 +0530
> +++ b/doc/reST/cli.rst  Mon May 22 12:05:24 2017 +0530
> @@ -93,7 +93,7 @@
>         **Distortion** Average luma and chroma distortion. Calculated as
>         SSE is done on fenc and recon(after quantization).
>
> -       **Psy Energy **  Average psy energy calculated as the sum of
> absolute
> +       **Psy Energy**  Average psy energy calculated as the sum of
> absolute
>         difference between source and recon energy. Energy is measured by
> sa8d
>         minus SAD.
>
> diff -r b4149e898b50 -r 355cf3582263 source/common/picyuv.cpp
> --- a/source/common/picyuv.cpp  Fri May 19 17:50:52 2017 +0530
> +++ b/source/common/picyuv.cpp  Mon May 22 12:05:24 2017 +0530
> @@ -354,24 +354,27 @@
>          }
>          m_avgLumaLevel = (double)lumaSum / (m_picHeight * m_picWidth);
>
> -        for (int r = 0; r < height >> m_vChromaShift; r++)
> +        if (param.internalCsp != X265_CSP_I400)
>          {
> -            for (int c = 0; c < width >> m_hChromaShift; c++)
> +            for (int r = 0; r < height >> m_vChromaShift; r++)
>              {
> -                m_maxChromaULevel = X265_MAX(uPic[c], m_maxChromaULevel);
> -                m_minChromaULevel = X265_MIN(uPic[c], m_minChromaULevel);
> -                cbSum += uPic[c];
> +                for (int c = 0; c < width >> m_hChromaShift; c++)
> +                {
> +                    m_maxChromaULevel = X265_MAX(uPic[c],
> m_maxChromaULevel);
> +                    m_minChromaULevel = X265_MIN(uPic[c],
> m_minChromaULevel);
> +                    cbSum += uPic[c];
>
> -                m_maxChromaVLevel = X265_MAX(vPic[c], m_maxChromaVLevel);
> -                m_minChromaVLevel = X265_MIN(vPic[c], m_minChromaVLevel);
> -                crSum += vPic[c];
> +                    m_maxChromaVLevel = X265_MAX(vPic[c],
> m_maxChromaVLevel);
> +                    m_minChromaVLevel = X265_MIN(vPic[c],
> m_minChromaVLevel);
> +                    crSum += vPic[c];
> +                }
> +
> +                uPic += m_strideC;
> +                vPic += m_strideC;
>              }
> -
> -            uPic += m_strideC;
> -            vPic += m_strideC;
> +            m_avgChromaULevel = (double)cbSum / ((height >>
> m_vChromaShift) * (width >> m_hChromaShift));
> +            m_avgChromaVLevel = (double)crSum / ((height >>
> m_vChromaShift) * (width >> m_hChromaShift));
>          }
> -        m_avgChromaULevel = (double)cbSum / ((height >> m_vChromaShift) *
> (width >> m_hChromaShift));
> -        m_avgChromaVLevel = (double)crSum / ((height >> m_vChromaShift) *
> (width >> m_hChromaShift));
>      }
>
>  #if HIGH_BIT_DEPTH
> diff -r b4149e898b50 -r 355cf3582263 source/x265-extras.cpp
> --- a/source/x265-extras.cpp    Fri May 19 17:50:52 2017 +0530
> +++ b/source/x265-extras.cpp    Mon May 22 12:05:24 2017 +0530
> @@ -112,7 +112,9 @@
>                  }
>                  fprintf(csvfp, ", Avg Luma Distortion, Avg Chroma
> Distortion, Avg psyEnergy, Avg Residual Energy,"
>                                 " Min Luma Level, Max Luma Level, Avg Luma
> Level");
> -                fprintf(csvfp, ", Min Cb Level, Max Cb Level, Avg Cb
> Level, Min Cr Level, Max Cr Level, Avg Cr Level");
> +
> +                if (param.internalCsp != X265_CSP_I400)
> +                    fprintf(csvfp, ", Min Cb Level, Max Cb Level, Avg Cb
> Level, Min Cr Level, Max Cr Level, Avg Cr Level");
>
>                  if (level >= 2)
>                  {
> @@ -215,8 +217,12 @@
>
>  frameStats->avgResEnergy);
>
>      fprintf(csvfp, ", %d, %d, %.2lf", frameStats->minLumaLevel,
> frameStats->maxLumaLevel, frameStats->avgLumaLevel);
> -    fprintf(csvfp, ", %d, %d, %.2lf", frameStats->minChromaULevel,
> frameStats->maxChromaULevel, frameStats->avgChromaULevel);
> -    fprintf(csvfp, ", %d, %d, %.2lf", frameStats->minChromaVLevel,
> frameStats->maxChromaVLevel, frameStats->avgChromaVLevel);
> +
> +    if (param.internalCsp != X265_CSP_I400)
> +    {
> +        fprintf(csvfp, ", %d, %d, %.2lf", frameStats->minChromaULevel,
> frameStats->maxChromaULevel, frameStats->avgChromaULevel);
> +        fprintf(csvfp, ", %d, %d, %.2lf", frameStats->minChromaVLevel,
> frameStats->maxChromaVLevel, frameStats->avgChromaVLevel);
> +    }
>
>      if (level >= 2)
>      {
> _______________________________________________
> 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/20170522/f2f65806/attachment.html>


More information about the x265-devel mailing list