tianyaogavin commited on
Commit
401b3f7
·
1 Parent(s): 526f2ef

update doc

Browse files
Framework.md CHANGED
@@ -25,13 +25,13 @@ graph TD
25
  - **特点**:持续运行的监听器,向下游推送 PCM 帧 / numpy array。
26
  - **实时性保障**:限帧缓冲长度(防止阻塞);异步 IO(web/本地都适用)。
27
 
28
- #### **模块 B:VAD 分段器**
29
  - **职责**:根据能量、静音、说话边界等信号判断语音段落。
30
  - **输出**:segment 音频块 + 时间戳。
31
  - **特点**:滑动窗口方式收集帧,支持重叠帧(方便 whisper 特征提取)。
32
  - **实时性保障**:分段逻辑低延迟计算,每完成一个 segment 即可推送。
33
 
34
- #### **模块 C:Whisper 转录模块**
35
  - **职责**:对每段 VAD 输出进行 whisper 转写,输出文本 + 时间戳。
36
  - **特点**:segment 级别调用 whisper,天然可并行;可 GPU 推理加速。
37
  - **实时性保障**:控制 segment 长度在 1~5s,支持多个转录 worker 异步执行。
@@ -43,12 +43,12 @@ graph TD
43
  - **判断逻辑**:基于标点、停顿、时间间隔、小模型或规则判断。
44
  - **实时性保障**:设置最大延迟窗口,防止句子粘连。
45
 
46
- #### **模块 E:即时输出模块**
47
  - **职责**:将聚合后的转写结果立即显示给用户,无论是原始还是优化后的内容。
48
  - **特点**:无等待、无依赖,低延迟输出,支持句子更新。
49
  - **实时性保障**:最短路径,展示为第一响应版本。
50
 
51
- #### **模块 F:LLM 优化调度器**
52
  - **职责**:接收待优化句子,加入优化任务队列。
53
  - **特点**:任务调度、并行执行、负载均衡;支持多模型、可控超时。
54
  - **实时性保障**:异步非阻塞,不影响主流程。
@@ -58,7 +58,7 @@ graph TD
58
  - **特点**:非强覆盖,可差分更新;UI 区分原始/优化版本。
59
  - **实时性保障**:回填异步进行,不干扰主字幕。
60
 
61
- #### **模块 H:翻译模块**
62
  - **职责**:接收所有来自即时输出模块的句子(原始或优化后),将其翻译为目标语言。
63
  - **特点**:单一翻译模块,适配不同质量文本;可以并行多语种或缓存优化后重译。
64
  - **实时性保障**:即转即译 + 回填更新可分离,支持伪流式体验。
 
25
  - **特点**:持续运行的监听器,向下游推送 PCM 帧 / numpy array。
26
  - **实时性保障**:限帧缓冲长度(防止阻塞);异步 IO(web/本地都适用)。
27
 
28
+ #### **模块 B:VAD 分段器(vad)**
29
  - **职责**:根据能量、静音、说话边界等信号判断语音段落。
30
  - **输出**:segment 音频块 + 时间戳。
31
  - **特点**:滑动窗口方式收集帧,支持重叠帧(方便 whisper 特征提取)。
32
  - **实时性保障**:分段逻辑低延迟计算,每完成一个 segment 即可推送。
33
 
34
+ #### **模块 C:Whisper 转录模块(transcribe)**
35
  - **职责**:对每段 VAD 输出进行 whisper 转写,输出文本 + 时间戳。
36
  - **特点**:segment 级别调用 whisper,天然可并行;可 GPU 推理加速。
37
  - **实时性保障**:控制 segment 长度在 1~5s,支持多个转录 worker 异步执行。
 
43
  - **判断逻辑**:基于标点、停顿、时间间隔、小模型或规则判断。
44
  - **实时性保障**:设置最大延迟窗口,防止句子粘连。
45
 
46
+ #### **模块 E:即时输出模块(display)**
47
  - **职责**:将聚合后的转写结果立即显示给用户,无论是原始还是优化后的内容。
48
  - **特点**:无等待、无依赖,低延迟输出,支持句子更新。
49
  - **实时性保障**:最短路径,展示为第一响应版本。
50
 
51
+ #### **模块 F:LLM 优化调度器(optimizer)**
52
  - **职责**:接收待优化句子,加入优化任务队列。
53
  - **特点**:任务调度、并行执行、负载均衡;支持多模型、可控超时。
54
  - **实时性保障**:异步非阻塞,不影响主流程。
 
58
  - **特点**:非强覆盖,可差分更新;UI 区分原始/优化版本。
59
  - **实时性保障**:回填异步进行,不干扰主字幕。
60
 
61
+ #### **模块 H:翻译模块(translator)**
62
  - **职责**:接收所有来自即时输出模块的句子(原始或优化后),将其翻译为目标语言。
63
  - **特点**:单一翻译模块,适配不同质量文本;可以并行多语种或缓存优化后重译。
64
  - **实时性保障**:即转即译 + 回填更新可分离,支持伪流式体验。
dataset/audio/metadata/test1_segments_20250425_165446.json ADDED
@@ -0,0 +1,126 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "audio_file": "dataset/audio/test1.wav",
3
+ "timestamp": "20250425_165446",
4
+ "total_segments": 17,
5
+ "segments": [
6
+ {
7
+ "index": 0,
8
+ "start_time": 3.26,
9
+ "end_time": 3.92,
10
+ "duration": 0.6600000000000001,
11
+ "is_speech": true
12
+ },
13
+ {
14
+ "index": 1,
15
+ "start_time": 4.34,
16
+ "end_time": 5.56,
17
+ "duration": 1.2199999999999998,
18
+ "is_speech": true
19
+ },
20
+ {
21
+ "index": 2,
22
+ "start_time": 7.1,
23
+ "end_time": 7.8,
24
+ "duration": 0.7000000000000002,
25
+ "is_speech": true
26
+ },
27
+ {
28
+ "index": 3,
29
+ "start_time": 8.8,
30
+ "end_time": 12.44,
31
+ "duration": 3.639999999999999,
32
+ "is_speech": true
33
+ },
34
+ {
35
+ "index": 4,
36
+ "start_time": 12.8,
37
+ "end_time": 16.74,
38
+ "duration": 3.9399999999999977,
39
+ "is_speech": true
40
+ },
41
+ {
42
+ "index": 5,
43
+ "start_time": 17.32,
44
+ "end_time": 18.76,
45
+ "duration": 1.4400000000000013,
46
+ "is_speech": true
47
+ },
48
+ {
49
+ "index": 6,
50
+ "start_time": 19.76,
51
+ "end_time": 21.1,
52
+ "duration": 1.3399999999999999,
53
+ "is_speech": true
54
+ },
55
+ {
56
+ "index": 7,
57
+ "start_time": 21.62,
58
+ "end_time": 25.68,
59
+ "duration": 4.059999999999999,
60
+ "is_speech": true
61
+ },
62
+ {
63
+ "index": 8,
64
+ "start_time": 26.28,
65
+ "end_time": 28.2,
66
+ "duration": 1.9199999999999982,
67
+ "is_speech": true
68
+ },
69
+ {
70
+ "index": 9,
71
+ "start_time": 28.56,
72
+ "end_time": 31.6,
73
+ "duration": 3.0400000000000027,
74
+ "is_speech": true
75
+ },
76
+ {
77
+ "index": 10,
78
+ "start_time": 31.98,
79
+ "end_time": 33.2,
80
+ "duration": 1.2200000000000024,
81
+ "is_speech": true
82
+ },
83
+ {
84
+ "index": 11,
85
+ "start_time": 33.54,
86
+ "end_time": 36.52,
87
+ "duration": 2.980000000000004,
88
+ "is_speech": true
89
+ },
90
+ {
91
+ "index": 12,
92
+ "start_time": 37.82,
93
+ "end_time": 38.94,
94
+ "duration": 1.1199999999999974,
95
+ "is_speech": true
96
+ },
97
+ {
98
+ "index": 13,
99
+ "start_time": 39.34,
100
+ "end_time": 40.34,
101
+ "duration": 1.0,
102
+ "is_speech": true
103
+ },
104
+ {
105
+ "index": 14,
106
+ "start_time": 40.86,
107
+ "end_time": 42.4,
108
+ "duration": 1.5399999999999991,
109
+ "is_speech": true
110
+ },
111
+ {
112
+ "index": 15,
113
+ "start_time": 43.04,
114
+ "end_time": 46.6,
115
+ "duration": 3.5600000000000023,
116
+ "is_speech": true
117
+ },
118
+ {
119
+ "index": 16,
120
+ "start_time": 47.5,
121
+ "end_time": 49.8,
122
+ "duration": 2.299999999999997,
123
+ "is_speech": true
124
+ }
125
+ ]
126
+ }