summaryrefslogtreecommitdiff
path: root/libavcodec/hevcpred.h
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-06-30 17:57:35 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-07-25 23:32:08 +0200
commit6265b155bc6dfa9d327273b060af767cc391a3f1 (patch)
treea14720d5fb21722d2531ad6b50e6071e982bd1b5 /libavcodec/hevcpred.h
parent13b3e84a4fc9cf2ecfeaa7a9ed148eda496419a6 (diff)
avcodec/hevcpred: Pass HEVCLocalContext when slice-threading
The HEVC decoder has both HEVCContext and HEVCLocalContext structures. The latter is supposed to be the structure containing the per-slicethread state. Yet that is not how it is handled in practice: Each HEVCLocalContext has a unique HEVCContext allocated for it and each of these coincides except in exactly one field: The corresponding HEVCLocalContext. This makes it possible to pass the HEVCContext everywhere where logically a HEVCLocalContext should be used. This commit stops doing this for lavc/hevcpred as well as the corresponding mips code; the latter is untested. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/hevcpred.h')
-rw-r--r--libavcodec/hevcpred.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/hevcpred.h b/libavcodec/hevcpred.h
index eb17663683..b1b1dc4f3a 100644
--- a/libavcodec/hevcpred.h
+++ b/libavcodec/hevcpred.h
@@ -26,10 +26,10 @@
#include <stddef.h>
#include <stdint.h>
-struct HEVCContext;
+struct HEVCLocalContext;
typedef struct HEVCPredContext {
- void (*intra_pred[4])(struct HEVCContext *s, int x0, int y0, int c_idx);
+ void (*intra_pred[4])(struct HEVCLocalContext *lc, int x0, int y0, int c_idx);
void (*pred_planar[4])(uint8_t *src, const uint8_t *top,
const uint8_t *left, ptrdiff_t stride);