diracdec: Pass DWTPlane to dwt init
This commit is contained in:
parent
e04912c0b6
commit
671761d713
@ -33,18 +33,17 @@
|
|||||||
#define TEMPLATE_12bit
|
#define TEMPLATE_12bit
|
||||||
#include "dirac_dwt_template.c"
|
#include "dirac_dwt_template.c"
|
||||||
|
|
||||||
int ff_spatial_idwt_init(DWTContext *d, uint8_t *buffer, int width, int height,
|
int ff_spatial_idwt_init(DWTContext *d, DWTPlane *p, enum dwt_type type,
|
||||||
int stride, enum dwt_type type, int decomposition_count,
|
int decomposition_count, int bit_depth)
|
||||||
uint8_t *temp, int bit_depth)
|
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
d->buffer = buffer;
|
d->buffer = p->buf;
|
||||||
d->width = width;
|
d->width = p->width;
|
||||||
d->height = height;
|
d->height = p->height;
|
||||||
d->stride = stride;
|
d->stride = p->stride;
|
||||||
|
d->temp = p->tmp;
|
||||||
d->decomposition_count = decomposition_count;
|
d->decomposition_count = decomposition_count;
|
||||||
d->temp = temp;
|
|
||||||
|
|
||||||
if (bit_depth == 8)
|
if (bit_depth == 8)
|
||||||
ret = ff_spatial_idwt_init_8bit(d, type);
|
ret = ff_spatial_idwt_init_8bit(d, type);
|
||||||
|
@ -85,9 +85,8 @@ enum dwt_type {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// -1 if an error occurred, e.g. the dwt_type isn't recognized
|
// -1 if an error occurred, e.g. the dwt_type isn't recognized
|
||||||
int ff_spatial_idwt_init(DWTContext *d, uint8_t *buffer, int width, int height,
|
int ff_spatial_idwt_init(DWTContext *d, DWTPlane *p, enum dwt_type type,
|
||||||
int stride, enum dwt_type type, int decomposition_count,
|
int decomposition_count, int bit_depth);
|
||||||
uint8_t *temp, int bit_depth);
|
|
||||||
void ff_spatial_idwt_init_x86(DWTContext *d, enum dwt_type type);
|
void ff_spatial_idwt_init_x86(DWTContext *d, enum dwt_type type);
|
||||||
|
|
||||||
void ff_spatial_idwt_slice2(DWTContext *d, int y);
|
void ff_spatial_idwt_slice2(DWTContext *d, int y);
|
||||||
|
@ -1750,8 +1750,8 @@ static int dirac_decode_frame_internal(DiracContext *s)
|
|||||||
memset(p->idwt.buf, 0, p->idwt.stride * p->idwt.height);
|
memset(p->idwt.buf, 0, p->idwt.stride * p->idwt.height);
|
||||||
decode_component(s, comp); /* [DIRAC_STD] 13.4.1 core_transform_data() */
|
decode_component(s, comp); /* [DIRAC_STD] 13.4.1 core_transform_data() */
|
||||||
}
|
}
|
||||||
ret = ff_spatial_idwt_init(&d, p->idwt.buf, p->idwt.width, p->idwt.height, p->idwt.stride,
|
ret = ff_spatial_idwt_init(&d, &p->idwt, s->wavelet_idx+2,
|
||||||
s->wavelet_idx+2, s->wavelet_depth, p->idwt.tmp, s->bit_depth);
|
s->wavelet_depth, s->bit_depth);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user