[FFmpeg-trac] #7839(avcodec:new): QVBR breaks mpeg2_qsv

FFmpeg trac at avcodec.org
Thu Apr 25 13:46:06 EEST 2019


#7839: QVBR breaks mpeg2_qsv
-------------------------------------+-------------------------------------
             Reporter:  atorp        |                    Owner:
                 Type:  defect       |                   Status:  new
             Priority:  important    |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  qsv          |               Blocked By:
  regression                         |
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by atorp):

 Hi lizhong1008,

 > Could you please apply the patch and report back?
 >
 > {{{
 > diff --git a/libavcodec/qsvenc.h b/libavcodec/qsvenc.h
 > index f2f4d38503..46db07728d 100644
 > --- a/libavcodec/qsvenc.h
 > +++ b/libavcodec/qsvenc.h
 > @@ -53,13 +53,13 @@
 >  #define QSV_HAVE_AVBR   QSV_VERSION_ATLEAST(1, 3)
 >  #define QSV_HAVE_ICQ    QSV_VERSION_ATLEAST(1, 8)
 >  #define QSV_HAVE_VCM    QSV_VERSION_ATLEAST(1, 8)
 > -#define QSV_HAVE_QVBR   QSV_VERSION_ATLEAST(1, 11)
 > +#define QSV_HAVE_QVBR   0
 >  #define QSV_HAVE_MF     0
 >  #else
 >  #define QSV_HAVE_AVBR   0
 >  #define QSV_HAVE_ICQ    QSV_VERSION_ATLEAST(1, 28)
 >  #define QSV_HAVE_VCM    0
 > -#define QSV_HAVE_QVBR   QSV_VERSION_ATLEAST(1, 28)
 > +#define QSV_HAVE_QVBR   0
 >  #define QSV_HAVE_MF     QSV_VERSION_ATLEAST(1, 25)
 >  #endif
 > }}}
 > I believe it won't break compile.

 It compiles, but it solves NOTHING!
 Identical error with the same input.
 As I pointed days ago the only solution **at time** is to disable QVBR and
 CO3.
 I don't know why, but this is the true.

 > > 2) Wich version of drivers are you using? I use Windows 10 with last
 official driver versions from the Windows Update and the API prints 1.11.
 Which drivers I need to install?
 >
 > I think what you need to update is MSDK, not driver. You can get the
 latest version via https://software.intel.com/en-us/media-sdk

 Why? The MSDK is to compile/develop. I'm using official latest Intel
 drivers. And this it's all required to execute the ffmpeg binary in a
 Windows 10 computer.

 Futhermore, think that Zeranoe is the facto standard for Windows versions,
 and I can't do nothing regarding the SDK used to generate these binaries.

 So, as a review:
 - It's a fact that the "mpeg2_qsv" is currently broken in Windows when
 running in a enviroment with the runtime API 1.11 because the
 initialization of the encoder fails.

 Then I suggest to check if it's possible to change the souce code in a
 sense that the initilization of the encoder is based on RUNTIME versions
 and not in COMPILE API versions.

 And in the meantime, if you can produce a patch that restores the
 "mpeg2_qsv" functionality, it will be welcome. Think that the "h264_qsv"
 works after the QVBR change, so it isn't affected by the change. Only the
 "mpeg2_qsv" is it.

 Regards.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/7839#comment:18>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list