[Mesa-dev] [PATCH 1/3] xvmc tests: Clean up test_rendering slightly

Younes Manton younes.m at gmail.com
Sun Aug 28 09:14:52 PDT 2011


On Sat, Aug 27, 2011 at 7:56 PM, Maarten Lankhorst
<m.b.lankhorst at gmail.com> wrote:
> Signed-off-by: Maarten Lankhorst <m.b.lankhorst at gmail.com>
> ---
>  .../xorg/xvmc/tests/test_rendering.c               |   38 ++++++++++++-------
>  1 files changed, 24 insertions(+), 14 deletions(-)
>
> diff --git a/src/gallium/state_trackers/xorg/xvmc/tests/test_rendering.c b/src/gallium/state_trackers/xorg/xvmc/tests/test_rendering.c
> index 6058783..94ac7d4 100644
> --- a/src/gallium/state_trackers/xorg/xvmc/tests/test_rendering.c
> +++ b/src/gallium/state_trackers/xorg/xvmc/tests/test_rendering.c
> @@ -40,8 +40,8 @@
>  #define MACROBLOCK_HEIGHT_IN_BLOCKS    (MACROBLOCK_HEIGHT / BLOCK_HEIGHT)
>  #define BLOCKS_PER_MACROBLOCK          6
>
> -#define INPUT_WIDTH                    16
> -#define INPUT_HEIGHT                   16
> +#define INPUT_WIDTH                    64
> +#define INPUT_HEIGHT                   64
>  #define INPUT_WIDTH_IN_MACROBLOCKS     (INPUT_WIDTH / MACROBLOCK_WIDTH)
>  #define INPUT_HEIGHT_IN_MACROBLOCKS    (INPUT_HEIGHT / MACROBLOCK_HEIGHT)
>  #define NUM_MACROBLOCKS                        (INPUT_WIDTH_IN_MACROBLOCKS * INPUT_HEIGHT_IN_MACROBLOCKS)
> @@ -51,7 +51,6 @@
>  #define DEFAULT_ACCEPTABLE_ERR         0.01
>
>  void ParseArgs(int argc, char **argv, unsigned int *output_width, unsigned int *output_height, double *acceptable_error, int *prompt);
> -void Gradient(short *block, unsigned int start, unsigned int stop, int horizontal);
>
>  void ParseArgs(int argc, char **argv, unsigned int *output_width, unsigned int *output_height, double *acceptable_error, int *prompt)
>  {
> @@ -59,7 +58,7 @@ void ParseArgs(int argc, char **argv, unsigned int *output_width, unsigned int *
>        int i;
>
>        *output_width = DEFAULT_OUTPUT_WIDTH;
> -       *output_height = DEFAULT_OUTPUT_WIDTH;
> +       *output_height = DEFAULT_OUTPUT_HEIGHT;
>        *acceptable_error = DEFAULT_ACCEPTABLE_ERR;
>        *prompt = 1;
>
> @@ -101,7 +100,7 @@ void ParseArgs(int argc, char **argv, unsigned int *output_width, unsigned int *
>                );
>  }
>
> -void Gradient(short *block, unsigned int start, unsigned int stop, int horizontal)
> +static void Gradient(short *block, unsigned int start, unsigned int stop, int horizontal, unsigned int intra_unsigned)
>  {
>        unsigned int x, y;
>        unsigned int range = stop - start;
> @@ -109,14 +108,22 @@ void Gradient(short *block, unsigned int start, unsigned int stop, int horizonta
>        if (horizontal)
>        {
>                for (y = 0; y < BLOCK_HEIGHT; ++y)
> -                       for (x = 0; x < BLOCK_WIDTH; ++x)
> -                               block[y * BLOCK_WIDTH + x] = (short)(start + range * (x / (float)(BLOCK_WIDTH - 1)));
> +                       for (x = 0; x < BLOCK_WIDTH; ++x) {
> +                               *block = (short)(start + range * (x / (float)(BLOCK_WIDTH - 1)));
> +                               if (intra_unsigned)
> +                                       *block += 1 << 10;
> +                               block++;
> +                       }
>        }
>        else
>        {
>                for (y = 0; y < BLOCK_HEIGHT; ++y)
> -                       for (x = 0; x < BLOCK_WIDTH; ++x)
> -                               block[y * BLOCK_WIDTH + x] = (short)(start + range * (y / (float)(BLOCK_HEIGHT - 1)));
> +                       for (x = 0; x < BLOCK_WIDTH; ++x) {
> +                               *block = (short)(start + range * (y / (float)(BLOCK_WIDTH - 1)));
> +                               if (intra_unsigned)
> +                                       *block += 1 << 10;
> +                               block++;
> +                       }
>        }
>  }
>
> @@ -128,7 +135,7 @@ int main(int argc, char **argv)
>        int                     prompt;
>        Display                 *display;
>        Window                  root, window;
> -       const unsigned int      mc_types[2] = {XVMC_MOCOMP | XVMC_MPEG_2, XVMC_IDCT | XVMC_MPEG_2};
> +       const unsigned int      mc_types[] = {XVMC_MOCOMP | XVMC_MPEG_2};
>        XvPortID                port_num;
>        int                     surface_type_id;
>        unsigned int            is_overlay, intra_unsigned;
> @@ -153,7 +160,7 @@ int main(int argc, char **argv)
>                INPUT_HEIGHT,
>                XVMC_CHROMA_FORMAT_420,
>                mc_types,
> -               2,
> +               sizeof(mc_types)/sizeof(*mc_types),
>                &port_num,
>                &surface_type_id,
>                &is_overlay,
> @@ -213,7 +220,8 @@ int main(int argc, char **argv)
>                                                blocks,
>                                                (short)(start + range * ((mbx * MACROBLOCK_WIDTH + bx * BLOCK_WIDTH) / (float)(INPUT_WIDTH - 1))),
>                                                (short)(start + range * ((mbx * MACROBLOCK_WIDTH + bx * BLOCK_WIDTH + BLOCK_WIDTH - 1) / (float)(INPUT_WIDTH - 1))),
> -                                               1
> +                                               1,
> +                                               intra_unsigned
>                                        );
>
>                                        blocks += BLOCK_SIZE;
> @@ -229,7 +237,8 @@ int main(int argc, char **argv)
>                                                blocks,
>                                                (short)(start + range * ((mbx * MACROBLOCK_WIDTH + bx * BLOCK_WIDTH) / (float)(INPUT_WIDTH - 1))),
>                                                (short)(start + range * ((mbx * MACROBLOCK_WIDTH + bx * BLOCK_WIDTH + BLOCK_WIDTH - 1) / (float)(INPUT_WIDTH - 1))),
> -                                               1
> +                                               1,
> +                                               intra_unsigned
>                                        );
>
>                                        blocks += BLOCK_SIZE;
> @@ -239,7 +248,8 @@ int main(int argc, char **argv)
>                                                blocks,
>                                                (short)(start + range * ((mbx * MACROBLOCK_WIDTH + bx * BLOCK_WIDTH) / (float)(INPUT_WIDTH - 1))),
>                                                (short)(start + range * ((mbx * MACROBLOCK_WIDTH + bx * BLOCK_WIDTH + BLOCK_WIDTH - 1) / (float)(INPUT_WIDTH - 1))),
> -                                               1
> +                                               1,
> +                                               intra_unsigned
>                                        );
>
>                                        blocks += BLOCK_SIZE;
> --
> 1.7.6
>
>
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>

Pushed. Thanks.


More information about the mesa-dev mailing list