summaryrefslogtreecommitdiff
path: root/libavcodec/4xm.c
diff options
context:
space:
mode:
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>2011-11-05 19:48:39 +0100
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>2011-11-05 23:25:20 +0100
commit371e1654434f5934ca1665df22387024a82e6e27 (patch)
tree83f51e22bd76e8145b88691697755e93f2da3ae4 /libavcodec/4xm.c
parentfb2288834ba8a51e8934cfe8b82ac468144a34df (diff)
Try to set AVFrame.reference to correct values.
I am not sure these new values are correct, not am I sure the semantics are a good idea since we do not seem to make any use of them but they caused a lot of confusion, but this seems to make things closer to matching the documentation. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Diffstat (limited to 'libavcodec/4xm.c')
-rw-r--r--libavcodec/4xm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/4xm.c b/libavcodec/4xm.c
index e6638c7b4b..9350f06e9b 100644
--- a/libavcodec/4xm.c
+++ b/libavcodec/4xm.c
@@ -821,7 +821,7 @@ static int decode_frame(AVCodecContext *avctx,
avctx->flags |= CODEC_FLAG_EMU_EDGE; // alternatively we would have to use our own buffer management
- p->reference= 1;
+ p->reference= 3;
if (avctx->reget_buffer(avctx, p) < 0) {
av_log(avctx, AV_LOG_ERROR, "reget_buffer() failed\n");
return -1;
@@ -841,7 +841,7 @@ static int decode_frame(AVCodecContext *avctx,
}
}else if(frame_4cc == AV_RL32("pfrm") || frame_4cc == AV_RL32("pfr2")){
if(!f->last_picture.data[0]){
- f->last_picture.reference= 1;
+ f->last_picture.reference= 3;
if(avctx->get_buffer(avctx, &f->last_picture) < 0){
av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
return -1;