aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/hevcdec.h
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2024-05-28 18:43:13 +0200
committerAnton Khirnov <anton@khirnov.net>2024-06-04 11:36:51 +0200
commit67ca18dd56956892a097388a160bb70f10539d77 (patch)
tree07ee138ed44baa0495aef8f476b09ed7a40f53ca /libavcodec/hevcdec.h
parentac69e6caf6d9b74a215c7fc170574e7bcc4f9fda (diff)
downloadffmpeg-67ca18dd56956892a097388a160bb70f10539d77.tar.gz
lavc/hevcdec: drop HEVCLocalContext.gb
In all HEVCLocalContext instances except the first one, the bitreader is never used for actually reading bits, but merely for passing the buffer to ff_init_cabac_decoder(), which is better done directly. The instance that actually is used for bitreading gets moved to stack in decode_nal_unit(), which makes its lifetime clearer.
Diffstat (limited to 'libavcodec/hevcdec.h')
-rw-r--r--libavcodec/hevcdec.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/hevcdec.h b/libavcodec/hevcdec.h
index 3824bf621b..0ed51a5392 100644
--- a/libavcodec/hevcdec.h
+++ b/libavcodec/hevcdec.h
@@ -394,7 +394,6 @@ typedef struct HEVCLocalContext {
void *logctx;
const struct HEVCContext *parent;
- GetBitContext gb;
CABACContext cc;
/**
@@ -583,7 +582,8 @@ int ff_hevc_frame_rps(HEVCContext *s);
int ff_hevc_slice_rpl(HEVCContext *s);
void ff_hevc_save_states(HEVCLocalContext *lc, int ctb_addr_ts);
-int ff_hevc_cabac_init(HEVCLocalContext *lc, int ctb_addr_ts);
+int ff_hevc_cabac_init(HEVCLocalContext *lc, int ctb_addr_ts,
+ const uint8_t *data, size_t size);
int ff_hevc_sao_merge_flag_decode(HEVCLocalContext *lc);
int ff_hevc_sao_type_idx_decode(HEVCLocalContext *lc);
int ff_hevc_sao_band_position_decode(HEVCLocalContext *lc);