336 Commits

Author SHA1 Message Date
SilentWind
b5d13ee16e Merge pull request #317 from mofeng-git/dev
Dev
v261001
2026-10-01 23:22:59 +08:00
mofeng-git
66a13d3d8c chore: bump version to v0.2.8 2026-10-01 23:18:40 +08:00
mofeng-git
8b4ca6d080 refactor(video): 移除性能实验开关和逐帧统计代码 2026-10-01 23:05:24 +08:00
mofeng-git
9a1f4ff4b5 perf(audio,hid): 减少 PCM 复制和鼠标热路径分配与轮询 2026-10-01 22:55:57 +08:00
mofeng-git
3b8a4a6f34 perf(video): 减少闲置缓冲并容忍短时输出背压 2026-10-01 22:50:37 +08:00
mofeng-git
4f59e78179 refactor: 将 DTLS 本地依赖迁移到 libs 目录 2026-10-01 22:46:36 +08:00
mofeng-git
2f60e61dd5 perf(video): 消除中间帧复制并优化 MJPEG 有界预取
通过 Bytes 所有权和只读 AVBufferRef 引用池化 NV12 输入,消除中间 AVFrame 的整帧复制,并保留 V4L2 编码包脱离硬件缓冲的处理。

允许输出健康时有界预取 MJPEG,在输出背压时优先解码前丢帧;增加等帧、输出等待、丢帧原因及编码分段耗时统计,提供预取和所有权输入的对照开关。

补充缓冲寿命、只读保护、软件编码回退和队列策略测试及接口说明,保留现有 PTS、解码 worker、音频和加密行为。
2026-10-01 22:39:04 +08:00
mofeng-git
318b58b26a perf(video): 优化视频流水线并统一使用 vendored OpenSSL
使用固定采集、解码和编码线程及同步最新帧槽,减少同步异步跨界和无效 MJPEG 解码。

编码前预留消费者容量,以完整批次投递编码结果并隔离慢客户端,避免丢失 H.264 参考帧;保留 PTS 修正,不增加 IDR 节流。

复用 Annex-B 缓冲并增加低频发送分项统计,默认启用 vendored OpenSSL SRTP AES-CM 后端。

HTTP 客户端、HTTPS 服务端和本地 DTLS 证书验证迁移至 OpenSSL,移除 rustls TLS 引擎依赖,保留证书验证、媒体加密和原有协议协商。
2026-10-01 18:34:40 +08:00
mofeng-git
48cd06c7a4 fix(web): 移除控制台视频区外围留白 2026-09-29 20:34:00 +08:00
mofeng-git
99da8a3c61 修复:按 PTS 生成 H264 RTP 时间戳 2026-09-29 20:32:29 +08:00
mofeng-git
1e0b0407d3 修复:适配 CH9329F 71 字节参数响应 2026-09-29 20:32:29 +08:00
mofeng-git
7e6dc91095 修复:校验 V4L2 编码协商尺寸,避免送帧越界崩溃 2026-09-27 13:42:38 +08:00
SilentWind
d854b6a220 Merge pull request #314 from mofeng-git/dev
Dev
2026-09-26 13:15:07 +08:00
mofeng-git
f8fb64ad8c fix(web): 修复初始化向导未应用所选 HID 配置 2026-09-26 11:47:05 +08:00
mofeng-git
0e8c323659 chore(web): 清理四项未使用的前端开发依赖 2026-09-26 11:31:37 +08:00
SilentWind
0956da4ae2 Merge pull request #313 from mofeng-git/dev
Dev
v260926
2026-09-26 09:33:40 +08:00
mofeng-git
03cff9d9a8 fix(web): 优化 HID 兼容配置入口并调整引导布局 2026-09-26 09:28:21 +08:00
mofeng-git
0a041c2caa fix(web): 修复控制台布局动态切换残留问题 2026-09-26 00:57:16 +08:00
mofeng-git
83cbfb6924 fix(web): 移除鼠标配置中的 HID 状态信息 2026-09-26 00:37:14 +08:00
mofeng-git
6010c39cd8 fix(web): 优化 HID 引导布局并取消完成后自动弹窗 2026-09-26 00:31:36 +08:00
mofeng-git
4cf3f4e252 fix(web): 完善后端 404 响应并修复 /api 未匹配路由被静态兜底遮蔽
- 静态资源缺失时返回 404 HTML,移除"前端未构建"占位页
- /api 未匹配路由返回统一的 404 JSON
- 静态兜底由 /{*path} 改为 fallback_service,避免在 axum 0.8 下遮蔽嵌套 /api 的 fallback 并导致鉴权被绕过
2026-09-22 21:42:19 +08:00
mofeng-git
3d3110c3d7 chore: 许可证由 GPL-2.0 修正为 AGPL-3.0-only 并补全第三方归属声明 2026-09-22 10:14:43 +08:00
mofeng-git
22912707b5 chore: 移除未使用的 libloading 依赖 2026-09-22 09:35:26 +08:00
mofeng-git
e85f0a9bfe build: 切换国内 Rust/APT 镜像至中科大并支持自定义下载代理 2026-09-22 09:30:07 +08:00
SilentWind
9ef5011760 Merge pull request #312 from mofeng-git/dev
Dev
v260921
2026-09-21 21:50:53 +08:00
mofeng-git
d71112380c chore: bump version to v0.2.7 2026-09-21 21:49:52 +08:00
mofeng-git
491bfbecb5 fix: improve UAC playback and OTG rebinding 2026-09-21 21:47:49 +08:00
mofeng-git
8a6cc98806 fix(build): 禁用阿里云镜像推送的证明元数据 2026-09-17 18:15:08 +08:00
mofeng-git
728373b067 build: 撤销 Debian 11 快照修复并迁移至 Debian 12 2026-09-16 23:18:51 +08:00
mofeng-git
c62ff2da87 fix(extensions): explicitly disable gostc TLS for HTTP connections 2026-09-12 23:10:50 +08:00
SilentWind
572bf859ba Merge pull request #309 from mofeng-git/fix/uac-native-alsa
fix: 修正 UAC 链接顺序及原生 ALSA 启动恢复
2026-09-11 08:24:02 +08:00
SilentWind
aef136241a Merge pull request #304 from drgnchan/fix/ch9329-macos-drag
fix(hid): add macOS drag compatibility for OTG and CH9329
2026-09-10 23:02:29 +08:00
mofeng-git
78af9f67de fix(hid): share macOS drag compatibility across OTG and CH9329 2026-09-10 23:00:34 +08:00
mofeng-git
9f34b4109b fix: 修正 UAC 链接顺序及原生 ALSA 启动恢复 2026-09-10 22:43:36 +08:00
mofeng-git
1967d22dff Merge remote-tracking branch 'origin/dev' into review/pr304-macos 2026-09-10 22:42:18 +08:00
mofeng-git
0cba8ab127 fix: 固定 Debian 11 软件源快照以修复交叉编译 2026-09-10 14:08:17 +08:00
raymond
d002226acb merge: resolve dev conflicts for CH9329 macOS drag compatibility 2026-09-07 23:26:57 +08:00
mofeng-git
1db572e020 feat(web): 完善控制台视频与电源控件 2026-09-06 11:20:11 +08:00
mofeng-git
5de5ee42c2 feat(web): 新增 HID 配置引导 2026-09-06 11:19:55 +08:00
mofeng-git
2c19208094 feat(bluetooth-hid): 支持经典蓝牙 HID 后端 2026-09-06 11:17:58 +08:00
mofeng-git
3014edffbb fix(db): 使用 FULL 同步确保事务提交时落盘 2026-09-05 22:40:01 +08:00
mofeng-git
ece4f303ce feat(web): 新增控制台布局切换并完善状态与磁盘交互
新增经典、悬浮和侧栏布局,保存用户偏好,并调整工具栏、状态摘要及窄屏交互。
统一控制台弹层外观、焦点行为和中英文文案。
根据虚拟磁盘文件访问能力显示浏览入口、容量信息和不可用状态。

验证:npm run build 通过(vue-tsc 类型检查和 Vite 生产构建)。
2026-09-05 20:59:15 +08:00
mofeng-git
db9d79554a perf(video): 新增 RKMPP DMA 采集编码通路并完善恢复逻辑
支持原生 HDMI 和 UVC 缓冲区导出,增加同步 RKMPP 编码及可选 MJPEG 硬件转码。
校验帧布局和缓冲区租约,在 DMA 不可用或编码失败时回退到复制通路。
保留自定义码率和 GOP 策略,重开采集时同步 HDMI 源帧率,并区分 UVC 超时状态。

验证:88 个视频测试通过(含 4 个新增回归测试);ARM64 cargo check --tests 通过。
2026-09-05 20:55:30 +08:00
mofeng-git
620fe0be54 perf(video): 并行解码 MJPEG 并丢弃积压帧
按可用 CPU 数量启动独立 MJPEG 解码线程,通过无缓冲通道分发任务;线程全忙时丢弃新帧,按序列号拒绝过时解码结果。

复用帧缓冲池,在线程启动失败时回退到采集线程解码,并更新并行解码说明及工作线程数量测试。
2026-09-05 14:10:53 +08:00
mofeng-git
79a4dcf2b0 fix(video): 统一关键帧参数集处理并缓存启动帧
在共享管线中将长度前缀 H264 转为 Annex-B,要求编码器标记与 IDR/IRAP 内容一致,并补齐参数集后才标记可独立解码的关键帧。

向新订阅者提供缓存启动帧,启动管线时清理缓存,并移除 RustDesk 会话内重复的 SPS/PPS 处理。补充格式归一化、关键帧判定和订阅测试。
2026-09-05 14:10:53 +08:00
mofeng-git
a8ee9552a0 perf(video): 使用有界 VBR 优化 H264 码率
H264 编码器探测与初始化使用 VBR,将峰值码率和缓冲区限制为目标码率的两倍。动态调整码率时同步更新限制,并保留 QSV 的专用处理。
2026-09-05 14:10:53 +08:00
mofeng-git
3749bafae0 fix(rustdesk): 按键盘模式和码空间转换 HID 输入
将对外兼容平台与 Windows Set-1 扫描码映射绑定,分离物理键、字符和控制键语义,拒绝未知码值跨码空间回退。

保留按下、释放、重复输入与临时 Shift 的状态语义,补充键位矩阵和事件转换回归测试,并记录输入模式及原始码值。
2026-09-05 14:10:53 +08:00
mofeng-git
b573f478fc fix(msd): 区分虚拟磁盘挂载能力与文件访问状态
使用原始文件元数据挂载虚拟磁盘,允许主机使用网页文件管理不支持的文件系统。连接期间只读取元数据;初始化和删除持有外层写锁,并同步控制器缓存。

API 的 used/free 改为可空值,新增 file_access 表示 available、unsupported、blocked_while_connected 或 unknown,需要前端配套处理。补充状态序列化、元数据校验和文件系统兼容测试。
2026-09-05 14:10:53 +08:00
mofeng-git
d67a3ab7f8 fix(build): 在运行时解析编解码依赖源码路径
hwcodec 与 libyuv 构建脚本在运行时读取 CARGO_MANIFEST_DIR,避免复用或迁移构建产物后继续引用旧源码目录。
2026-09-05 14:10:53 +08:00
mofeng-git
dbe5672df4 refactor: 优化数据库初始化与 WOL 存储 2026-08-30 21:27:00 +08:00