fix(sdk+launcher): 图标不渲染真根因(agent-219) — meow_ui_img.c scale_buf cover 采样把乘写成除(÷缩放比→采到源图左上角透明区,全丢); 改乘+居中裁剪偏移修正; 宿主旧测试用纯色图掩盖了该bug。+ main_menu App退出/结构变化重绘时 fb_pan_buf0_force 无条件pan回buffer0(防App翻页留buffer1致菜单残帧)
meow_ui.a→3e0ee8f7 launcher→9d0efc2f hello→9609ea6e files→90f5cf07 ncm→be8be221(均已上卡); 真机截图证据 .tmp/meowbug/fix1.png+fix_b2_after.png
This commit is contained in:
1 parent
05a19a9ea3
commit
ab4da09e75
45 files changed
+1926
-147
No files matched your search
@@ -0,0 +1,19 @@
|
||||
/* mp_jpeg.h — 最小 baseline JPEG 编码器(自包含,零第三方依赖,无 libm)。
|
||||
*
|
||||
* 供 MeowPanel 实时画面端点(GET /api/screen.jpeg)把 fb0 的 RGB565 帧编码为 JPEG。
|
||||
* 仅实现顺序 DCT + 4:2:0 色度抽样 + 标准 Huffman 表(Annex K),8-bit,输出到内存。
|
||||
*/
|
||||
#ifndef MP_JPEG_H
|
||||
#define MP_JPEG_H
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
|
||||
/* 把 16bpp RGB565 帧(row-major,每行 w*2 字节)编码为内存中的 baseline JPEG。
|
||||
* quality ∈ [1,100](近似 libjpeg 语义:50 ≈ 标准质量;<50 更小更糊,>50 更大更好)。
|
||||
* 成功返回 0,*out 置为 malloc 的 JPEG 缓冲(调用方 free),*outlen 为其字节数。
|
||||
* 失败(参数非法 / 分配失败)返回 -1,*out=NULL。 */
|
||||
int mp_jpeg_encode_rgb565(const uint8_t *rgb565, int w, int h, int quality,
|
||||
uint8_t **out, size_t *outlen);
|
||||
|
||||
#endif
|
||||
Reference in new issue
Block a user