@aalis/plugin-image-sender 0.7.0 → 0.8.0
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/dist/index.d.ts.map +1 -1
- package/dist/index.js +47 -25
- package/dist/index.js.map +1 -1
- package/dist/media-signature.d.ts +13 -0
- package/dist/media-signature.d.ts.map +1 -0
- package/dist/media-signature.js +154 -0
- package/dist/media-signature.js.map +1 -0
- package/package.json +2 -2
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,EAIL,KAAK,cAAc,EAGpB,MAAM,oBAAoB,CAAC;;;;;;;;;;AA0C5B,wBAMG"}
|
package/dist/index.js
CHANGED
|
@@ -7,17 +7,19 @@
|
|
|
7
7
|
// 由出站归档监听器在后台描述并入档,让"AI 之前
|
|
8
8
|
// 发过的图/视频"能被 memory_recall 召回
|
|
9
9
|
//
|
|
10
|
-
// send_attachment 来源:url / storage_uri / history_ref
|
|
10
|
+
// send_attachment 来源:url / storage_uri / history_ref(不接受裸本地路径);
|
|
11
|
+
// 取自存储库的文件发送前读文件头核对格式(见 media-signature.ts)。
|
|
11
12
|
// 此插件不直接调用平台 API,而是 emit `outbound:message`(含 attachments[]);
|
|
12
13
|
// 由各 platform adapter(OneBot / WebUI)按自身能力处理结构化附件。
|
|
13
14
|
// ============================================================
|
|
14
15
|
import { media } from '@aalis/api-media';
|
|
15
16
|
import { memory } from '@aalis/api-memory';
|
|
16
17
|
import { messageArchive } from '@aalis/api-message-archive';
|
|
17
|
-
import { createStorageGateway, storage, toStorageUri } from '@aalis/api-storage';
|
|
18
|
+
import { createStorageGateway, isStorageNotFound, isStorageUri, storage, toStorageUri, } from '@aalis/api-storage';
|
|
18
19
|
import { tools } from '@aalis/api-tools';
|
|
19
20
|
import { definePlugin, events, logger, optional } from '@aalis/core';
|
|
20
21
|
import { AttachmentRefKind, formatAttachmentRef, WellKnownKinds, } from '@aalis/schema-message';
|
|
22
|
+
import { checkMediaHead, MEDIA_HEAD_BYTES } from './media-signature.js';
|
|
21
23
|
/** preview_image 单张候选识别等待上限。preview 的目的就是"看清"图,
|
|
22
24
|
* 本地视觉模型(如 33B)单图常需 15-25s,必须给足预算,否则必然超时使 preview 形同虚设。 */
|
|
23
25
|
const PREVIEW_TIMEOUT_MS = 25_000;
|
|
@@ -27,6 +29,8 @@ const ARCHIVE_DESCRIBE_TIMEOUT_MS = 25_000;
|
|
|
27
29
|
const VIDEO_DESCRIBE_TIMEOUT_MS = 30_000;
|
|
28
30
|
/** preview_image 单次允许的候选数量上限。 */
|
|
29
31
|
const PREVIEW_MAX_CANDIDATES = 8;
|
|
32
|
+
/** 宿主机绝对路径(`/abs`、`C:\path`、`C:/path`)。toStorageUri 会把它的首段当成根名,须先认出来挡在存储库外。 */
|
|
33
|
+
const HOST_ABSOLUTE_PATH = /^(?:\/|[a-zA-Z]:[\\/])/;
|
|
30
34
|
// tools 不入激活闸:出站附件归档(outbound:message 监听)只靠 archive / media,
|
|
31
35
|
// 没有工具服务时也该照常挂上;工具登记走注册账本,提供者上线后自动补挂。
|
|
32
36
|
const uses = {
|
|
@@ -48,22 +52,24 @@ export default definePlugin({
|
|
|
48
52
|
function registerImageSender(caps) {
|
|
49
53
|
const { tools, events, logger, media, memory, archive } = caps;
|
|
50
54
|
const storage = createStorageGateway(caps.storage);
|
|
51
|
-
//
|
|
52
|
-
// -
|
|
55
|
+
// 把存储库内的文件解析为发送可用的数据串:
|
|
56
|
+
// - 只读文件头,按 kind 核对格式,不符拒发(存储根里还有配置、令牌、记忆库等非媒体文件)
|
|
53
57
|
// - 可解析本地路径时转 file://(供 daemon 直链),否则保留原 URI
|
|
54
|
-
async function
|
|
55
|
-
|
|
56
|
-
// 而 storage 消费需要 storage URI `data:/images/...`。漏这步就是「图明明在却报找不到」。
|
|
57
|
-
const uri = toStorageUri(input);
|
|
58
|
+
async function loadStorageMedia(uri, kind) {
|
|
59
|
+
let head;
|
|
58
60
|
try {
|
|
59
|
-
await storage.
|
|
61
|
+
head = await storage.readFileRange(uri, 0, MEDIA_HEAD_BYTES);
|
|
60
62
|
}
|
|
61
|
-
catch {
|
|
62
|
-
|
|
63
|
+
catch (err) {
|
|
64
|
+
if (isStorageNotFound(err))
|
|
65
|
+
return { ok: false, error: `存储资源不存在: ${uri}` };
|
|
66
|
+
throw err;
|
|
63
67
|
}
|
|
68
|
+
const rejection = checkMediaHead(head, kind);
|
|
69
|
+
if (rejection)
|
|
70
|
+
return { ok: false, error: rejection };
|
|
64
71
|
const local = await tryResolveLocal(storage, uri);
|
|
65
|
-
|
|
66
|
-
return { ok: true, data: local ? `file://${local}` : uri, ref: input };
|
|
72
|
+
return { ok: true, data: local ? `file://${local}` : uri };
|
|
67
73
|
}
|
|
68
74
|
// ── preview_image ─────────────────────────────────────────────────────────
|
|
69
75
|
// 识别全靠 media:media 在场才挂,离场即撤(follow 在 media 上线 / 换人时各调一次,
|
|
@@ -186,18 +192,35 @@ function registerImageSender(caps) {
|
|
|
186
192
|
via = 'url';
|
|
187
193
|
}
|
|
188
194
|
else if (storageUri) {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
195
|
+
// 归一化:归档给 agent 的 ref 是历史相对路径 `data/images/...`(无冒号),
|
|
196
|
+
// 而 storage 消费需要 storage URI `data:/images/...`。漏这步就是「图明明在却报找不到」。
|
|
197
|
+
const loaded = await loadStorageMedia(toStorageUri(storageUri), kind);
|
|
198
|
+
if (!loaded.ok)
|
|
199
|
+
return JSON.stringify({ error: loaded.error });
|
|
200
|
+
data = loaded.data;
|
|
201
|
+
// ref 保持 input 原样,维持与既有归档(相对路径形态)的一致,供 history_ref 回查匹配。
|
|
202
|
+
refTag = storageUri;
|
|
194
203
|
via = 'storage_uri';
|
|
195
204
|
}
|
|
196
205
|
else if (historyRef) {
|
|
197
206
|
const found = await resolveHistoryRef(memory, storage, callCtx.sessionId, historyRef);
|
|
198
207
|
if (!found)
|
|
199
208
|
return JSON.stringify({ error: `未在历史中找到引用: ${historyRef}` });
|
|
200
|
-
|
|
209
|
+
if (found.startsWith('http://') || found.startsWith('https://')) {
|
|
210
|
+
data = found;
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
// 本地来源只认存储库内的文件:storage URI 或历史相对路径(data/images/…)。宿主机绝对路径、
|
|
214
|
+
// file://、data URI 等来源不在存储库内,读不了文件头,无从核对格式
|
|
215
|
+
const uri = toStorageUri(found);
|
|
216
|
+
if (HOST_ABSOLUTE_PATH.test(found) || !isStorageUri(uri)) {
|
|
217
|
+
return JSON.stringify({ error: `引用 ${historyRef} 的来源不在存储库内,无法核对格式,不能发送` });
|
|
218
|
+
}
|
|
219
|
+
const loaded = await loadStorageMedia(uri, kind);
|
|
220
|
+
if (!loaded.ok)
|
|
221
|
+
return JSON.stringify({ error: loaded.error });
|
|
222
|
+
data = loaded.data;
|
|
223
|
+
}
|
|
201
224
|
refTag = historyRef.replace(/^ref:/, '').trim();
|
|
202
225
|
via = 'history_ref';
|
|
203
226
|
}
|
|
@@ -329,7 +352,10 @@ async function archiveOutboundAttachment(caps, sessionId, ref, description, kind
|
|
|
329
352
|
caps.logger.warn(`[image-sender] 入档失败: ${err instanceof Error ? err.message : err}`);
|
|
330
353
|
}
|
|
331
354
|
}
|
|
332
|
-
/**
|
|
355
|
+
/**
|
|
356
|
+
* 在最近 200 条消息里寻找匹配 historyRef 的媒体来源:http(s) URL、存储库内文件的 storage URI,
|
|
357
|
+
* 或历史附件里的原样数据串(能否发送由调用方判定)。
|
|
358
|
+
*/
|
|
333
359
|
async function resolveHistoryRef(memory, storage, sessionId, ref) {
|
|
334
360
|
const service = memory.current;
|
|
335
361
|
if (!service)
|
|
@@ -342,17 +368,13 @@ async function resolveHistoryRef(memory, storage, sessionId, ref) {
|
|
|
342
368
|
if (normalized.startsWith('http://') || normalized.startsWith('https://')) {
|
|
343
369
|
return normalized;
|
|
344
370
|
}
|
|
345
|
-
// file:// ref:原样返回
|
|
346
|
-
if (normalized.startsWith('file://'))
|
|
347
|
-
return normalized;
|
|
348
371
|
// storage URI / 历史相对路径:归一化后 stat;命中即用,未命中 fallthrough 到子串匹配。
|
|
349
372
|
// 完整相对路径 `data/images/x.jpg` → `data:/images/x.jpg` 能直接命中;
|
|
350
373
|
// 单段 hash(如 `abc123.jpg`)归一化成 `data:/abc123.jpg` stat 失败,正确回落子串匹配。
|
|
351
374
|
const asUri = normalized.includes(':/') ? normalized : toStorageUri(normalized);
|
|
352
375
|
try {
|
|
353
376
|
await storage.stat(asUri);
|
|
354
|
-
|
|
355
|
-
return local ? `file://${local}` : asUri;
|
|
377
|
+
return asUri;
|
|
356
378
|
}
|
|
357
379
|
catch {
|
|
358
380
|
// fallthrough 到历史子串匹配
|
package/dist/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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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** 可发送的附件类型。 */
|
|
2
|
+
export type MediaKind = 'image' | 'audio' | 'video';
|
|
3
|
+
/**
|
|
4
|
+
* 认定格式要读的文件头长度:与 file(1) 在前 4 KiB 里找 Matroska DocType 的范围一致,也容得下 ftyp 盒的
|
|
5
|
+
* 兼容品牌表;其余签名都在前 20 字节内。
|
|
6
|
+
*/
|
|
7
|
+
export declare const MEDIA_HEAD_BYTES = 4096;
|
|
8
|
+
/**
|
|
9
|
+
* 核对文件头是否为所请求 kind 的受支持格式。相符返回 null;不符返回给模型的拒发说明:
|
|
10
|
+
* 不是任何受支持的媒体格式时说明不能按该类型发送,是别类媒体时说出检测到的格式与该用的 kind。
|
|
11
|
+
*/
|
|
12
|
+
export declare function checkMediaHead(head: Uint8Array, kind: MediaKind): string | null;
|
|
13
|
+
//# sourceMappingURL=media-signature.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-signature.d.ts","sourceRoot":"","sources":["../src/media-signature.ts"],"names":[],"mappings":"AASA,gBAAgB;AAChB,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAoDrC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAY/E"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// media-signature.ts — 按文件头核对附件格式
|
|
3
|
+
//
|
|
4
|
+
// 存储根里除了媒体,还有配置、令牌、记忆库、日志;只凭 kind 与路径发送,
|
|
5
|
+
// 这些文件会被当成图片发出去。send_attachment 从本地取文件时先读文件开头的
|
|
6
|
+
// 字节,按下表的格式签名认定格式,只有落在所请求 kind 的白名单里才放行。
|
|
7
|
+
// 签名依据各格式的规范,并与 file(1) 的 magic 库对照(SILK 不在该库里)。
|
|
8
|
+
// ============================================================
|
|
9
|
+
/**
|
|
10
|
+
* 认定格式要读的文件头长度:与 file(1) 在前 4 KiB 里找 Matroska DocType 的范围一致,也容得下 ftyp 盒的
|
|
11
|
+
* 兼容品牌表;其余签名都在前 20 字节内。
|
|
12
|
+
*/
|
|
13
|
+
export const MEDIA_HEAD_BYTES = 4096;
|
|
14
|
+
const KIND_LABEL = { image: '图片', audio: '音频', video: '视频' };
|
|
15
|
+
/** BMP 偏移 14 处 DIB 头长度的合法取值(file(1) 认的各版本);只有 'BM' 两字节太弱,文本也可能以它开头。 */
|
|
16
|
+
const BMP_DIB_HEADER_SIZES = new Set([12, 16, 24, 40, 48, 52, 56, 64, 108, 124]);
|
|
17
|
+
/** AMR 文件存储格式的魔数:单声道窄带、宽带与各自的多声道版本(RFC 4867 §5)。 */
|
|
18
|
+
const AMR_MAGICS = ['#!AMR\n', '#!AMR-WB\n', '#!AMR_MC1.0\n', '#!AMR-WB_MC1.0\n'];
|
|
19
|
+
const AVIF_BRANDS = new Set(['avif', 'avis']);
|
|
20
|
+
/** HEIF 的图片与图片序列品牌(ISO/IEC 23008-12):HEVC 编码的 heic 系与通用的 mif1、msf1。 */
|
|
21
|
+
const HEIF_BRANDS = new Set(['heic', 'heix', 'heim', 'heis', 'hevc', 'hevx', 'hevm', 'hevs', 'mif1', 'msf1']);
|
|
22
|
+
const M4A_BRANDS = new Set(['M4A ', 'M4B ', 'M4P ']);
|
|
23
|
+
const SIGNATURES = [
|
|
24
|
+
{ kind: 'image', format: 'PNG', matches: h => hasBytes(h, 0, [0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]) },
|
|
25
|
+
// SOI 标记 FFD8 之后紧跟下一个标记的 FF
|
|
26
|
+
{ kind: 'image', format: 'JPEG', matches: h => hasBytes(h, 0, [0xff, 0xd8, 0xff]) },
|
|
27
|
+
{ kind: 'image', format: 'GIF', matches: h => hasAscii(h, 0, 'GIF87a') || hasAscii(h, 0, 'GIF89a') },
|
|
28
|
+
{ kind: 'image', format: 'WebP', matches: h => isRiff(h, 'WEBP') },
|
|
29
|
+
{
|
|
30
|
+
kind: 'image',
|
|
31
|
+
format: 'BMP',
|
|
32
|
+
matches: h => hasAscii(h, 0, 'BM') && h.length >= 18 && BMP_DIB_HEADER_SIZES.has(readUint32LE(h, 14)),
|
|
33
|
+
},
|
|
34
|
+
{ kind: 'image', format: 'AVIF', matches: h => isoMediaFormat(h) === 'AVIF' },
|
|
35
|
+
{ kind: 'image', format: 'HEIC', matches: h => isoMediaFormat(h) === 'HEIC' },
|
|
36
|
+
{ kind: 'audio', format: 'MP3', matches: h => isId3v2(h) || isMp3Frame(h) },
|
|
37
|
+
{ kind: 'audio', format: 'WAV', matches: h => isRiff(h, 'WAVE') },
|
|
38
|
+
// 页头捕获模式 'OggS' 加结构版本 0(RFC 3533)
|
|
39
|
+
{ kind: 'audio', format: 'OGG', matches: h => hasBytes(h, 0, [0x4f, 0x67, 0x67, 0x53, 0x00]) },
|
|
40
|
+
{ kind: 'audio', format: 'FLAC', matches: h => hasAscii(h, 0, 'fLaC') },
|
|
41
|
+
{ kind: 'audio', format: 'AMR', matches: h => AMR_MAGICS.some(m => hasAscii(h, 0, m)) },
|
|
42
|
+
// QQ 语音的 SILK 前面可能多一个 0x02
|
|
43
|
+
{
|
|
44
|
+
kind: 'audio',
|
|
45
|
+
format: 'SILK',
|
|
46
|
+
matches: h => hasAscii(h, 0, '#!SILK_V3') || (h[0] === 0x02 && hasAscii(h, 1, '#!SILK_V3')),
|
|
47
|
+
},
|
|
48
|
+
{ kind: 'audio', format: 'M4A', matches: h => isoMediaFormat(h) === 'M4A' },
|
|
49
|
+
{ kind: 'video', format: 'MP4', matches: h => isoMediaFormat(h) === 'MP4' },
|
|
50
|
+
{ kind: 'video', format: 'MOV', matches: h => isoMediaFormat(h) === 'MOV' },
|
|
51
|
+
{ kind: 'video', format: 'WebM', matches: h => ebmlDocType(h) === 'webm' },
|
|
52
|
+
{ kind: 'video', format: 'MKV', matches: h => ebmlDocType(h) === 'matroska' },
|
|
53
|
+
{ kind: 'video', format: 'AVI', matches: h => isRiff(h, 'AVI ') },
|
|
54
|
+
];
|
|
55
|
+
/**
|
|
56
|
+
* 核对文件头是否为所请求 kind 的受支持格式。相符返回 null;不符返回给模型的拒发说明:
|
|
57
|
+
* 不是任何受支持的媒体格式时说明不能按该类型发送,是别类媒体时说出检测到的格式与该用的 kind。
|
|
58
|
+
*/
|
|
59
|
+
export function checkMediaHead(head, kind) {
|
|
60
|
+
const detected = SIGNATURES.find(s => s.matches(head));
|
|
61
|
+
if (!detected) {
|
|
62
|
+
const supported = SIGNATURES.filter(s => s.kind === kind)
|
|
63
|
+
.map(s => s.format)
|
|
64
|
+
.join('、');
|
|
65
|
+
return `文件不是受支持的${KIND_LABEL[kind]}格式(${supported}),不能按 ${kind} 发送`;
|
|
66
|
+
}
|
|
67
|
+
if (detected.kind !== kind) {
|
|
68
|
+
return `文件是 ${detected.format} ${KIND_LABEL[detected.kind]},不能按 ${kind} 发送;请改用 kind=${detected.kind} 重新发送`;
|
|
69
|
+
}
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* ISO 基础媒体文件(ISO/IEC 14496-12)按 ftyp 盒的品牌分类。AVIF 与 HEIF 在主品牌与兼容品牌里都找:
|
|
74
|
+
* AVIF 文件的主品牌也可能写 mif1,avif 只列在兼容品牌里。M4A 与 MOV 只看主品牌:iTunes 的 M4V 视频
|
|
75
|
+
* 会把 'M4A ' 列进兼容品牌。其余品牌(isom、mp41、mp42、3gp 系等)都归 MP4 家族的视频容器。
|
|
76
|
+
*/
|
|
77
|
+
function isoMediaFormat(h) {
|
|
78
|
+
if (h.length < 12 || !hasAscii(h, 4, 'ftyp'))
|
|
79
|
+
return null;
|
|
80
|
+
const major = ascii(h, 8, 4);
|
|
81
|
+
const boxEnd = Math.min(readUint32BE(h, 0), h.length);
|
|
82
|
+
const brands = [major];
|
|
83
|
+
for (let offset = 16; offset + 4 <= boxEnd; offset += 4)
|
|
84
|
+
brands.push(ascii(h, offset, 4));
|
|
85
|
+
if (brands.some(b => AVIF_BRANDS.has(b)))
|
|
86
|
+
return 'AVIF';
|
|
87
|
+
if (brands.some(b => HEIF_BRANDS.has(b)))
|
|
88
|
+
return 'HEIC';
|
|
89
|
+
if (M4A_BRANDS.has(major))
|
|
90
|
+
return 'M4A';
|
|
91
|
+
if (major === 'qt ')
|
|
92
|
+
return 'MOV';
|
|
93
|
+
return 'MP4';
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Matroska 与 WebM 同为 EBML 容器(魔数 1A45DFA3),靠 DocType 元素(ID 0x4282)区分:
|
|
97
|
+
* 与 file(1) 一样在文件头里找到它,跳过一字节长度后比对。
|
|
98
|
+
*/
|
|
99
|
+
function ebmlDocType(h) {
|
|
100
|
+
if (!hasBytes(h, 0, [0x1a, 0x45, 0xdf, 0xa3]))
|
|
101
|
+
return null;
|
|
102
|
+
for (let i = 4; i + 1 < h.length; i++) {
|
|
103
|
+
if (h[i] !== 0x42 || h[i + 1] !== 0x82)
|
|
104
|
+
continue;
|
|
105
|
+
if (hasAscii(h, i + 3, 'webm'))
|
|
106
|
+
return 'webm';
|
|
107
|
+
if (hasAscii(h, i + 3, 'matroska'))
|
|
108
|
+
return 'matroska';
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
/** ID3v2 标签:'ID3' 后接主版本号(现有 2、3、4 三版)与不为 FF 的修订号。 */
|
|
114
|
+
function isId3v2(h) {
|
|
115
|
+
return hasAscii(h, 0, 'ID3') && h.length >= 5 && h[3] >= 2 && h[3] <= 4 && h[4] !== 0xff;
|
|
116
|
+
}
|
|
117
|
+
/** MPEG 音频帧头:11 位同步,版本不为保留值 01,层为 Layer III(01),码率索引不为 1111,采样率索引不为 11。 */
|
|
118
|
+
function isMp3Frame(h) {
|
|
119
|
+
if (h.length < 3 || h[0] !== 0xff || (h[1] & 0xe0) !== 0xe0)
|
|
120
|
+
return false;
|
|
121
|
+
const version = (h[1] >> 3) & 0x03;
|
|
122
|
+
const layer = (h[1] >> 1) & 0x03;
|
|
123
|
+
const bitrateIndex = h[2] >> 4;
|
|
124
|
+
const sampleRateIndex = (h[2] >> 2) & 0x03;
|
|
125
|
+
return version !== 0x01 && layer === 0x01 && bitrateIndex !== 0x0f && sampleRateIndex !== 0x03;
|
|
126
|
+
}
|
|
127
|
+
/** RIFF 容器:'RIFF' 加 4 字节长度,偏移 8 处是形式类型(WAVE、AVI 、WEBP)。 */
|
|
128
|
+
function isRiff(h, formType) {
|
|
129
|
+
return hasAscii(h, 0, 'RIFF') && hasAscii(h, 8, formType);
|
|
130
|
+
}
|
|
131
|
+
function hasBytes(h, offset, bytes) {
|
|
132
|
+
if (h.length < offset + bytes.length)
|
|
133
|
+
return false;
|
|
134
|
+
return bytes.every((b, i) => h[offset + i] === b);
|
|
135
|
+
}
|
|
136
|
+
function hasAscii(h, offset, text) {
|
|
137
|
+
if (h.length < offset + text.length)
|
|
138
|
+
return false;
|
|
139
|
+
for (let i = 0; i < text.length; i++) {
|
|
140
|
+
if (h[offset + i] !== text.charCodeAt(i))
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
143
|
+
return true;
|
|
144
|
+
}
|
|
145
|
+
function ascii(h, offset, length) {
|
|
146
|
+
return String.fromCharCode(...h.subarray(offset, offset + length));
|
|
147
|
+
}
|
|
148
|
+
function readUint32BE(h, offset) {
|
|
149
|
+
return ((h[offset] << 24) | (h[offset + 1] << 16) | (h[offset + 2] << 8) | h[offset + 3]) >>> 0;
|
|
150
|
+
}
|
|
151
|
+
function readUint32LE(h, offset) {
|
|
152
|
+
return (h[offset] | (h[offset + 1] << 8) | (h[offset + 2] << 16) | (h[offset + 3] << 24)) >>> 0;
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=media-signature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-signature.js","sourceRoot":"","sources":["../src/media-signature.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/plugin-image-sender",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@types/node": "^22.0.0",
|
|
36
36
|
"typescript": "^5.7.0",
|
|
37
|
-
"@aalis/core": "0.
|
|
37
|
+
"@aalis/core": "0.19.0"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"@aalis/core": ">=0.18.0 <1.0.0"
|