ref: fb9fef83c7f869760bdd50186a1099b05d32535a
parent: 086aab7e131ef05cc02f82566d45815ee6878427
parent: 30f3017697d10fd6a1698e2d4b68bb67acf3482d
author: James Bankoski <[email protected]>
date: Mon Oct 31 09:58:14 EDT 2016
Merge "vpxdec.c : don't double count corrupted frames"
--- a/vpxdec.c
+++ b/vpxdec.c
@@ -781,7 +781,7 @@
warn("Failed to decode frame %d: %s", frame_in,
vpx_codec_error(&decoder));
if (detail) warn("Additional information: %s", detail);
- frames_corrupted++;
+ corrupted = 1;
if (!keep_going) goto fail;
}
@@ -800,7 +800,7 @@
// Flush the decoder in frame parallel decode.
if (vpx_codec_decode(&decoder, NULL, 0, NULL, 0)) {
warn("Failed to flush decoder: %s", vpx_codec_error(&decoder));
- frames_corrupted++;
+ corrupted = 1;
if (!keep_going) goto fail;
}
}
@@ -814,7 +814,7 @@
vpx_usec_timer_mark(&timer);
dx_time += (unsigned int)vpx_usec_timer_elapsed(&timer);
- if (!frame_parallel &&
+ if (!frame_parallel && !corrupted &&
vpx_codec_control(&decoder, VP8D_GET_FRAME_CORRUPTED, &corrupted)) {
warn("Failed VP8_GET_FRAME_CORRUPTED: %s", vpx_codec_error(&decoder));
if (!keep_going) goto fail;