diff options
-rw-r--r-- | video/out/vo_vdpau.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/video/out/vo_vdpau.c b/video/out/vo_vdpau.c index 67784941e4..cae28cdd84 100644 --- a/video/out/vo_vdpau.c +++ b/video/out/vo_vdpau.c @@ -478,7 +478,17 @@ static int reconfig(struct vo *vo, struct mp_image_params *params) VdpStatus vdp_st; if (!check_preemption(vo)) - return -1; + { + /* + * When prempted, leave the reconfig() immediately + * without reconfiguring the vo_window and without + * initializing the vdpau objects. When recovered + * from preemption, if there is a difference between + * the VD thread parameters and the VO thread parameters + * the reconfig() is triggered again. + */ + return 0; + } VdpChromaType chroma_type = VDP_CHROMA_TYPE_420; mp_vdpau_get_format(params->imgfmt, &chroma_type, NULL); |