mirror of
https://github.com/OpenSquawk/OpenSquawk
synced 2026-08-02 06:27:43 +08:00
47efee214849dfe0fa767008d657de13d0c0daba
Tuning to the ATIS frequency now plays carrier noise immediately so the pilot gets feedback before the TTS comes back (synthesis takes a moment on cold cache). When the ATIS audio is ready, the carrier ducks down to a subtle bed level and stays underneath the announcement — mimicking how a real radio channel always carries some noise floor. Switches the loop from HTMLAudioElement (whose seek on data: URLs gets quantized by some browsers) to a Web-Audio AudioBufferSourceNode. `source.start(0, offset)` is sample-accurate per spec, so the virtual-clock entry point lands exactly where computed. `window.__atisDebug` exposes ctx/source/state for manual inspection, and pm.vue logs the requestedOffset/duration/epochAge on each loop start. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Description
Languages
TypeScript
67.3%
Vue
31.8%
CSS
0.6%
JavaScript
0.3%