OSDN Git Service

Test write permission
[android-x86/hardware-intel-common-libva.git] / test / vainfo.c
1 /*
2  * Copyright (c) 2007 Intel Corporation. All Rights Reserved.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the
6  * "Software"), to deal in the Software without restriction, including
7  * without limitation the rights to use, copy, modify, merge, publish,
8  * distribute, sub license, and/or sell copies of the Software, and to
9  * permit persons to whom the Software is furnished to do so, subject to
10  * the following conditions:
11  * 
12  * The above copyright notice and this permission notice (including the
13  * next paragraph) shall be included in all copies or substantial portions
14  * of the Software.
15  * 
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
19  * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
20  * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23  */
24
25 #include "va.h"
26 #include "X11/Xlib.h"
27
28 #include <stdarg.h>
29 #include <stdio.h>
30 #include <string.h>
31 #include <stdlib.h>
32
33 int main(int argc, const char* argv[])
34 {
35   Display *dpy;
36   VADisplay va_dpy;
37   VAStatus va_status;
38   int major_version, minor_version;
39   const char *driver;
40   const char *display = getenv("DISPLAY");
41   const char *name = rindex(argv[0], '/');
42
43   if (name)
44       name++;
45   else
46       name = argv[0];
47
48   dpy = XOpenDisplay(NULL);
49   if (NULL == dpy)
50   {
51       fprintf(stderr, "%s: Error, can't open display: '%s'\n", name, display ? display : "");
52       return 1;
53   }
54   
55   va_dpy = vaGetDisplay(dpy);
56   if (NULL == va_dpy)
57   {
58       fprintf(stderr, "%s: vaGetDisplay() failed\n", name);
59       return 2;
60   }
61   
62   va_status = vaInitialize(va_dpy, &major_version, &minor_version);
63   if (VA_STATUS_SUCCESS != va_status )
64   {
65       fprintf(stderr, "%s: vaInitialize failed with error code %d (%s)\n", 
66               name, va_status, vaErrorStr(va_status));
67       return 3;
68   }
69   printf("%s: VA API version: %d.%d\n", name, major_version, minor_version);
70
71   driver = vaQueryVendorString(va_dpy);
72   printf("%s: Driver version: %s\n", name, driver ? driver : "<unknown>");
73   vaTerminate(va_dpy);
74   return 0;
75 }