summaryrefslogtreecommitdiffstats
path: root/libavcodec/hevc.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2014-05-17 20:41:22 +0200
committerAnton Khirnov <anton@khirnov.net>2014-05-19 07:10:03 +0200
commita1c2b48018b09d2613f075ec0748c95bd520ac00 (patch)
tree49de2ee15d4718ddcf9139a87d2be32230bb8f7e /libavcodec/hevc.c
parent04db5794cd97e4b33ec2f963ef7f967722a456eb (diff)
downloadffmpeg-streaming-a1c2b48018b09d2613f075ec0748c95bd520ac00.zip
ffmpeg-streaming-a1c2b48018b09d2613f075ec0748c95bd520ac00.tar.gz
hevc: templatize intra_pred
Diffstat (limited to 'libavcodec/hevc.c')
-rw-r--r--libavcodec/hevc.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 49ed285..a4c495d 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1240,18 +1240,18 @@ static int hls_transform_unit(HEVCContext *s, int x0, int y0,
int trafo_size = 1 << log2_trafo_size;
ff_hevc_set_neighbour_available(s, x0, y0, trafo_size, trafo_size);
- s->hpc.intra_pred(s, x0, y0, log2_trafo_size, 0);
+ s->hpc.intra_pred[log2_trafo_size - 2](s, x0, y0, 0);
if (log2_trafo_size > 2) {
trafo_size = trafo_size << (s->sps->hshift[1] - 1);
ff_hevc_set_neighbour_available(s, x0, y0, trafo_size, trafo_size);
- s->hpc.intra_pred(s, x0, y0, log2_trafo_size - 1, 1);
- s->hpc.intra_pred(s, x0, y0, log2_trafo_size - 1, 2);
+ s->hpc.intra_pred[log2_trafo_size - 3](s, x0, y0, 1);
+ s->hpc.intra_pred[log2_trafo_size - 3](s, x0, y0, 2);
} else if (blk_idx == 3) {
trafo_size = trafo_size << s->sps->hshift[1];
ff_hevc_set_neighbour_available(s, xBase, yBase,
trafo_size, trafo_size);
- s->hpc.intra_pred(s, xBase, yBase, log2_trafo_size, 1);
- s->hpc.intra_pred(s, xBase, yBase, log2_trafo_size, 2);
+ s->hpc.intra_pred[log2_trafo_size - 2](s, xBase, yBase, 1);
+ s->hpc.intra_pred[log2_trafo_size - 2](s, xBase, yBase, 2);
}
}
OpenPOWER on IntegriCloud