diff options
author | Anton Khirnov <anton@khirnov.net> | 2014-05-17 20:41:22 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2014-05-19 07:10:03 +0200 |
commit | a1c2b48018b09d2613f075ec0748c95bd520ac00 (patch) | |
tree | 49de2ee15d4718ddcf9139a87d2be32230bb8f7e /libavcodec/hevc.c | |
parent | 04db5794cd97e4b33ec2f963ef7f967722a456eb (diff) | |
download | ffmpeg-a1c2b48018b09d2613f075ec0748c95bd520ac00.tar.gz |
hevc: templatize intra_pred
Diffstat (limited to 'libavcodec/hevc.c')
-rw-r--r-- | libavcodec/hevc.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c index 49ed2858cb..a4c495d1d0 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); } } |