Re: [libav-devel] [PATCH] qsv: Load the hw hevc plugin by default on Linux

2017-09-11 Thread Maxym Dmytrychenko
should be so, Luca

On Fri, Sep 8, 2017 at 6:26 AM, Luca Barbato  wrote:

> On 07/09/2017 22:14, Mark Thompson wrote:
>
>> In principle I'm very much in favour, except last time I looked at
>> this there
>> was> ber/080499.html>
>> (and earlier thread).
>>
>> Are you able to test it on Broadwell?  (Or with an older Media SDK
>> version?  Do we care about that?)
>>
>
> On Linux there is only the hw plugin and it gracefully fails (or so I
> remember, Maxym do you confirm? I do not have a pre-broadwell handy due hd
> failure...).
>
> On windows nothing changes since I have that thread in mind :)
>
> lu
> ___
> libav-devel mailing list
> libav-devel@libav.org
> https://lists.libav.org/mailman/listinfo/libav-devel
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [PATCH] qsv: Load the hw hevc plugin by default on Linux

2017-09-07 Thread Luca Barbato

On 07/09/2017 22:14, Mark Thompson wrote:

In principle I'm very much in favour, except last time I looked at
this there
was
(and earlier thread).

Are you able to test it on Broadwell?  (Or with an older Media SDK
version?  Do we care about that?)


On Linux there is only the hw plugin and it gracefully fails (or so I 
remember, Maxym do you confirm? I do not have a pre-broadwell handy due 
hd failure...).


On windows nothing changes since I have that thread in mind :)

lu
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [PATCH] qsv: Load the hw hevc plugin by default on Linux

2017-09-07 Thread Maxym Dmytrychenko
old Media SDK might be considered as outdated, it would be good to support
the latest one, at first.

On Thu, Sep 7, 2017 at 10:14 PM, Mark Thompson  wrote:

> On 06/09/17 14:07, Luca Barbato wrote:
> > Only on Windows the software plugin is available.
> > ---
> >
> >  libavcodec/qsvenc_hevc.c | 8 +++-
> >  1 file changed, 7 insertions(+), 1 deletion(-)
> >
> > diff --git a/libavcodec/qsvenc_hevc.c b/libavcodec/qsvenc_hevc.c
> > index 27ff0c6feb..efed4d98f4 100644
> > --- a/libavcodec/qsvenc_hevc.c
> > +++ b/libavcodec/qsvenc_hevc.c
> > @@ -209,12 +209,18 @@ static av_cold int qsv_enc_close(AVCodecContext
> *avctx)
> >  return ff_qsv_enc_close(avctx, >qsv);
> >  }
> >
> > +#if defined(_WIN32)
> > +#define LOAD_PLUGIN_DEFAULT LOAD_PLUGIN_HEVC_SW
> > +#else
> > +#define LOAD_PLUGIN_DEFAULT LOAD_PLUGIN_HEVC_HW
> > +#endif
> > +
> >  #define OFFSET(x) offsetof(QSVHEVCEncContext, x)
> >  #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
> >  static const AVOption options[] = {
> >  QSV_COMMON_OPTS
> >
> > -{ "load_plugin", "A user plugin to load in an internal session",
> OFFSET(load_plugin), AV_OPT_TYPE_INT, { .i64 = LOAD_PLUGIN_HEVC_SW },
> LOAD_PLUGIN_NONE, LOAD_PLUGIN_HEVC_HW, VE, "load_plugin" },
> > +{ "load_plugin", "A user plugin to load in an internal session",
> OFFSET(load_plugin), AV_OPT_TYPE_INT, { .i64 = LOAD_PLUGIN_DEFAULT },
> LOAD_PLUGIN_NONE, LOAD_PLUGIN_HEVC_HW, VE, "load_plugin" },
> >  { "none", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = LOAD_PLUGIN_NONE
> },0, 0, VE, "load_plugin" },
> >  { "hevc_sw",  NULL, 0, AV_OPT_TYPE_CONST, { .i64 =
> LOAD_PLUGIN_HEVC_SW }, 0, 0, VE, "load_plugin" },
> >  { "hevc_hw",  NULL, 0, AV_OPT_TYPE_CONST, { .i64 =
> LOAD_PLUGIN_HEVC_HW }, 0, 0, VE, "load_plugin" },
> > --
> > 2.11.1
>
> In principle I'm very much in favour, except last time I looked at this
> there was  November/080499.html> (and earlier thread).
>
> Are you able to test it on Broadwell?  (Or with an older Media SDK
> version?  Do we care about that?)
>
> - Mark
> ___
> libav-devel mailing list
> libav-devel@libav.org
> https://lists.libav.org/mailman/listinfo/libav-devel
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [PATCH] qsv: Load the hw hevc plugin by default on Linux

2017-09-07 Thread Mark Thompson
On 06/09/17 14:07, Luca Barbato wrote:
> Only on Windows the software plugin is available.
> ---
> 
>  libavcodec/qsvenc_hevc.c | 8 +++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/libavcodec/qsvenc_hevc.c b/libavcodec/qsvenc_hevc.c
> index 27ff0c6feb..efed4d98f4 100644
> --- a/libavcodec/qsvenc_hevc.c
> +++ b/libavcodec/qsvenc_hevc.c
> @@ -209,12 +209,18 @@ static av_cold int qsv_enc_close(AVCodecContext *avctx)
>  return ff_qsv_enc_close(avctx, >qsv);
>  }
> 
> +#if defined(_WIN32)
> +#define LOAD_PLUGIN_DEFAULT LOAD_PLUGIN_HEVC_SW
> +#else
> +#define LOAD_PLUGIN_DEFAULT LOAD_PLUGIN_HEVC_HW
> +#endif
> +
>  #define OFFSET(x) offsetof(QSVHEVCEncContext, x)
>  #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
>  static const AVOption options[] = {
>  QSV_COMMON_OPTS
> 
> -{ "load_plugin", "A user plugin to load in an internal session", 
> OFFSET(load_plugin), AV_OPT_TYPE_INT, { .i64 = LOAD_PLUGIN_HEVC_SW }, 
> LOAD_PLUGIN_NONE, LOAD_PLUGIN_HEVC_HW, VE, "load_plugin" },
> +{ "load_plugin", "A user plugin to load in an internal session", 
> OFFSET(load_plugin), AV_OPT_TYPE_INT, { .i64 = LOAD_PLUGIN_DEFAULT }, 
> LOAD_PLUGIN_NONE, LOAD_PLUGIN_HEVC_HW, VE, "load_plugin" },
>  { "none", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = LOAD_PLUGIN_NONE },   
>  0, 0, VE, "load_plugin" },
>  { "hevc_sw",  NULL, 0, AV_OPT_TYPE_CONST, { .i64 = LOAD_PLUGIN_HEVC_SW 
> }, 0, 0, VE, "load_plugin" },
>  { "hevc_hw",  NULL, 0, AV_OPT_TYPE_CONST, { .i64 = LOAD_PLUGIN_HEVC_HW 
> }, 0, 0, VE, "load_plugin" },
> --
> 2.11.1

In principle I'm very much in favour, except last time I looked at this there 
was  
(and earlier thread).

Are you able to test it on Broadwell?  (Or with an older Media SDK version?  Do 
we care about that?)

- Mark
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

[libav-devel] [PATCH] qsv: Load the hw hevc plugin by default on Linux

2017-09-06 Thread Luca Barbato
Only on Windows the software plugin is available.
---

 libavcodec/qsvenc_hevc.c | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/libavcodec/qsvenc_hevc.c b/libavcodec/qsvenc_hevc.c
index 27ff0c6feb..efed4d98f4 100644
--- a/libavcodec/qsvenc_hevc.c
+++ b/libavcodec/qsvenc_hevc.c
@@ -209,12 +209,18 @@ static av_cold int qsv_enc_close(AVCodecContext *avctx)
 return ff_qsv_enc_close(avctx, >qsv);
 }

+#if defined(_WIN32)
+#define LOAD_PLUGIN_DEFAULT LOAD_PLUGIN_HEVC_SW
+#else
+#define LOAD_PLUGIN_DEFAULT LOAD_PLUGIN_HEVC_HW
+#endif
+
 #define OFFSET(x) offsetof(QSVHEVCEncContext, x)
 #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
 static const AVOption options[] = {
 QSV_COMMON_OPTS

-{ "load_plugin", "A user plugin to load in an internal session", 
OFFSET(load_plugin), AV_OPT_TYPE_INT, { .i64 = LOAD_PLUGIN_HEVC_SW }, 
LOAD_PLUGIN_NONE, LOAD_PLUGIN_HEVC_HW, VE, "load_plugin" },
+{ "load_plugin", "A user plugin to load in an internal session", 
OFFSET(load_plugin), AV_OPT_TYPE_INT, { .i64 = LOAD_PLUGIN_DEFAULT }, 
LOAD_PLUGIN_NONE, LOAD_PLUGIN_HEVC_HW, VE, "load_plugin" },
 { "none", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = LOAD_PLUGIN_NONE },
0, 0, VE, "load_plugin" },
 { "hevc_sw",  NULL, 0, AV_OPT_TYPE_CONST, { .i64 = LOAD_PLUGIN_HEVC_SW }, 
0, 0, VE, "load_plugin" },
 { "hevc_hw",  NULL, 0, AV_OPT_TYPE_CONST, { .i64 = LOAD_PLUGIN_HEVC_HW }, 
0, 0, VE, "load_plugin" },
--
2.11.1

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel