Repository navigation
Releases
Releases · EstimateFaster/android-audioforge
AudioForge UI Preview · 截图
模拟器逐屏截图(浅/深色、200% 字号、空/错误态)。
AudioForge UI Preview (滚动更新)
纯 UI 预览构建,自动覆盖更新。仅用于设计验收,不含业务功能。
AudioForge v1.1.0
What's Changed
- docs: Phase 6 门禁 + 发布后清单(v1.0.0) by @EstimateFaster in #95
- feat(expressive): 主题层/共享组件基础 by @EstimateFaster in #96
- fix(ingest): 修复 Android 不支持的 UNICODE_CHARACTER_CLASS 正则标志 by @EstimateFaster in #97
- feat(forge): Lucide 图标 + 图标优先设计系统 by @EstimateFaster in #99
- feat(forge-v2): 青绿/石墨主题 + 图标优先设计系统 by @EstimateFaster in #100
- docs: Forge Framework v1 设计稿(已审阅通过) by @EstimateFaster in #101
- feat(ui): Forge v2 全量重做(青绿/石墨/Lucide/图标优先) by @EstimateFaster in #102
Full Changelog: v1.0.0...v1.1.0
AudioForge v1.0.0
What's Changed
- feat(p0-05): Room smoke — 探针 Entity/DAO/DB + 启动读写 + schema 导出 by @EstimateFaster in #1
- feat(p0-06): WorkManager 前台服务 smoke — ProbeWorker + 通知 + 调试卡 by @EstimateFaster in #2
- feat(p0-07): FFmpeg smoke — -version / 350ms 静音 / 两段拼接 by @EstimateFaster in #3
- docs(p0-11): Phase 0 真机/模拟器 smoke 清单 + 截图/设备信息证据 by @EstimateFaster in #4
- docs(p0-12): Phase 0 门禁通过 by @EstimateFaster in #5
- feat(p1-01): 模型与枚举 — Enums + RoleId 契约 by @EstimateFaster in #6
- feat(p1-02): 提示词与音色池加载 + 锁定测试 by @EstimateFaster in #7
- feat(p1-03): TextDecoder — BOM/UTF-8/ICU/GB18030/Big5 + CJK 占比 by @EstimateFaster in #8
- feat(p1-04): ChapterSplitter — 逐行对照 Python 切章 by @EstimateFaster in #9
- feat(p1-05): ScriptSanitizer — 逐函数移植上游清洗逻辑 by @EstimateFaster in #10
- feat(p1-06): CoverageChecker — difflib 兼容 diff + 设计内丢失过滤 by @EstimateFaster in #11
- feat(p1-07): CharacterRegistry — 复用/别名/alias_of/音色锁定 by @EstimateFaster in #12
- feat(p1-08): VoicePool 完整 — 查询/缓存/解析校验 by @EstimateFaster in #14
- feat(p1-10): TTS 缓存键 v2 — 稳定/敏感/浮点格式 by @EstimateFaster in #13
- feat(p1-11): PipelineError — 11 个错误码 + HTTP 映射 by @EstimateFaster in #15
- feat(p1-09): AppSettings 模型 + 校验 + effectiveVoiceParams by @EstimateFaster in #16
- test(p1-12): golden fixtures + 参数化测试脚手架 by @EstimateFaster in #17
- docs(p1): 记录 P1-08..P1-12 并行批次结果 by @EstimateFaster in #18
- test(p1-13): 20k 字符清洗/覆盖率性能基准 by @EstimateFaster in #19
- docs(p1-14): 补齐 Phase 1 进度与决策差异 by @EstimateFaster in #20
- docs(p1-15): Phase 1 门禁记录 by @EstimateFaster in #21
- feat(p2-05): ProjectFiles / AudioStorage — 相对路径与原子写 by @EstimateFaster in #22
- feat(p2-01): Room 实体/DAO/DB + DAO 测试 by @EstimateFaster in #23
- feat(p2-03): DataStore 设置仓库 by @EstimateFaster in #24
- feat(p2-10): ChapterStitcher + SilenceGenerator by @EstimateFaster in #25
- feat(p2-14): Media3 播放服务与控制器(最小) by @EstimateFaster in #26
- feat(p2-02): 仓库层 + AppContainer + ViewModel 工厂 by @EstimateFaster in #27
- feat(p2-04): SecureKeyStore — Keystore AES-GCM by @EstimateFaster in #28
- feat(p2-15): 导出/分享 — MediaStore + FileProvider by @EstimateFaster in #29
- feat(p2-06): ImportNovelUseCase — SAF 流导入/编码/切章/事务 by @EstimateFaster in #30
- feat(p2-13): CharacterRegistry 接入 Room by @EstimateFaster in #32
- test(p1-13): 放宽覆盖率基准 CI 预算到 1500ms by @EstimateFaster in #35
- feat(p2-07): LlmClient — 重试/截断/错误映射 by @EstimateFaster in #33
- feat(p2-08): FishTtsClient — 二进制 TTS/重试/错误映射 by @EstimateFaster in #31
- feat(p3-01): Job 状态机 + 单活跃 + stats/sweep by @EstimateFaster in #34
- feat(p2-16): ErrorMapper — 异常/HTTP → PipelineError by @EstimateFaster in #36
- feat(p2-11): AnalyzeChapterUseCase — 解析/角色/清洗/覆盖率重试 by @EstimateFaster in #37
- feat(p2-09): TtsSynthesizer + AudioPostProcessor by @EstimateFaster in #38
- feat(p2-19): 长章节守卫(>12000 字先确认) by @EstimateFaster in #40
- feat(p4-02): 设计系统组件(StatusPill/RoleAvatar/ProgressRing/Empty/Error/Section) by @EstimateFaster in #39
- test(p2): 修复 emulator smoke(ExoPlayer 主线程 / MediaStore MIME) by @EstimateFaster in #41
- feat(p2-12): RenderChapterUseCase — worker 池/缓存/停止/拼接 by @EstimateFaster in #43
- feat(p4-05): 项目详情页 — 进度/控制/告警/人物 by @EstimateFaster in #44
- feat(p4-01): 类型安全导航 + 自适应壳 + 深链 by @EstimateFaster in #42
- feat(p4-07): 章节列表 — 搜索/筛选/分页 by @EstimateFaster in #45
- feat(p4-09): 全局设置 — 分组/校验/Key 掩码 by @EstimateFaster in #46
- feat(p3-02): GenerationWorker + Executor — 批次/重试/停止 by @EstimateFaster in #47
- feat(p4-03): 项目库 — 搜索/卡片/导入/删除 by @EstimateFaster in #48
- docs: Phase 2/3/4 批量进度记录 by @EstimateFaster in #50
- feat(p4-10): Onboarding — 3 步引导/Key 测试/跳过 by @EstimateFaster in #49
- feat(p3-03): 生成通知 — 3 渠道/进度/停止 by @EstimateFaster in #52
- feat(p3-11): 存储清理 — 孤儿/保留期/统计 by @EstimateFaster in #54
- feat(p4-04): 导入 Sheet — SAF/编码/重名/进度 by @EstimateFaster in #51
- test(p2-17): 端到端 fake 流水线测试 by @EstimateFaster in #53
- feat(p3-04): BatchRunner/JobQueue — 单活跃/入队/停止 by @EstimateFaster in #55
- feat(p4-08): 任务页 — 当前/历史/进度/停止 by @EstimateFaster in #56
- feat(p3-06): 约束判定 — 网络/充电/电量/热 by @EstimateFaster in #57
- feat(p3-07): 5 小时看门狗 by @EstimateFaster in #58
- feat(p4-06): 批次 Sheet — 模式/范围/估算/无 Key by @EstimateFaster in #60
- feat(p3-05): Sweep/await/错误汇总 by @EstimateFaster in #59
- test(p3-09): GenerationWorker TestDriver 覆盖 by @EstimateFaster in #62
- feat(p3-08): 进程恢复 — sweep + 重排 by @EstimateFaster in #61
- feat(p5-01): 剧本页 — 角色/搜索/播放跟随 by @EstimateFaster in #63
- docs: Phase 2/3 门禁 + P2-18/P3-10 BLOCKED 记录 by @EstimateFaster in #64
- feat(p5-02): 片段编辑 Sheet — 校验/保存/重新生成 by @EstimateFaster in #65
- docs(p6-08): 安全复查 — 2 P1 / 13 P2 by @EstimateFaster in #66
- fix(sec): LlmConfig.toString 掩码 API Key by @EstimateFaster in #67
- docs(p6-01): R8/混淆评估 + 安全 keep by @EstimateFaster in #68
- feat(p5-03): 播放跟随/连播/跨章 by @EstimateFaster in #69
- feat(p5-04): 人物音色页 — 搜索/映射/音色 by @EstimateFaster in #70
- docs(p6-03): 依赖审计 — 版本 0 偏差 / P0 无校验 by @EstimateFaster in #71
- feat(p5-05): 音色选择 Sheet — 分组/搜索/锁定确认 by @EstimateFaster in #72
- feat(p5-06): 角色微调 — speed/volume/pitch by @EstimateFaster in #73
- perf(p6-04): 共享 OkHttp + Retry-After by @EstimateFaster in #74
- feat(p5-07): 播放器页 — 进度/倍速/睡眠/章节 by @EstimateFaster in #75
- docs(p6-05): 设备矩阵/后台清单(真机项 BLOCKED) by @EstimateFaster in #76
- feat(p5-08): 播放通知/后台/自动续播 by @EstimateFaster in #77
- docs(p6-02): ABI split/体积评估 by @EstimateFaster in #78
- docs(p6-06): 音频 A/B 评估(含 pitch/限幅缺陷) by @EstimateFaster in #79
- fix(audio): pitch 前重采样 + volume>1 限幅 by @EstimateFaster in #80
- feat(p5-09...