Janez T
|
69ec2dfdb5
|
Add live mesh traffic view
|
2026-03-12 20:12:25 +01:00 |
|
Janez T
|
ca872f2049
|
Add LPCNet voice mode support
|
2026-03-11 21:16:08 +01:00 |
|
Janez T
|
0e4f727e26
|
Add swarm mode transport doc
|
2026-03-07 14:13:54 +01:00 |
|
Janez T
|
234edf5bb0
|
Add message clear option
|
2026-03-05 11:04:41 +01:00 |
|
Janez T
|
c176bd92a9
|
Tweak AVIF tuning and preferences
|
2026-03-02 09:42:14 +01:00 |
|
Janez T
|
a0c4cdeede
|
Add voice image packet retry
|
2026-03-01 19:25:19 +01:00 |
|
Janez T
|
474fd02635
|
fix: retain voice codec settings now
ref:
|
2026-03-01 11:00:30 +01:00 |
|
Janez T
|
f96d8022ac
|
feat: add Codec2 voice messages over LoRa mesh (iOS/macOS only)
Push-to-talk voice messaging using the Codec2 ultra-low-bitrate speech
codec, transmitted as V: prefixed packets over the existing MeshCore
LoRa mesh pipeline.
Voice recording UI (long-press send button or + menu) is gated behind
Platform.isIOS || Platform.isMacOS since the `record` package only
supports microphone capture on those platforms in this build.
Key changes:
- VoiceRecorderService: streams 8kHz mono PCM chunks via `record` package
- VoicePlayerService: decodes Codec2 bytes to WAV and plays via audioplayers
- VoiceCodecService: async Codec2 encode/decode in background isolates
- VoiceProvider: reassembles multi-packet sessions, drives playback
- VoiceMessageBubble: shows packet progress, play/stop controls
- MessagesProvider: detects V: prefix, routes to VoiceProvider
- MessagesTab: PTT long-press gesture + recording indicator (iOS/macOS)
- Message model: isVoice + voiceId fields for session tracking
- Auto-selects codec mode from radio bandwidth (700C/1200/1300 bps)
- codec2_flutter + meshcore_client switched from path to git deps
|
2026-02-28 19:19:46 +01:00 |
|