forked from marfrit/libva-v4l2-request-fourier
drv: Add LIBVA_CEDRUS_DEV env variable to retrieve our device
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
This commit is contained in:
@@ -112,6 +112,7 @@ VAStatus VA_DRIVER_INIT_FUNC(VADriverContextP ctx)
|
|||||||
struct VADriverVTable * const vtable = ctx->vtable;
|
struct VADriverVTable * const vtable = ctx->vtable;
|
||||||
struct sunxi_cedrus_driver_data *driver_data;
|
struct sunxi_cedrus_driver_data *driver_data;
|
||||||
struct v4l2_capability cap;
|
struct v4l2_capability cap;
|
||||||
|
char *path;
|
||||||
|
|
||||||
ctx->version_major = VA_MAJOR_VERSION;
|
ctx->version_major = VA_MAJOR_VERSION;
|
||||||
ctx->version_minor = VA_MINOR_VERSION;
|
ctx->version_minor = VA_MINOR_VERSION;
|
||||||
@@ -182,7 +183,11 @@ VAStatus VA_DRIVER_INIT_FUNC(VADriverContextP ctx)
|
|||||||
assert(object_heap_init(&driver_data->image_heap,
|
assert(object_heap_init(&driver_data->image_heap,
|
||||||
sizeof(struct object_image), IMAGE_ID_OFFSET)==0);
|
sizeof(struct object_image), IMAGE_ID_OFFSET)==0);
|
||||||
|
|
||||||
driver_data->mem2mem_fd = open("/dev/video0", O_RDWR | O_NONBLOCK, 0);
|
path = getenv("LIBVA_CEDRUS_DEV");
|
||||||
|
if (!path)
|
||||||
|
path = "/dev/video0";
|
||||||
|
|
||||||
|
driver_data->mem2mem_fd = open(path, O_RDWR | O_NONBLOCK, 0);
|
||||||
assert(driver_data->mem2mem_fd >= 0);
|
assert(driver_data->mem2mem_fd >= 0);
|
||||||
|
|
||||||
for (int i = 0; i < INPUT_BUFFERS_NB; i++) {
|
for (int i = 0; i < INPUT_BUFFERS_NB; i++) {
|
||||||
@@ -193,7 +198,7 @@ VAStatus VA_DRIVER_INIT_FUNC(VADriverContextP ctx)
|
|||||||
assert(ioctl(driver_data->mem2mem_fd, VIDIOC_QUERYCAP, &cap)==0);
|
assert(ioctl(driver_data->mem2mem_fd, VIDIOC_QUERYCAP, &cap)==0);
|
||||||
if (!(cap.capabilities & V4L2_CAP_VIDEO_M2M_MPLANE))
|
if (!(cap.capabilities & V4L2_CAP_VIDEO_M2M_MPLANE))
|
||||||
{
|
{
|
||||||
sunxi_cedrus_msg("/dev/video0 does not support m2m_mplane\n");
|
sunxi_cedrus_msg("%s does not support m2m_mplane\n", path);
|
||||||
return VA_STATUS_ERROR_OPERATION_FAILED;
|
return VA_STATUS_ERROR_OPERATION_FAILED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user