Anki自动生成语音

ops/2024/9/23 14:28:18/

文章目录

  • 前言
  • 安装插件
  • 制作音频
  • 一些注意事项
    • 语音消失现象
    • 不同端出现媒体文件丢失
  • 参考文章

前言

已经实现了通过使用Obsidian实现Anki快速制卡。

对于语言学习,仅仅只有不同语言文字的对照是不够的,我们还需要声音。

所以就需要加入音频。

幸好 Anki 插件十分丰富。

安装插件

这里我们使用 AwesomeTTS 插件进行音频生成。

此为插件链接 AwesomeTTS - Add speech to your flashcards - AnkiWeb。

先安装插件,如有不会请先看 Anki如何安装插件。

安装后点击 Anki 中的浏览

Snipaste_2024-08-23_21-31-50.png

可以看到多了一个 AwesomeTTS 选项。

Snipaste_2024-08-23_21-32-35.png

这就说明安装成功了。

制作音频

这个插件制作音频是开箱即用的,非常简单。

先选中一些卡片,然后点击 AwesomeTTS 中的 Add Audio to Selected

Snipaste_2024-08-23_21-34-07.png

进入下面的界面。

Generate Using 是选择你要用的语音模型,我这里用 Azure,这个是需要 API 的。还可以用 Google Translate,这个不需要 API,免费的,不过如果一次生成太多的卡片,会有个 sleep,需要等挺长时间的。

Voice 是声音,选择你需要的语言,语言一定要选对,不然会很奇怪。不同人物音色是不同的。

下面的 sava 可以保存声音的设置,下次生成就不用调整了。

最后单击 Generate,生成声音。可能会出现 sleep,让你等待,那就耐心等待,这个是因为一次请求太多了,一次生成十个卡片以上就会出现,换个付费的语音模型可以避免。

Snipaste_2024-08-23_21-37-41.png

如果卡片后面出现 sound: xxx.mp3,这就说明语音生成成功了。

Snipaste_2024-08-23_21-45-03.png

预览卡片,我们也能看到播放图标了。

Snipaste_2024-08-23_21-38-04.png

一些注意事项

有些事情是需要注意的。

语音消失现象

当 Obsidian 中的一篇笔记再次点击制卡按键后,Anki 中的语音就会被删除,因为新制作的卡会覆盖老的卡片,语音是后加入的,会被覆盖掉,你就得重新制作卡片了。

所以推荐当你不会再点击制卡后再制作语音。

不同端出现媒体文件丢失

使用 AnkiWeb 进行不同端的同步时,可能会出现媒体文件丢失。

这是因为 Anki 默认只同步牌组,至于说卡牌含有的媒体文件,是不管的。

我们需要点击工具里面的设置。

选择同步,勾上同时同步音频和图片

Snipaste_2024-08-23_21-51-53.png

参考文章

如何使用AwesomeTTS进行音频生成

Anki的卡片配置推荐

AwesomeTTS: Batch Generation (vocab.ai)

PKMer_Obsidian 插件:用 Obsidian 进行 Anki 制卡


http://www.ppmy.cn/ops/98652.html

相关文章

物权法总论

第一编 物权法总论 第一章 物权概述 1.什么叫物权?P.6 物权的定义是,物权人直接支配特定物并排他性地享受其利益的权利。我国《物权法》第2条第3款规定:“本法所称物权,是指权利人依法对特定的物享有直接支配和排他的权利&am…

输入一个序列,返回所有可能的出栈序列

oh my god,我终于相信了墨菲定律 回溯法 从给定的字符串str中选取字符,并以不同的顺序压入栈中,然后依次从栈中弹出字符到临时字符串tem中,直到tem与str完全相同为止。每次当tem与str长度相同时(所有元素的一个排列&a…

Linux系统编程(15)send/recv函数

一、send/recv send 和 recv 是在网络编程中常用的两个函数,用于在套接字(socket)之间发送和接收数据。 1.send 函数 用于将数据发送到连接的套接字。 ssize_t send(int sockfd, const void *buf, size_t len, int flags); sockfd&#…

【HTML】模拟插头连接断开动画

HTML结构 <!DOCTYPE html>: 声明文档类型为 HTML。<html lang"en">: HTML 页面的根元素&#xff0c;lang"en"表示内容使用英语。<head>: 包含元数据和页面的样式。 <meta charset"UTF-8">: 指定页面的字符编码为UTF-8。…

组件提前渲染

问题&#xff1a; 组件正常引入并使用的过程中&#xff0c;出现组件第一次渲染不显示&#xff0c;只有再次刷新页面才显示的问题 <el-table-column label"图纸规定" align"center" prop"tzgd" v-if"mbform.zbzd.tzgd" width"…

【Linux】简易日志工具项目

有些鸟儿是不应该被关在笼子里的&#xff0c; 因为他们的羽毛太丰润了。 当他们飞走&#xff0c;你会由衷地庆贺他获得自由。 --- 肖申克的救赎》--- 从零开始构建简易日志系统 1 日志1.1 什么是日志1.2 日志的意义1.3 为什么要构建自己的日志工具 2 构建自己的日志工具2.1…

Linux:多线程

1&#xff1a;什么是线程 A&#xff1a;在一个程序里的一个执行路线就叫做线程&#xff08;thread&#xff09;。更准确的定义是&#xff1a;线程是“一个进程内部的控制序列” B&#xff1a;一切进程至少都有一个执行线程。 C&#xff1a;线程在进程内部运行&#xff0c;本质是…

嘉立创EDA个人学习笔记2(设计流程及绘制元件)

前言 本篇文章属于嘉立创EDA的学习笔记&#xff0c;来源于B站教学视频。下面是这位up主的视频链接。本文为个人学习笔记&#xff0c;只能做参考&#xff0c;细节方面建议观看视频&#xff0c;肯定受益匪浅。 【教程】零基础入门PCB设计-国一学长带你学立创EDA专业版 全程保姆…