TODO: BAP Unicast Simple Control Implementation
Phase 1: Foundation and Discovery
- [x] Define core types for Configurations and Codec Capability Settings (enums/structs).
- [x] Implement
BapUnicastManager skeleton with PeerId mapping. - [ ] Implement
add_peer function:- [ ] Connect to PACS and read capabilities.
- [ ] Connect to ASCS and discover ASEs.
- [ ] Implement mapping logic from raw PACS/ASCS data to spec-defined Configurations.
Phase 2: Stream Control (Prescriptive)
- [ ] Implement
start_streaming:- [ ] Generate Codec Specific Configuration LTVs for requested setting.
- [ ] Drive ASCS state machine (Config Codec, Config QoS, Enable).
- [ ] Extract and return CIS handles upon success.
- [ ] Implement
stop_streaming / release:- [ ] Drive ASCS state machine back to Idle.
- [ ] Ensure CIS is released.
Phase 3: Pause and Resume
- [ ] Implement
pause_streaming:- [ ] Move ASEs to a state that retains CIS (e.g., QoS Configured or custom handling).
- [ ] Implement
resume_streaming:- [ ] Move ASEs back to Streaming state.
Phase 4: Testing Support
- [ ] Ensure
start_streaming skips capability validation check against discovered PACS data to allow testing unsupported configurations.