背景
在当前全球经济衰退的背景下,国内IT相关工作的竞争日益激烈。为了获得更多的职业机会,学习英语或许能为程序员打开一扇新的窗户。尤其是在国际化背景的远程工作中,英语协作沟通是必不可少的。
尽管我们大多数人从小到大都在学习英语,但由于工作场景中英语的使用相对较少,听力和口语往往是最为薄弱的部分。为了更好地练习英语听力,我花了两周的时间开发了一个适合精听的网站。以下是开发过程中用到的技术以及项目介绍。
主要技术
前端
- HTML
- CSS
- jQuery
- JavaScript
- Bootstrap
因为项目规模较小,我没有采用前后端分离的架构,而是使用了轻量级的Bootstrap框架,结合简单的jQuery和JavaScript来实现页面交互。
后端
- Java
- SpringBoot
- Maven
后端基于SpringBoot和Maven快速搭建,框架轻量,因为项目只是一个学习工具网站,没有复杂的用户登录体系,代码量较少。
对象存储
- 阿里云OSS
听力音频文件和字幕文件都存储在阿里云的OSS上。
音频转字幕实现
- CMUSphinx
- Vosk
- Buzz
音频转字幕的技术探索中,CMUSphinx识别率不高,且较为陈旧。Vosk的表现较好,提供了占用内存少的简化模型和完整模型,后者识别率更高,但需要根据文件调整采样率。Buzz则是一款桌面软件,支持OpenAI的Whisper模型,识别率最高,但处理时间较长。
- CMUSphinx 文档
- Vosk 文档
- Buzz 文档
字幕编辑工具
- Aegisub
Aegisub是一款字幕编辑工具,用于后期编辑srt格式的字幕文件。
网站介绍
网站目前导入了雅思历年真题的听力音频,作为日常英语听力练习的素材已足够。网站的核心功能是英语句子的精听训练,用户可以反复播放每一句话,直到完全听懂为止。
主要功能包括:
- 播放/暂停
- 上一句/下一句
- 播放次数选择
- 播放速度调整
- 字体大小调整
- 是否显示原文与译文
- 是否自动播放下一句
- 收藏句子
- 标记文章已完成
上图中的绿色进度条,展示了当前卡片完成的百分比,一个卡片对应一年的剑雅真题,一共16篇听力练习,在每一篇文章练习完成后,可以点击”标记已完成“,然后在下一次进入列表页时,就可以比较直观的看到学习进度。
结束语
如果你也正在练习雅思听力,欢迎体验: www.studytool.site