Lines Matching defs:frame
209 static inline void xan_wc3_output_pixel_run(XanContext *s, AVFrame *frame,
219 palette_plane = frame->data[0];
220 stride = frame->linesize[0];
239 static inline void xan_wc3_copy_pixel_run(XanContext *s, AVFrame *frame,
255 palette_plane = frame->data[0];
259 stride = frame->linesize[0];
297 static int xan_wc3_decode_frame(XanContext *s, AVFrame *frame)
355 /* use the decoded data segments to build the frame */
423 /* run of (size) pixels is unchanged from last frame */
424 xan_wc3_copy_pixel_run(s, frame, x, y, size, 0, 0);
429 xan_wc3_output_pixel_run(s, frame, imagedata_buffer, x, y, size);
439 /* run-based motion compensation from last frame */
444 /* copy a run of pixels from the previous frame */
445 xan_wc3_copy_pixel_run(s, frame, x, y, size, motion_x, motion_y);
541 static int xan_decode_frame(AVCodecContext *avctx, AVFrame *frame,
612 if ((ret = ff_get_buffer(avctx, frame, AV_GET_BUFFER_FLAG_REF)) < 0)
616 s->frame_size = frame->linesize[0] * s->avctx->height;
618 memcpy(frame->data[1],
624 if (xan_wc3_decode_frame(s, frame) < 0)
628 if ((ret = av_frame_ref(s->last_frame, frame)) < 0)