Re: [FFmpeg-devel] [PATCH] lavc/qsvdec: fix the regression on linux for init_hw_device

2019-09-03 Thread Fu, Linjie
> -Original Message-
> From: Li, Zhong
> Sent: Tuesday, September 3, 2019 18:18
> To: FFmpeg development discussions and patches  de...@ffmpeg.org>
> Cc: Fu, Linjie 
> Subject: RE: [FFmpeg-devel] [PATCH] lavc/qsvdec: fix the regression on linux
> for init_hw_device
> 
> > diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c index
> eef4fe7..319b549
> > 100644
> > --- a/libavcodec/qsvdec.c
> > +++ b/libavcodec/qsvdec.c
> > @@ -46,6 +46,7 @@ const AVCodecHWConfigInternal
> *ff_qsv_hw_configs[] = {
> >  .public = {
> >  .pix_fmt = AV_PIX_FMT_QSV,
> >  .methods =
> AV_CODEC_HW_CONFIG_METHOD_HW_FRAMES_CTX |
> > +   AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX |
> 
> AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX means we can
> support AV_PIX_FMT_QSV by AVCodecContext.hw_device_ctx
> This is not supported for qsv now.
> And even if it is supported, there is no business of system memory frame,
> just means output AV_PIX_FMT_QSV format frame created by
> hw_device_ctx.

Thanks for the explanation of this flag.

> 
> > AV_CODEC_HW_CONFIG_METHOD_AD_HOC,
> >  .device_type = AV_HWDEVICE_TYPE_QSV,
> >  },
> > --
> > 2.7.4
> 
> Probably we need to add MFXVideoCORE_SetHandle() function for system
> memory output path, which is removed by
> 1f26a231bb065276cd80ce02957c759f3197edfa.

Yes, that's another possibility to fix this issue.
This patch aims at matching the behavior before the regression happened since
currently qsv is working on different session_init path compared with previous
version.

If ff_qsv_init_session_device() should not be called, it's good to set handle in
ff_qsv_init_internal_session (), since MSDK won't do such implementation on 
Linux
internally:
https://github.com/Intel-Media-SDK/MediaSDK/issues/1611#issuecomment-527359911

> I will try to give a patch to fix it ASAP.

Thanks,

-linjie
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Re: [FFmpeg-devel] [PATCH] lavc/qsvdec: fix the regression on linux for init_hw_device

2019-09-03 Thread Li, Zhong
> diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c index eef4fe7..319b549
> 100644
> --- a/libavcodec/qsvdec.c
> +++ b/libavcodec/qsvdec.c
> @@ -46,6 +46,7 @@ const AVCodecHWConfigInternal *ff_qsv_hw_configs[] = {
>  .public = {
>  .pix_fmt = AV_PIX_FMT_QSV,
>  .methods = AV_CODEC_HW_CONFIG_METHOD_HW_FRAMES_CTX |
> +   AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX |

AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX means we can support AV_PIX_FMT_QSV by 
AVCodecContext.hw_device_ctx
This is not supported for qsv now. 
And even if it is supported, there is no business of system memory frame, just 
means output AV_PIX_FMT_QSV format frame created by hw_device_ctx.

> AV_CODEC_HW_CONFIG_METHOD_AD_HOC,
>  .device_type = AV_HWDEVICE_TYPE_QSV,
>  },
> --
> 2.7.4

Probably we need to add MFXVideoCORE_SetHandle() function for system memory 
output path, which is removed by 1f26a231bb065276cd80ce02957c759f3197edfa.
I will try to give a patch to fix it ASAP. 
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".