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:
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:
SRTReceiver / StreamReceiver
- 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