Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-13 Thread Li, Zhong
> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
> Of Mark Thompson
> Sent: Thursday, July 12, 2018 7:46 AM
> To: ffmpeg-devel@ffmpeg.org
> Subject: Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> 
> On 04/07/18 05:07, Li, Zhong wrote:
> >> -Original Message-
> >> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On
> Behalf
> >> Of Hendrik Leppkes
> >> Sent: Wednesday, July 4, 2018 2:15 AM
> >> To: FFmpeg development discussions and patches
> >> 
> >> Subject: Re: [FFmpeg-devel] [PATCH]
> >> https://trac.ffmpeg.org/ticket/7030 fix
> >>
> >> On Tue, Jul 3, 2018 at 10:55 AM Li, Zhong  wrote:
> >>>
> >>>> -Original Message-
> >>>> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On
> >>>> Behalf Of Yuri Palich
> >>>> Sent: Friday, March 2, 2018 7:55 PM
> >>>> To: ffmpeg-devel 
> >>>> Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030
> >>>> fix
> >>>>
> >>>> From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17
> >> 00:00:00
> >>>> 2001
> >>>> From: palich2000 
> >>>> Date: Fri, 2 Mar 2018 11:48:22 +
> >>>> Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> >>>>
> >>>> ---
> >>>>  libavcodec/qsvenc_h264.c | 15 +++
> >>>>  1 file changed, 15 insertions(+)
> >>>>
> >>>> diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c
> >>>> index
> >>>> 09e4c0e..5f60675 100644
> >>>> --- a/libavcodec/qsvenc_h264.c
> >>>> +++ b/libavcodec/qsvenc_h264.c
> >>>> @@ -34,6 +34,7 @@
> >>>>  #include "qsv.h"
> >>>>  #include "qsv_internal.h"
> >>>>  #include "qsvenc.h"
> >>>> +#include "hwaccel.h"
> >>>>
> >>>>  typedef struct QSVH264EncContext {
> >>>>  AVClass *class;
> >>>> @@ -169,6 +170,16 @@ static const AVCodecDefault
> qsv_enc_defaults[]
> >> = {
> >>>>  { NULL },
> >>>>  };
> >>>>
> >>>> +#define HWACCEL_QSV(codec) \
> >>>> +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,
> >> ff_
> >>>> ## codec ##
> >>>> _qsv_hwaccel)
> >>>> +
> >>>> +const AVHWAccel ff_h264_qsv_hwaccel = {
> >>>> +.name = "h264_qsv",
> >>>> +.type = AVMEDIA_TYPE_VIDEO,
> >>>> +.id   = AV_CODEC_ID_H264,
> >>>> +.pix_fmt  = AV_PIX_FMT_QSV
> >>>> +};
> >>>> +
> >>>>  AVCodec ff_h264_qsv_encoder = {
> >>>>  .name   = "h264_qsv",
> >>>>  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC /
> >> MPEG-4
> >>>> AVC /
> >>>> MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5
> >>>> +197,9 @@ AVCodec ff_h264_qsv_encoder = {
> >>>>  .priv_class = &class,
> >>>>  .defaults   = qsv_enc_defaults,
> >>>>  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
> >>>> +.hw_configs= (const
> AVCodecHWConfigInternal*[]) {
> >>>> +   HWACCEL_QSV(h264),
> >>>> +NULL
> >>>> +},
> >>>>  .wrapper_name   = "qsv",
> >>>>  };
> >>>> --
> >>>> 1.8.3.1
> >>>
> >>> LGTM. Verified this fix # ticket 7030.
> >>
> >> The fact that we removed the fake HWAccels for a reason still stands.
> >> Please talk to Mark Thompson before commiting anything like this.
> >>
> >> - Hendrik
> >
> > Sure. Won't push such a patch without clear commit message and also
> > need to fix other qsv encoders broken issue. (this patch is only available 
> > for
> h264.) Waiting Mark's comment/confirmation.
> 
> So I think the problem behind this is that in some configurations the encoder
> and decoder somehow can't use the same device at the same time, and it
> isn't carried between them.  I think that's something to do with using
> Redhat/Centos and therefore an ancient (pre-2

Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-11 Thread Mark Thompson
On 04/07/18 05:07, Li, Zhong wrote:
>> -Original Message-
>> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
>> Of Hendrik Leppkes
>> Sent: Wednesday, July 4, 2018 2:15 AM
>> To: FFmpeg development discussions and patches
>> 
>> Subject: Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
>>
>> On Tue, Jul 3, 2018 at 10:55 AM Li, Zhong  wrote:
>>>
>>>> -Original Message-
>>>> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On
>>>> Behalf Of Yuri Palich
>>>> Sent: Friday, March 2, 2018 7:55 PM
>>>> To: ffmpeg-devel 
>>>> Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030
>>>> fix
>>>>
>>>> From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17
>> 00:00:00
>>>> 2001
>>>> From: palich2000 
>>>> Date: Fri, 2 Mar 2018 11:48:22 +
>>>> Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
>>>>
>>>> ---
>>>>  libavcodec/qsvenc_h264.c | 15 +++
>>>>  1 file changed, 15 insertions(+)
>>>>
>>>> diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c
>>>> index
>>>> 09e4c0e..5f60675 100644
>>>> --- a/libavcodec/qsvenc_h264.c
>>>> +++ b/libavcodec/qsvenc_h264.c
>>>> @@ -34,6 +34,7 @@
>>>>  #include "qsv.h"
>>>>  #include "qsv_internal.h"
>>>>  #include "qsvenc.h"
>>>> +#include "hwaccel.h"
>>>>
>>>>  typedef struct QSVH264EncContext {
>>>>  AVClass *class;
>>>> @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[]
>> = {
>>>>  { NULL },
>>>>  };
>>>>
>>>> +#define HWACCEL_QSV(codec) \
>>>> +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,
>> ff_
>>>> ## codec ##
>>>> _qsv_hwaccel)
>>>> +
>>>> +const AVHWAccel ff_h264_qsv_hwaccel = {
>>>> +.name = "h264_qsv",
>>>> +.type = AVMEDIA_TYPE_VIDEO,
>>>> +.id   = AV_CODEC_ID_H264,
>>>> +.pix_fmt  = AV_PIX_FMT_QSV
>>>> +};
>>>> +
>>>>  AVCodec ff_h264_qsv_encoder = {
>>>>  .name   = "h264_qsv",
>>>>  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC /
>> MPEG-4
>>>> AVC /
>>>> MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5
>>>> +197,9 @@ AVCodec ff_h264_qsv_encoder = {
>>>>  .priv_class = &class,
>>>>  .defaults   = qsv_enc_defaults,
>>>>  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
>>>> +.hw_configs= (const AVCodecHWConfigInternal*[]) {
>>>> +   HWACCEL_QSV(h264),
>>>> +NULL
>>>> +},
>>>>  .wrapper_name   = "qsv",
>>>>  };
>>>> --
>>>> 1.8.3.1
>>>
>>> LGTM. Verified this fix # ticket 7030.
>>
>> The fact that we removed the fake HWAccels for a reason still stands.
>> Please talk to Mark Thompson before commiting anything like this.
>>
>> - Hendrik
> 
> Sure. Won't push such a patch without clear commit message and also need to 
> fix other qsv encoders broken issue. (this patch is only available for h264.)
> Waiting Mark's comment/confirmation.

So I think the problem behind this is that in some configurations the encoder 
and decoder somehow can't use the same device at the same time, and it isn't 
carried between them.  I think that's something to do with using Redhat/Centos 
and therefore an ancient (pre-2014?) Linux version which lacks support for 
rendernodes, but I never managed to confirm that.  These cases work fine for me 
on both Windows and non-ancient Linux, and they will also work if the device 
gets passed from the decoder to encoder via hardware frames.

The hack in the patch above is adding decoder metadata to the encoder which 
allows the -init_hw_device option to end up with the device automatically 
applied to both the encoder and the decoder.  However, we never actually 
defined that metadata for encoders so this is definitely not appropriate.  
There was some intent to define it for encoders too (indeed, there is some 
vestigial code in ffmpeg_hw.c which this is hooking to get the effect it 
wants), but it turned out that the only intere

Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Li, Zhong
> -Original Message-
> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
> Of Hendrik Leppkes
> Sent: Wednesday, July 4, 2018 2:15 AM
> To: FFmpeg development discussions and patches
> 
> Subject: Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> 
> On Tue, Jul 3, 2018 at 10:55 AM Li, Zhong  wrote:
> >
> > > -Original Message-
> > > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On
> > > Behalf Of Yuri Palich
> > > Sent: Friday, March 2, 2018 7:55 PM
> > > To: ffmpeg-devel 
> > > Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030
> > > fix
> > >
> > > From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17
> 00:00:00
> > > 2001
> > > From: palich2000 
> > > Date: Fri, 2 Mar 2018 11:48:22 +
> > > Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> > >
> > > ---
> > >  libavcodec/qsvenc_h264.c | 15 +++
> > >  1 file changed, 15 insertions(+)
> > >
> > > diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c
> > > index
> > > 09e4c0e..5f60675 100644
> > > --- a/libavcodec/qsvenc_h264.c
> > > +++ b/libavcodec/qsvenc_h264.c
> > > @@ -34,6 +34,7 @@
> > >  #include "qsv.h"
> > >  #include "qsv_internal.h"
> > >  #include "qsvenc.h"
> > > +#include "hwaccel.h"
> > >
> > >  typedef struct QSVH264EncContext {
> > >  AVClass *class;
> > > @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[]
> = {
> > >  { NULL },
> > >  };
> > >
> > > +#define HWACCEL_QSV(codec) \
> > > +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,
> ff_
> > > ## codec ##
> > > _qsv_hwaccel)
> > > +
> > > +const AVHWAccel ff_h264_qsv_hwaccel = {
> > > +.name = "h264_qsv",
> > > +.type = AVMEDIA_TYPE_VIDEO,
> > > +.id   = AV_CODEC_ID_H264,
> > > +.pix_fmt  = AV_PIX_FMT_QSV
> > > +};
> > > +
> > >  AVCodec ff_h264_qsv_encoder = {
> > >  .name   = "h264_qsv",
> > >  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC /
> MPEG-4
> > > AVC /
> > > MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5
> > > +197,9 @@ AVCodec ff_h264_qsv_encoder = {
> > >  .priv_class = &class,
> > >  .defaults   = qsv_enc_defaults,
> > >  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
> > > +.hw_configs= (const AVCodecHWConfigInternal*[]) {
> > > +   HWACCEL_QSV(h264),
> > > +NULL
> > > +},
> > >  .wrapper_name   = "qsv",
> > >  };
> > > --
> > > 1.8.3.1
> >
> > LGTM. Verified this fix # ticket 7030.
> 
> The fact that we removed the fake HWAccels for a reason still stands.
> Please talk to Mark Thompson before commiting anything like this.
> 
> - Hendrik

Sure. Won't push such a patch without clear commit message and also need to fix 
other qsv encoders broken issue. (this patch is only available for h264.)
Waiting Mark's comment/confirmation.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Li, Zhong
> -Original Message-
> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
> Of Carl Eugen Hoyos
> Sent: Wednesday, July 4, 2018 5:41 AM
> To: FFmpeg development discussions and patches
> 
> Subject: Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> 
> 2018-07-03 23:27 GMT+02:00, Hendrik Leppkes :
> 
> > QSV works fine for me.
> 
> No, sorry, you misunderstood:
> Yuri's and Zhong's question was not if it works for you but why it does not
> work for them (one representing Intel afaict).
> 
> Carl Eugen

Maybe it is broken on Linux but works well on Windows? 
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Carl Eugen Hoyos
2018-07-03 23:27 GMT+02:00, Hendrik Leppkes :

> QSV works fine for me.

No, sorry, you misunderstood:
Yuri's and Zhong's question was not if it works for you but
why it does not work for them (one representing Intel afaict).

Carl Eugen
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Hendrik Leppkes
On Tue, Jul 3, 2018 at 8:52 PM Carl Eugen Hoyos  wrote:
>
> 2018-07-03 20:15 GMT+02:00, Hendrik Leppkes :
> > On Tue, Jul 3, 2018 at 10:55 AM Li, Zhong  wrote:
> >>
> >> > -Original Message-
> >> > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
> >> > Of Yuri Palich
> >> > Sent: Friday, March 2, 2018 7:55 PM
> >> > To: ffmpeg-devel 
> >> > Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> >> >
> >> > From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17 00:00:00
> >> > 2001
> >> > From: palich2000 
> >> > Date: Fri, 2 Mar 2018 11:48:22 +
> >> > Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> >> >
> >> > ---
> >> >  libavcodec/qsvenc_h264.c | 15 +++
> >> >  1 file changed, 15 insertions(+)
> >> >
> >> > diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c index
> >> > 09e4c0e..5f60675 100644
> >> > --- a/libavcodec/qsvenc_h264.c
> >> > +++ b/libavcodec/qsvenc_h264.c
> >> > @@ -34,6 +34,7 @@
> >> >  #include "qsv.h"
> >> >  #include "qsv_internal.h"
> >> >  #include "qsvenc.h"
> >> > +#include "hwaccel.h"
> >> >
> >> >  typedef struct QSVH264EncContext {
> >> >  AVClass *class;
> >> > @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[] = {
> >> >  { NULL },
> >> >  };
> >> >
> >> > +#define HWACCEL_QSV(codec) \
> >> > +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,  ff_
> >> > ## codec ##
> >> > _qsv_hwaccel)
> >> > +
> >> > +const AVHWAccel ff_h264_qsv_hwaccel = {
> >> > +.name = "h264_qsv",
> >> > +.type = AVMEDIA_TYPE_VIDEO,
> >> > +.id   = AV_CODEC_ID_H264,
> >> > +.pix_fmt  = AV_PIX_FMT_QSV
> >> > +};
> >> > +
> >> >  AVCodec ff_h264_qsv_encoder = {
> >> >  .name   = "h264_qsv",
> >> >  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4
> >> > AVC /
> >> > MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5 +197,9
> >> > @@ AVCodec ff_h264_qsv_encoder = {
> >> >  .priv_class = &class,
> >> >  .defaults   = qsv_enc_defaults,
> >> >  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
> >> > +.hw_configs= (const AVCodecHWConfigInternal*[]) {
> >> > +   HWACCEL_QSV(h264),
> >> > +NULL
> >> > +},
> >> >  .wrapper_name   = "qsv",
> >> >  };
> >> > --
> >> > 1.8.3.1
> >>
> >> LGTM. Verified this fix # ticket 7030.
> >
> > The fact that we removed the fake HWAccels for a reason still stands.
> > Please talk to Mark Thompson before commiting anything like this.
>
> As an alternative, you could consider to answer the question that
> you seem to have missed...
>

QSV works fine for me.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Carl Eugen Hoyos
2018-07-03 20:15 GMT+02:00, Hendrik Leppkes :
> On Tue, Jul 3, 2018 at 10:55 AM Li, Zhong  wrote:
>>
>> > -Original Message-
>> > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
>> > Of Yuri Palich
>> > Sent: Friday, March 2, 2018 7:55 PM
>> > To: ffmpeg-devel 
>> > Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
>> >
>> > From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17 00:00:00
>> > 2001
>> > From: palich2000 
>> > Date: Fri, 2 Mar 2018 11:48:22 +
>> > Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
>> >
>> > ---
>> >  libavcodec/qsvenc_h264.c | 15 +++
>> >  1 file changed, 15 insertions(+)
>> >
>> > diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c index
>> > 09e4c0e..5f60675 100644
>> > --- a/libavcodec/qsvenc_h264.c
>> > +++ b/libavcodec/qsvenc_h264.c
>> > @@ -34,6 +34,7 @@
>> >  #include "qsv.h"
>> >  #include "qsv_internal.h"
>> >  #include "qsvenc.h"
>> > +#include "hwaccel.h"
>> >
>> >  typedef struct QSVH264EncContext {
>> >  AVClass *class;
>> > @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[] = {
>> >  { NULL },
>> >  };
>> >
>> > +#define HWACCEL_QSV(codec) \
>> > +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,  ff_
>> > ## codec ##
>> > _qsv_hwaccel)
>> > +
>> > +const AVHWAccel ff_h264_qsv_hwaccel = {
>> > +.name = "h264_qsv",
>> > +.type = AVMEDIA_TYPE_VIDEO,
>> > +.id   = AV_CODEC_ID_H264,
>> > +.pix_fmt  = AV_PIX_FMT_QSV
>> > +};
>> > +
>> >  AVCodec ff_h264_qsv_encoder = {
>> >  .name   = "h264_qsv",
>> >  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4
>> > AVC /
>> > MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5 +197,9
>> > @@ AVCodec ff_h264_qsv_encoder = {
>> >  .priv_class = &class,
>> >  .defaults   = qsv_enc_defaults,
>> >  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
>> > +.hw_configs= (const AVCodecHWConfigInternal*[]) {
>> > +   HWACCEL_QSV(h264),
>> > +NULL
>> > +},
>> >  .wrapper_name   = "qsv",
>> >  };
>> > --
>> > 1.8.3.1
>>
>> LGTM. Verified this fix # ticket 7030.
>
> The fact that we removed the fake HWAccels for a reason still stands.
> Please talk to Mark Thompson before commiting anything like this.

As an alternative, you could consider to answer the question that
you seem to have missed...

Carl Eugen
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Hendrik Leppkes
On Tue, Jul 3, 2018 at 10:55 AM Li, Zhong  wrote:
>
> > -Original Message-
> > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
> > Of Yuri Palich
> > Sent: Friday, March 2, 2018 7:55 PM
> > To: ffmpeg-devel 
> > Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> >
> > From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17 00:00:00
> > 2001
> > From: palich2000 
> > Date: Fri, 2 Mar 2018 11:48:22 +
> > Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> >
> > ---
> >  libavcodec/qsvenc_h264.c | 15 +++
> >  1 file changed, 15 insertions(+)
> >
> > diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c index
> > 09e4c0e..5f60675 100644
> > --- a/libavcodec/qsvenc_h264.c
> > +++ b/libavcodec/qsvenc_h264.c
> > @@ -34,6 +34,7 @@
> >  #include "qsv.h"
> >  #include "qsv_internal.h"
> >  #include "qsvenc.h"
> > +#include "hwaccel.h"
> >
> >  typedef struct QSVH264EncContext {
> >  AVClass *class;
> > @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[] = {
> >  { NULL },
> >  };
> >
> > +#define HWACCEL_QSV(codec) \
> > +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,  ff_
> > ## codec ##
> > _qsv_hwaccel)
> > +
> > +const AVHWAccel ff_h264_qsv_hwaccel = {
> > +.name = "h264_qsv",
> > +.type = AVMEDIA_TYPE_VIDEO,
> > +.id   = AV_CODEC_ID_H264,
> > +.pix_fmt  = AV_PIX_FMT_QSV
> > +};
> > +
> >  AVCodec ff_h264_qsv_encoder = {
> >  .name   = "h264_qsv",
> >  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4
> > AVC /
> > MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5 +197,9
> > @@ AVCodec ff_h264_qsv_encoder = {
> >  .priv_class = &class,
> >  .defaults   = qsv_enc_defaults,
> >  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
> > +.hw_configs= (const AVCodecHWConfigInternal*[]) {
> > +   HWACCEL_QSV(h264),
> > +NULL
> > +},
> >  .wrapper_name   = "qsv",
> >  };
> > --
> > 1.8.3.1
>
> LGTM. Verified this fix # ticket 7030.

The fact that we removed the fake HWAccels for a reason still stands.
Please talk to Mark Thompson before commiting anything like this.

- Hendrik
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Carl Eugen Hoyos
2018-07-03 10:55 GMT+02:00, Li, Zhong :
>> -Original Message-
>> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
>> Of Yuri Palich
>> Sent: Friday, March 2, 2018 7:55 PM
>> To: ffmpeg-devel 
>> Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
>>
>> From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17 00:00:00
>> 2001
>> From: palich2000 
>> Date: Fri, 2 Mar 2018 11:48:22 +
>> Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
>>
>> ---
>>  libavcodec/qsvenc_h264.c | 15 +++
>>  1 file changed, 15 insertions(+)
>>
>> diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c index
>> 09e4c0e..5f60675 100644
>> --- a/libavcodec/qsvenc_h264.c
>> +++ b/libavcodec/qsvenc_h264.c
>> @@ -34,6 +34,7 @@
>>  #include "qsv.h"
>>  #include "qsv_internal.h"
>>  #include "qsvenc.h"
>> +#include "hwaccel.h"
>>
>>  typedef struct QSVH264EncContext {
>>  AVClass *class;
>> @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[] = {
>>  { NULL },
>>  };
>>
>> +#define HWACCEL_QSV(codec) \
>> +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,  ff_
>> ## codec ##
>> _qsv_hwaccel)
>> +
>> +const AVHWAccel ff_h264_qsv_hwaccel = {
>> +.name = "h264_qsv",
>> +.type = AVMEDIA_TYPE_VIDEO,
>> +.id   = AV_CODEC_ID_H264,
>> +.pix_fmt  = AV_PIX_FMT_QSV
>> +};
>> +
>>  AVCodec ff_h264_qsv_encoder = {
>>  .name   = "h264_qsv",
>>  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4
>> AVC /
>> MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5 +197,9
>> @@ AVCodec ff_h264_qsv_encoder = {
>>  .priv_class = &class,
>>  .defaults   = qsv_enc_defaults,
>>  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
>> +.hw_configs= (const AVCodecHWConfigInternal*[]) {
>> +   HWACCEL_QSV(h264),
>> +NULL
>> +},
>>  .wrapper_name   = "qsv",
>>  };
>> --
>> 1.8.3.1
>
> LGTM. Verified this fix # ticket 7030.

You could improve the commit message.

Carl Eugen
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-07-03 Thread Li, Zhong
> -Original Message-
> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
> Of Yuri Palich
> Sent: Friday, March 2, 2018 7:55 PM
> To: ffmpeg-devel 
> Subject: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> 
> From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17 00:00:00
> 2001
> From: palich2000 
> Date: Fri, 2 Mar 2018 11:48:22 +
> Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
> 
> ---
>  libavcodec/qsvenc_h264.c | 15 +++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c index
> 09e4c0e..5f60675 100644
> --- a/libavcodec/qsvenc_h264.c
> +++ b/libavcodec/qsvenc_h264.c
> @@ -34,6 +34,7 @@
>  #include "qsv.h"
>  #include "qsv_internal.h"
>  #include "qsvenc.h"
> +#include "hwaccel.h"
> 
>  typedef struct QSVH264EncContext {
>  AVClass *class;
> @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[] = {
>  { NULL },
>  };
> 
> +#define HWACCEL_QSV(codec) \
> +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,  ff_
> ## codec ##
> _qsv_hwaccel)
> +
> +const AVHWAccel ff_h264_qsv_hwaccel = {
> +.name = "h264_qsv",
> +.type = AVMEDIA_TYPE_VIDEO,
> +.id   = AV_CODEC_ID_H264,
> +.pix_fmt  = AV_PIX_FMT_QSV
> +};
> +
>  AVCodec ff_h264_qsv_encoder = {
>  .name   = "h264_qsv",
>  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4
> AVC /
> MPEG-4 part 10 (Intel Quick Sync Video acceleration)"), @@ -186,5 +197,9
> @@ AVCodec ff_h264_qsv_encoder = {
>  .priv_class = &class,
>  .defaults   = qsv_enc_defaults,
>  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
> +.hw_configs= (const AVCodecHWConfigInternal*[]) {
> +   HWACCEL_QSV(h264),
> +NULL
> +},
>  .wrapper_name   = "qsv",
>  };
> --
> 1.8.3.1

LGTM. Verified this fix # ticket 7030.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-03-02 Thread Yuri Palich
How can I get qsv to work without them?
​
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-03-02 Thread Hendrik Leppkes
On Fri, Mar 2, 2018 at 12:54 PM, Yuri Palich  wrote:
> From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17 00:00:00 2001
> From: palich2000 
> Date: Fri, 2 Mar 2018 11:48:22 +
> Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix
>
> ---
>  libavcodec/qsvenc_h264.c | 15 +++
>  1 file changed, 15 insertions(+)
>
> diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c
> index 09e4c0e..5f60675 100644
> --- a/libavcodec/qsvenc_h264.c
> +++ b/libavcodec/qsvenc_h264.c
> @@ -34,6 +34,7 @@
>  #include "qsv.h"
>  #include "qsv_internal.h"
>  #include "qsvenc.h"
> +#include "hwaccel.h"
>
>  typedef struct QSVH264EncContext {
>  AVClass *class;
> @@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[] = {
>  { NULL },
>  };
>
> +#define HWACCEL_QSV(codec) \
> +HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,  ff_ ## codec ##
> _qsv_hwaccel)
> +
> +const AVHWAccel ff_h264_qsv_hwaccel = {
> +.name = "h264_qsv",
> +.type = AVMEDIA_TYPE_VIDEO,
> +.id   = AV_CODEC_ID_H264,
> +.pix_fmt  = AV_PIX_FMT_QSV
> +};
> +

Didn't we intentionally get rid of those fake hwaccels some time ago?

>  AVCodec ff_h264_qsv_encoder = {
>  .name   = "h264_qsv",
>  .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC /
> MPEG-4 part 10 (Intel Quick Sync Video acceleration)"),
> @@ -186,5 +197,9 @@ AVCodec ff_h264_qsv_encoder = {
>  .priv_class = &class,
>  .defaults   = qsv_enc_defaults,
>  .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
> +.hw_configs= (const AVCodecHWConfigInternal*[]) {
> +   HWACCEL_QSV(h264),
> +NULL
> +},
>  .wrapper_name   = "qsv",
>  };
> --
> 1.8.3.1
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

2018-03-02 Thread Yuri Palich
From 7056d06412214bd601afb4b423d20ab6100e6ac5 Mon Sep 17 00:00:00 2001
From: palich2000 
Date: Fri, 2 Mar 2018 11:48:22 +
Subject: [PATCH] https://trac.ffmpeg.org/ticket/7030 fix

---
 libavcodec/qsvenc_h264.c | 15 +++
 1 file changed, 15 insertions(+)

diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c
index 09e4c0e..5f60675 100644
--- a/libavcodec/qsvenc_h264.c
+++ b/libavcodec/qsvenc_h264.c
@@ -34,6 +34,7 @@
 #include "qsv.h"
 #include "qsv_internal.h"
 #include "qsvenc.h"
+#include "hwaccel.h"

 typedef struct QSVH264EncContext {
 AVClass *class;
@@ -169,6 +170,16 @@ static const AVCodecDefault qsv_enc_defaults[] = {
 { NULL },
 };

+#define HWACCEL_QSV(codec) \
+HW_CONFIG_HWACCEL(1, 1, 1, QSV,  QSV,  ff_ ## codec ##
_qsv_hwaccel)
+
+const AVHWAccel ff_h264_qsv_hwaccel = {
+.name = "h264_qsv",
+.type = AVMEDIA_TYPE_VIDEO,
+.id   = AV_CODEC_ID_H264,
+.pix_fmt  = AV_PIX_FMT_QSV
+};
+
 AVCodec ff_h264_qsv_encoder = {
 .name   = "h264_qsv",
 .long_name  = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC /
MPEG-4 part 10 (Intel Quick Sync Video acceleration)"),
@@ -186,5 +197,9 @@ AVCodec ff_h264_qsv_encoder = {
 .priv_class = &class,
 .defaults   = qsv_enc_defaults,
 .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
+.hw_configs= (const AVCodecHWConfigInternal*[]) {
+   HWACCEL_QSV(h264),
+NULL
+},
 .wrapper_name   = "qsv",
 };
-- 
1.8.3.1
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel