summaryrefslogtreecommitdiff
path: root/libavcodec/hqx.h
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-04-20 04:57:06 +0200
committerMichael Niedermayer <michaelni@gmx.at>2015-04-20 04:57:06 +0200
commit55b866f618582350bcc5489d4e96afd40c9c8c44 (patch)
tree9e6705e10fb3104b82e65f421a438f7eec355f9a /libavcodec/hqx.h
parentd8b4e9adbb93211b511e3864d8230789186ef4ed (diff)
parent453642f8afe9f979fcc813a246b1ec656ec36a93 (diff)
Merge commit '453642f8afe9f979fcc813a246b1ec656ec36a93'
* commit '453642f8afe9f979fcc813a246b1ec656ec36a93': hqx: Store shareable data in main decoder context Conflicts: libavcodec/hqx.c libavcodec/hqx.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/hqx.h')
-rw-r--r--libavcodec/hqx.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/libavcodec/hqx.h b/libavcodec/hqx.h
index 8cd9f0929f..486afcfd17 100644
--- a/libavcodec/hqx.h
+++ b/libavcodec/hqx.h
@@ -22,6 +22,8 @@
#define AVCODEC_HQX_H
#include <stdint.h>
+
+#include "libavutil/frame.h"
#include "libavutil/mem.h"
#include "get_bits.h"
#include "hqxdsp.h"
@@ -51,17 +53,30 @@ typedef struct HQXAC {
typedef struct HQXSliceData
{
DECLARE_ALIGNED(16, int16_t, block)[16][64];
+ GetBitContext gb;
} HQXSliceData;
+struct HQXContext;
+typedef int (*mb_decode_func)(struct HQXContext *ctx, HQXSliceData * slice_data,
+ GetBitContext *gb, int x, int y);
+
+
typedef struct HQXContext {
HQXDSPContext hqxdsp;
+ AVFrame *pic;
+ mb_decode_func decode_func;
+
int format, dcb, width, height;
int interlaced;
HQXSliceData slice[17];
+ uint8_t *src;
+ unsigned int data_size;
+ uint32_t slice_off[17];
+
VLC cbp_vlc;
VLC dc_vlc[3];
} HQXContext;