Lines Matching defs:slices

642     } *slices = NULL, *tmp;
689 tmp = av_realloc_array(slices, sizeof(*slices), n_slices+1);
694 slices = tmp;
695 slices[n_slices].buf = av_mallocz(size + AV_INPUT_BUFFER_PADDING_SIZE);
696 if (!slices[n_slices].buf) {
701 slices[n_slices].buf);
702 init_get_bits(&slices[n_slices].gb, slices[n_slices].buf,
704 slices[n_slices].mby_start = avctx->coded_height + 31 >> 5;
705 slices[n_slices].rawbuf = start;
706 slices[n_slices].raw_size = size + 4;
718 tmp = av_realloc_array(slices, sizeof(*slices), n_slices+1);
723 slices = tmp;
724 slices[n_slices].buf = av_mallocz(size + AV_INPUT_BUFFER_PADDING_SIZE);
725 if (!slices[n_slices].buf) {
730 slices[n_slices].buf);
731 init_get_bits(&slices[n_slices].gb, slices[n_slices].buf,
733 slices[n_slices].mby_start = get_bits(&slices[n_slices].gb, 9);
734 slices[n_slices].rawbuf = start;
735 slices[n_slices].raw_size = size + 4;
753 tmp = av_realloc_array(slices, sizeof(*slices), n_slices+1);
758 slices = tmp;
759 slices[n_slices].buf = av_mallocz(buf_size + AV_INPUT_BUFFER_PADDING_SIZE);
760 if (!slices[n_slices].buf) {
764 buf_size3 = v->vc1dsp.vc1_unescape_buffer(divider + 4, buf + buf_size - divider - 4, slices[n_slices].buf);
765 init_get_bits(&slices[n_slices].gb, slices[n_slices].buf,
767 slices[n_slices].mby_start = s->mb_height + 1 >> 1;
768 slices[n_slices].rawbuf = divider;
769 slices[n_slices].raw_size = buf + buf_size - divider;
910 // no slices, decode the field as-is
914 if ((ret = avctx->hwaccel->decode_slice(avctx, buf_start, slices[0].rawbuf - buf_start)) < 0)
918 s->gb = slices[i].gb;
919 s->mb_y = slices[i].mby_start;
932 if ((ret = avctx->hwaccel->decode_slice(avctx, slices[i].rawbuf, slices[i].raw_size)) < 0)
941 s->gb = slices[n_slices1 + 1].gb;
942 s->mb_y = slices[n_slices1 + 1].mby_start;
957 // no slices, decode the field as-is
961 if ((ret = avctx->hwaccel->decode_slice(avctx, buf_start_second_field, slices[n_slices1 + 2].rawbuf - buf_start_second_field)) < 0)
965 s->gb = slices[i].gb;
966 s->mb_y = slices[i].mby_start;
979 if ((ret = avctx->hwaccel->decode_slice(avctx, slices[i].rawbuf, slices[i].raw_size)) < 0)
992 // no slices, decode the frame as-is
997 if ((ret = avctx->hwaccel->decode_slice(avctx, buf_start, slices[0].rawbuf - buf_start)) < 0)
1000 // and process the slices as additional slices afterwards
1002 s->gb = slices[i].gb;
1003 s->mb_y = slices[i].mby_start;
1016 if ((ret = avctx->hwaccel->decode_slice(avctx, slices[i].rawbuf, slices[i].raw_size)) < 0)
1041 if (i > 0 && slices[i - 1].mby_start >= mb_height) {
1045 slices[i - 1].mby_start, mb_height);
1080 s->start_mb_y = (i == 0) ? 0 : FFMAX(0, slices[i-1].mby_start % mb_height);
1082 s->end_mb_y = (i == n_slices ) ? mb_height : FFMIN(mb_height, slices[i].mby_start % mb_height);
1088 s->end_mb_y = (i == n_slices1 + 1) ? mb_height : FFMIN(mb_height, slices[i].mby_start % mb_height);
1102 s->gb = slices[i].gb;
1170 av_free(slices[i].buf);
1171 av_free(slices);
1177 av_free(slices[i].buf);
1178 av_free(slices);