app叫声物记,使用flutter开发,目前仅有安卓端

功能概述

主要功能:

  • 物品管理:通过语音存物品,语音查询物品,

  • 搬家情况下解放双手的存物品、查物品。

  • 语音笔记,闪念胶囊,一键快速录音并转写记录。

  • app使用离线语音模型,所有功能均在本地处理,全程不用联网,不上传用户任何数据。

app页面-简单介绍:

适用场景:

  • 平时总找不到东西放哪里的;
  • 想物品管理,但是懒得打字的,觉得打字效率太慢了;
  • 搬家收纳时,把物品放入了某个箱子,但是去新家时不知道放在哪个箱子里;
  • 搬家时在箱子上写了标签备注,但是只写箱子里的大致分类和主要事物,由于在搬家时箱子里一般会放入一些填充空间的杂物,比如放锅碗瓢盆的箱子里,担心互相碰坏,可能会放个有弹性的洗发露进去填充空间。但是最后封箱的时候忘记了标注洗发露,结果新家复原的时候找不到洗发露,我就遇到过好几次这种(苦恼
  • 想临时记个笔记,但是嫌app启动步骤太多的(解锁手机、找到app,点击新建按钮,开始打字)

基于上述原因,开发了声物记app。

功能1: 语音存物品

理念:不用打字,直接长按录音说:洗发露在3号箱子里、牙刷在厨房小推车;就会拆分成:洗发露-3号箱子;牙刷-厨房小推车,一键存为物品记录。

功能2: 语音存物品-热词替换

我的普通话不太标准,因此增加了热词替换功能

比如:冰箱,我的发音会被识别成冰响,和我有同样困扰的,可以去设置替换词:冰响 = 冰箱,就可以自动替换了(此处功能为借鉴)

功能3: 语音查询物品-双重查询

很着急找东西的时候,我是真的懒得打字,所以查询物品也支持语音查询。并且支持物品和位置双重查询。

比如:电风扇在哪里->电风扇在桌子上。

或者:客厅里有什么->客厅里有收音机。

功能4: 搬家模式-解放双手

在搬家模式下:就不用长按录音输入了,直接把手机放在一旁,app会根据声音活跃度智能检测并开始录音识别。一边把物品放入箱子里,一边对着手机说话就行。搬家时也不用一直看着屏幕,app有语音反馈,识别失败会有提示音,成功时会有语音朗读:【已把牙刷放入绿色箱子】,解放双手,解放眼睛,专注搬家(误

搬家模式的演示视频:(声音较大,注意调整音量)

https://www.bilibili.com/video/BV11yM96nE23/


功能5: 随手记-闪念胶囊

由于很喜欢闪念胶囊的功能设计,不用锤子后,市面上又没有类似的并且我觉得满意的app,就想着自己做一个类似的放进去。

核心功能是支持长按音量键,就能快速启动app并且开始录音,然后再次长按就能转写文字。

对于不方便说话的场景:双击音量键,就能快速启动app并新建文本笔记,键盘都自动拉起了,一步到位,减轻磨损。

举例场景:走在路上突然想记录,从口袋里拿出手机,按下电源键点亮屏幕,直接长按音量键,app启动录音时会震动反馈,此时就可开始说话,说完再长按音量键,2次震动反馈后转写文字,全程不用看屏幕找按钮。

如果使用手机系统自带的方式来绑定快捷方式,比如三星的日常程序、甚至不用亮屏,不用解锁,直接就能启动,就真的和闪念胶囊在启动效率上没有区别了。

特别的说明:随手记的快速录音和快速文本笔记,手机只要亮屏就能启动,未解锁情况下也能正常录音并转写(得意,叉腰)。

(补充说明:快速录音功能需要开启无障碍权限,港版三星只需开启无障碍就行,小米手机需要额外开启:后台弹出页面、锁屏显示、后台-无限制、自启动等权限,不然无障碍会被关)

(补充2:由于app未上架,所以无障碍开启时大概率会遇到提示:受限制;由受限设置控制)解决方法:不同手机路径有区别,三星是进入应用详情-点击右上角-开启-授权;小米是应用信息-权限管理-右上角-允许应用获取权限-授权,后续再去无障碍里开启就行)

具体开启步骤可以参考下方图片里的内容(图片引用自gkd 的官方文档介绍)

图片原链接: https://gkd.li/guide/faq

本app开源,没有联网功能,完全离线可用,可以放心开启无障碍。不开也不影响其他功能,只会影响快速录音笔记。

随手记还支持以下功能:

功能5.1:快速跳转和ai对话

点击笔记卡片的【对话按钮】,就能把文字复制,并打开对应的AI应用,快速开始对话(Chatgpt、DeepSeek、Kimi)

防吐槽:

有人可能会觉得这个功能没啥用,因为gpt里本身就支持语音转文字,但是我就是不想把我的声音信息传出去。

又有人会问了,现在的输入法都有离线语音功能,完全可以关闭这些输入法的联网权限,使用离线语音识别来使用,回应:那些输入法我信不过,因为输入法就算关掉联网权限,也可以通过跨应用数据共享信息来上传服务器。

而我用的小企鹅输入法,虽然开源安全,但是语音识别实在是不好用。

综上,开发了这个功能。

功能5.2: 日历待办

在笔记中检测到时间,对应时间就会变为可点击的蓝色,点击后就能创建提醒。相当于一个闹钟待办。比如:周三下午6点提醒我去看电影-【周三下午6点】就会变成蓝色,点击后就能创建对应时间【去看电影】的提醒。

功能5.3: 随手记-也支持语音查询物品

可在随手记页面,直接说:牙刷在哪里,也能触发物品查询。

功能6: 支持md-和obsidian搭配

笔记支持导出为md格式,可以设定导出文件夹绑定为obsidian的文件夹,就能在手机上快速录入笔记到obsidian中了,这样就解决obsidian的移动端没有语音识别的痛点了,众所周知,obsidian的安卓版实在是启动太慢了,移动端编辑体验也实在是不好。

数据-用户掌握

关于数据方面,笔记和物品列表都支持导入导出,格式是csv表格。

项目仓库地址:

https://github.com/fantasyao/shengwuji

app下载地址:

https://github.com/fantasyao/shengwuji/releases
下载apk,安装即可。

后续开发计划

  • 美化页面-科技以换皮为本

  • 优化搬家模式下的声音检测和识别效果

  • 优化搬家模式的语音反馈,现阶段语音还是有点机械

  • 增加主题编辑器,让用户自己设计改造喜欢的页面

致谢:

本app使用flutter开发,用的语音框架是sherpa_onnx,语音模型是SenseVoice模型。

灵感来源:

热词替换功能,来自于CapsWriter

音量键长按录音的功能,来自于idea note

侧滑删除动效,来自于小宇宙的订阅列表

闪念胶囊来自于锤子