Browse Source

vc1dec: Call ff_vdpau_vc1_decode_picture() once for each field.

Fixes mplayer -vc ffvc1vdpau for interlaced streams.
tags/n2.0
Carl Eugen Hoyos 12 years ago
parent
commit
8b8fa09b65
1 changed files with 5 additions and 0 deletions
  1. +5
    -0
      libavcodec/vc1dec.c

+ 5
- 0
libavcodec/vc1dec.c View File

@@ -6008,7 +6008,12 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data,


if ((CONFIG_VC1_VDPAU_DECODER) if ((CONFIG_VC1_VDPAU_DECODER)
&&s->avctx->codec->capabilities&CODEC_CAP_HWACCEL_VDPAU) &&s->avctx->codec->capabilities&CODEC_CAP_HWACCEL_VDPAU)
if (v->field_mode && buf_start_second_field) {
ff_vdpau_vc1_decode_picture(s, buf_start, buf_start_second_field - buf_start);
ff_vdpau_vc1_decode_picture(s, buf_start_second_field, (buf + buf_size) - buf_start_second_field);
} else {
ff_vdpau_vc1_decode_picture(s, buf_start, (buf + buf_size) - buf_start); ff_vdpau_vc1_decode_picture(s, buf_start, (buf + buf_size) - buf_start);
}
else if (avctx->hwaccel) { else if (avctx->hwaccel) {
if (v->field_mode && buf_start_second_field) { if (v->field_mode && buf_start_second_field) {
// decode first field // decode first field


Loading…
Cancel
Save