namespace ytLive.Services; /// /// Detects "a working game with sound is up in the preview" (TASK 4 game audio /// bar): becomes active once a full-screen foreground app is producing desktop /// audio, and stays active as long as that full-screen app remains — silence /// never hides the bar, only the game leaving fullscreen/foreground does. Seam /// so the VM and tests never touch Win32 or audio interop directly. /// public interface IGameAudioDetector { /// True while the game audio bar should be visible. bool IsGameAudioActive { get; } /// Raised when the bar should appear or disappear. event Action? IsGameAudioActiveChanged; /// Samples the injected providers and advances the state machine. void Poll(); }