Mercurial > libavcodec.hg
comparison h264.c @ 9045:5fb849bddf4a libavcodec
Add hwaccel->decode_slice() call for avhwaccel by Gwenole Beauchesne.
author | michael |
---|---|
date | Wed, 25 Feb 2009 19:39:42 +0000 |
parents | d22ed7aad1b0 |
children | 7c9368905639 |
comparison
equal
deleted
inserted
replaced
9044:a56d79b0b9fb | 9045:5fb849bddf4a |
---|---|
7492 if(hx->redundant_pic_count==0 && hx->s.hurry_up < 5 | 7492 if(hx->redundant_pic_count==0 && hx->s.hurry_up < 5 |
7493 && (avctx->skip_frame < AVDISCARD_NONREF || hx->nal_ref_idc) | 7493 && (avctx->skip_frame < AVDISCARD_NONREF || hx->nal_ref_idc) |
7494 && (avctx->skip_frame < AVDISCARD_BIDIR || hx->slice_type_nos!=FF_B_TYPE) | 7494 && (avctx->skip_frame < AVDISCARD_BIDIR || hx->slice_type_nos!=FF_B_TYPE) |
7495 && (avctx->skip_frame < AVDISCARD_NONKEY || hx->slice_type_nos==FF_I_TYPE) | 7495 && (avctx->skip_frame < AVDISCARD_NONKEY || hx->slice_type_nos==FF_I_TYPE) |
7496 && avctx->skip_frame < AVDISCARD_ALL){ | 7496 && avctx->skip_frame < AVDISCARD_ALL){ |
7497 if(avctx->hwaccel) { | |
7498 if (avctx->hwaccel->decode_slice(avctx, &buf[buf_index - consumed], consumed) < 0) | |
7499 return -1; | |
7500 }else | |
7497 if(CONFIG_H264_VDPAU_DECODER && s->avctx->codec->capabilities&CODEC_CAP_HWACCEL_VDPAU){ | 7501 if(CONFIG_H264_VDPAU_DECODER && s->avctx->codec->capabilities&CODEC_CAP_HWACCEL_VDPAU){ |
7498 static const uint8_t start_code[] = {0x00, 0x00, 0x01}; | 7502 static const uint8_t start_code[] = {0x00, 0x00, 0x01}; |
7499 ff_vdpau_add_data_chunk(s, start_code, sizeof(start_code)); | 7503 ff_vdpau_add_data_chunk(s, start_code, sizeof(start_code)); |
7500 ff_vdpau_add_data_chunk(s, &buf[buf_index - consumed], consumed ); | 7504 ff_vdpau_add_data_chunk(s, &buf[buf_index - consumed], consumed ); |
7501 }else | 7505 }else |