Skip to content

Fix run-to-run non-determinism in non-separable Wiener filter#5034

Merged
urvangjoshi merged 2 commits into
AOMediaCodec:mainfrom
xinzhao-apple:mr/avm-bugfix
Jun 4, 2026
Merged

Fix run-to-run non-determinism in non-separable Wiener filter#5034
urvangjoshi merged 2 commits into
AOMediaCodec:mainfrom
xinzhao-apple:mr/avm-bugfix

Conversation

@xinzhao-apple
Copy link
Copy Markdown
Contributor

@xinzhao-apple xinzhao-apple commented Jun 4, 2026

Fix encoder run-to-run non-determinism caused by uninitialized memory in the non-separable Wiener filter restoration search path (av2/encoder/pickrst.c).
Multiple runs of the same encoding with identical inputs produce different chroma (U/V) results while luma (Y) is always identical. Reproduced with 4:2:2 12-bit content (SolLevanteFace) at QP 135, cpu-used=0, threads=2, described in issue #1500 , and r2r issue still occurs for some inter frame occasionally before this fix.

@urvangjoshi
Copy link
Copy Markdown
Contributor

@jianle973 : pls review.

Copy link
Copy Markdown
Contributor

@jianle973 jianle973 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, Thanks!

@urvangjoshi urvangjoshi enabled auto-merge (squash) June 4, 2026 18:10
@urvangjoshi urvangjoshi merged commit 207ba1e into AOMediaCodec:main Jun 4, 2026
109 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants