MCPcopy Create free account

hub / github.com/2234839/ai-nvr / functions

Functions788 in github.com/2234839/ai-nvr

↓ 1 callersMethodqueryChanges
查询信号变更历史
src/signal/store.ts:266
↓ 1 callersMethodqueryRecords
查询检测记录
src/observer/storage.ts:261
↓ 1 callersMethodqueryWithTotal
查询事件列表(带总数,分离 COUNT + SELECT 避免窗口函数全量扫描)
src/storage/events.ts:88
↓ 1 callersMethodrasterizePolygon
* 将多边形光栅化到 mask 上(扫描线填充算法) * 坐标为归一化值 (0-1),映射到图像像素坐标
src/detection/motion.ts:222
↓ 1 callersMethodreadFile
* 读取文件内容(异步)
src/storage/storage-fs.ts:145
↓ 1 callersMethodregister
注册 PTZ 摄像头
src/ptz/index.ts:176
↓ 1 callersFunctionregisterStream
(stream: { pruneBuffer: () => void; catchUpToLive: () => void; needsPrune: boolean })
web/src/composables/useFmp4Stream.ts:41
↓ 1 callersFunctionrelease
()
src/observer/clip-extractor.ts:57
↓ 1 callersMethodrelease
()
src/ai/multimodal-analyzer.ts:128
↓ 1 callersMethodreleaseSlot
()
src/ai/patrol.ts:192
↓ 1 callersMethodreloadMode
运行时切换录制模式
src/storage/recorder.ts:218
↓ 1 callersMethodremoveByCategory
移除某个 category 下所有文件索引
src/storage/file-index.ts:162
↓ 1 callersFunctionremoveCameraFromConfig
(cameraId: string)
src/config.ts:364
↓ 1 callersMethodremoveObserver
删除观测器
src/observer/storage.ts:248
↓ 1 callersMethodremoveOlder
移除某个 category 中早于指定时间的文件索引
src/storage/file-index.ts:172
↓ 1 callersMethodremoveRingBuffer
移除环形缓冲区
src/storage/recorder.ts:113
↓ 1 callersMethodremoveSignal
删除信号
src/signal/store.ts:259
↓ 1 callersMethodreset
()
src/camera/h264-fmp4-muxer.ts:148
↓ 1 callersMethodresolveModelConfig
解析模型配置
src/observer/vlm-client.ts:20
↓ 1 callersFunctionringPush
O(1) 追加
src/log-buffer.ts:29
↓ 1 callersFunctionringToArray
收集所有条目(保持时间顺序)
src/log-buffer.ts:41
↓ 1 callersMethodrowToCrossLine
数据库行 → CrossLine 对象
src/storage/cross-lines.ts:162
↓ 1 callersFunctionrunFfmpegAsync
异步执行 ffmpeg 并收集 stdout/stderr
src/api/index.ts:46
↓ 1 callersFunctionrunFfmpegCapture
异步执行 ffmpeg 截帧,返回 JPEG Buffer
src/api/index.ts:64
↓ 1 callersFunctionsaveRuntimeToYaml
(settings: Record<string, unknown>)
src/config.ts:419
↓ 1 callersMethodsaveSnapshot
保存快照(原始帧 + 检测结果 JSON) — 异步
src/storage/snapshots.ts:69
↓ 1 callersMethodsaveSnapshots
保存快照(原图 + ROI 裁剪后的处理图)
src/observer/result-processor.ts:143
↓ 1 callersMethodscanFfmpegProcesses
后台异步扫描 ffmpeg 进程(不阻塞事件循环)
src/monitor.ts:235
↓ 1 callersMethodscheduleAnalysis
调度分析(带节流)
src/ai/multimodal-analyzer.ts:216
↓ 1 callersMethodscheduleExecution
调度执行(带并发控制 + 时段检查)
src/observer/scheduler.ts:134
↓ 1 callersFunctionschedulePush
调度帧推送(事件驱动)
src/api/index.ts:2933
↓ 1 callersMethodscheduleReconnect
()
src/camera/h264-fmp4-muxer.ts:944
↓ 1 callersMethodscheduleReconnect
()
src/camera/jpeg-extractor.ts:292
↓ 1 callersMethodscheduleReconnect
()
web/src/services/events.ts:239
↓ 1 callersMethodscheduleStop
延迟停止录像(motion 模式)
src/storage/recorder.ts:604
↓ 1 callersFunctionsecurityEncode
* TP-Link 密码加密(XOR cipher) * 从设备 JS (class.js) 逆向的 securityEncode 逻辑
src/ptz/tplink-ptz.ts:45
↓ 1 callersMethodsend
异步发送钉钉消息(fire-and-forget)
src/notify/dingtalk.ts:158
↓ 1 callersMethodsendWebhook
异步发送 Webhook(fire-and-forget,不阻塞事件处理)
src/notify/webhook.ts:149
↓ 1 callersFunctionserveStatic
服务静态文件,SPA fallback 到 index.html
src/api/index.ts:3015
↓ 1 callersMethodsetFfmpegPath
(path: string)
src/observer/frame-prep.ts:35
↓ 1 callersMethodsetInitSegment
更新 init segment(收到新的 fmp4:init 时调用)
src/storage/fmp4-ring-buffer.ts:38
↓ 1 callersMethodsetMany
批量设置偏好(事务保证原子性)
src/storage/preferences.ts:60
↓ 1 callersMethodsetRefImagesDir
(dir: string)
src/observer/frame-prep.ts:36
↓ 1 callersMethodsetRingBuffer
注入 fMP4 环形缓冲区(由 CameraManager 创建并注入)
src/storage/recorder.ts:108
↓ 1 callersMethodsetSaveSnapshot
(fn: (cameraId: string, timestamp: number, jpeg: Buffer) => void)
src/observer/engine.ts:53
↓ 1 callersMethodsetSignalStore
注入信号存储(用于 setSignal 动作)
src/alert/action.ts:32
↓ 1 callersFunctionsetToken
(token: string)
web/src/services/auth.ts:12
↓ 1 callersMethodsignUrl
对 Webhook URL 进行加签(HmacSHA256 + timestamp)
src/notify/dingtalk.ts:175
↓ 1 callersMethodsnapshot
生成全局指标快照
src/ai/metrics.ts:73
↓ 1 callersMethodsnapshotCameraSource
快照摄像头源配置(包含 ROI 坐标快照,避免后续修改影响历史数据)
src/observer/result-processor.ts:187
↓ 1 callersMethodstart
()
src/camera/h264-fmp4-muxer.ts:635
↓ 1 callersMethodstartBackgroundRefresh
* 启动后台磁盘空间刷新(每 60 秒异步查询一次) * API 请求只读缓存,永不阻塞
src/storage/disk-usage.ts:119
↓ 1 callersFunctionstartClock
()
web/src/composables/useClock.ts:21
↓ 1 callersMethodstartContinuous
持续录制:启动一段录制,到时后自动开始下一段
src/storage/recorder.ts:419
↓ 1 callersMethodstartEventMode
event 模式:订阅触发事件
src/storage/recorder.ts:239
↓ 1 callersMethodstartObserverTimer
(obs: Observer)
src/observer/scheduler.ts:121
↓ 1 callersMethodstartRecording
开始录像(motion 触发模式)
src/storage/recorder.ts:449
↓ 1 callersFunctionstartServer
( port: number, cameraManager: CameraManager, eventBus: EventBus, eventStorage: EventStorage, record
src/api/index.ts:145
↓ 1 callersFunctionstartWsHeartbeat
()
src/api/index.ts:98
↓ 1 callersFunctionstopClock
()
web/src/composables/useClock.ts:28
↓ 1 callersFunctiontextEmbed
提取文本嵌入
src/ai/clip-worker.ts:139
↓ 1 callersMethodtoGifAsync
* 异步将视频片段导出为 GIF 动图
src/storage/export.ts:270
↓ 1 callersMethodtoggleStar
切换事件收藏状态
src/storage/events.ts:146
↓ 1 callersMethodtrackRemove
记录文件删除,返回文件大小
src/storage/storage-fs.ts:292
↓ 1 callersMethodtriggerNow
手动触发一轮巡逻(前端按钮触发)
src/ai/patrol.ts:122
↓ 1 callersFunctiontryDownload
()
src/ai/model-downloader.ts:59
↓ 1 callersFunctionunregisterStream
(stream: { pruneBuffer: () => void; catchUpToLive: () => void; needsPrune: boolean })
web/src/composables/useFmp4Stream.ts:49
↓ 1 callersMethodunregisterStream
移除摄像头
src/storage/recorder.ts:100
↓ 1 callersFunctionupdateCameraInConfig
(cameraId: string, updates: { friendlyName?: string; hdUrl?: string; sdUrl?: string; group?: string })
src/config.ts:378
↓ 1 callersMethodupdateCooldown
更新冷却时间
src/observer/scheduler.ts:209
↓ 1 callersMethodupdateDynamicSubscriptions
根据规则订阅的事件类型动态注册 EventBus 监听
src/alert/engine.ts:71
↓ 1 callersMethodupdateObserver
更新观测器
src/observer/storage.ts:219
↓ 1 callersMethodupdateRule
更新规则
src/alert/storage.ts:198
↓ 1 callersMethodupdateSignal
更新信号定义
src/signal/store.ts:187
↓ 1 callersMethodupdateSignals
更新信号值
src/observer/result-processor.ts:118
↓ 1 callersMethodupsert
* 更新追踪目标 * 新目标:裁剪快照并保存 * 已有目标:当质量分数更高时自动更新快照
src/storage/tracks.ts:98
↓ 1 callersFunctionusePreferences
()
web/src/composables/usePreferences.ts:115
↓ 1 callersFunctionvalidateConfig
运行时配置校验,发现不合理值时 warn 并自动修正
src/config.ts:213
↓ 1 callersFunctionwatchConfig
(configPath: string | undefined, onChange: (config: AppConfig) => void)
src/config.ts:398
↓ 1 callersMethodwriteInit
写入 init segment(ftyp + moov)
src/storage/fmp4-writer.ts:84
↓ 1 callersMethodwriteSegment
将 fMP4 segment 写入环形缓冲 + 正在录像的 writer
src/storage/recorder.ts:322
↓ 1 callersMethodwriteTfdt
原地写入 tfdt PTS
src/camera/h264-fmp4-muxer.ts:564
↓ 1 callersFunctionzeroShot
零样本分类
src/ai/clip-worker.ts:162
↓ 1 callersMethodzipBatch
* 批量打包录像为 ZIP 文件
src/storage/export.ts:324
↓ 1 callersMethodzoneStats
* 按区域聚合统计事件(enter-zone / leave-zone / dwell / loiter / line-cross) * 使用 SQLite json_extract 直接在 SQL 层聚合,避免全量加载到 JS 内存
src/storage/events.ts:248
MethodabsoluteMove
绝对移动
src/ptz/tplink-ptz.ts:113
MethodabsoluteMove
( position: { x?: number; y?: number; zoom?: number }, speed?: { x?: number; y?: number; zoom?: number
src/ptz/index.ts:95
MethodabsoluteMove
绝对移动到指定位置
src/ptz/index.ts:263
Methodadd
添加检测线段
src/storage/cross-lines.ts:120
FunctionauthUrl
(path: string)
web/src/services/auth.ts:74
FunctionbatchPurge
( db: Database, tableName: string, timestampColumn: string, beforeTimestamp: number, )
src/storage/sql-utils.ts:28
FunctionbindPref
(key: string, defaultValue: T)
web/src/composables/usePreferences.ts:107
Methodbytes
当前缓冲的总字节大小
src/storage/fmp4-ring-buffer.ts:129
FunctioncallLlmChat
(params: LlmChatParams)
src/ai/llm-client.ts:26
FunctioncameraName
(id: string)
web/src/composables/useCameraNameMap.ts:23
Functioncancel
()
src/api/index.ts:847
Methodcheck
()
src/ai/patrol.ts:180
MethodclassifyTarget
* 对检测目标执行零样本分类 * @param jpeg 原始 JPEG 帧 * @param box 检测框(归一化 0-1) * @param label YOLO 基础标签(如 "dog", "person") * @returns 分类结果(候选标签 + 分数)
src/ai/clip-service.ts:389
Functioncleanup
()
web/src/composables/useClock.ts:41
Methodcleanup
清理超过指定天数的轨迹数据
src/storage/track-trajectory.ts:182
← previousnext →401–500 of 788, ranked by callers