Mercurial > libavcodec.hg
comparison mpegvideo.c @ 8522:f8c091bb5779 libavcodec
Add VDPAU hardware accelerated decoding for H264 which can be used by
video players.
Original patch by NVIDIA corporation.
author | cehoyos |
---|---|
date | Sun, 04 Jan 2009 23:55:27 +0000 |
parents | 9281a8a9387a |
children | 7a463923ecd1 |
comparison
equal
deleted
inserted
replaced
8521:42179b2cfd09 | 8522:f8c091bb5779 |
---|---|
955 //just to make sure that all data is rendered. | 955 //just to make sure that all data is rendered. |
956 if(s->avctx->xvmc_acceleration){ | 956 if(s->avctx->xvmc_acceleration){ |
957 XVMC_field_end(s); | 957 XVMC_field_end(s); |
958 }else | 958 }else |
959 #endif | 959 #endif |
960 if(s->unrestricted_mv && s->current_picture.reference && !s->intra_only && !(s->flags&CODEC_FLAG_EMU_EDGE)) { | 960 if(!(s->avctx->codec->capabilities&CODEC_CAP_HWACCEL_VDPAU) |
961 && s->unrestricted_mv | |
962 && s->current_picture.reference | |
963 && !s->intra_only | |
964 && !(s->flags&CODEC_FLAG_EMU_EDGE)) { | |
961 s->dsp.draw_edges(s->current_picture.data[0], s->linesize , s->h_edge_pos , s->v_edge_pos , EDGE_WIDTH ); | 965 s->dsp.draw_edges(s->current_picture.data[0], s->linesize , s->h_edge_pos , s->v_edge_pos , EDGE_WIDTH ); |
962 s->dsp.draw_edges(s->current_picture.data[1], s->uvlinesize, s->h_edge_pos>>1, s->v_edge_pos>>1, EDGE_WIDTH/2); | 966 s->dsp.draw_edges(s->current_picture.data[1], s->uvlinesize, s->h_edge_pos>>1, s->v_edge_pos>>1, EDGE_WIDTH/2); |
963 s->dsp.draw_edges(s->current_picture.data[2], s->uvlinesize, s->h_edge_pos>>1, s->v_edge_pos>>1, EDGE_WIDTH/2); | 967 s->dsp.draw_edges(s->current_picture.data[2], s->uvlinesize, s->h_edge_pos>>1, s->v_edge_pos>>1, EDGE_WIDTH/2); |
964 } | 968 } |
965 emms_c(); | 969 emms_c(); |