Alex P
e4ed2b8fad
refactor(audio): rename audio components for clarity and add validation
...
Rename audio server/client components to be more specific (AudioOutputServer/Client). Add new validation.go and ipc_common.go files for shared IPC functionality. Improve error handling and cleanup in input/output IPC components.
Disable granular metrics logging to reduce log pollution. Reset metrics on failed start and ensure proper cleanup. Add common IPC message interface and optimized message pool for reuse.
2025-08-26 10:42:25 +00:00
Alex P
f24443e072
Improvement: automatically resume audio when the audio usb gadget is re-enabled from settings
2025-08-25 11:05:42 +00:00
Alex P
3a28105f56
Fix: linting errors
2025-08-24 23:36:29 +00:00
Alex P
57b7bafcc1
feat(audio): implement comprehensive audio optimization system
...
- Add AdaptiveOptimizer for real-time parameter adjustment based on latency metrics
- Add AdaptiveBufferConfig for dynamic buffer sizing based on system load
- Implement BatchAudioProcessor for reduced CGO call overhead
- Add AudioBufferPool with sync.Pool for optimized memory allocation
- Implement LatencyMonitor with exponential moving averages
- Add MemoryMetrics for comprehensive memory usage tracking
- Implement PriorityScheduler with SCHED_FIFO for real-time audio processing
- Add zero-copy operations to minimize memory copying in audio pipeline
- Enhance IPC architecture with intelligent frame dropping
- Add comprehensive Prometheus metrics for performance monitoring
- Implement triple-goroutine architecture for audio input processing
- Add adaptive buffering and performance feedback loops
2025-08-24 22:33:49 +00:00
Alex P
76174f4486
refactor(audio): improve performance and simplify code structure
...
- Move audio server logic to dedicated package and simplify main.go
- Optimize buffer pool implementation and remove redundant logging
- Improve process monitoring with synchronized metrics updates
- Enhance microphone contention manager with simplified logic
- Replace mutex with atomic operations for metrics tracking
2025-08-23 22:54:01 +00:00
Alex P
879ea5e472
Fix: fix audio input by reverting change
2025-08-23 16:41:45 +00:00
Alex P
5e28a6c429
feat(audio): add system memory endpoint and process metrics monitoring
...
- Add new /system/memory endpoint to expose total system memory
- Implement process metrics collection for audio and microphone processes
- Update UI to display real-time process metrics with charts
- Replace environment variable check with CLI flag for audio input server
- Improve audio metrics broadcasting with 1-second intervals
- Add memory usage capping for CPU percentage metrics
2025-08-23 11:41:03 +00:00
Alex P
6ecb829334
Fix: linter errors
2025-08-22 22:28:15 +00:00
Alex P
62d4ec2f89
Fix: audio subprocess handling
2025-08-22 22:17:27 +00:00
Alex P
aeb7a12c72
Fix: linting errors
2025-08-22 22:07:35 +00:00
Alex P
423d5775e3
[WIP] Performance Enhancements: move audion processing into a separate process
2025-08-22 12:04:30 +00:00
Alex P
3c1f96d49c
Separation of Concerns: Move the audio-related code into the audio internal package
2025-08-05 02:04:37 +03:00
Alex P
520c218598
Efficiency Improvements: Switch to websocket-based communication for audio metrics & status
2025-08-05 01:43:58 +03:00
Alex P
3444607021
Improvements, Fixes: reduce mouse lag when audio is on
2025-08-04 23:29:47 +03:00
Alex P
575abb75f0
[WIP] Updates: audio input support
2025-08-04 20:08:54 +03:00
Alex P
4f47d62079
[ #315 ] Updates: add advanced audio support
2025-08-02 02:23:37 +00:00
Qishuai Liu
28a8fa05cc
feat: use native jetkvm-audio
2025-06-26 00:30:00 +09:00
Qishuai Liu
c529c903d0
Merge remote-tracking branch 'upstream/dev' into feat/usb-audio
2025-06-22 00:36:01 +09:00
Aveline
25e30f6420
refactor: remove init functions ( #489 )
2025-05-22 10:29:16 +02:00
Qishuai Liu
cc83e4193f
feat: add audio encoder
2025-05-14 23:41:48 +09:00
Aveline
38252de03c
chore: create images folder when starting the application ( #437 )
2025-05-13 21:13:21 +02:00
Aveline
63c2272c45
feat(usb_mass_storage): mount as disk ( #333 )
...
* feat(usb_mass_storage): mount as disk
* chore: try to set initial virtual media state from sysfs
* chore(usb-mass-storage): fix inquiry_string
2025-05-12 19:07:27 +02:00
Aveline
189b84380b
network enhanecment / refactor ( #361 )
...
* chore(network): improve connectivity check
* refactor(network): rewrite network and timesync component
* feat(display): show cloud connection status
* chore: change logging verbosity
* chore(websecure): update log message
* fix(ota): validate root certificate when downloading update
* feat(ui): add network settings tab
* fix(display): cloud connecting animation
* fix: golintci issues
* feat: add network settings tab
* feat(timesync): query servers in parallel
* refactor(network): move to internal/network package
* feat(timesync): add metrics
* refactor(log): move log to internal/logging package
* refactor(mdms): move mdns to internal/mdns package
* feat(developer): add pprof endpoint
* feat(logging): add a simple logging streaming endpoint
* fix(mdns): do not start mdns until network is up
* feat(network): allow users to update network settings from ui
* fix(network): handle errors when net.IPAddr is nil
* fix(mdns): scopedLogger SIGSEGV
* fix(dhcp): watch directory instead of file to catch fsnotify.Create event
* refactor(nbd): move platform-specific code to different files
* refactor(native): move platform-specific code to different files
* chore: fix linter issues
* chore(dev_deploy): allow to override PION_LOG_TRACE
2025-04-16 01:39:23 +02:00
Siyuan Miao
0ba7902f82
chore: update logging
2025-04-11 12:55:36 +02:00
Siyuan Miao
82c018a2f6
feat(tls): #330
2025-04-11 00:43:58 +02:00
Siyuan Miao
4c37f7e079
refactor: use structured logging
2025-04-11 00:43:46 +02:00
Siyuan Miao
1e9adf81d4
chore: skip websocket client if net isn't up or time sync hasn't complete
2025-04-03 18:16:41 +02:00
Aveline
369bd3fb18
Merge branch 'dev' into feat/tls
2025-03-18 14:05:33 +01:00
SuperQ
d3641bb4b9
Chore: Fix up various linting issues
...
In prep to add golangci-lint, fix various linting issues.
* Make the `kvm` package a fully-qualified public package.
Signed-off-by: SuperQ <superq@gmail.com>
2025-03-11 18:22:45 +01:00
SuperQ
34e33e45bf
Cleanup logging
...
Make sure all logging output is called via the main logger instead of
stdlib `"log"` or `fmt.Print(f|ln)`.
Signed-off-by: SuperQ <superq@gmail.com>
2025-03-11 16:53:54 +01:00
Siyuan Miao
d1948adca8
refactor(usb): move usbconfig to a seperated package
2025-03-10 14:02:52 +01:00
Siyuan Miao
285de31ade
feat(tls): add simple tls support
2025-03-10 13:49:20 +01:00
Siyuan Miao
8b59a3e387
chore(prometheus): move prometheus to a new file
2025-03-10 13:49:20 +01:00
Aveline
cd333c4ebc
feat(extension): ATX/DC/Serial extension support
2025-02-17 18:37:47 +01:00
Cameron Fleming
a9767b650c
fix(cloud): only start WS Client if config.CloudToken is set ( #27 )
2025-02-11 14:51:18 +01:00
Adam Shiervani
20780b65db
Release 202412292127
2024-12-29 21:27:42 +01:00