# Integration notes ## Existing FM / DSP project The intended integration pattern is: - your application decides which input mode is active - this module delivers decoded PCM frames - your application writes those samples into its existing audio ring buffer or live source abstraction ## Recommended first integration Use only: - `Config` - `NewReceiver` - `Start` - `Stop` and a callback like: ```go rx, _ := aoiprxkit.NewReceiver(cfg, func(frame aoiprxkit.PCMFrame) { audioInput.PushInt32(frame.Samples, frame.SampleRateHz, frame.Channels) }) ``` ## SRT integration pattern The WAN side is now split into two layers: 1. `SRTReceiver` / `StreamReceiver` 2. a transport opener that returns an `io.ReadCloser` That means your target repo can later add a native `gosrt` opener without changing the PCM handling path. ## Later additions - derive config from SDP - attach a SAP listener to discover sessions - query NMOS registry for streams/receivers - activate receiver transport with IS-05 - use a native SRT opener for WAN delivery into the same audio input path