提问人:zerpico 提问时间:9/28/2023 更新时间:9/28/2023 访问量:85
使用 QSV 和 ffmpeg、libav 进行颜色转换和缩放的硬件加速
Hardware acceleration of color conversion and scaling using QSV with ffmpeg, libav
问:
基于此示例,我使用 QuickSync 在 Intel 处理器上使用硬件解码。https://github.com/FFmpeg/FFmpeg/blob/master/doc/examples/qsv_decode.c
然后我使用 sws_scale 将颜色从 NV12 转换为 YUV420。但是有没有办法也使用硬件加速呢?
我的代码的某些部分
//decoding frame
int32_t ret = avcodec_receive_frame(_context, _tmpFrame); //i got _tmpFrame->format == AV_PIX_FMT_QSV
//retrieve data from GPU to CPU
av_hwframe_transfer_data(_decFrame, _tmpFrame, 0); //i got _decFrame->format == AV_PIX_FMT_NV12
//...some code next
//init context
conversion = sws_getContext(_context->width, _context->height, AV_PIX_FMT_NV12,
_context->width,_context->height, AV_PIX_FMT_YUV420P,
SWS_FAST_BILINEAR, NULL,NULL,NULL);
//convert frame (is Intel QuickSync used here)?
int32_t out_height = sws_scale(conversion, src_data, src_stride, 0, src_height, dst_data, dst_stride);
答: 暂无答案
评论