Commit Graph
38 Commits
Author SHA1 Message Date
Henry_Du ef75671527 feat: Add train pre-arrival broadcast via CRN create_target 2026-08-02 11:37:41 +08:00
Henry_Du 805aba9f37 fix: remove 3.0 fallback and strictly apply AUDIO_VOLUME=100 directly to HQ speaker APIs 2026-08-02 09:07:12 +08:00
Henry_Du faa25bbb3c fix: safely apply CONFIG.AUDIO_VOLUME to all HQ speaker APIs (speakWavAll, speakHLS, etc.) with 3.0 fallback 2026-08-02 08:57:20 +08:00
Henry_Du ac8405e300 fix: use pcall to uncapped AUDIO_VOLUME for HQ speakers while keeping 3.0 fallback for vanilla speakers 2026-08-02 08:53:49 +08:00
Henry_Du 8aec4c6a84 chore: set default AUDIO_VOLUME to 100 for maximum HQ speaker distance/volume (v1.0.19) 2026-08-02 08:42:13 +08:00
Henry_Du 66ce214f51 Perf: fix audio playback stuttering by increasing pre-buffer to 5 chunks and optimizing multi-speaker synchronization without forced gaps 2026-08-01 23:19:37 +08:00
Henry_Du 944f00f521 Fix: correctly parse nextStation by checking both create:station and create:destination, and handle schedule loop 2026-08-01 23:10:06 +08:00
Henry_Du 81f58b58bb Fix: Lua client config screen overwritten by logs, and fix temp broadcast preview URL 2026-08-01 22:15:59 +08:00
Henry_Du 440a8366ca Feat: CC client auto-detects and displays available departure beeps from server 2026-08-01 18:37:52 +08:00
Henry_Du 86b6ba180e feat: implement train arrival/departure sequence logic and add departure beep config in client 2026-08-01 11:28:52 +08:00
Henry_Du 810dff3f0e feat: update station broadcast logic 2026-08-01 11:23:55 +08:00
Henry_Du b140aafa2d fix(audio): prebuffer live wav stream startup
Buffer a couple of live wav chunks before beginning playback so startup jitter is reduced when the stream first begins feeding speakers.
2026-08-01 11:11:22 +08:00
Henry_Du a92fb55f60 fix(station): detect create stations by capability
Use the Create station method set from the CC:Tweaked integration docs to identify attached train stations even when the peripheral type string is not reported as train_station.
2026-08-01 10:46:26 +08:00
Henry_Du b51e31e00f fix(station): sync identity config from physical station
Detect train station peripherals from all discovered names and automatically write station_identity.cfg from the physical station identity so attached main hosts stop falling back to manual slave setup.
2026-08-01 10:27:36 +08:00
Henry_Du 777e6f3371 fix(station): detect train station peripherals on any side
Avoid prompting manual slave setup on main hosts when the train station block is attached somewhere other than the back side, and log the detected side for easier diagnosis.
2026-08-01 09:45:13 +08:00
Henry_Du 529c871b0e fix(station): allow music to restart after stop
Keep the active music stream attached until Audio.stop runs so stop requests finish the stream reader cleanly and the next music playback can start again without getting stuck behind the previous stream.
2026-08-01 08:36:01 +08:00
Henry_Du 578cff6dc2 feat(station): allow slave nodes to run without monitors
Make monitors optional so slave nodes can boot and play audio in terminal-only mode, while still using the monitor UI automatically when one is present.
2026-08-01 07:59:06 +08:00
Henry_Du 918e0c68e5 feat(station): add first-run slave identity setup
Remove station_name from the slave identity config and prompt for station code and platform on startup when no train station peripheral and no usable identity file are present, so slave nodes can be configured interactively on first boot.
2026-08-01 07:54:56 +08:00
Henry_Du 6315e1eaa1 feat(station): support manual identity for slave nodes
Allow station_broadcast to run without a train station peripheral on the back, add a local station_identity.cfg override for station name/code/platform, and display the active station code, platform, and identity mode so slave nodes can be grouped to a platform manually.
2026-08-01 07:51:59 +08:00
Henry_Du 1554adf5f1 feat(audio): support more upload and music formats
Allow the console and music page to upload common audio formats, expand music track detection and playback source selection beyond wav/dfpwm, and update station list name normalization so common extensions resolve consistently. Bump the station build to v1.0.6.
2026-08-01 06:39:18 +08:00
Henry_Du 6610b168d7 fix(music): synchronize multi-speaker wav streaming
Bump the station build to v1.0.5, reduce live WAV chunks to 0.25 seconds, and queue decoded samples in a synchronized multi-speaker mode so multiple speakers stay aligned during streaming playback.
2026-08-01 00:25:26 +08:00
Henry_Du 841f127005 fix(music): smooth wav chunk streaming playback
Bump the station build to v1.0.4, reduce live WAV chunk size to 0.5 seconds, and keep native speaker queues fed during streaming instead of draining after every chunk so playback is less jittery and stays closer to real time.
2026-08-01 00:21:39 +08:00
Henry_Du 43962aceb0 fix(station): prefer native speaker.playAudio for decoded chunks
Bump the station build to v1.0.3 and send decoded WAV samples through each speaker's native playAudio path before falling back to controller.playAudioAll, with logs to show which output path was used.
2026-08-01 00:18:06 +08:00
Henry_Du e6fa681339 fix(station): decode wav chunks to speaker samples
Bump the station build to v1.0.2 and decode streamed WAV chunks into PCM samples on the client before feeding playAudioAll/playAudio, while keeping the HQ WAV path as a fallback for decode failures.
2026-08-01 00:04:18 +08:00
Henry_Du f09e5af698 修复git钩子 2026-07-31 23:49:50 +08:00
Henry_Du 447388662b 修改版本号 2026-07-31 23:33:01 +08:00
Henry_Du 5d2397db7c feat(station): add visible build version reporting
Add a station build version counter, show it on the monitor and terminal header, log it at startup, and report it to the server during register and heartbeat so deployed client versions are visible during troubleshooting.
2026-07-31 23:30:41 +08:00
Henry_Du 87e45de15b fix(music): add wav chunk diagnostics and larger chunks
Increase live WAV chunk size to one second and log chunk acceptance, queue depth, and retry state on stations so the HQ speaker path can be diagnosed from runtime logs.
2026-07-31 22:46:47 +08:00
Henry_Du f7755953b4 feat(music): stream live wav chunks to HQ speakers
Slice realtime WAV audio into small self-contained chunks on the server and feed them into the HQ speaker WAV queue on stations so music can start playing before the full file finishes transferring.
2026-07-31 22:08:11 +08:00
Henry_Du 218aaabb50 fix(station): remove arrival and departure preview audio flow
Delete the station-side arrival/departure announcement requests and drop the server handlers for train arrival, train departure, and play_sequence messages so preview audio no longer interrupts live music.
2026-07-31 21:53:12 +08:00
Henry_Du 709388ec3a feat(music): switch station music to live PCM streaming
Move music playback off the HLS/download-first path and stream 48k mono PCM chunks over WebSocket so stations can start playing immediately. Add station-side PCM chunk playback support and stream lifecycle logging to make no-audio issues easier to trace.
2026-07-31 21:00:29 +08:00
Henry_Du 6d65b8216a feat(station-broadcast, cloud-server): 添加HLS播放与循环播放支持,更新脚本拉取地址
调整两个工具脚本的远程拉取地址,将固定commit哈希链接改为main分支链接;为云服务端添加loop参数与HLS音频播放支持,重构音频播放逻辑简化冗余代码;为station_broadcast.lua新增hls格式支持与循环播放控制,完善网络消息参数处理。
2026-07-31 20:42:22 +08:00
Henry_Du 3f58d03d15 feat(media server & broadcast): 新增/media接口并修复广播音频处理问题
- 新增/media GET接口,返回可用的媒体路由信息
- 为音频下载成功添加info日志,显示下载字节数
- 修正扬声器调用结果的条件判断逻辑
- 修复HQ扬声器音频提交失败的日志文案
2026-07-31 20:25:00 +08:00
Henry_Du 3bcc04332a feat(station_broadcast): 新增远程音频流下载与mp3、ogg格式播放支持
新增downloadAudioBytes工具函数用于从远程URL下载音频数据并提取文件扩展名
重构stream格式音频的处理逻辑,先下载资源再根据扩展名适配播放格式
补充mp3和ogg格式的播放适配,覆盖主扬声器控制器与单个扬声器
2026-07-31 20:20:32 +08:00
Henry_Du 952efbc2c7 feat: add stream audio broadcast support
- 添加stream音频格式的客户端播放逻辑与网络消息解析
- 新增云服务端媒体静态服务端点,重构音频处理逻辑以返回流URL替代原始音频缓冲区
- 更新所有相关业务接口适配新的流音频播放流程
- 新增API基础地址环境变量配置
2026-07-31 20:15:21 +08:00
Henry_Du cd22b1ca3e feat: 新增列表文件访问端点并兼容旧路径
服务器新增/list.txt接口提供列表文件访问,客户端优先请求该路径,失败时回退到原/uploads/list.txt路径
2026-07-31 20:02:24 +08:00
Henry_Du c73bceaec7 feat: 重构音频系统,移除外部依赖并新增WAV格式支持
- 移除install和update脚本中的aukit/austream下载配置与目标,不再部署辅助脚本
- 替换station_broadcast.lua的aukit库为CC内置dfpwm模块,重写音频播放逻辑
- 添加原生扬声器API支持,支持WAV格式音频播放
- 重写云端服务器音频处理逻辑,支持直接传输WAV文件无需预转换
- 新增WAV文件时长解析、音频序列合成等辅助功能
2026-07-31 19:29:38 +08:00
Henry_Du e4b4fa5cdb Remove CTM and inbound prediction 2026-07-31 18:23:24 +08:00