1. 项目概述:AI-ViewNote 的诞生背景与核心价值
作为一名长期浸泡在技术学习中的开发者,我发现自己每年要消耗数百小时的网课和会议视频。最让我头疼的不是内容理解,而是如何高效整理这些视频中的知识精华。传统的手动暂停-截图-记录方式,不仅效率低下,还会严重打断学习心流。市面上的语音转文字工具要么价格昂贵,要么输出结果像未经整理的"文字乱麻",完全不符合技术从业者的笔记需求。
这就是AI-ViewNote诞生的契机——一个用Go+React构建的开源桌面应用,它能将任意视频/会议录音自动转化为结构化笔记。与SaaS类工具最大的不同在于:它完全运行在本地,支持自定义接入各类ASR和LLM API,你的数据永远不会离开本地机器(除非你主动上传到云端API)。这种设计特别适合处理企业内部会议录音或付费课程内容等敏感场景。
技术提示:ASR(Automatic Speech Recognition)指自动语音识别技术,LLM(Large Language Model)即大语言模型。AI-ViewNote的创新点在于将两者串联成完整工作流。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心架构与技术栈解析
2.1 为什么选择Wails v3 + Go?
在桌面端开发领域,Electron一直是主流选择,但它的内存占用和打包体积对资源敏感型应用很不友好。经过技术选型评估,我们最终锁定Wails框架,原因有三:
-
性能优势:相比Electron的Chromium内核,Wails v3使用系统原生Webview,内存占用减少60%以上。实测AI-ViewNote空载内存仅85MB,而功能相似的Electron应用普遍在200MB+
-
开发效率:Go的后端处理能力+React的前端生态,完美匹配音视频处理场景。例如用Go调用FFmpeg处理4小时视频仅需:
go复制cmd := exec.Command("ffmpeg", "-i", inputPath, "-vn", "-acodec", "libmp3lame", outputPath) if err := cmd.Run(); err != nil { log.Fatal("FFmpeg error:", err) } -
**跨
