diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-12-15 13:01:32 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-12-15 13:03:01 +0100 |
commit | 228fded03622f9b14df7fca45ef6fab089582c08 (patch) | |
tree | 361b7cc9ac55f8312a3726c47b5442d4d6d2b0c3 /libavcodec/vaapi.c | |
parent | d2f9b9da03626bf94dac27d471114b867bacb1ed (diff) | |
parent | bab8d73765238bfeea7a8dfd454f40ac213b3d22 (diff) | |
download | ffmpeg-228fded03622f9b14df7fca45ef6fab089582c08.tar.gz |
Merge commit 'bab8d73765238bfeea7a8dfd454f40ac213b3d22'
* commit 'bab8d73765238bfeea7a8dfd454f40ac213b3d22':
vaapi: wrap codec specific functions in appropiate #ifs
Conflicts:
libavcodec/vaapi.c
See: f2118d44c9f18b3245bec2415c563d94201dcf5a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/vaapi.c')
-rw-r--r-- | libavcodec/vaapi.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/libavcodec/vaapi.c b/libavcodec/vaapi.c index db4d29dbbc..15531e46bd 100644 --- a/libavcodec/vaapi.c +++ b/libavcodec/vaapi.c @@ -197,4 +197,30 @@ void ff_vaapi_common_end_frame(AVCodecContext *avctx) vactx->slice_params_alloc = 0; } +#if CONFIG_H263_VAAPI_HWACCEL || CONFIG_MPEG1_VAAPI_HWACCEL || \ + CONFIG_MPEG2_VAAPI_HWACCEL || CONFIG_MPEG4_VAAPI_HWACCEL || \ + CONFIG_VC1_VAAPI_HWACCEL || CONFIG_WMV3_VAAPI_HWACCEL +int ff_vaapi_mpeg_end_frame(AVCodecContext *avctx) +{ + struct vaapi_context * const vactx = avctx->hwaccel_context; + MpegEncContext *s = avctx->priv_data; + int ret; + + ret = ff_vaapi_commit_slices(vactx); + if (ret < 0) + goto finish; + + ret = ff_vaapi_render_picture(vactx, + ff_vaapi_get_surface_id(s->current_picture_ptr->f)); + if (ret < 0) + goto finish; + + ff_mpeg_draw_horiz_band(s, 0, s->avctx->height); + +finish: + ff_vaapi_common_end_frame(avctx); + return ret; +} +#endif + /* @} */ |