• Home
  • Raw
  • Download

Lines Matching refs:smk

198 static int smacker_decode_header_tree(SmackVContext *smk, GetBitContext *gb, int **recodes, int *la…  in smacker_decode_header_tree()  argument
206 av_log(smk->avctx, AV_LOG_ERROR, "size too large\n"); in smacker_decode_header_tree()
215 av_log(smk->avctx, AV_LOG_ERROR, "Skipping %s bytes tree\n", in smacker_decode_header_tree()
227 0, INIT_VLC_OUTPUT_LE, smk->avctx); in smacker_decode_header_tree()
229 av_log(smk->avctx, AV_LOG_ERROR, "Cannot build VLC table\n"); in smacker_decode_header_tree()
274 static int decode_header_trees(SmackVContext *smk) { in decode_header_trees() argument
279 mmap_size = AV_RL32(smk->avctx->extradata); in decode_header_trees()
280 mclr_size = AV_RL32(smk->avctx->extradata + 4); in decode_header_trees()
281 full_size = AV_RL32(smk->avctx->extradata + 8); in decode_header_trees()
282 type_size = AV_RL32(smk->avctx->extradata + 12); in decode_header_trees()
284 ret = init_get_bits8(&gb, smk->avctx->extradata + 16, smk->avctx->extradata_size - 16); in decode_header_trees()
290 av_log(smk->avctx, AV_LOG_INFO, "Skipping MMAP tree\n"); in decode_header_trees()
291 smk->mmap_tbl = av_malloc(sizeof(int) * 2); in decode_header_trees()
292 if (!smk->mmap_tbl) in decode_header_trees()
294 smk->mmap_tbl[0] = 0; in decode_header_trees()
295 smk->mmap_last[0] = smk->mmap_last[1] = smk->mmap_last[2] = 1; in decode_header_trees()
297 ret = smacker_decode_header_tree(smk, &gb, &smk->mmap_tbl, smk->mmap_last, mmap_size); in decode_header_trees()
303 av_log(smk->avctx, AV_LOG_INFO, "Skipping MCLR tree\n"); in decode_header_trees()
304 smk->mclr_tbl = av_malloc(sizeof(int) * 2); in decode_header_trees()
305 if (!smk->mclr_tbl) in decode_header_trees()
307 smk->mclr_tbl[0] = 0; in decode_header_trees()
308 smk->mclr_last[0] = smk->mclr_last[1] = smk->mclr_last[2] = 1; in decode_header_trees()
310 ret = smacker_decode_header_tree(smk, &gb, &smk->mclr_tbl, smk->mclr_last, mclr_size); in decode_header_trees()
316 av_log(smk->avctx, AV_LOG_INFO, "Skipping FULL tree\n"); in decode_header_trees()
317 smk->full_tbl = av_malloc(sizeof(int) * 2); in decode_header_trees()
318 if (!smk->full_tbl) in decode_header_trees()
320 smk->full_tbl[0] = 0; in decode_header_trees()
321 smk->full_last[0] = smk->full_last[1] = smk->full_last[2] = 1; in decode_header_trees()
323 ret = smacker_decode_header_tree(smk, &gb, &smk->full_tbl, smk->full_last, full_size); in decode_header_trees()
329 av_log(smk->avctx, AV_LOG_INFO, "Skipping TYPE tree\n"); in decode_header_trees()
330 smk->type_tbl = av_malloc(sizeof(int) * 2); in decode_header_trees()
331 if (!smk->type_tbl) in decode_header_trees()
333 smk->type_tbl[0] = 0; in decode_header_trees()
334 smk->type_last[0] = smk->type_last[1] = smk->type_last[2] = 1; in decode_header_trees()
336 ret = smacker_decode_header_tree(smk, &gb, &smk->type_tbl, smk->type_last, type_size); in decode_header_trees()
376 SmackVContext * const smk = avctx->priv_data; in decode_frame() local
389 if ((ret = ff_reget_buffer(avctx, smk->pic, 0)) < 0) in decode_frame()
393 pal = (uint32_t*)smk->pic->data[1]; in decode_frame()
396 smk->pic->palette_has_changed = flags & 1; in decode_frame()
397 smk->pic->key_frame = !!(flags & 2); in decode_frame()
398 if (smk->pic->key_frame) in decode_frame()
399 smk->pic->pict_type = AV_PICTURE_TYPE_I; in decode_frame()
401 smk->pic->pict_type = AV_PICTURE_TYPE_P; in decode_frame()
406 last_reset(smk->mmap_tbl, smk->mmap_last); in decode_frame()
407 last_reset(smk->mclr_tbl, smk->mclr_last); in decode_frame()
408 last_reset(smk->full_tbl, smk->full_last); in decode_frame()
409 last_reset(smk->type_tbl, smk->type_last); in decode_frame()
417 stride = smk->pic->linesize[0]; in decode_frame()
422 type = smk_get_code(&gb, smk->type_tbl, smk->type_last); in decode_frame()
431 clr = smk_get_code(&gb, smk->mclr_tbl, smk->mclr_last); in decode_frame()
432 map = smk_get_code(&gb, smk->mmap_tbl, smk->mmap_last); in decode_frame()
433 out = smk->pic->data[0] + (blk / bw) * (stride * 4) + (blk % bw) * 4; in decode_frame()
456 out = smk->pic->data[0] + (blk / bw) * (stride * 4) + (blk % bw) * 4; in decode_frame()
460 pix = smk_get_code(&gb, smk->full_tbl, smk->full_last); in decode_frame()
462 pix = smk_get_code(&gb, smk->full_tbl, smk->full_last); in decode_frame()
468 pix = smk_get_code(&gb, smk->full_tbl, smk->full_last); in decode_frame()
475 pix = smk_get_code(&gb, smk->full_tbl, smk->full_last); in decode_frame()
485 pix2 = smk_get_code(&gb, smk->full_tbl, smk->full_last); in decode_frame()
486 pix1 = smk_get_code(&gb, smk->full_tbl, smk->full_last); in decode_frame()
507 out = smk->pic->data[0] + (blk / bw) * (stride * 4) + (blk % bw) * 4; in decode_frame()
520 if ((ret = av_frame_ref(data, smk->pic)) < 0) in decode_frame()
532 SmackVContext * const smk = avctx->priv_data; in decode_end() local
534 av_freep(&smk->mmap_tbl); in decode_end()
535 av_freep(&smk->mclr_tbl); in decode_end()
536 av_freep(&smk->full_tbl); in decode_end()
537 av_freep(&smk->type_tbl); in decode_end()
539 av_frame_free(&smk->pic); in decode_end()