summaryrefslogtreecommitdiff
path: root/vpx/src
diff options
context:
space:
mode:
authorStefan Holmer <holmer@google.com>2011-05-02 15:30:51 +0200
committerJohn Koleszar <jkoleszar@google.com>2011-05-19 13:46:33 -0400
commitd04f852368dcfb9432d7cef9917666a9bf722ee2 (patch)
treeb2861ee3c45e536328da210aeaa5c3f41277b1bf /vpx/src
parent00a1e2f8e4878f59c95f017f4cdbc80ada07a487 (diff)
downloadlibvpx-d04f852368dcfb9432d7cef9917666a9bf722ee2.tar
libvpx-d04f852368dcfb9432d7cef9917666a9bf722ee2.tar.gz
libvpx-d04f852368dcfb9432d7cef9917666a9bf722ee2.tar.bz2
libvpx-d04f852368dcfb9432d7cef9917666a9bf722ee2.zip
Adding error-concealment to the decoder.
The error-concealer is plugged in after any motion vectors have been decoded. It tries to estimate any missing motion vectors from the motion vectors of the previous frame. Intra blocks with missing residual are replaced with inter blocks with estimated motion vectors. This feature was developed in a separate sandbox (sandbox/holmer/error-concealment). Change-Id: I5c8917b031078d79dbafd90f6006680e84a23412
Diffstat (limited to 'vpx/src')
-rw-r--r--vpx/src/vpx_decoder.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/vpx/src/vpx_decoder.c b/vpx/src/vpx_decoder.c
index 4ffb00d32..42aedee7e 100644
--- a/vpx/src/vpx_decoder.c
+++ b/vpx/src/vpx_decoder.c
@@ -36,6 +36,9 @@ vpx_codec_err_t vpx_codec_dec_init_ver(vpx_codec_ctx_t *ctx,
res = VPX_CODEC_INCAPABLE;
else if ((flags & VPX_CODEC_USE_POSTPROC) && !(iface->caps & VPX_CODEC_CAP_POSTPROC))
res = VPX_CODEC_INCAPABLE;
+ else if ((flags & VPX_CODEC_USE_ERROR_CONCEALMENT) &&
+ !(iface->caps & VPX_CODEC_CAP_ERROR_CONCEALMENT))
+ res = VPX_CODEC_INCAPABLE;
else if (!(iface->caps & VPX_CODEC_CAP_DECODER))
res = VPX_CODEC_INCAPABLE;
else