close the mercury fast-path eligibility gaps. each is a MFP_BAIL in mercury_fastpath.cpp. done: stream input, resolution reduction, layer limits, palette/ICC/cdef, windowed decode, PLT and TLM planner shortcuts.
remaining bails:
COC present: mercury derives one packet schedule from one coding style. needs per-component coding style in the plan, or classic keeps COC streams.
subsampled component (dx or dy != 1): mercury output rows assume full-resolution components.
precinct smaller than code-block: rejected at plan stage, effective block-size clamping (B.7 xcb' = min(xcb, PPx)) not wired.
POC present: classic keeps these.
component filter (compsToDecompress_), asynchronous decode, transcode packet-length recording: API modes, classic keeps these.
part 2 transforms (DFS, ATK): bail to classic, and classic only decodes them whole tile at full resolution.
close the mercury fast-path eligibility gaps. each is a MFP_BAIL in mercury_fastpath.cpp. done: stream input, resolution reduction, layer limits, palette/ICC/cdef, windowed decode, PLT and TLM planner shortcuts.
remaining bails:
COC present: mercury derives one packet schedule from one coding style. needs per-component coding style in the plan, or classic keeps COC streams.
subsampled component (dx or dy != 1): mercury output rows assume full-resolution components.
precinct smaller than code-block: rejected at plan stage, effective block-size clamping (B.7 xcb' = min(xcb, PPx)) not wired.
POC present: classic keeps these.
component filter (compsToDecompress_), asynchronous decode, transcode packet-length recording: API modes, classic keeps these.
part 2 transforms (DFS, ATK): bail to classic, and classic only decodes them whole tile at full resolution.