小鱼开发
6175630794
style: 脚本生成页去掉分类标题,缩小按钮高度
2026-06-01 14:15:44 +08:00
小鱼开发
534ffd08b2
refactor: 脚本提示词体系重构 — 子类从目录改为单个文件
...
- 删除 system/bk/ 下所有旧提示词,平铺替换为 23 个新文件
- 文件名格式统一为: 文案——描述.txt
- 后端: _meta.json 扁平化,loader.py 新增 list_prompt_files() + load_prompt_file()
- 后端: API 从 subcategory 改为 filename,按指定文件读取
- 后端: categories 接口返回文件列表(label/desc/filename)供前端展示
- 前端: ScriptCreation 分类选择改为卡片网格,展示文案+描述
- 前端: 清理 subcategoryCode,统一改为 filename
- 前端: 字幕字号调整为 64/96/80px
2026-06-01 14:05:43 +08:00
小鱼开发
aa818b75a8
refactor: 脚本提示词体系重构 — 子类从目录改为单个文件
...
- 删除 system/bk/ 下所有旧提示词,平铺替换为 23 个新文件
- 文件名格式统一为: 文案——描述.txt
- 后端: _meta.json 扁平化,loader.py 新增 list_prompt_files() + load_prompt_file()
- 后端: API 从 subcategory 改为 filename,按指定文件读取
- 后端: categories 接口返回文件列表(label/desc/filename)供前端展示
- 前端: ScriptCreation 分类选择改为卡片网格,展示文案+描述
- 前端: 清理 subcategoryCode,统一改为 filename
- 前端: 字幕字号调整为 64/96/80px
2026-06-01 13:44:59 +08:00
小鱼开发
4c2d8404b4
refactor: 移除无效的动态导入,改为静态导入
...
Vite 警告 @tauri-apps/api/core 和 @tauri-apps/plugin-fs 被动态导入但已被静态导入,无法拆分 chunk。改为静态导入消除警告。
2026-05-29 10:22:45 +08:00
小鱼开发
58c1bbc199
fix: amix 加 normalize=0 防止原音频被自动减半音量
2026-05-29 09:56:53 +08:00
小鱼开发
c5f1098831
bump version to 1.6.7
v1.6.7
2026-05-27 18:39:18 +08:00
小鱼开发
11a85bfee7
fix: 修复 BGM 本地上传、封面形象样式、ESLint 清零、access log 关闭
...
- BGM 本地上传改用 Tauri open 对话框,修复 path 为空导致混音失效
- Rust 端放宽 BGM 路径验证(系统文件选择器选取的文件),加路径遍历防护
- BGM 混音失败时 toast 提示,不再静默忽略
- 我的作品页增加导出功能
- 封面形象卡片样式统一为 works-card 体系
- 关闭 uvicorn access log(Dockerfile + 3 个 compose)
- ESLint 全绿:关掉 prop-types/incompatible-library,修复 curly/exhaustive-deps/any/unused-vars
- .gitignore 排除 *.exe 构建产物
2026-05-27 18:37:33 +08:00
小鱼开发
603650cfb3
bump version to 1.6.6
v1.6.6
2026-05-27 15:38:50 +08:00
小鱼开发
15dc5df12c
chore(log): 日志只记录错误信息
...
- uvicorn access_log 设为 False,关闭 HTTP 访问日志
- .env.example 中 LOG_LEVEL 默认改为 ERROR
2026-05-27 15:35:51 +08:00
小鱼开发
4659f4536e
fix(ui): BGM 清除按钮文案改为取消
2026-05-27 15:29:23 +08:00
小鱼开发
784c4faa55
fix(ui): 视频合成页 BGM 选择后支持清除
2026-05-27 15:16:11 +08:00
小鱼开发
5b804e9d79
fix(ui): 统一声音复刻时长提示为 10秒~5分钟
2026-05-27 14:24:06 +08:00
小鱼开发
00f0088c2a
fix(prompts): 将'评论区扣/抠'改为'评论区回复',避免台词中出现'扣'字
2026-05-27 14:20:27 +08:00
小鱼开发
4a295e6e0d
fix(vidu): 回调签名头大小写不敏感匹配
...
dict(request.headers) 的 key 为小写(x-hmac-signature),代码用大写(X-HMAC-SIGNATURE)获取导致全为None。建立小写查找表统一处理。
2026-05-27 09:40:45 +08:00
小鱼开发
63e0ffeaea
fix(vidu): 回调签名使用 APP_BASE_URL 构建 URL,添加调试日志
...
- vidu_callback 改用 APP_BASE_URL 构建 callback_url,避免 Nginx 代理导致 scheme 不一致
- verify_signature 增加详细调试日志,打印 signing_string 和签名对比
2026-05-27 09:34:59 +08:00
小鱼开发
2797583d81
fix(points): 登录后调用 fetchBalance 加载积分余额,修复显示为0的问题
2026-05-27 09:24:39 +08:00
小鱼开发
10fc4092b2
bump version to 1.6.5
v1.6.5
2026-05-26 23:37:05 +08:00
小鱼开发
cc2e3f639c
fix(tauri): 修复 updater 重启失败和 IPC CSP 报错
...
- capabilities: 添加 process:allow-restart,解决更新后无法自动重启
- CSP: connect-src 增加 ipc://localhost/*,匹配带路径的 IPC 请求
2026-05-26 23:35:16 +08:00
小鱼开发
6c64189c70
fix(update): check_update 兼容同平台多包,优先返回 updater 包
...
- scalar_one_or_none() 在 release_id+platform+architecture 多行时抛异常
- 改为查询全部后取第一个,按 signature desc 排序优先 updater 包
2026-05-26 23:28:09 +08:00
小鱼开发
d84a4e9d65
fix(db): 放宽 release_package 唯一约束,支持同平台多文件(dmg + app.tar.gz)
...
- 唯一约束从 (release_id, platform, architecture) 改为包含 filename
- 新增 Alembic 迁移 7d855b38fe83
2026-05-26 22:57:20 +08:00
小鱼开发
7f522f5b83
feat(release): 发版脚本支持扫描 dmg 安装包
...
- 新增 .dmg 文件扫描逻辑,给 macOS 新用户首次安装使用
- dmg 无签名文件,signature 设为空字符串
2026-05-26 22:52:10 +08:00
小鱼开发
d2220ac176
fix(bump-version): 脚本自动提交后再打 tag,避免 tag 落在旧 commit 上
2026-05-26 20:00:03 +08:00
小鱼开发
790cf3a7fb
bump version to 1.6.4
v1.6.4
2026-05-26 19:54:02 +08:00
小鱼开发
943358bafc
bump version to 1.6.3
2026-05-26 19:21:23 +08:00
小鱼开发
9ca07ff571
fix(cover): 封面主副标题位置固定化
...
- 主标题固定 top=200,副标题固定 top=380,不再根据封面形象高度和文字行数动态计算
- 清理未使用的 avatarTop、hasAvatar、mainTitleHeight、subtitleHeight 变量
- 补全 renderCover useCallback 依赖数组(增加 loadAvatarImage)
v1.6.3
2026-05-26 18:54:42 +08:00
小鱼开发
9df8572512
Merge branch 'master' of http://git2.haodian.cn/xiaoyu/meijiaka-zy
2026-05-26 18:31:17 +08:00
meijiaka-dev
7b53abf37b
fix(video-preview): 统一本地/网络视频预览,修复首次加载黑屏与 loading 状态
...
- Rust: transcode_for_preview 支持网络视频下载缓存,统一走转码流程
- Rust: rename 后 sync_all 文件数据+目录项,避免 WebKit 首次读取不完整
- Rust: 视频缓存上限从 500MB 调至 2GB
- 前端: handlePreview 统一处理本地/网络视频,不再直接设网络 URL
- 前端: 修复 previewVideoUrl 为 null 时 loading 动画不显示的问题
- 前端: 去掉 video preload=metadata,加 ref + onCanPlay 兜底播放
- 工程: .gitignore 忽略 sidecar binaries,修复 engine.rs unused warning
2026-05-26 18:29:34 +08:00
小鱼开发
cf3ea8d619
fix(cover): 修复 Windows 上封面主副标题位置跑到底部的问题
...
- 当封面形象加载失败或未选择时,回退到模板固定位置,避免文字堆在画布底部
- 增加封面形象加载失败的 console.warn 日志
- 修正 FONT_FAMILY 字体名 DouyinSans -> DouyinSansBold
2026-05-26 17:59:57 +08:00
小鱼开发
af734eb6ca
fix: 应用启动时预加载积分规则,修复按钮显示默认值问题
2026-05-26 17:35:32 +08:00
小鱼开发
2b35a9ced0
feat: 封面人物形象 + 素材匹配优化 + Windows 预览修复
...
- 新增 cover_avatar 积分类型和弹窗支持
- Modal 组件支持 maxHeight 属性
- 素材匹配增加 loading 状态(匹配中...)
- 修复 Windows 视频预览:统一 handlePreview、preload=metadata、修复 Rust UNC 路径
- 修复进度条倒退问题
- 更新运营脚本
- 新增 Windows 11 开发环境搭建文档
2026-05-26 15:40:21 +08:00
小鱼开发
993d6e0c78
chore(release): bump version to 1.6.2
2026-05-26 10:25:17 +08:00
小鱼开发
e35b0f0bbb
fix(rust): Windows 路径验证失败(canonicalize UNC 前缀不匹配)
...
在 Windows 上 std::fs::canonicalize() 会返回 \?\ 前缀的 UNC 路径
(如 \?\C:\Users\...),但 get_app_data_dir() 返回普通路径格式
(C:\Users\...)。PathBuf::starts_with() 做组件级比较时两者前缀
类型不同导致返回 false,所有本地文件操作都被错误拒绝。
修复:对允许目录也做 canonicalize(),使两边格式一致后再比较。
影响文件:
- ffmpeg_cmd.rs: validate_safe_path()
- commands/product.rs: delete_local_product, rename_local_product,
export_product
2026-05-26 10:24:37 +08:00
小鱼开发
8cddaec70e
chore(release): 优化发布脚本并统一表名
...
- publish_release.py: 自动加载.env,macOS Universal拆分为x86_64+aarch64,七牛云目录按平台区分
- 重命名表 mjk_release_packages -> mjk_app_release_packages,同步约束名
- 更新相关文档
2026-05-26 10:13:52 +08:00
小鱼开发
915339d42a
release: bump version to 1.6.1
...
Frontend fixes:
- fix(VideoCompose): clear step dirty flag after compose success
- refactor(MyWorks): play product videos directly without transcode cache
- feat(CoverDesign): swap main/subtitle positions in cover preview
- fix(SubtitleBurning): charge points after burn success instead of before
- fix(VoiceSynthesis/VideoGeneration/SubtitleBurning/CoverDesign): mark downstream steps dirty on re-generation
- fix(MyWorks): bind video event listeners after async videoUrl load
- fix(CoverDesign): revoke Blob URLs on upload/unmount to prevent memory leak
2026-05-25 22:35:35 +08:00
小鱼开发
33265df299
style(settings): 关于区块版本号垂直布局排版
2026-05-25 01:41:56 +08:00
小鱼开发
4af42c157e
fix: BGM 混音链路修复——URL 先下载到本地缓存再混音
...
- fix: 删除 BGM 预览硬编码开发者路径,改为使用 url 字段
- fix: BGM 混音前检测是否为 URL,先下载到 bgm_cache 本地缓存
- fix: Rust mix_bgm_to_video 恢复 validate_safe_path 校验,拒绝 URL
- feat: 新增 bgm_cache 目录及自动清理策略(30天/200MB上限)
- feat: Settings 缓存清理扩展为媒体缓存(video + BGM 统一清理)
- chore: BGM url 字段改为后端必填,同步 schema/model/seed/迁移
2026-05-25 00:54:17 +08:00
小鱼开发
818fe7cc03
release: v1.6.0
...
- fix: finalVideoDuration 遗漏导致切换项目时残留旧值且无法保存
- feat: BGM 云端化(129 首上传七牛云,数据库保存 URL)
- feat: BGM 弹窗改为分类+列表+试听交互
- feat: 步骤页面 UI 统一(按钮规范、预览状态、去掉图标)
- feat: CoverDesign 视觉重构(绿色边框、角标、hover 遮罩)
- fix: 消除积分预检硬编码(CoverDesign/SubtitleBurning/VideoCompose)
- fix: success 提示积分去掉硬编码
- fix: BGM/封面形象持久化到 meta.json
v1.6.0
2026-05-24 22:16:46 +08:00
小鱼开发
c6e3e6dd25
fix: success 提示中的积分消耗去掉硬编码
...
CoverDesign: 2 → coverDesignPoints
SubtitleBurning: 2 → subtitleBurnPoints
VideoCompose: 5 → composePoints
ScriptCreation: 5 → scriptPoints
2026-05-24 21:42:08 +08:00
小鱼开发
daba6dcc14
fix: 消除积分预检硬编码,统一使用 getRule() 动态读取
...
CoverDesign: 预检 COVER_POINTS=2 → getRule('cover_design')?.points || 2
SubtitleBurning: 预检 SUBTITLE_POINTS=2 → getRule('subtitle_burn')?.points || 2
VideoCompose: 预检 COMPOSE_POINTS=5 → getRule('compose')?.points || 5
确保预检口径与扣费口径一致,避免后端规则调整后出现余额误判
2026-05-24 21:29:04 +08:00
小鱼开发
6a2302401f
fix: 修复 BGM 弹窗和封面持久化的多个 bug
...
VideoCompose:
- 修复 Audio 对象泄漏:弹窗关闭/组件卸载时清理 onended 回调
- 修复 bgmMusicId=0 被误判为未选择(falsy 判断改为 !== undefined/null)
- 修复 Slider 进度条不随值变化:动态传入 --slider-percent CSS 变量
- 修复试听无 url 时无法播放:回退到 filePath 拼接本地路径
- 去掉 webkitRelativePath 错误回退
- 弹窗默认分类:打开时根据当前选中 BGM 的 category 自动切换标签
- 本地上传 BGM 弹窗内显示当前选中提示条(含清除按钮)
CoverDesign:
- 自动保存去掉 trim(),避免输入时吃掉末尾空格
- 缩小自动保存依赖范围,只监听 backgroundImage/avatarImage
VideoGeneration.css:
- 本地上传提示条样式
2026-05-24 20:43:54 +08:00
小鱼开发
b76252b0ac
fix: BGM/封面形象持久化 + 滑块颜色
...
- localStorage.saveMeta 的 orderedMeta 补充 bgmMusicId/bgMusicTitle/bgmMusicPath/bgmVolume,修复 BGM 数据无法写入 meta.json
- CoverDesign 新增 useEffect:背景图/形象变化时自动防抖保存 coverConfig
- VideoCompose BGM 音量滑块添加 slider-input 类,使用主题绿色替代浏览器默认蓝色
2026-05-24 20:34:52 +08:00
小鱼开发
bb84cb5604
style: BGM 分类标签圆角改为中等(去掉椭圆形)
2026-05-24 20:24:28 +08:00
小鱼开发
184ab8bce3
feat: BGM 弹窗改为分类+列表+试听交互
...
- 顶部分类标签栏(全部/知识科普/案例展示/促销活动/家居生活/智能家居)
- 列表布局:每项含试听按钮、标题、时长、选中标记
- 试听功能:点击圆形按钮播放/暂停,播放中按钮呼吸动画
- 选中 BGM 后关闭弹窗,本地上传入口移至底部
- 弹窗关闭时自动停止音频播放
2026-05-24 20:22:57 +08:00
小鱼开发
2c9e0f0015
feat: add BGM seed data and seed script for deployment
...
- bgm_seed_data.json: 129 首 BGM 元数据(含七牛云 URL)
- seed_bgm.py: 部署环境初始化脚本,容器内直接运行
2026-05-24 20:09:50 +08:00
小鱼开发
06ec0ee202
feat: BGM 云端化 + 步骤页面 UI 统一重构
...
后端:
- 新增 BGM 数据库模型、Schema、CRUD、API 路由
- BgmMusic 增加 url 字段存储七牛云地址
- Alembic 迁移: 创建 BGM 表 + 添加 url 字段
- import_bgm.py 导入时自动上传七牛云 (meijiaka-zy/bgm/...)
前端:
- VideoCompose BGM 选择改为卡片弹窗 (系统BGM + 本地上传)
- 去掉 BGM 硬编码本地路径, 直接使用云端 URL
- CoverDesign 视觉重构: 绿色边框卡片、角标、hover 遮罩
- CoverDesign 去掉预选背景, 默认空白需手动选择
- 所有步骤按钮规范统一: 左=重新生成(主色), 右=导出/预览(次色)
- 预览按钮状态统一: 文字变为'视频预览中...', 保持 btn-secondary
- 去掉所有步骤按钮的 svg/emoji 图标
Rust:
- mix_bgm_to_video 支持临时文件保护 (输入输出同路径时自动中转)
- FFmpeg BGM 混合使用 aloop 循环 + amix 滤镜
2026-05-24 15:39:54 +08:00
小鱼开发
616649c872
feat(cover-avatar): 前置余额检查 + 积分不足弹窗(与声音复刻一致)
2026-05-23 11:13:17 +08:00
小鱼开发
fae2a77734
feat(ui): 封面形象余额不足时不弹 toast;声音复刻弹窗增加积分消耗提示
2026-05-23 11:08:47 +08:00
小鱼开发
53371aabcd
feat(image): 封面形象抠图增加积分消耗(每次 10 积分)
...
- config/points-config.yaml: 添加 cover_avatar: 10 固定积分
- point_service.py: _CATEGORY_MAP 添加 cover_avatar → 封面形象
- image.py: remove_background 接口前置余额检查 + 后置扣费
- CoverAvatarLibrary.tsx: 上传弹窗显示积分提示,余额不足友好提示
2026-05-23 10:59:47 +08:00
小鱼开发
9589d7c78a
fix(cover-avatar): 修复卡片操作按钮误触 + 列表滚动
2026-05-23 10:19:01 +08:00
小鱼开发
bf51d8b423
style(cover-avatar): 列表改为 avatar-card 卡片样式(hover 操作按钮 + 图片缩放 + 4 列网格)
2026-05-23 10:16:28 +08:00