What does HRESULT 0x88982F95 (WINCODEC_ERR_INVALIDPROGRESSIVELEVEL) mean?

 
Previous Next
WINCODEC_ERR_WIN32ERROR WINCODEC_ERR_INVALIDJPEGSCANINDEX

WINCODEC_ERR_INVALIDPROGRESSIVELEVEL

The requested progressive pass is outside the frame's available sequence

WINCODEC_ERR_INVALIDPROGRESSIVELEVEL is returned by IWICProgressiveLevelControl::SetCurrentLevel when the requested level cannot be selected for the current frame. Progressive levels are zero-based decoding passes, but their count and visual meaning are format-specific: Windows documents seven passes for interlaced PNG, four for interlaced GIF, while a progressive JPEG determines its scan sequence from the encoded image.

For progressive JPEG, the level count is not fixed in advance. Microsoft recommends calling SetCurrentLevel with increasing indices and treating this HRESULT as the normal end-of-sequence condition; querying information that requires the complete sequence can block until all data arrives. For formats with a known level count, validate the index against that codec's reported capability. This status alone does not indicate corrupt pixels or invalid output dimensions.

Progressive decode checks

  • Keep progressive state per frame; do not reuse an index range from another image or codec.
  • For progressive JPEG, iterate SetCurrentLevel until this HRESULT signals that no further level exists.
  • Call CopyPixels only after the requested level becomes available; SetCurrentLevel can wait for incoming data.
  • Handle E_NOTIMPL separately when the codec does not implement progressive-level control.

References


Looking for a different code? Search another status or error code.