[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