dsh-pf-stream 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +15 -0
- package/README.md +15 -0
- package/lib/entry/adapter.d.ts +4 -0
- package/lib/entry/adapter.js +11 -6
- package/lib/entry/adapter.js.map +1 -1
- package/lib/entry/legacyNormalizer.d.ts +6 -2
- package/lib/entry/legacyNormalizer.js +20 -10
- package/lib/entry/legacyNormalizer.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.js +15 -1
- package/lib/index.js.map +1 -1
- package/lib/session/state.js +5 -23
- package/lib/session/state.js.map +1 -1
- package/lib/stage0/decoder.d.ts +2 -0
- package/lib/stage0/decoder.js +23 -3
- package/lib/stage0/decoder.js.map +1 -1
- package/lib/stage2/stateMachine.js +0 -3
- package/lib/stage2/stateMachine.js.map +1 -1
- package/lib/stage3/deterministicRouter.d.ts +6 -2
- package/lib/stage3/deterministicRouter.js +143 -81
- package/lib/stage3/deterministicRouter.js.map +1 -1
- package/lib/stage3/streamSampler.d.ts +2 -0
- package/lib/stage3/streamSampler.js +5 -7
- package/lib/stage3/streamSampler.js.map +1 -1
- package/lib/stage4/viewport.d.ts +2 -1
- package/lib/stage4/viewport.js +7 -3
- package/lib/stage4/viewport.js.map +1 -1
- package/lib/stage5/controller.js +1 -1
- package/lib/stage5/intent.d.ts +2 -0
- package/lib/stage5/intent.js +23 -10
- package/lib/stage5/intent.js.map +1 -1
- package/lib/stage6/precheck.d.ts +4 -2
- package/lib/stage6/precheck.js +5 -5
- package/lib/stage6/precheck.js.map +1 -1
- package/lib/tool/handler.d.ts +17 -0
- package/lib/tool/handler.js +18 -7
- package/lib/tool/handler.js.map +1 -1
- package/lib/tool/schema.d.ts +4 -1
- package/lib/tool/schema.js +15 -1
- package/lib/tool/schema.js.map +1 -1
- package/lib/tool/streamCall.d.ts +2 -0
- package/lib/tool/streamCall.js +39 -6
- package/lib/tool/streamCall.js.map +1 -1
- package/lib/types.d.ts +2 -4
- package/package.json +1 -1
package/README.en.md
CHANGED
|
@@ -101,12 +101,27 @@ Session capabilities:
|
|
|
101
101
|
| `FORM_3_COMPACT_1F` | 1F, 672×672 | 274 |
|
|
102
102
|
| `FORM_4_PARTIAL_STRIP` | 1-3P + 1F, 1344×672 | 530 |
|
|
103
103
|
|
|
104
|
+
## Canvas samples
|
|
105
|
+
|
|
106
|
+
`FORM_1` standard strip: four process units (P) on the left, one focus unit (F) on the right.
|
|
107
|
+
|
|
108
|
+

|
|
109
|
+
|
|
110
|
+
`FORM_2` process-only: four process units.
|
|
111
|
+
|
|
112
|
+

|
|
113
|
+
|
|
114
|
+
`FORM_3` single focus: RoI zoom review via `roi_hint`.
|
|
115
|
+
|
|
116
|
+

|
|
117
|
+
|
|
104
118
|
## Configuration
|
|
105
119
|
|
|
106
120
|
| option | default | description |
|
|
107
121
|
| --- | --- | --- |
|
|
108
122
|
| `renderVisualId` | `true` | superpixel inverse badge at each unit corner |
|
|
109
123
|
| `maxPacketsPerCall` | `64` | packet count limit per call |
|
|
124
|
+
| `maxFramesPerCall` | `128` | deterministic frame target limit per call (clamps `frame_count`) |
|
|
110
125
|
| `maxTokensBudgetPerCall` | `65536` | vision-token budget per call |
|
|
111
126
|
| `maxRequestBytes` | `56 MiB` | request byte watermark, Base64-inclusive |
|
|
112
127
|
| `maxColdRefs` | `4` | cold-tier reference limit |
|
package/README.md
CHANGED
|
@@ -101,12 +101,27 @@ sudo apt install ffmpeg # Debian / Ubuntu
|
|
|
101
101
|
| `FORM_3_COMPACT_1F` | 1F,672×672 | 274 |
|
|
102
102
|
| `FORM_4_PARTIAL_STRIP` | 1-3P + 1F,1344×672 | 530 |
|
|
103
103
|
|
|
104
|
+
## 画布样例
|
|
105
|
+
|
|
106
|
+
`FORM_1` 标准条带:左半 4 个过程单元(P),右半 1 个焦点单元(F)。
|
|
107
|
+
|
|
108
|
+

|
|
109
|
+
|
|
110
|
+
`FORM_2` 纯过程:4 个过程单元。
|
|
111
|
+
|
|
112
|
+

|
|
113
|
+
|
|
114
|
+
`FORM_3` 单焦点:`roi_hint` 局部放大检视。
|
|
115
|
+
|
|
116
|
+

|
|
117
|
+
|
|
104
118
|
## 配置
|
|
105
119
|
|
|
106
120
|
| 配置项 | 默认 | 说明 |
|
|
107
121
|
| --- | --- | --- |
|
|
108
122
|
| `renderVisualId` | `true` | 单元左上角超像素反色角标 |
|
|
109
123
|
| `maxPacketsPerCall` | `64` | 单次调用返回包数上限 |
|
|
124
|
+
| `maxFramesPerCall` | `128` | 确定性抽帧单次目标帧数上限(`frame_count` 受此钳制) |
|
|
110
125
|
| `maxImagesPerCall` | `20` | 单次调用回传图像上限(宿主单条消息图像上限 20) |
|
|
111
126
|
| `maxTokensBudgetPerCall` | `65536` | 单次调用视觉 token 预算 |
|
|
112
127
|
| `maxRequestBytes` | `56 MiB` | 请求字节软水位(Base64 后口径) |
|
package/lib/entry/adapter.d.ts
CHANGED
|
@@ -7,8 +7,12 @@
|
|
|
7
7
|
import type { IntentDirective } from '../types.js';
|
|
8
8
|
export interface AdapterLimits {
|
|
9
9
|
lastPtsMs: number;
|
|
10
|
+
displayWidth: number;
|
|
11
|
+
displayHeight: number;
|
|
10
12
|
maxPackets: number;
|
|
11
13
|
maxTokensBudget: number;
|
|
14
|
+
/** 确定性抽帧单次目标帧数上限(frame_count 钳制值)。 */
|
|
15
|
+
maxFrames: number;
|
|
12
16
|
}
|
|
13
17
|
export interface AdaptedCall {
|
|
14
18
|
intent: IntentDirective;
|
package/lib/entry/adapter.js
CHANGED
|
@@ -27,7 +27,10 @@ export function adaptCallArgs(args, limits) {
|
|
|
27
27
|
if (typeof videoPath !== 'string' || videoPath.length === 0) {
|
|
28
28
|
throw new PfStreamError('PFSTREAM_ARGS_VIDEO_PATH', 'video_path 必须为非空字符串');
|
|
29
29
|
}
|
|
30
|
-
const legacy = normalizeLegacyArgs(args, limits.lastPtsMs
|
|
30
|
+
const legacy = normalizeLegacyArgs(args, limits.lastPtsMs, {
|
|
31
|
+
width: limits.displayWidth,
|
|
32
|
+
height: limits.displayHeight,
|
|
33
|
+
}, limits.maxFrames);
|
|
31
34
|
const rawIntent = isRecord(args['intent']) ? args['intent'] : {};
|
|
32
35
|
const intent = {};
|
|
33
36
|
const action = (rawIntent['action'] ?? legacy.intent.action);
|
|
@@ -89,15 +92,17 @@ export function adaptCallArgs(args, limits) {
|
|
|
89
92
|
}
|
|
90
93
|
if (intent.action == null)
|
|
91
94
|
intent.action = 'uniform';
|
|
92
|
-
intent.frame_count = Math.min(Math.round(fcRaw),
|
|
95
|
+
intent.frame_count = Math.min(Math.round(fcRaw), limits.maxFrames);
|
|
93
96
|
}
|
|
97
|
+
// max_packets / max_tokens_budget:上下限双向钳制(规格《五》§1.3 上限钳制;
|
|
98
|
+
// 低于有效下限(1 包 / 274 Token)时钳到下限,与工具 Schema 的 minimum 声明一致。
|
|
94
99
|
const mpRaw = rawIntent['max_packets'];
|
|
95
|
-
if (mpRaw != null && typeof mpRaw === 'number' && mpRaw
|
|
96
|
-
intent.max_packets = Math.min(Math.round(mpRaw), limits.maxPackets);
|
|
100
|
+
if (mpRaw != null && typeof mpRaw === 'number' && Number.isFinite(mpRaw)) {
|
|
101
|
+
intent.max_packets = Math.min(Math.max(Math.round(mpRaw), 1), limits.maxPackets);
|
|
97
102
|
}
|
|
98
103
|
const mtbRaw = rawIntent['max_tokens_budget'];
|
|
99
|
-
if (mtbRaw != null && typeof mtbRaw === 'number' && mtbRaw
|
|
100
|
-
intent.max_tokens_budget = Math.min(Math.round(mtbRaw), limits.maxTokensBudget);
|
|
104
|
+
if (mtbRaw != null && typeof mtbRaw === 'number' && Number.isFinite(mtbRaw)) {
|
|
105
|
+
intent.max_tokens_budget = Math.min(Math.max(Math.round(mtbRaw), 274), limits.maxTokensBudget);
|
|
101
106
|
}
|
|
102
107
|
if (rawIntent['reset'] === true)
|
|
103
108
|
intent.reset = true;
|
package/lib/entry/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/entry/adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,mBAAmB,EAAyB,MAAM,uBAAuB,CAAC;AAEnF,MAAM,OAAO,GAAwB,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,KAAK,GAAwB,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC5E,MAAM,KAAK,GAAwB,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/entry/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 输入便利层:start_time/end_time/time_range/timestamps/fps/interval/num_frames/
|
|
5
5
|
* frame_count/crop/bbox/roi/probe_only → 标准 IntentDirective 字段。
|
|
6
|
-
*
|
|
6
|
+
* 判秒规则(《技术设计方案》§2.4):无后缀数值 ≤ 时长(秒)×2 判秒,超过判毫秒;
|
|
7
|
+
* 归一化来源记入 normalizedFrom。
|
|
7
8
|
*/
|
|
8
9
|
import type { IntentDirective } from '../types.js';
|
|
9
10
|
export interface NormalizedIntent {
|
|
@@ -13,4 +14,7 @@ export interface NormalizedIntent {
|
|
|
13
14
|
}
|
|
14
15
|
/** 数值或字符串时间 → 毫秒(判秒规则见模块注释)。 */
|
|
15
16
|
export declare function toMs(value: number | string, durationMs: number): number;
|
|
16
|
-
export declare function normalizeLegacyArgs(args: Record<string, unknown>, durationMs: number
|
|
17
|
+
export declare function normalizeLegacyArgs(args: Record<string, unknown>, durationMs: number, display?: {
|
|
18
|
+
width: number;
|
|
19
|
+
height: number;
|
|
20
|
+
}, maxFrames?: number): NormalizedIntent;
|
|
@@ -3,27 +3,37 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 输入便利层:start_time/end_time/time_range/timestamps/fps/interval/num_frames/
|
|
5
5
|
* frame_count/crop/bbox/roi/probe_only → 标准 IntentDirective 字段。
|
|
6
|
-
*
|
|
6
|
+
* 判秒规则(《技术设计方案》§2.4):无后缀数值 ≤ 时长(秒)×2 判秒,超过判毫秒;
|
|
7
|
+
* 归一化来源记入 normalizedFrom。
|
|
7
8
|
*/
|
|
8
9
|
/** 数值或字符串时间 → 毫秒(判秒规则见模块注释)。 */
|
|
9
10
|
export function toMs(value, durationMs) {
|
|
10
11
|
const n = typeof value === 'string' ? Number.parseFloat(value) : value;
|
|
11
12
|
if (!Number.isFinite(n))
|
|
12
13
|
throw new Error(`时间值无法解析:${String(value)}`);
|
|
13
|
-
const secThreshold = (durationMs / 1000) *
|
|
14
|
+
const secThreshold = (durationMs / 1000) * 2;
|
|
14
15
|
const ms = n <= secThreshold ? n * 1000 : n;
|
|
15
16
|
return Math.round(ms);
|
|
16
17
|
}
|
|
17
|
-
|
|
18
|
+
/**
|
|
19
|
+
* ROI 归一化:归一化坐标直接钳制 [0,1];像素坐标(任一分量 >1)
|
|
20
|
+
* 按显示宽高换算为归一化坐标(规格《五》§1.1 crop/bbox/roi 规则)。
|
|
21
|
+
*/
|
|
22
|
+
function normalizeRoi(raw, displayWidth, displayHeight) {
|
|
18
23
|
const clamp01 = (v) => Math.min(Math.max(v, 0), 1);
|
|
24
|
+
const pixelMode = raw.x > 1 || raw.y > 1 || raw.w > 1 || raw.h > 1;
|
|
25
|
+
const x = pixelMode ? raw.x / displayWidth : raw.x;
|
|
26
|
+
const y = pixelMode ? raw.y / displayHeight : raw.y;
|
|
27
|
+
const w = pixelMode ? raw.w / displayWidth : raw.w;
|
|
28
|
+
const h = pixelMode ? raw.h / displayHeight : raw.h;
|
|
19
29
|
return {
|
|
20
|
-
x: clamp01(
|
|
21
|
-
y: clamp01(
|
|
22
|
-
w: Math.min(Math.max(
|
|
23
|
-
h: Math.min(Math.max(
|
|
30
|
+
x: clamp01(x),
|
|
31
|
+
y: clamp01(y),
|
|
32
|
+
w: Math.min(Math.max(w, 0), 1 - clamp01(x)),
|
|
33
|
+
h: Math.min(Math.max(h, 0), 1 - clamp01(y)),
|
|
24
34
|
};
|
|
25
35
|
}
|
|
26
|
-
export function normalizeLegacyArgs(args, durationMs) {
|
|
36
|
+
export function normalizeLegacyArgs(args, durationMs, display = { width: 1, height: 1 }, maxFrames = 128) {
|
|
27
37
|
const intent = {};
|
|
28
38
|
const normalizedFrom = [];
|
|
29
39
|
const has = (k) => Object.prototype.hasOwnProperty.call(args, k) && args[k] !== undefined;
|
|
@@ -66,7 +76,7 @@ export function normalizeLegacyArgs(args, durationMs) {
|
|
|
66
76
|
if (has('num_frames') || has('frame_count')) {
|
|
67
77
|
const fc = Number(args['num_frames'] ?? args['frame_count']);
|
|
68
78
|
if (Number.isFinite(fc) && fc >= 1) {
|
|
69
|
-
intent.frame_count = Math.min(Math.round(fc),
|
|
79
|
+
intent.frame_count = Math.min(Math.round(fc), maxFrames);
|
|
70
80
|
if (intent.action == null)
|
|
71
81
|
intent.action = 'uniform';
|
|
72
82
|
normalizedFrom.push('num_frames/frame_count');
|
|
@@ -74,7 +84,7 @@ export function normalizeLegacyArgs(args, durationMs) {
|
|
|
74
84
|
}
|
|
75
85
|
const roiRaw = (args['crop'] ?? args['bbox'] ?? args['roi']);
|
|
76
86
|
if (roiRaw && typeof roiRaw === 'object') {
|
|
77
|
-
intent.roi_hint = normalizeRoi(roiRaw);
|
|
87
|
+
intent.roi_hint = normalizeRoi(roiRaw, display.width, display.height);
|
|
78
88
|
normalizedFrom.push('crop/bbox/roi');
|
|
79
89
|
}
|
|
80
90
|
if (args['probe_only'] === true) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"legacyNormalizer.js","sourceRoot":"","sources":["../../src/entry/legacyNormalizer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"legacyNormalizer.js","sourceRoot":"","sources":["../../src/entry/legacyNormalizer.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export declare const DEFAULT_MAX_REQUEST_BYTES: number;
|
|
|
18
18
|
export declare const Config: Schema<Schemastery.ObjectS<NoInfer<{
|
|
19
19
|
renderVisualId: Schema<boolean, boolean, "defined">;
|
|
20
20
|
maxPacketsPerCall: Schema<number, number, "defined">;
|
|
21
|
+
maxFramesPerCall: Schema<number, number, "defined">;
|
|
21
22
|
maxImagesPerCall: Schema<number, number, "defined">;
|
|
22
23
|
maxTokensBudgetPerCall: Schema<number, number, "defined">;
|
|
23
24
|
maxRequestBytes: Schema<number, number, "defined">;
|
|
@@ -48,6 +49,7 @@ export declare const Config: Schema<Schemastery.ObjectS<NoInfer<{
|
|
|
48
49
|
}>>, Schemastery.ObjectT<NoInfer<{
|
|
49
50
|
renderVisualId: Schema<boolean, boolean, "defined">;
|
|
50
51
|
maxPacketsPerCall: Schema<number, number, "defined">;
|
|
52
|
+
maxFramesPerCall: Schema<number, number, "defined">;
|
|
51
53
|
maxImagesPerCall: Schema<number, number, "defined">;
|
|
52
54
|
maxTokensBudgetPerCall: Schema<number, number, "defined">;
|
|
53
55
|
maxRequestBytes: Schema<number, number, "defined">;
|
package/lib/index.js
CHANGED
|
@@ -21,6 +21,7 @@ export const DEFAULT_MAX_REQUEST_BYTES = 56 * 1024 * 1024;
|
|
|
21
21
|
export const Config = Schema.object({
|
|
22
22
|
renderVisualId: Schema.boolean().default(true).description('渲染超像素微型反色角标'),
|
|
23
23
|
maxPacketsPerCall: Schema.number().default(64).description('单次调用画布包数上限'),
|
|
24
|
+
maxFramesPerCall: Schema.number().default(128).description('确定性抽帧单次目标帧数上限(frame_count 受此钳制)'),
|
|
24
25
|
maxImagesPerCall: Schema.number().default(20).description('单次调用回传图像上限(宿主单条消息图像上限 20)'),
|
|
25
26
|
maxTokensBudgetPerCall: Schema.number().default(65536).description('单次调用视觉 Token 预算上限(intent.max_tokens_budget 受此钳制)'),
|
|
26
27
|
maxRequestBytes: Schema.number().default(DEFAULT_MAX_REQUEST_BYTES).description('请求字节软水位'),
|
|
@@ -115,16 +116,19 @@ export function buildToolDefinition(_deps) {
|
|
|
115
116
|
const probe = (videoPath, signal) => probeVideo(videoPath, { ffprobePath: bins.ffprobe, signal });
|
|
116
117
|
const inspect = (videoPath, probeResult, intent, signal) => runDeterministicInspection(videoPath, probeResult, intent, {
|
|
117
118
|
ffmpegPath: bins.ffmpeg,
|
|
119
|
+
ffprobePath: bins.ffprobe,
|
|
118
120
|
renderVisualId: config.renderVisualId,
|
|
119
121
|
packetIdStart: 1,
|
|
120
122
|
globalIdStart: 1,
|
|
121
123
|
appliedIntentId: 'intent_1',
|
|
122
124
|
maxRequestBytes: config.maxRequestBytes,
|
|
123
125
|
maxTokensPerImage: config.meteringProfile.maxTokensPerImage,
|
|
126
|
+
maxTokensBudget: intent.max_tokens_budget ?? config.maxTokensBudgetPerCall,
|
|
124
127
|
signal,
|
|
125
128
|
});
|
|
126
129
|
const stream = (videoPath, probeResult, intent, sessionId, signal) => runStreamCall(videoPath, probeResult, intent, sessionId ?? 'default', {
|
|
127
130
|
ffmpegPath: bins.ffmpeg,
|
|
131
|
+
ffprobePath: bins.ffprobe,
|
|
128
132
|
renderVisualId: config.renderVisualId,
|
|
129
133
|
defaultStreamWindowMs: config.defaultStreamWindowMs,
|
|
130
134
|
streamWorkMaxEdge: config.streamWorkMaxEdge,
|
|
@@ -152,7 +156,17 @@ export function buildToolDefinition(_deps) {
|
|
|
152
156
|
// 会话级状态使并发不安全。
|
|
153
157
|
isConcurrencySafe: () => false,
|
|
154
158
|
async execute(args, exec) {
|
|
155
|
-
return handleToolCall(args, exec, {
|
|
159
|
+
return handleToolCall(args, exec, {
|
|
160
|
+
probe,
|
|
161
|
+
inspect,
|
|
162
|
+
stream,
|
|
163
|
+
attachImages,
|
|
164
|
+
limits: {
|
|
165
|
+
maxPackets: config.maxPacketsPerCall,
|
|
166
|
+
maxTokensBudget: config.maxTokensBudgetPerCall,
|
|
167
|
+
maxFrames: config.maxFramesPerCall,
|
|
168
|
+
},
|
|
169
|
+
});
|
|
156
170
|
},
|
|
157
171
|
};
|
|
158
172
|
}
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/session/state.js
CHANGED
|
@@ -10,8 +10,11 @@ import { statSync } from 'node:fs';
|
|
|
10
10
|
import { resolve } from 'node:path';
|
|
11
11
|
/** 视频指纹:规范化路径 + size + mtime 联合哈希前 16 hex。 */
|
|
12
12
|
export function fingerprintOf(videoPath) {
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
// stat 使用原始路径(Linux/macOS 大小写敏感,小写化会指向不存在的文件);
|
|
14
|
+
// 小写化仅用于指纹哈希输入,保证 Windows 路径大小写差异不产生重复槽位。
|
|
15
|
+
const resolvedPath = resolve(videoPath);
|
|
16
|
+
const st = statSync(resolvedPath);
|
|
17
|
+
const normalizedPath = resolvedPath.replaceAll('\\', '/').toLowerCase();
|
|
15
18
|
const digest = createHash('sha256')
|
|
16
19
|
.update(`${normalizedPath}|${st.size}|${Math.round(st.mtimeMs)}`)
|
|
17
20
|
.digest('hex');
|
|
@@ -68,9 +71,6 @@ export function getVideoSlot(state, fingerprint) {
|
|
|
68
71
|
gEma: 0,
|
|
69
72
|
emaWarmupLeft: 0,
|
|
70
73
|
settleStartPtsMs: null,
|
|
71
|
-
lastKCandidates: null,
|
|
72
|
-
lastMotionVec: null,
|
|
73
|
-
arena: null,
|
|
74
74
|
},
|
|
75
75
|
pendingPUnits: [],
|
|
76
76
|
lastAnchorF: null,
|
|
@@ -112,15 +112,6 @@ export function exportSessionSnapshot(state) {
|
|
|
112
112
|
lastEmittedPacketPtsMs: c.lastEmittedPacketPtsMs,
|
|
113
113
|
snapshot: {
|
|
114
114
|
...c.snapshot,
|
|
115
|
-
arena: c.snapshot.arena == null
|
|
116
|
-
? null
|
|
117
|
-
: {
|
|
118
|
-
ptsMs: c.snapshot.arena.ptsMs,
|
|
119
|
-
rho: c.snapshot.arena.rho,
|
|
120
|
-
g: c.snapshot.arena.g,
|
|
121
|
-
image672: c.snapshot.arena.image672.toString('base64'),
|
|
122
|
-
sourceCropBbox: c.snapshot.arena.sourceCropBbox,
|
|
123
|
-
},
|
|
124
115
|
},
|
|
125
116
|
pendingPUnits: c.pendingPUnits.map((p) => ({
|
|
126
117
|
ptsMs: p.ptsMs,
|
|
@@ -209,15 +200,6 @@ export function importSessionSnapshot(json) {
|
|
|
209
200
|
lastEmittedPacketPtsMs: v.lastEmittedPacketPtsMs,
|
|
210
201
|
snapshot: {
|
|
211
202
|
...v.snapshot,
|
|
212
|
-
arena: v.snapshot.arena == null
|
|
213
|
-
? null
|
|
214
|
-
: {
|
|
215
|
-
ptsMs: v.snapshot.arena.ptsMs,
|
|
216
|
-
rho: v.snapshot.arena.rho,
|
|
217
|
-
g: v.snapshot.arena.g,
|
|
218
|
-
image672: Buffer.from(v.snapshot.arena.image672, 'base64'),
|
|
219
|
-
sourceCropBbox: v.snapshot.arena.sourceCropBbox,
|
|
220
|
-
},
|
|
221
203
|
},
|
|
222
204
|
pendingPUnits: v.pendingPUnits.map((p) => ({
|
|
223
205
|
ptsMs: p.ptsMs,
|
package/lib/session/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/session/state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,8CAA8C;AAC9C,MAAM,UAAU,aAAa,CAAC,SAAiB;IAC7C,MAAM,
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/session/state.ts"],"names":[],"mappings":"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"}
|
package/lib/stage0/decoder.d.ts
CHANGED
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
import type { RgbImage } from '../utils/image.js';
|
|
14
14
|
export interface DecodePointOptions {
|
|
15
15
|
ffmpegPath: string;
|
|
16
|
+
/** ffprobe 路径(缺省时由 ffmpegPath 同目录派生)。 */
|
|
17
|
+
ffprobePath?: string | undefined;
|
|
16
18
|
displayWidth: number;
|
|
17
19
|
displayHeight: number;
|
|
18
20
|
signal?: AbortSignal | undefined;
|
package/lib/stage0/decoder.js
CHANGED
|
@@ -32,7 +32,8 @@ export async function decodePoint(videoPath, ptsMs, options) {
|
|
|
32
32
|
encoding: 'buffer',
|
|
33
33
|
});
|
|
34
34
|
const frameBytes = options.displayWidth * options.displayHeight * 3;
|
|
35
|
-
|
|
35
|
+
// 截断帧(0 < 长度 < frameBytes)按空帧处理,交由回退链兜底。
|
|
36
|
+
if (stdout.length < frameBytes)
|
|
36
37
|
return null;
|
|
37
38
|
return { width: options.displayWidth, height: options.displayHeight, data: stdout.subarray(0, frameBytes) };
|
|
38
39
|
}
|
|
@@ -93,8 +94,9 @@ export async function decodeRange(videoPath, window0Ms, window1Ms, options, onFr
|
|
|
93
94
|
return frames;
|
|
94
95
|
}
|
|
95
96
|
async function probePtsIndexExec(options, videoPath, w0, w1) {
|
|
96
|
-
// ffprobe
|
|
97
|
-
const ffprobe = options.
|
|
97
|
+
// ffprobe 显式配置优先;缺省时按与 ffmpeg 同目录约定派生
|
|
98
|
+
const ffprobe = options.ffprobePath
|
|
99
|
+
?? options.ffmpegPath.replace(/ffmpeg(\.exe)?$/i, 'ffprobe$1');
|
|
98
100
|
return probePtsIndex(ffprobe, videoPath, w0, w1, options.signal);
|
|
99
101
|
}
|
|
100
102
|
/** 区间解码输出几何(workMaxEdge 等比上限)。 */
|
|
@@ -153,6 +155,16 @@ export async function decodeRangeStreaming(videoPath, window0Ms, window1Ms, opti
|
|
|
153
155
|
let realigned = 0;
|
|
154
156
|
let killed = false;
|
|
155
157
|
let indexExhausted = false;
|
|
158
|
+
// 墙钟 30s 无帧推进告警(规格《六》§1):解码器长时间无输出即终止并报错。
|
|
159
|
+
const STALL_TIMEOUT_MS = 30_000;
|
|
160
|
+
let lastFrameWallMs = Date.now();
|
|
161
|
+
let stalled = false;
|
|
162
|
+
const stallTimer = setInterval(() => {
|
|
163
|
+
if (Date.now() - lastFrameWallMs > STALL_TIMEOUT_MS) {
|
|
164
|
+
stalled = true;
|
|
165
|
+
child.kill();
|
|
166
|
+
}
|
|
167
|
+
}, 1_000);
|
|
156
168
|
const exited = new Promise((resolveExit, rejectExit) => {
|
|
157
169
|
child.once('error', rejectExit);
|
|
158
170
|
child.once('close', (code) => resolveExit(code));
|
|
@@ -171,7 +183,9 @@ export async function decodeRangeStreaming(videoPath, window0Ms, window1Ms, opti
|
|
|
171
183
|
height: geometry.outH,
|
|
172
184
|
data: pending.subarray(0, frameBytes),
|
|
173
185
|
};
|
|
186
|
+
lastFrameWallMs = Date.now();
|
|
174
187
|
await onFrame(image, index[frameIndex].ptsMs);
|
|
188
|
+
lastFrameWallMs = Date.now();
|
|
175
189
|
pending = pending.length > frameBytes ? pending.subarray(frameBytes) : null;
|
|
176
190
|
frameIndex++;
|
|
177
191
|
}
|
|
@@ -189,12 +203,18 @@ export async function decodeRangeStreaming(videoPath, window0Ms, window1Ms, opti
|
|
|
189
203
|
child.kill();
|
|
190
204
|
throw error;
|
|
191
205
|
}
|
|
206
|
+
finally {
|
|
207
|
+
clearInterval(stallTimer);
|
|
208
|
+
}
|
|
192
209
|
if (options.signal?.aborted && !killed) {
|
|
193
210
|
child.kill();
|
|
194
211
|
await exited;
|
|
195
212
|
throw new PfStreamError('PFSTREAM_EXEC_ABORT', '解码已被调用方取消');
|
|
196
213
|
}
|
|
197
214
|
const code = await exited;
|
|
215
|
+
if (stalled) {
|
|
216
|
+
throw new PfStreamError('PFSTREAM_DECODE_STALL', `解码连续 ${STALL_TIMEOUT_MS}ms 无帧推进,已终止(可能为损坏媒体或解码器阻塞)`);
|
|
217
|
+
}
|
|
198
218
|
if (code !== 0 && !killed) {
|
|
199
219
|
const stderrTail = Buffer.concat(stderrChunks)
|
|
200
220
|
.subarray(Math.max(0, stderrBytes - 2048))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decoder.js","sourceRoot":"","sources":["../../src/stage0/decoder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"decoder.js","sourceRoot":"","sources":["../../src/stage0/decoder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateMachine.js","sourceRoot":"","sources":["../../src/stage2/stateMachine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA6BH,MAAM,OAAO,cAAc;IACzB,KAAK,GAAc,QAAQ,CAAC;IAC5B,cAAc,GAAG,CAAC,CAAC;IACnB,WAAW,GAAG,CAAC,CAAC;IAChB,IAAI,GAAG,CAAC,CAAC;IACT,aAAa,GAAG,CAAC,CAAC;IAClB,gBAAgB,GAAkB,IAAI,CAAC;IACvC,0BAA0B;IAC1B,eAAe,GAAkB,IAAI,CAAC;IACtC,kBAAkB,GAAkB,IAAI,CAAC;IACzC,qCAAqC;IACrC,sBAAsB,GAAkB,IAAI,CAAC;IAC7C,cAAc,GAAG,KAAK,CAAC;IAEvB,YAAY,IAAoC;QAC9C,IAAI,IAAI;YAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,QAAQ;QACN,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;
|
|
1
|
+
{"version":3,"file":"stateMachine.js","sourceRoot":"","sources":["../../src/stage2/stateMachine.ts"],"names":[],"mappings":"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"}
|