summaryrefslogtreecommitdiff
path: root/libavcodec/hevcpred_template.c
diff options
context:
space:
mode:
authorMickaƫl Raulet <mraulet@insa-rennes.fr>2014-07-15 00:16:53 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-07-15 13:47:35 +0200
commit5a41999d81459297183c4e27618e38f8ba719853 (patch)
tree80b3f62d2ec5f25d9953346b4a958c7c709c5c94 /libavcodec/hevcpred_template.c
parent250430bf28118cf843df887e8c8b345f1c60c82d (diff)
hevc/rext: basic infrastructure for supporting range extension
- support for 4:2:2 and 4:4:4 up to 12 bits - add a new profile for range extension (cherry picked from commit d3c067fa65bbc871758d28aa07f54123430ca346) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/hevcpred_template.c')
-rw-r--r--libavcodec/hevcpred_template.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/libavcodec/hevcpred_template.c b/libavcodec/hevcpred_template.c
index 75cff8675b..81242304dd 100644
--- a/libavcodec/hevcpred_template.c
+++ b/libavcodec/hevcpred_template.c
@@ -91,8 +91,8 @@ do { \
int min_pu_width = s->sps->min_pu_width;
- enum IntraPredMode mode = c_idx ? lc->pu.intra_pred_mode_c :
- lc->tu.cur_intra_pred_mode;
+ enum IntraPredMode mode = c_idx ? lc->tu.intra_pred_mode_c :
+ lc->tu.intra_pred_mode;
pixel4 a;
pixel left_array[2 * MAX_TB_SIZE + 1];
pixel filtered_left_array[2 * MAX_TB_SIZE + 1];
@@ -207,7 +207,6 @@ do { \
j++;
EXTEND_LEFT_CIP(top, j, j + 1);
left[-1] = top[-1];
- j = 0;
}
} else {
j = 0;
@@ -221,7 +220,6 @@ do { \
top[-1] = top[0];
}
left[-1] = top[-1];
- j = 0;
}
left[-1] = top[-1];
if (cand_bottom_left || cand_left) {
@@ -238,7 +236,6 @@ do { \
if (!IS_INTRA(-1, - 1))
left[-1] = left[0];
} else if (x0 == 0) {
- a = PIXEL_SPLAT_X4(left[size_max_y - 1]);
EXTEND(left, 0, size_max_y);
} else {
a = PIXEL_SPLAT_X4(left[size_max_y - 1]);
@@ -290,7 +287,7 @@ do { \
top[-1] = left[-1];
// Filtering process
- if (c_idx == 0) {
+ if (!s->sps->intra_smoothing_disabled_flag && (c_idx == 0 || s->sps->chroma_format_idc == 3)) {
if (mode != INTRA_DC && size != 4){
int intra_hor_ver_dist_thresh[] = { 7, 1, 0 };
int min_dist_vert_hor = FFMIN(FFABS((int)(mode - 26U)),