va sync buffer/surface

This commit is contained in:
dec05eba
2024-11-20 23:37:55 +01:00
parent 5cf1e7953b
commit a033d7c98a

View File

@@ -816,6 +816,8 @@ bool vaapi_copy_drm_planes_to_video_surface(AVCodecContext *video_codec_context,
// if (first surface to render) // if (first surface to render)
// pipeline_param->output_background_color = 0xff000000; // black // pipeline_param->output_background_color = 0xff000000; // black
vaSyncSurface(va_dpy, input_surface_id);
va_status = vaCreateBuffer(va_dpy, context_id, VAProcPipelineParameterBufferType, sizeof(params), 1, &params, &buffer_id); va_status = vaCreateBuffer(va_dpy, context_id, VAProcPipelineParameterBufferType, sizeof(params), 1, &params, &buffer_id);
if(va_status != VA_STATUS_SUCCESS) { if(va_status != VA_STATUS_SUCCESS) {
fprintf(stderr, "gsr error: vaapi_copy_drm_planes_to_video_surface: vaCreateBuffer failed, error: %d\n", va_status); fprintf(stderr, "gsr error: vaapi_copy_drm_planes_to_video_surface: vaCreateBuffer failed, error: %d\n", va_status);
@@ -845,9 +847,9 @@ bool vaapi_copy_drm_planes_to_video_surface(AVCodecContext *video_codec_context,
goto done; goto done;
} }
// vaSyncBuffer(va_dpy, buffer_id, 1000 * 1000 * 1000); vaSyncBuffer(va_dpy, buffer_id, 1000ULL * 1000ULL * 1000ULL); // 1 Second
// vaSyncSurface(va_dpy, input_surface_id); //vaSyncSurface(va_dpy, input_surface_id);
// vaSyncSurface(va_dpy, output_surface_id); vaSyncSurface(va_dpy, output_surface_id);
done: done:
if(buffer_id) if(buffer_id)