tests: avcenc: use common VA display creation routines.
authorDmitry Ermilov <dmitry.ermilov@intel.com>
Thu, 7 Jun 2012 15:45:15 +0000 (19:45 +0400)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Fri, 13 Jul 2012 11:44:31 +0000 (13:44 +0200)
Signed-off-by: Dmitry Ermilov <dmitry.ermilov@intel.com>
test/encode/Android.mk
test/encode/Makefile.am
test/encode/avcenc.c

index 86c4e40..8b58aa2 100755 (executable)
@@ -28,18 +28,21 @@ include $(BUILD_EXECUTABLE)
 include $(CLEAR_VARS)
 
 LOCAL_SRC_FILES := \
-       avcenc.c
+       ../common/va_display.c                  \
+       ../common/va_display_android.cpp        \
+       avcenc.c
 
 LOCAL_CFLAGS += \
     -DANDROID
 
 LOCAL_C_INCLUDES += \
-  $(TARGET_OUT_HEADERS)/libva  \
+  $(LOCAL_PATH)/../common \
+  $(TARGET_OUT_HEADERS)/libva
 
 LOCAL_MODULE_TAGS := optional
 LOCAL_MODULE :=        avcenc
 
-LOCAL_SHARED_LIBRARIES := libva-android libva libdl libdrm libcutils libutils libgui
+LOCAL_SHARED_LIBRARIES := libva-android libva libdl libdrm libcutils libutils libgui libsurfaceflinger_client
 
 include $(BUILD_EXECUTABLE)
 
index de42d31..b3e4056 100644 (file)
 
 bin_PROGRAMS = h264encode avcenc
 
-INCLUDES = -I$(top_srcdir)
+libva_helpers = \
+       $(top_builddir)/test/common/libva-display.la    \
+       $(NULL)
 
-TEST_LIBS = $(top_builddir)/va/$(libvabackendlib) $(top_builddir)/va/$(libvacorelib) -lpthread -lX11
+INCLUDES = \
+       -I$(top_srcdir)                         \
+       -I$(top_srcdir)/test/common             \
+       $(NULL)
+
+TEST_LIBS = \
+       $(top_builddir)/va/$(libvabackendlib)   \
+       $(top_builddir)/va/$(libvacorelib)      \
+       $(libva_helpers)                        \
+       $(NULL)
 
 h264encode_LDADD = $(TEST_LIBS)
 h264encode_SOURCES = h264encode_x11.c
 
-avcenc_LDADD= $(TEST_LIBS)
-avcenc_SOURCES= avcenc.c
+avcenc_LDADD           = $(TEST_LIBS)
+avcenc_SOURCES         = avcenc.c
+avcenc_DEPENDENCIES    = $(libva_helpers)
 
 EXTRA_DIST = h264encode_common.c
 
index d6f9ac0..8314642 100644 (file)
  * ./avcenc <width> <height> <input file> <output file> [qp]
  */  
 
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
 #include <getopt.h>
-#ifndef ANDROID
-#include <X11/Xlib.h>
-#endif
 #include <unistd.h>
 
 #include <sys/time.h>
 
 #include <va/va.h>
 #include <va/va_enc_h264.h>
-#ifdef ANDROID
-#include <va/va_android.h>
-#define Display unsigned int
-#else
-#include <va/va_x11.h>
-#endif
+#include "va_display.h"
 
 #define NAL_REF_IDC_NONE        0
 #define NAL_REF_IDC_LOW         1
@@ -82,7 +77,6 @@
         exit(1);                                                        \
     }
 
-static Display *x11_display;
 static VADisplay va_dpy;
 
 static int picture_width, picture_width_in_mbs;
@@ -148,15 +142,7 @@ static void create_encode_pipe()
     int major_ver, minor_ver;
     VAStatus va_status;
 
-#ifdef ANDROID
-    x11_display = (Display*)malloc(sizeof(Display));
-    *(x11_display ) = 0x18c34078;
-#else
-    x11_display = XOpenDisplay(":0.0");
-#endif
-    assert(x11_display);
-
-    va_dpy = vaGetDisplay(x11_display);
+    va_dpy = va_open_display();
     va_status = vaInitialize(va_dpy, &major_ver, &minor_ver);
     CHECK_VASTATUS(va_status, "vaInitialize");
 
@@ -211,7 +197,7 @@ static void destory_encode_pipe()
     vaDestroyContext(va_dpy,avcenc_context.context_id);
     vaDestroyConfig(va_dpy,avcenc_context.config_id);
     vaTerminate(va_dpy);
-    XCloseDisplay(x11_display);
+    va_close_display(va_dpy);
 }
 
 /***************************************************