Is your feature request related to a problem?
Yes. Extension playSound() currently uses runtime playback only, which is not consumable by the export mixer.
Describe the solution you'd like
Add export capture lifecycle APIs to extension host and capture extension audio trigger events for export.
Proposed host lifecycle:
beginExportAudioCapture()
endExportAudioCapture()
getCapturedAudioEvents()
Captured event shape should include at minimum:
extensionId
resolvedAssetPath
timeMs
volume
Preview playback behavior should remain unchanged.
Describe alternatives you've considered
Using ad-hoc global state in exporter only. Rejected, too brittle and hard to test.
Additional context
This is a dependency for export parity work.
Acceptance criteria
- Preview mode keeps current audible behavior.
- Export capture mode records deterministic event stream.
- Event stream order is stable and timestamp-sorted.
- Unit tests cover mode switching and event capture correctness.
Is your feature request related to a problem?
Yes. Extension
playSound()currently uses runtime playback only, which is not consumable by the export mixer.Describe the solution you'd like
Add export capture lifecycle APIs to extension host and capture extension audio trigger events for export.
Proposed host lifecycle:
beginExportAudioCapture()endExportAudioCapture()getCapturedAudioEvents()Captured event shape should include at minimum:
extensionIdresolvedAssetPathtimeMsvolumePreview playback behavior should remain unchanged.
Describe alternatives you've considered
Using ad-hoc global state in exporter only. Rejected, too brittle and hard to test.
Additional context
This is a dependency for export parity work.
Acceptance criteria