rigaya / QSVEnc

QSVによる高速エンコードの性能実験
http://rigaya34589.blog135.fc2.com/blog-category-10.html
Other
322 stars 31 forks source link

QSVEnc (A380) Can't Hardware Decode VP9/MPEG1/FFV1 #97

Closed DedZasshu closed 2 years ago

DedZasshu commented 2 years ago

Been trying to encode some VP9/MPEG1 videos, but for some reason QSVEnc (using ARC A380) can't seem to hardware decode them properly (even though the basic guide says it can decode both). NVEnc can hardware decode them properly.

MPEG1:

avqsv: codec mpeg1video(yuv420p) unable to decode by qsv.
failed to initialize file reader(s).
QSVEncC.exe finished with error!

Start:    2:08:49 PM
End:      2:08:49 PM
Duration: 00:00:00

VP9:

MFXDEC: DecodeFrameAsync error: failed to allocate memory..
Break in task MFXDEC: failed to allocate memory..
encoded 0 frames, 0.00 fps, 0.00 kbps, 0.00 MB
encode time 0:00:00, CPULoad: 0.0

FFV1:

avqsv: codec ffv1(bgr0) unable to decode by qsv.
failed to initialize file reader(s).
QSVEncC.exe finished with error!

Of course, one way to bypass the issue is to use --avsw instead of --avhw, but it shouldn't need to and the decoding/encoding process is slower using avsw.

rigaya commented 2 years ago

MPEG1/FFV1 is not supported by QSV hw decode, so it is expected.

VP9 hw decode is known to fail in GPU which supports oneVPL (API 2.0 or later) and don't support d3d9 mode (such as Arc A380). Using --avsw will be suitable in that case.

rigaya commented 2 years ago

I’ll close this issue as the topic has been answered.