Issue Type
Implementation - Architecture Refactoring
Severity
High - Critical path for Option B implementation
Problem Statement
Current architecture has platform-specific code scattered across AudioPlayer and lacks proper hardware abstraction. Need consolidated IAudioHardwareProvider interface.
Current State
- Audio hardware lifecycle mixed in AudioPlayer (8 responsibilities)
- Platform code scattered (CoreAudioPlatform exists but not integrated)
- IAudioPlatform interface exists but unused
- Cannot swap hardware implementations
- Tight coupling to macOS CoreAudio
Target State
Single IAudioHardwareProvider interface for all hardware operations:
- initialize() - hardware initialization
- configure() - format and buffer setup
- start() / stop() - playback control
- setVolume() - volume control
- cleanup() - resource cleanup
- registerCallback() - audio callback registration
Implementation Tasks
- Design IAudioHardwareProvider interface
- Create IAudioHardwareProvider.h with proper documentation
- Define platform-specific implementations (CoreAudioHardwareProvider)
- Abstract platform-specific types
Acceptance Criteria
Testing Requirements
Related Issues
References
- ARCHITECTURE_FILE_CLASS_AUDIT.md - Platform coupling violations
- AUDIO_MODULE_ARCHITECTURE.md - Cross-platform requirements
- PLATFORM_AUDIO_RESEARCH.md - iOS/ESP32 requirements
Issue Type
Implementation - Architecture Refactoring
Severity
High - Critical path for Option B implementation
Problem Statement
Current architecture has platform-specific code scattered across AudioPlayer and lacks proper hardware abstraction. Need consolidated IAudioHardwareProvider interface.
Current State
Target State
Single IAudioHardwareProvider interface for all hardware operations:
Implementation Tasks
Acceptance Criteria
Testing Requirements
Related Issues
References