Commit 01d3ebaf authored by Michael Niedermayer's avatar Michael Niedermayer

AVFrame: only set parameters from AVCodecContext in decode_video*() when no...

AVFrame: only set parameters from AVCodecContext in decode_video*() when no frame reordering is used.
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent a3bc7a9e
...@@ -743,6 +743,8 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi ...@@ -743,6 +743,8 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi
ret = avctx->codec->decode(avctx, picture, got_picture_ptr, ret = avctx->codec->decode(avctx, picture, got_picture_ptr,
avpkt); avpkt);
picture->pkt_dts= avpkt->dts; picture->pkt_dts= avpkt->dts;
if(!avctx->has_b_frames){
picture->pkt_pos= avpkt->pos; picture->pkt_pos= avpkt->pos;
if (!picture->sample_aspect_ratio.num) if (!picture->sample_aspect_ratio.num)
picture->sample_aspect_ratio = avctx->sample_aspect_ratio; picture->sample_aspect_ratio = avctx->sample_aspect_ratio;
...@@ -752,6 +754,7 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi ...@@ -752,6 +754,7 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi
picture->height = avctx->height; picture->height = avctx->height;
if (picture->format == PIX_FMT_NONE) if (picture->format == PIX_FMT_NONE)
picture->format = avctx->pix_fmt; picture->format = avctx->pix_fmt;
}
} }
emms_c(); //needed to avoid an emms_c() call before every return; emms_c(); //needed to avoid an emms_c() call before every return;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment