Commit Graph

62 Commits

Author SHA1 Message Date
99cbaf3b9f feat: Add RGBW LED support and hardware communication protocol
- Add RGBW LED type support alongside existing RGB LEDs
- Implement 4-channel RGBW data transmission (R,G,B,W bytes)
- Add RGBW visual preview with half-color, half-white gradient display
- Fix RGB color calibration bug in publisher (was not being applied)
- Create comprehensive hardware communication protocol documentation
- Support mixed RGB/RGBW LED strips on same display
- Add W channel color temperature adjustment in white balance page
- Hardware acts as simple UDP-to-WS2812 bridge without type distinction
2025-07-05 02:46:31 +08:00
5da81e5f93 Fix resource leak and CPU performance issues
- Fix integer underflow panic in LED color publisher by adding bounds checking
- Reduce screenshot capture frequency from 15 FPS to 5 FPS for better CPU performance
- Reduce WebSocket force-send frequency from 200ms to 500ms
- Fix WebSocket resource leak by properly cleaning up streams when connections end
- Add proper stream lifecycle management with is_running flag checks
- Ensure background tasks exit when streams are stopped

This resolves the issue where CPU usage remained above 100% after visiting
the LED strip configuration page, even when navigating to other pages.
2025-07-04 21:49:05 +08:00
5f12b8312a feat: enhance white balance interface with expandable help content
- Add comprehensive expandable help section in normal mode with detailed instructions
- Include usage recommendations, adjustment tips, and comparison methods
- Add simplified tooltip in fullscreen mode for quick reference
- Improve user guidance for LED strip color calibration process
- Maintain dual-mode functionality (normal/fullscreen) with appropriate help content
2025-07-04 18:31:44 +08:00
1944c88b55 Optimize screen streaming performance and clean up debug logs
- Reduced image processing time from 7-8 seconds to 340-420ms (15-20x improvement)
- Optimized BGRA->RGBA conversion with unsafe pointer operations and batch processing
- Changed image resize filter from Lanczos3 to Nearest for maximum speed
- Reduced target resolution from 400x225 to 320x180 for better performance
- Reduced JPEG quality from 75 to 50 for faster compression
- Fixed force-send mechanism timing from 500ms to 200ms intervals
- Improved frame rate from 0 FPS to ~2.5 FPS
- Cleaned up extensive debug logging and performance instrumentation
- Removed unused imports and variables to reduce compiler warnings
2025-07-04 14:45:50 +08:00
93ad9ae46c feat: implement real-time LED strip preview
- Add LED strip visualization around display previews
- Show real-time color status for each LED pixel
- Support multi-display LED strip configurations
- Use elegant 16px thin LED strip design
- Real-time LED color sync via WebSocket
- Responsive layout with display scaling support
2025-07-03 02:09:19 +08:00
ddf61c861d feat: update dependencies to latest compatible versions
- Update frontend dependencies (SolidJS, Vite, Tailwind, etc.)
- Update backend dependencies (Tauri 1.8.3, Tokio, Serde, etc.)
- Fix thread safety issues with SafeDisplay wrapper for ddc-hi::Display
- Resolve display-info API compatibility issues
- All dependencies updated within major version constraints
2025-06-30 17:35:03 +08:00
b1fd751090 Fix LED color events and improve screenshot capture
- Fix LED color publisher: uncomment display_colors_tx.send() to enable LED color events
- Replace rust_swift_screencapture with screen-capture-kit for better macOS compatibility
- Add bounds checking in LED color processing to prevent array index errors
- Update screenshot manager to use CGDisplay as fallback implementation
- Fix frontend screenshot URL protocol to use ambient-light://
- Add debug logging for LED color events in frontend
- Remove debug logs that were added for troubleshooting
- Update dependencies and remove CMake-dependent paho-mqtt temporarily

This resolves the issue where LED color events were not being sent to the frontend,
enabling real-time LED color visualization in the UI.
2025-06-30 14:35:03 +08:00
91983e6728 feat: 电脑睡眠后唤醒,支持重新开始捕捉屏幕内容。 2023-06-17 17:36:32 +08:00
bab3b8941e fix: 临时避免 CPU 占用率高的问题。 2023-06-10 21:09:36 +08:00
268ec1df81 feat: 使用 ScreenCaptureKit 获取屏幕帧数据。 2023-06-05 22:34:32 +08:00
ed72bdfdb1 feat: 改用 udp 向板子发送颜色校准信息。 2023-05-12 20:38:24 +08:00
98d2f7891a feat: 支持定期向板子发送显示器亮度信息。 2023-05-11 21:52:50 +08:00
3a23e1760b feat: 支持记住显示器配置。 2023-05-11 14:13:14 +08:00
8b124f8182 feat: 当新板子上线或音量变化时,推送当前音量给板子。 2023-05-10 21:50:51 +08:00
878180ed5b fix: 亮度调节指令频繁时通道被关闭。 2023-05-10 21:18:55 +08:00
5ddd704c9d chore: 完善。 2023-05-09 21:57:52 +08:00
2c5ac11579 feat: 支持设置音量。 2023-05-07 18:18:34 +08:00
9109518822 chore: 清理代码。 2023-05-07 15:21:27 +08:00
d9d73f01d7 feat: 支持控制显示器参数。 2023-05-07 14:48:06 +08:00
239144a446 feat: 支持调整程序内存中暂存的显示器配置。 2023-05-07 14:32:31 +08:00
3a430716d6 feat: 支持读取显示器配置。 2023-05-07 09:56:00 +08:00
800c0d3fc4 feat: 支持列出显示器。 2023-05-07 01:18:48 +08:00
091bcf33da feat: 支持收取来自板子要求的显示器亮度和电脑音量。 2023-05-06 20:14:31 +08:00
9b863508e4 build: update deps. 2023-05-04 23:31:39 +08:00
174840403f pref: 调整发送数据的逻辑,改善丢包问题。 2023-05-04 21:56:56 +08:00
ca9a2ba34d feat: skip send colors for disconnected board. 2023-04-30 22:48:25 +08:00
82d4adfe0f feat: 增强连接状态。 2023-04-30 22:30:24 +08:00
6c90a5e655 feat: 支持获取和查看板子连接的情况。 2023-04-30 18:44:26 +08:00
11045f27d8 feat: 通过新的 udp 逻辑发送灯带颜色。 2023-04-29 18:07:21 +08:00
f6e3257670 feat: 前端显示 mdns 搜索到的板子连接信息。 2023-04-29 15:09:45 +08:00
e5527ce3c3 feat: mdns search. 2023-04-29 12:40:34 +08:00
3deb14823d chore: 改为单独 task 推送灯条颜色。 2023-04-28 21:24:46 +08:00
7a87748cf1 feat: 使用 UDP 发送颜色。 2023-04-28 00:26:49 +08:00
effcb1e192 chore: 期望以 30 fps 捕获屏幕。 2023-04-16 23:15:26 +08:00
1c08c17fd4 feat: 支持将校准的色彩发送到 MQTT 中。 2023-04-16 21:55:24 +08:00
81d666557b chore: clean code. 2023-04-16 18:23:56 +08:00
6e6160fc0a feat: 支持将色彩校准的值写入本地配置文件。 2023-04-16 18:17:49 +08:00
fc8b3164d8 feat(GUI): 色彩调整界面。 2023-04-16 12:53:03 +08:00
782f3bf029 fix: wrong sample points on mac os 13. 2023-04-15 13:45:30 +08:00
a905c98823 fix: 更新配置时无法应用配置到灯带颜色获取逻辑。 2023-04-14 22:18:59 +08:00
9cbccedc72 fix: wrong sample points on mac os 13. 2023-04-14 21:27:14 +08:00
aa7430c54e build: update deps. 2023-04-12 23:43:41 +08:00
6c3ce607e0 pref: 针对 HiDPI 屏幕捕获的优化。 2023-04-05 12:25:14 +08:00
3ec983cd95 boardcast + interval tick. 2023-04-03 23:19:45 +08:00
a1e6c6e5fb fix: 灯条段长度为0时,崩溃问题。 2023-04-02 18:36:22 +08:00
822d470605 feat: 支持翻转灯条段。 2023-04-02 17:45:18 +08:00
86e9b072bc feat: 灯条段排序。 2023-04-02 16:08:33 +08:00
535f731770 feat: 后端发布未映射排序的色彩。 2023-04-02 14:52:08 +08:00
9ec030488a feat: 发布灯条颜色到 MQTT。 2023-04-02 14:05:53 +08:00
0d47911355 feat: 拖拽排序。 2023-04-01 23:32:31 +08:00