refactor(caption-engine): 重构字幕引擎代码结构

- 重构 GummyTranslator 类,增加启动和停止方法
- 优化 AudioStream 类,添加读取音频数据方法
- 更新 main-gummy.py,使用新的 GummyTranslator 和 AudioStream 接口
- 更新文档和 TODO 列表
This commit is contained in:
himeditator
2025-07-06 22:46:46 +08:00
parent 213426dace
commit f2aa075e65
16 changed files with 517 additions and 174 deletions

82
engine-test/process.ipynb Normal file
View File

@@ -0,0 +1,82 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 6,
"id": "1e12f3ef",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
" 采样设备:\n",
" - 设备类型:音频输入\n",
" - 序号20\n",
" - 名称:扬声器 (Realtek(R) Audio) [Loopback]\n",
" - 最大输入通道数2\n",
" - 默认低输入延迟0.003s\n",
" - 默认高输入延迟0.01s\n",
" - 默认采样率48000.0Hz\n",
" - 是否回环设备True\n",
"\n",
" 音频样本块大小2400\n",
" 样本位宽2\n",
" 音频数据格式8\n",
" 音频通道数2\n",
" 音频采样率48000\n",
" \n"
]
}
],
"source": [
"import sys\n",
"import os\n",
"\n",
"current_dir = os.getcwd() \n",
"sys.path.append(os.path.join(current_dir, '../caption-engine'))\n",
"\n",
"from sysaudio.win import AudioStream\n",
"\n",
"stream = AudioStream()\n",
"stream.printInfo()"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "d4c8ad80",
"metadata": {},
"outputs": [],
"source": [
"stream.openStream()\n",
"SEC = 2\n",
"for i in range(SEC * 20):\n",
" data = stream.stream.read(stream.CHUNK) # type: ignore\n",
" "
]
}
],
"metadata": {
"kernelspec": {
"display_name": "mystd",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.12"
}
},
"nbformat": 4,
"nbformat_minor": 5
}