Obsidian 文字转语音:离线收听你的笔记
Obsidian 把笔记以普通 Markdown 文件保存在你自己的硬盘上,这正是很多人选择它的原因。收听笔记也是同样的思路:散步时回顾一周的笔记、靠耳朵发现别扭的句子、把读书笔记变成简短的音频摘要,全程不把文字发送到任何地方。请注意:Supertonic 3 暂不支持中文,可以为英语、日语、韩语等 31 种语言的笔记配音。
Obsidian 本身没有朗读功能。SuperClonica 提供 31 种语言的自然声音,可在线免费试听,免费引擎会在你的电脑上读取 Markdown 文件,写出可以嵌回笔记的 MP3。
为什么离线为笔记配音
网址仍会被拆开朗读,所以下面的文件夹脚本会先把它们删掉。
- Obsidian 把笔记存为硬盘上的 Markdown 文件,引擎就在原地离线读取。
- 不会发送到任何云服务:适合日记、工作笔记和一切私人内容。
- 引擎朗读时会略过 #、**、[[ ]] 等 Markdown 标记,标题和链接不会被逐个符号读出。
- Obsidian 没有自带朗读;社区插件要么用系统声音,要么调用付费云服务。
在线免费挑选声音
在任意声音页面粘贴笔记中 30 到 100 个字符的一句话,选择语言并点击生成按钮。挑一个你愿意每天听的声音。
把一篇笔记转成音频
如果打算收听某篇笔记,就按说话的方式写:短句,不用表格。
- 安装免费引擎:python -m pip install superclonica-cpu。
- 为一篇笔记配音:superclonica --text-file "Weekly review.md" --voice F2 --lang en --normalize --output "Weekly review.mp3"。
- 长笔记没问题:引擎没有字数限制,会把分段拼成一个文件。
- 读法重要的日期请用文字书写;数字会按普通数字朗读。
一次处理整个文件夹
要为文件夹中的所有笔记配音,请在你的库(vault)中运行:import re, pathlib; from superclonica import Superclonica; tts = Superclonica(); [tts.save(str(p.with_suffix('.mp3')), tts.synthesize(re.sub(r'https?://\S+', '', p.read_text(encoding='utf-8')), 'F2', 'en', normalize=True)[0]) for p in pathlib.Path('Notes').glob('*.md')]。Notes 文件夹中的每篇笔记旁边都会生成同名、同响度(−18 LUFS)的 MP3。大改之后再运行一次,旧文件会被直接覆盖。
把音频嵌入笔记
用 ![[Weekly review.mp3]] 把音频嵌入笔记:Obsidian 可以在笔记中直接播放 MP3、WAV、OGG、FLAC、M4A 和 WebM,文件和其他文件一样存放在库中。只有你自己听的笔记,用什么声音都行;模型的十个标准声音免费,目录中的声音一次购买即可。