summaryrefslogtreecommitdiffhomepage
path: root/game/study_player/verify_scan.rb
AgeCommit message (Collapse)Author
2026-06-29phase 3: silence detection, speaking portions, portion navigationAdam Malczewski
- mrbgems/study_audio: native C scanner (scan_silence) avoids Ruby array overflow for large audio files; returns normalized silence region pairs directly - Core.detect_silence: pure Ruby algorithm (threshold 0.015, min 0.75s) for testing with synthetic data; pad_silence_regions (0.25s padding) - Core portion navigation: find_silence_at, current_speaking_portion, total_speaking_portions, portion_seek_target (2 frames into padding zone), in_padding_zone?, speaking_portion_start - Input: V/B keys for prev/next portion navigation - Draw: section counter (N/total) displayed below play state - build_config.rb: added study_audio gem to both desktop and web builds - Runtime: silence_regions, raw_silence_regions, analysis_done fields - Load system: triggers C scan_silence after audio load, pads with pure Ruby - Knowledge doc updated with Phase 3 scar tissue (array limits, gem naming, Wayland screenshot gap) Verification: build clean, pure Core smoke test passes (CRuby), game runs with country.mp3 without overflow, load system processes the file.