diff options
author | Vittorio Giovara <vittorio.giovara@gmail.com> | 2014-03-12 10:18:54 +0100 |
---|---|---|
committer | Vittorio Giovara <vittorio.giovara@gmail.com> | 2014-03-16 23:05:39 +0100 |
commit | be039278b5ebd8075d90a3508db2aed5adf59e02 (patch) | |
tree | 953728b9af117c19030967db5de911a37a7cda2b /libavcodec/mpegvideo.c | |
parent | e0c16e4e3259cf50b5bac4c23bb6e517f397c74b (diff) | |
download | ffmpeg-be039278b5ebd8075d90a3508db2aed5adf59e02.tar.gz |
mpegvideo: move ff_draw_horiz_band() to mpegutils.c
Drop the mpegvideo dependency for svq3 in configure.
Diffstat (limited to 'libavcodec/mpegvideo.c')
-rw-r--r-- | libavcodec/mpegvideo.c | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index a6e326cb0c..854fd4ceee 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -2311,59 +2311,6 @@ void ff_MPV_decode_mb(MpegEncContext *s, int16_t block[12][64]){ MPV_decode_mb_internal(s, block, 0); } -/** - * @param h is the normal height, this will be reduced automatically if needed for the last row - */ -void ff_draw_horiz_band(AVCodecContext *avctx, - AVFrame *cur, AVFrame *last, - int y, int h, int picture_structure, - int first_field, int low_delay) -{ - const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt); - int vshift = desc->log2_chroma_h; - const int field_pic = picture_structure != PICT_FRAME; - if(field_pic){ - h <<= 1; - y <<= 1; - } - - h = FFMIN(h, avctx->height - y); - - if(field_pic && first_field && !(avctx->slice_flags&SLICE_FLAG_ALLOW_FIELD)) return; - - if (avctx->draw_horiz_band) { - AVFrame *src; - int offset[AV_NUM_DATA_POINTERS]; - int i; - - if (cur->pict_type == AV_PICTURE_TYPE_B || low_delay || - (avctx->slice_flags & SLICE_FLAG_CODED_ORDER)) - src = cur; - else if (last) - src = last; - else - return; - - if (cur->pict_type == AV_PICTURE_TYPE_B && - picture_structure == PICT_FRAME && - avctx->codec_id != AV_CODEC_ID_SVQ3) { - for (i = 0; i < AV_NUM_DATA_POINTERS; i++) - offset[i] = 0; - }else{ - offset[0]= y * src->linesize[0]; - offset[1]= - offset[2]= (y >> vshift) * src->linesize[1]; - for (i = 3; i < AV_NUM_DATA_POINTERS; i++) - offset[i] = 0; - } - - emms_c(); - - avctx->draw_horiz_band(avctx, src, offset, - y, picture_structure, h); - } -} - void ff_mpeg_draw_horiz_band(MpegEncContext *s, int y, int h) { ff_draw_horiz_band(s->avctx, &s->current_picture.f, |