发现
移动应用设计创意
SpektraLab Android:手机胶片模拟引擎
把 SpektraLab 胶片与相纸模拟引擎移植到 Android 的 App,RAW 输入、物理建模成片输出。
- 浏览
- 3
- 访问
- 0
- 下载
- 0
- 版本
- v1.5.0e
- 平台
- Android
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。
详细介绍
项目简介
SpektraLab for Android 是把上游 SpektraLab 的胶片 / 相纸模拟引擎(Vulkan 后端)移植到 Android 的社区版本。打开一张 RAW,选好胶片与相纸,几秒内得到一张按物理过程建模的照片:81 个波长穿过染料层,颗粒、光晕与成色剂耦合按画幅的微米尺度计算,而不是查 LUT。引擎来自上游 assist/vulkan-engine-1.3.4(commit 445e314)。
主要功能
- RAW 解码基于原生 LibRaw(Panasonic GH5
.RW2实测) - 25 款胶片 + 9 款相纸,运行时从资源目录读取
- 预览约 1 秒(长边 2048);导出三档:长边 2048 / 3400 / 全尺寸,受限设备会标注上限
- 16.5 MP 全尺寸渲染约 8.2 s(SM8735 + Adreno 825 实测)
- 颗粒、光晕、眩光三条强度滑杆
- 物理画幅:135 / 半格 / XPan / 645 / 6×6 / 6×7 / 6×9 / 6×12 / 6×17
- 导入时自动配光(
spk_solve(both));导出使用原生 libjpeg 写盘,不经 Bitmap - 支持直接替换当前照片,无需重启
- 失败时返回
E-xxxx错误码,便于反馈
安装与使用
安装包可从官网 spektralab.workshop.skin 或其 /download 页面、以及 GitHub Releases 获取。
导入方式:点击「导入」进入相册;长按「导入」可选择「文件(RAW)」或「按原始尺寸导入」。选好胶片、相纸与画幅后先预览,再选择导出档位。
自行构建需要 Termux(aarch64)、Android SDK 36 / NDK 28 与上游引擎源码,仓库不含约 30 MB 的二进制资源。
注意事项
- 这是社区移植,不是上游官方版本。
- 像素数超过 16,776,960 时仍有风险(图像顶部约 200 行可能为未初始化显存),当前用导入时长边上限 4700 px 规避。
- 对比度蒙版(
contrast_mask)在上游 Vulkan 后端未移植,后端能力里显式拒绝。 - 片边、日期后背、半格拼接、几何裁剪、批量导出等引擎已实现,但 UI 尚未接入。
- 许可:代码 GPL-3.0-or-later;胶片与相纸配置 CC BY-SA 4.0。
本作品整理自 GitHub 开源项目 SAINTTaiYi/SpektraLab-Android,原作者 @SAINTTaiYi,许可证 GPL-3.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v1.5.0e当前版本
支持 50 MP 全尺寸与 77 MP 画布片边导出,胶片与冲印链改为按带驱动;修复导出花屏、片边条码偏移与越界崩溃、撤销与 EXIF 丢失;新增暗黑·黑橙主题、RGB 直方图与竖幅裁切。
评论