avcodec/mjpegenc: drop dependancy on sizeof(AVFrame)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
c81234651f
commit
5b3f4b3ef5
@ -537,8 +537,8 @@ static int amv_encode_picture(AVCodecContext *avctx, AVPacket *pkt,
|
||||
|
||||
{
|
||||
MpegEncContext *s = avctx->priv_data;
|
||||
AVFrame pic = *pic_arg;
|
||||
int i;
|
||||
AVFrame *pic;
|
||||
int i, ret;
|
||||
int chroma_h_shift, chroma_v_shift;
|
||||
|
||||
av_pix_fmt_get_chroma_sub_sample(avctx->pix_fmt, &chroma_h_shift, &chroma_v_shift);
|
||||
@ -547,13 +547,17 @@ static int amv_encode_picture(AVCodecContext *avctx, AVPacket *pkt,
|
||||
if(s->avctx->flags & CODEC_FLAG_EMU_EDGE)
|
||||
return -1;
|
||||
|
||||
pic = av_frame_alloc();
|
||||
av_frame_ref(pic, pic_arg);
|
||||
//picture should be flipped upside-down
|
||||
for(i=0; i < 3; i++) {
|
||||
int vsample = i ? 2 >> chroma_v_shift : 2;
|
||||
pic.data[i] += (pic.linesize[i] * (vsample * (8 * s->mb_height -((s->height/V_MAX)&7)) - 1 ));
|
||||
pic.linesize[i] *= -1;
|
||||
pic->data[i] += (pic->linesize[i] * (vsample * (8 * s->mb_height -((s->height/V_MAX)&7)) - 1 ));
|
||||
pic->linesize[i] *= -1;
|
||||
}
|
||||
return ff_MPV_encode_picture(avctx, pkt, &pic, got_packet);
|
||||
ret = ff_MPV_encode_picture(avctx, pkt, pic, got_packet);
|
||||
av_frame_free(&pic);
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if CONFIG_MJPEG_ENCODER
|
||||
|
Loading…
x
Reference in New Issue
Block a user