Lines Matching refs:slice

350         av_log(avctx, AV_LOG_ERROR, "unsupported slice resolution: %dx%d\n",
379 av_log(avctx, AV_LOG_ERROR, "error, wrong slice count\n");
383 // parse slice information
392 SliceContext *slice = &ctx->slices[i];
394 slice->data = data_ptr;
400 slice->mb_x = mb_x;
401 slice->mb_y = mb_y;
402 slice->mb_count = slice_mb_count;
403 slice->data_size = data_ptr - slice->data;
405 if (slice->data_size < 6) {
406 av_log(avctx, AV_LOG_ERROR, "error, wrong slice data size\n");
417 av_log(avctx, AV_LOG_ERROR, "error, slice out of bounds\n");
543 static int decode_slice_luma(AVCodecContext *avctx, SliceContext *slice,
552 int i, blocks_per_slice = slice->mb_count<<2;
566 for (i = 0; i < slice->mb_count; i++) {
577 static int decode_slice_chroma(AVCodecContext *avctx, SliceContext *slice,
586 int i, j, blocks_per_slice = slice->mb_count << log2_blocks_per_mb;
600 for (i = 0; i < slice->mb_count; i++) {
612 * Decode alpha slice plane.
647 SliceContext *slice = &ctx->slices[jobnr];
648 const uint8_t *buf = slice->data;
660 slice->ret = -1;
661 //av_log(avctx, AV_LOG_INFO, "slice %d mb width %d mb x %d y %d\n",
662 // jobnr, slice->mb_count, slice->mb_x, slice->mb_y);
664 // slice header
670 v_data_size = slice->data_size - y_data_size - u_data_size - hdr_size;
672 a_data_size = slice->data_size - y_data_size - u_data_size -
676 || hdr_size+y_data_size+u_data_size+v_data_size > slice->data_size){
705 offset = (slice->mb_y << 4) * luma_stride + (slice->mb_x << 5);
707 dest_u = pic->data[1] + (slice->mb_y << 4) * chroma_stride + (slice->mb_x << mb_x_shift);
708 dest_v = pic->data[2] + (slice->mb_y << 4) * chroma_stride + (slice->mb_x << mb_x_shift);
717 ret = decode_slice_luma(avctx, slice, (uint16_t*)dest_y, luma_stride,
723 ret = decode_slice_chroma(avctx, slice, (uint16_t*)dest_u, chroma_stride,
729 ret = decode_slice_chroma(avctx, slice, (uint16_t*)dest_v, chroma_stride,
736 size_t mb_max_x = slice->mb_count << (mb_x_shift - 1);
755 a_data_size, slice->mb_count);
758 slice->ret = 0;