summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video_dec/libvdpau/vdpau_h264.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/video_dec/libvdpau/vdpau_h264.c b/src/video_dec/libvdpau/vdpau_h264.c
index 32821223f..4cda672ec 100644
--- a/src/video_dec/libvdpau/vdpau_h264.c
+++ b/src/video_dec/libvdpau/vdpau_h264.c
@@ -733,7 +733,12 @@ static void vdpau_h264_reset (video_decoder_t *this_gen) {
this->decoder = VDP_INVALID_HANDLE;
}
- reset_parser(this->nal_parser);
+ // Doing a full parser reinit here works more reliable than
+ // resetting
+
+ //reset_parser(this->nal_parser);
+ free_parser(this->nal_parser);
+ this->nal_parser = init_parser(this->xine);
this->color_standard = VDP_COLOR_STANDARD_ITUR_BT_601;
this->wait_for_bottom_field = 0;