OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebM project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 | 11 |
12 /* MFQE: Multiframe Quality Enhancement | 12 /* MFQE: Multiframe Quality Enhancement |
13 * In rate limited situations keyframes may cause significant visual artifacts | 13 * In rate limited situations keyframes may cause significant visual artifacts |
14 * commonly referred to as "popping." This file implements a postproccesing | 14 * commonly referred to as "popping." This file implements a postproccesing |
15 * algorithm which blends data from the preceeding frame when there is no | 15 * algorithm which blends data from the preceeding frame when there is no |
16 * motion and the q from the previous frame is lower which indicates that it is | 16 * motion and the q from the previous frame is lower which indicates that it is |
17 * higher quality. | 17 * higher quality. |
18 */ | 18 */ |
19 | 19 |
20 #include "postproc.h" | 20 #include "postproc.h" |
21 #include "variance.h" | 21 #include "variance.h" |
22 #include "vpx_mem/vpx_mem.h" | 22 #include "vpx_mem/vpx_mem.h" |
23 #include "vpx_rtcd.h" | 23 #include "vp8_rtcd.h" |
24 #include "vpx_scale/yv12config.h" | 24 #include "vpx_scale/yv12config.h" |
25 | 25 |
26 #include <limits.h> | 26 #include <limits.h> |
27 #include <stdlib.h> | 27 #include <stdlib.h> |
28 | 28 |
29 static void filter_by_weight(unsigned char *src, int src_stride, | 29 static void filter_by_weight(unsigned char *src, int src_stride, |
30 unsigned char *dst, int dst_stride, | 30 unsigned char *dst, int dst_stride, |
31 int block_size, int src_weight) | 31 int block_size, int src_weight) |
32 { | 32 { |
33 int dst_weight = (1 << MFQE_PRECISION) - src_weight; | 33 int dst_weight = (1 << MFQE_PRECISION) - src_weight; |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
376 y_ptr += show->y_stride * 16 - 16 * cm->mb_cols; | 376 y_ptr += show->y_stride * 16 - 16 * cm->mb_cols; |
377 u_ptr += show->uv_stride * 8 - 8 * cm->mb_cols; | 377 u_ptr += show->uv_stride * 8 - 8 * cm->mb_cols; |
378 v_ptr += show->uv_stride * 8 - 8 * cm->mb_cols; | 378 v_ptr += show->uv_stride * 8 - 8 * cm->mb_cols; |
379 yd_ptr += dest->y_stride * 16 - 16 * cm->mb_cols; | 379 yd_ptr += dest->y_stride * 16 - 16 * cm->mb_cols; |
380 ud_ptr += dest->uv_stride * 8 - 8 * cm->mb_cols; | 380 ud_ptr += dest->uv_stride * 8 - 8 * cm->mb_cols; |
381 vd_ptr += dest->uv_stride * 8 - 8 * cm->mb_cols; | 381 vd_ptr += dest->uv_stride * 8 - 8 * cm->mb_cols; |
382 | 382 |
383 mode_info_context++; /* Skip border mb */ | 383 mode_info_context++; /* Skip border mb */ |
384 } | 384 } |
385 } | 385 } |
OLD | NEW |