cuda: copy the decoded data immediatly to avoid dithering

some videos need surfaces > 20. if there's no surface left for the 21st
frame, then a previous surface (the 1st surface) may be used to decode a
new frame. so the 1st surface data changed to 21st frame, and 2nd is
still 2nd. dithering happens