RGBA8/BGRA8 转码下游复现与行 stride、透明 alpha 回归补充(Mirage EUI-20261013-001)
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 32/100
Direzione di ricerca
Read the existing image_stream unit tests and core/render/image_stream.cpp, then follow CONTRIBUTING.md for the four frontend/backend Release build and test combinations. Add full output comparisons for multirow frames, noncompact stride, alpha variants, and RGBA/BGRA, including ImageStream submit/consumeLatest. Done means the tests fail without the pointer advancement fix and pass on dev; the issue says PR #97 already contains that fix.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
下游反馈
Mirage 反馈编号:EUI-20261013-001,关联桌宠资源/播放器 M8-02/03。
Mirage 当前锁定的 a7e625fecc1db1c1acb4850a14fb785e20600041 上,公开 ImageFrame::convertToRgba8() 的 RGBA8/BGRA8 路径只反复写每行首像素。最新 dev 的 PR #97(修复提交 f8caff1)已修复目标指针推进;本 issue 记录下游复现、尚需补充的回归边界和版本迁移,避免再次提交重复的根因修复。
最小复现
构造宽 2、高 1、stride 8 的 RGBA8 ImageFrame,输入:
[255,0,0,255, 0,255,0,255]
调用 convertToRgba8(output):预期返回 true 且逐字节保持输入;旧 pin 实际返回 true,但输出为:
[0,255,0,255, 0,0,0,0]
Linux x86_64 / GCC 13.3.0,通过公开头和 core/render/image_stream.cpp 可独立复现,无须窗口、WebP 或模型。
影响与根因
内层逐列循环没有推进目标指针,最后一列覆盖行首,其余列为零。对右边缘透明的角色素材,整幅角色消失;文字仍然可见。该问题属于通用 RGBA/BGRA CPU fallback,不能通过只检查转换返回值或单像素测试发现。
处理计划与验收
- 复用已合入
dev的 PR #97 根因修复;不重复改写该行。 - 在现有 image_stream 单测补充多行、非紧凑 stride、透明/半透明/不透明 alpha 和 RGBA/BGRA 完整输出比较;通过 ImageStream 的 submit/consumeLatest 再验证一次。
- 新增测试在删除目标指针推进的故障版本上必须失败,在当前 dev 上通过。
- 按 CONTRIBUTING.md 在本机四种前后端组合完成 Release 配置、构建和测试,结果写入 PR;PR 目标为
dev。 - Mirage 升级受控 pin,并复跑真实角色像素、透明背景、帧推进和关闭;移除应用侧临时 GPU 转码绕行。
不增加依赖、资源、生成文件或新公共 API;测试预计仅修改现有单测文件,远低于 500 行/100 KiB 预审门槛。
- Lingua principale
- C++
- Stelle
- 2k
- Fork
- 177
- Merge medio
- 19h 58m
- PR unite (30g)
- 9
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di sudoevolve/EUI-NEO
-
SDL2 Windows build fails: move/resize fallback helper is inside the X11 guardForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
sudoevolve/EUI-NEO#110 ·
I maintainer di solito rispondono entro 2 giorni
-
在linux上使用触摸屏没法直接滑动翻页Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
sudoevolve/EUI-NEO#116 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
perf(text): avoid repeated glyph outline loads during measurementForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
sudoevolve/EUI-NEO#113 ·
I maintainer di solito rispondono entro 2 giorni
-
Windows transparent margins composite as black: bundled GLFW redirection alpha is uninitializedForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 22/100
sudoevolve/EUI-NEO#109 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 18/100
sudoevolve/EUI-NEO#89 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di sudoevolve/EUI-NEO
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
metasequoiaime/msime#9113 ·
I maintainer di solito rispondono entro 1 giorno
-
Locked plugin flip-flops position on every refresh after being disabledForse già presa @Illustar0 l’ha presa oggi. Apertaissue report
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
ModOrganizer2/modorganizer#2449 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement P5
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
open-astro/AlpacaBridge#1468 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno