【soloaudio】用 SOLO 花两周业余时间制作的一个Windows平台的语音合成与管理播报软件

1.摘要:

用 TRAE SOLO IDE开发了一个Windows平台的可以在线和离线使用的Windows平台的语音合成与播报管理软件soloaudio,解决了安检员与乘用车司机沟通全靠人工喊,有时喇叭还会破音的痛点,实现了安检员只需鼠标点击对应播报卡片,远处安检通道的喇叭会播放对应播报内容,司机即可听到清晰的内容,知道了应该怎么做,提高了安检速度。

2.背景:

我是某港口的IT运维工程师,有一套车辆安检设备的软件在开发时没有做好语音播报功能,导致司机在通过安检设备时听不到语音指示,而原有的麦克风系统只能人工喊话,有时候会安检员喊了半天但司机那边听到的依旧是吵杂的不清晰的语音指示。希望用solo模式开发一个Windows平台的语音合成与播报管理软件,解决这种工作人员喊破喉咙而司机那边啥也听不清的问题。

3.实践过程:

其实花了两周时间大部分时间都是在探索方法和不断试错,做成品的话用时差不多也就3天时间。

我一开始是想用网页版的traesolo开发这个软件,但是每次它做好之后我要下载到本地测试修改调试,步骤有点繁琐,所以就放弃了。

后来我想起来其他大厂也有AIIDE,那我给同一套提示词给到4个不同的IDE,对比他们的产出结果,总结不同模型的想法和做出来的UI岂不是能快速敲定我想要的软件界面效果?说干就干,然后我给comate,traesolo模式,codebuddy,lingma分别配置了kimiK,Qwen,GLM,minimax4个不同的基座模型来对比不同模型间的在UI方向上的效果,我找mimo说:“我想让AIIDE给我构建一个兼容win10和win11的软件,软件UI/UX要符合win11原生应用审美的风格,给我一套完整开发这个软件流程的提示词模板”,mimo给了7个阶段的模板,准备阶段的模板是这样的:

【角色】你是一位 Windows 11 Fluent Design System 设计专家,
同时熟悉 Windows 10 的设计语言差异。

【上下文】
项目:{你的应用名}
技术栈:{阶段0确定的技术栈}
核心页面包括:{列出所有页面/视图}

【任务】
请为本项目输出一份完整的 UI 设计规范文档,包含以下内容:

1. 设计令牌(Design Tokens)

  • 颜色系统:亮色主题 + 暗色主题的完整色板(含 Primary、Secondary、
    Surface、Background、Error、Success 等语义色)
  • 排版系统:字体族(Segoe UI Variable)、字号阶梯(Body、Caption、
    Title、Display)、行高、字重
  • 间距系统:基于 4px 网格的间距令牌(xs/sm/md/lg/xl/2xl)
  • 圆角系统:控件级圆角(4px)、卡片级圆角(8px)、对话框级圆角(12px)
  • 阴影系统:层级对应的阴影值(Card、Flyout、Dialog)

2. Win10 降级策略

  • 哪些视觉效果在 Win10 上不可用?(如 Mica 材质、圆角窗口)
  • 每个不可用效果的替代方案是什么?
  • 如何检测当前系统版本并自动切换?

3. 常用控件规范

为以下控件分别给出设计规范:

  • 导航视图(NavigationView):侧栏宽度、选中态、图标+文字排列
  • 按钮(Primary / Secondary / Subtle / Destructive)
  • 输入框(TextBox、ComboBox、DatePicker)
  • 卡片(卡片间距、内边距、悬停效果)
  • 列表/网格(ItemsRepeater / DataGrid)
  • 对话框(ContentDialog)和浮出控件(Flyout)
  • 状态栏 / 进度指示器

4. 响应式布局断点

  • 定义至少 3 个断点(紧凑 / 标准 / 宽屏)
  • 每个断点下的布局策略

5. 动效规范

  • 页面转场动画(NavigationTransition)
  • 元素入场动画(EntranceThemeTransition)
  • 悬停/按下反馈动画的时长和缓动曲线
  • Win10 上如何简化动画以保持流畅

【输出格式】
以 Markdown 表格和代码示例(XAML / CSS 变量)混合输出,
确保开发者可以直接复制使用。

将以上提示词给到4个不同的IDE之后肯定不是一次能跑通的,还需要不断调试,只不过comate比较意外的调了几次UI就差不多了能用了,

trae和其他IDE产出UI效果怎么说呢,那界面一打开我就知道我的提示词要改非常非常多次才能调好,所以这条路放弃了,不知道是不是因为我comate的基模用的是kimiK2.6的原因,听说K2.6的前端能力比较强。

后来我刷抖音看到可以发截图给IDE让它参考截图内容做这个UI效果,然后我在秒悟上做了一个想要的差不多的软件UI效果,然后先总结提示词版发给trae试试效果如何,结果不太行,

发给截图给trae后它居然识别出了这是一个网页的应用,就开始建议我用electron来构建,然后我同意后它就开始构建,经过漫长调试后依旧bug一堆,这条路也放弃了。

后来我想到既然comate做得不错,那叫comate总结出提示词再发给trae岂不是也可以复制这个效果?所以我找comate总结提示词后发给trae然后经过不那么痛苦的修改提示词终于得到了以下还算可以用的界面

然后就是核心功能TTS的实现,好几次我都准备放弃集成软件TTS引擎的方案而使用Windows本地TTS和在线TTS的方案,因为集成的TTS引擎试了七八个要么有口音,要么音质差,要么一直报错,要么模型文件太大,要么用不了,最终发现一个还算能用的vistTTS还算能用,但是为了让体验更好一点,还是保留了在线TTS,叫trae查阅TTSmaker开发者文档对接了他们的在线TTS的API.

最后项目也是开源到了GitHubhttps://github.com/zgqy379/soloaudio,错误还有不少,欢迎大家指正。