rigaya / QSVEnc

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

--ctu MFXENCODE failed / progress counter #110

Closed SiV44 closed 1 year ago

SiV44 commented 1 year ago

Hello @rigaya,

I encountered an error with --ctu for values 16 and 64 for both --avsw / --avhw.

--avsw with --ctu 16 and --ctu 64:

MFXENCODE:   Failed to get required buffer size for MFXENCODE: invalid video parameters.
allocD3D11: QSVAllocator: Failed CheckRequestType: undeveloped feature.
INPUT: allocWorkSurfaces:   Failed to allocate frames: undeveloped feature..
AllocFrames:   Failed to allocate frames for INPUT-MFXENCODE: undeveloped feature..avout: failed to write header for output file: Invalid data found when processing input

QSVEncC.exe finished with error!

AVSW+CTU16_Debug.txt AVSW+CTU64_Debug.txt

--avhw with --ctu 16 and --ctu 64:

MFXENCODE: Failed to get required buffer size for MFXENCODE: invalid video parameters.
Failed to initialize encoder. : invalid video parameters.
avout: failed to write header for output file: Invalid data found when processing input

QSVEncC.exe finished with error!

AVHW+CTU16_Debug.txt AVHW+CTU64_Debug.txt

Is this a bug or a hardware limitation?

The secondary thing is the percentage progress counter, which counts from 0 to 93.6%, then immediately 100%. It doesn't break the encoding, but it processes the remaining 6.4% as 100%. This can be misleading, especially with longer encodings, as the remaining time counter shows 0:00:00 when it reaches 100%.

Thanks for your time Regards

rigaya commented 1 year ago

I've checked for --ctu 16 or --ctu 64, and it fails on Core i5 7500 (same generation iGPU of yours), but runs successful on Core i9 12900K or Arc A380, I think it can be said as hardware limitation.

percentage progress counter

QSVEnc shows 100% when reading bitstream in done, and stops refreshing progress. But there is a case that there are still frames to be decoded and encoded in the buffer and pipeline. In most cases this can be ignored as hw encoding tends to be fast enough, there is no plan to change this behavior.

SiV44 commented 1 year ago

So everything works as it should.

Thanks for your reply and your time. Regards