void checkasm_check_llviddsp(void) { LLVidDSPContext c; int width = 16 * av_clip(rnd(), 16, 128); ff_llviddsp_init(&c); check_add_bytes(c, width); report("add_bytes"); }
av_cold void ff_huffyuv_common_init(AVCodecContext *avctx) { HYuvContext *s = avctx->priv_data; s->avctx = avctx; s->flags = avctx->flags; ff_dsputil_init(&s->dsp, avctx); ff_llviddsp_init(&s->llviddsp, avctx); s->width = avctx->width; s->height = avctx->height; av_assert1(s->width > 0 && s->height > 0); }
static av_cold int decode_init(AVCodecContext *avctx) { HYuvContext *s = avctx->priv_data; int ret; ret = av_image_check_size(avctx->width, avctx->height, 0, avctx); if (ret < 0) return ret; ff_huffyuvdsp_init(&s->hdsp, avctx->pix_fmt); ff_llviddsp_init(&s->llviddsp); memset(s->vlc, 0, 4 * sizeof(VLC)); s->interlaced = avctx->height > 288; s->bgr32 = 1; if (avctx->extradata_size) { if ((avctx->bits_per_coded_sample & 7) && avctx->bits_per_coded_sample != 12) s->version = 1; // do such files exist at all? else if (avctx->extradata_size > 3 && avctx->extradata[3] == 0) s->version = 2; else s->version = 3; } else s->version = 0; s->bps = 8; s->n = 1<<s->bps; s->vlc_n = FFMIN(s->n, MAX_VLC_N); s->chroma = 1; if (s->version >= 2) { int method, interlace; if (avctx->extradata_size < 4) return AVERROR_INVALIDDATA; method = avctx->extradata[0]; s->decorrelate = method & 64 ? 1 : 0; s->predictor = method & 63; if (s->version == 2) { s->bitstream_bpp = avctx->extradata[1]; if (s->bitstream_bpp == 0) s->bitstream_bpp = avctx->bits_per_coded_sample & ~7; } else { s->bps = (avctx->extradata[1] >> 4) + 1; s->n = 1<<s->bps; s->vlc_n = FFMIN(s->n, MAX_VLC_N); s->chroma_h_shift = avctx->extradata[1] & 3; s->chroma_v_shift = (avctx->extradata[1] >> 2) & 3; s->yuv = !!(avctx->extradata[2] & 1); s->chroma= !!(avctx->extradata[2] & 3); s->alpha = !!(avctx->extradata[2] & 4); } interlace = (avctx->extradata[2] & 0x30) >> 4; s->interlaced = (interlace == 1) ? 1 : (interlace == 2) ? 0 : s->interlaced; s->context = avctx->extradata[2] & 0x40 ? 1 : 0; if ((ret = read_huffman_tables(s, avctx->extradata + 4, avctx->extradata_size - 4)) < 0) goto error; } else {