diff --git a/test/decode_test_driver.cc b/test/decode_test_driver.cc index 1f6d54064..7a93e50c2 100644 --- a/test/decode_test_driver.cc +++ b/test/decode_test_driver.cc @@ -30,6 +30,7 @@ void DecoderTest::RunLoop(CompressedVideoSource *video) { // Decode frames. for (video->Begin(); video->cxdata(); video->Next()) { + PreDecodeFrameHook(*video, decoder); vpx_codec_err_t res_dec = decoder->DecodeFrame(video->cxdata(), video->frame_size()); ASSERT_EQ(VPX_CODEC_OK, res_dec) << decoder->DecodeError(); diff --git a/test/decode_test_driver.h b/test/decode_test_driver.h index 055c45e06..ddaed9fa0 100644 --- a/test/decode_test_driver.h +++ b/test/decode_test_driver.h @@ -101,6 +101,10 @@ class DecoderTest { // Main decoding loop virtual void RunLoop(CompressedVideoSource *video); + // Hook to be called before decompressing every frame. + virtual void PreDecodeFrameHook(const CompressedVideoSource& video, + Decoder *decoder) {} + // Hook to be called on every decompressed frame. virtual void DecompressedFrameHook(const vpx_image_t& img, const unsigned int frame_number) {}