}
/* mb_x and mb_y are in units of 8 pixels */
-static inline void dv_decode_video_segment(DVVideoContext *s, DVwork_chunk *work_chunk)
+static int dv_decode_video_segment(AVCodecContext *avctx, DVwork_chunk *work_chunk)
{
+ DVVideoContext *s = avctx->priv_data;
int quant, dc, dct_mode, class1, j;
int mb_index, mb_x, mb_y, last_index;
int y_stride, linesize;
}
}
}
+ return 0;
}
#if ENABLE_SMALL
}
}
-static inline void dv_encode_video_segment(DVVideoContext *s, DVwork_chunk *work_chunk)
+static int dv_encode_video_segment(AVCodecContext *avctx, DVwork_chunk *work_chunk)
{
+ DVVideoContext *s = avctx->priv_data;
int mb_index, i, j;
int mb_x, mb_y, c_offset, linesize;
uint8_t* y_ptr;
for (j = 0; j < 5 * 6; j++)
flush_put_bits(&pbs[j]);
-}
-static int dv_decode_mt(AVCodecContext *avctx, void* sl)
-{
- dv_decode_video_segment((DVVideoContext *)avctx->priv_data, (DVwork_chunk*)sl);
return 0;
}
-#ifdef CONFIG_DVVIDEO_ENCODER
-static int dv_encode_mt(AVCodecContext *avctx, void* sl)
-{
- dv_encode_video_segment((DVVideoContext *)avctx->priv_data, (DVwork_chunk*)sl);
- return 0;
-}
-#endif
-
#ifdef CONFIG_DVVIDEO_DECODER
/* NOTE: exactly one frame must be given (120000 bytes for NTSC,
144000 bytes for PAL - or twice those for 50Mbps) */
s->picture.top_field_first = 0;
s->buf = buf;
- avctx->execute(avctx, dv_decode_mt, s->sys->work_chunks, NULL,
+ avctx->execute(avctx, dv_decode_video_segment, s->sys->work_chunks, NULL,
dv_work_pool_size(s->sys), sizeof(DVwork_chunk));
emms_c();
s->picture.pict_type = FF_I_TYPE;
s->buf = buf;
- c->execute(c, dv_encode_mt, s->sys->work_chunks, NULL,
+ c->execute(c, dv_encode_video_segment, s->sys->work_chunks, NULL,
dv_work_pool_size(s->sys), sizeof(DVwork_chunk));
emms_c();