diff --git a/src/surface.c b/src/surface.c index 478f0cc..ca3969d 100644 --- a/src/surface.c +++ b/src/surface.c @@ -81,7 +81,7 @@ VAStatus RequestCreateSurfaces2(VADriverContextP context, unsigned int format, // we declare SET_FORMAT_OF_OUTPUT_ONCE to ensure v4l2_set_format only gets called once // (in the first RequestCreateSurfaces2 call BEFORE any buffers are created later on) unsigned int pixelformat = V4L2_PIX_FMT_H264_SLICE; - unsigned int output_type = v4l2_type_video_output(false); + unsigned int output_type = v4l2_type_video_output(true); if (!SET_FORMAT_OF_OUTPUT_ONCE) { rc = v4l2_set_format(driver_data->video_fd, output_type, pixelformat, @@ -106,7 +106,7 @@ VAStatus RequestCreateSurfaces2(VADriverContextP context, unsigned int format, video_format = video_format_find(V4L2_PIX_FMT_SUNXI_TILED_NV12); found = v4l2_find_format(driver_data->video_fd, - V4L2_BUF_TYPE_VIDEO_CAPTURE, + V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE, V4L2_PIX_FMT_NV12); if (found) video_format = video_format_find(V4L2_PIX_FMT_NV12); diff --git a/src/video.c b/src/video.c index 9fae332..2c0d645 100644 --- a/src/video.c +++ b/src/video.c @@ -39,7 +39,7 @@ static struct video_format formats[] = { .description = "NV12 YUV", .v4l2_format = V4L2_PIX_FMT_NV12, .v4l2_buffers_count = 1, - .v4l2_mplane = false, + .v4l2_mplane = true, .drm_format = DRM_FORMAT_NV12, .drm_modifier = DRM_FORMAT_MOD_NONE, .planes_count = 2,