Unified · Split
| @@ -728,7 +728,7 @@ int vp9_set_roi_map(VP9_COMP *cpi, unsigned char *map, unsigned int rows, · 727 unmodified lines | |||
| 728 | } | 728 | } |
| 729 | CHECK_MEM_ERROR(cm, roi->roi_map, vpx_malloc(rows * cols)); | 729 | CHECK_MEM_ERROR(cm, roi->roi_map, vpx_malloc(rows * cols)); |
| 730 | 730 | ||
| 731 | // Copy to ROI sturcture in the compressor. | 731 | // Copy to ROI structure in the compressor. |
| 732 | memcpy(roi->roi_map, map, rows * cols); | 732 | memcpy(roi->roi_map, map, rows * cols); |
| 733 | memcpy(&roi->delta_q, delta_q, MAX_SEGMENTS * sizeof(delta_q[0])); | 733 | memcpy(&roi->delta_q, delta_q, MAX_SEGMENTS * sizeof(delta_q[0])); |
| 734 | memcpy(&roi->delta_lf, delta_lf, MAX_SEGMENTS * sizeof(delta_lf[0])); | 734 | memcpy(&roi->delta_lf, delta_lf, MAX_SEGMENTS * sizeof(delta_lf[0])); |
| @@ -4479,7 +4479,7 @@ static void encode_with_recode_loop(VP9_COMP *cpi, size_t *size, · 3744 unmodified lines | |||
| 4479 | // Special case reset for qlow for constrained quality. | 4479 | // Special case reset for qlow for constrained quality. |
| 4480 | // This should only trigger where there is very substantial | 4480 | // This should only trigger where there is very substantial |
| 4481 | // undershoot on a frame and the auto cq level is above | 4481 | // undershoot on a frame and the auto cq level is above |
| 4482 | // the user passsed in value. | 4482 | // the user passed in value. |
| 4483 | if (oxcf->rc_mode == VPX_CQ && q < q_low) { | 4483 | if (oxcf->rc_mode == VPX_CQ && q < q_low) { |
| 4484 | q_low = q; | 4484 | q_low = q; |
| 4485 | } | 4485 | } |
| @@ -4692,7 +4692,7 @@ static int setup_interp_filter_search_mask(VP9_COMP *cpi) { · 206 unmodified lines | |||
| 4692 | } | 4692 | } |
| 4693 | 4693 | ||
| 4694 | #ifdef ENABLE_KF_DENOISE | 4694 | #ifdef ENABLE_KF_DENOISE |
| 4695 | // Baseline Kernal weights for denoise | 4695 | // Baseline kernel weights for denoise |
| 4696 | static uint8_t dn_kernal_3[9] = { 1, 2, 1, 2, 4, 2, 1, 2, 1 }; | 4696 | static uint8_t dn_kernal_3[9] = { 1, 2, 1, 2, 4, 2, 1, 2, 1 }; |
| 4697 | static uint8_t dn_kernal_5[25] = { 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 4, | 4697 | static uint8_t dn_kernal_5[25] = { 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 4, |
| 4698 | 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1 }; | 4698 | 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1 }; |
| @@ -4727,7 +4727,7 @@ static void spatial_denoise_point(uint8_t *src_ptr, const int stride, · 28 unmodified lines | |||
| 4727 | tmp_ptr += stride; | 4727 | tmp_ptr += stride; |
| 4728 | } | 4728 | } |
| 4729 | 4729 | ||
| 4730 | // Select the kernal size. | 4730 | // Select the kernel size. |
| 4731 | if (max_diff > (strength + (strength >> 1))) { | 4731 | if (max_diff > (strength + (strength >> 1))) { |
| 4732 | kernal_size = 3; | 4732 | kernal_size = 3; |
| 4733 | half_k_size = 1; | 4733 | half_k_size = 1; |
| @@ -4735,7 +4735,7 @@ static void spatial_denoise_point(uint8_t *src_ptr, const int stride, · 1 unmodified line | |||
| 4735 | } | 4735 | } |
| 4736 | kernal_ptr = (kernal_size == 3) ? dn_kernal_3 : dn_kernal_5; | 4736 | kernal_ptr = (kernal_size == 3) ? dn_kernal_3 : dn_kernal_5; |
| 4737 | 4737 | ||
| 4738 | // Apply the kernal | 4738 | // Apply the kernel |
| 4739 | tmp_ptr = src_ptr - (stride * half_k_size) - half_k_size; | 4739 | tmp_ptr = src_ptr - (stride * half_k_size) - half_k_size; |
| 4740 | for (i = 0; i < kernal_size; ++i) { | 4740 | for (i = 0; i < kernal_size; ++i) { |
| 4741 | for (j = 0; j < kernal_size; ++j) { | 4741 | for (j = 0; j < kernal_size; ++j) { |
| @@ -4772,7 +4772,7 @@ static void highbd_spatial_denoise_point(uint16_t *src_ptr, const int stride, · 30 unmodified lines | |||
| 4772 | tmp_ptr += stride; | 4772 | tmp_ptr += stride; |
| 4773 | } | 4773 | } |
| 4774 | 4774 | ||
| 4775 | // Select the kernal size. | 4775 | // Select the kernel size. |
| 4776 | if (max_diff > (strength + (strength >> 1))) { | 4776 | if (max_diff > (strength + (strength >> 1))) { |
| 4777 | kernal_size = 3; | 4777 | kernal_size = 3; |
| 4778 | half_k_size = 1; | 4778 | half_k_size = 1; |
| @@ -4780,7 +4780,7 @@ static void highbd_spatial_denoise_point(uint16_t *src_ptr, const int stride, · 1 unmodified line | |||
| 4780 | } | 4780 | } |
| 4781 | kernal_ptr = (kernal_size == 3) ? dn_kernal_3 : dn_kernal_5; | 4781 | kernal_ptr = (kernal_size == 3) ? dn_kernal_3 : dn_kernal_5; |
| 4782 | 4782 | ||
| 4783 | // Apply the kernal | 4783 | // Apply the kernel |
| 4784 | tmp_ptr = src_ptr - (stride * half_k_size) - half_k_size; | 4784 | tmp_ptr = src_ptr - (stride * half_k_size) - half_k_size; |
| 4785 | for (i = 0; i < kernal_size; ++i) { | 4785 | for (i = 0; i < kernal_size; ++i) { |
| 4786 | for (j = 0; j < kernal_size; ++j) { | 4786 | for (j = 0; j < kernal_size; ++j) { |
| @@ -4796,7 +4796,7 @@ static void highbd_spatial_denoise_point(uint16_t *src_ptr, const int stride, · 9 unmodified lines | |||
| 4796 | } | 4796 | } |
| 4797 | #endif // CONFIG_VP9_HIGHBITDEPTH | 4797 | #endif // CONFIG_VP9_HIGHBITDEPTH |
| 4798 | 4798 | ||
| 4799 | // Apply thresholded spatial noise supression to a given buffer. | 4799 | // Apply thresholded spatial noise suppression to a given buffer. |
| 4800 | static void spatial_denoise_buffer(VP9_COMP *cpi, uint8_t *buffer, | 4800 | static void spatial_denoise_buffer(VP9_COMP *cpi, uint8_t *buffer, |
| 4801 | const int stride, const int width, | 4801 | const int stride, const int width, |
| 4802 | const int height, const int strength) { | 4802 | const int height, const int strength) { |
| @@ -4821,7 +4821,7 @@ static void spatial_denoise_buffer(VP9_COMP *cpi, uint8_t *buffer, · 18 unmodified lines | |||
| 4821 | } | 4821 | } |
| 4822 | } | 4822 | } |
| 4823 | 4823 | ||
| 4824 | // Apply thresholded spatial noise supression to source. | 4824 | // Apply thresholded spatial noise suppression to source. |
| 4825 | static void spatial_denoise_frame(VP9_COMP *cpi) { | 4825 | static void spatial_denoise_frame(VP9_COMP *cpi) { |
| 4826 | YV12_BUFFER_CONFIG *src = cpi->Source; | 4826 | YV12_BUFFER_CONFIG *src = cpi->Source; |
| 4827 | const VP9EncoderConfig *const oxcf = &cpi->oxcf; | 4827 | const VP9EncoderConfig *const oxcf = &cpi->oxcf; |
| @@ -5924,7 +5924,7 @@ static uint32_t full_pixel_motion_search(VP9_COMP *cpi, ThreadData *td, · 1096 unmodified lines | |||
| 5924 | int step_param; | 5924 | int step_param; |
| 5925 | uint32_t bestsme = UINT_MAX; | 5925 | uint32_t bestsme = UINT_MAX; |
| 5926 | const MvLimits tmp_mv_limits = x->mv_limits; | 5926 | const MvLimits tmp_mv_limits = x->mv_limits; |
| 5927 | // lambda is used to adjust the importance of motion vector consitency. | 5927 | // lambda is used to adjust the importance of motion vector consistency. |
| 5928 | // TODO(angiebird): Figure out lambda's proper value. | 5928 | // TODO(angiebird): Figure out lambda's proper value. |
| 5929 | const int lambda = cpi->tpl_stats[frame_idx].lambda; | 5929 | const int lambda = cpi->tpl_stats[frame_idx].lambda; |
| 5930 | int_mv nb_full_mvs[NB_MVS_NUM]; | 5930 | int_mv nb_full_mvs[NB_MVS_NUM]; |
| @@ -6645,7 +6645,7 @@ static void predict_mv_mode(VP9_COMP *cpi, MACROBLOCK *x, · 714 unmodified lines | |||
| 6645 | assert(kMvPreCheckSize == (kMvPreCheckLines * (kMvPreCheckLines + 1)) >> 1); | 6645 | assert(kMvPreCheckSize == (kMvPreCheckLines * (kMvPreCheckLines + 1)) >> 1); |
| 6646 | 6646 | ||
| 6647 | // no new mv | 6647 | // no new mv |
| 6648 | // diagnal scan order | 6648 | // diagonal scan order |
| 6649 | tmp_idx = 0; | 6649 | tmp_idx = 0; |
| 6650 | for (idx = 0; idx < kMvPreCheckLines; ++idx) { | 6650 | for (idx = 0; idx < kMvPreCheckLines; ++idx) { |
| 6651 | int r; | 6651 | int r; |
| @@ -7414,9 +7414,9 @@ int vp9_get_compressed_data(VP9_COMP *cpi, unsigned int *frame_flags, · 762 unmodified lines | |||
| 7414 | // 1) twopass.gf_group.index is initialized at define_gf_group by vp9_zero() | 7414 | // 1) twopass.gf_group.index is initialized at define_gf_group by vp9_zero() |
| 7415 | // for the first frame in the gf_group and is updated for the next frame at | 7415 | // for the first frame in the gf_group and is updated for the next frame at |
| 7416 | // vp9_twopass_postencode_update(). | 7416 | // vp9_twopass_postencode_update(). |
| 7417 | // 2) cpi->Source is updated at the beginging of this function, i.e. | 7417 | // 2) cpi->Source is updated at the beginning of this function, i.e. |
| 7418 | // vp9_get_compressed_data() | 7418 | // vp9_get_compressed_data() |
| 7419 | // 3) cm->new_fb_idx is updated at the beginging of this function by | 7419 | // 3) cm->new_fb_idx is updated at the beginning of this function by |
| 7420 | // get_free_fb(cm) | 7420 | // get_free_fb(cm) |
| 7421 | // TODO(angiebird): Improve the codebase to make the update of frame | 7421 | // TODO(angiebird): Improve the codebase to make the update of frame |
| 7422 | // dependent variables more robust. | 7422 | // dependent variables more robust. |