Is it a constant offset?
If so, there's a Sync Delay in the Advanced Audio Properties, and another delay in the Filters for each video source. Play with those until you get it right. A good way to do that quickly, is to record some, load that recording into your favorite video editor, separate the audio and video tracks in there, and see what it takes to line them up. Then translate it back to a setting in OBS and make another test recording...
Is it increasing? Good to start and then useless later?
That's a known problem with the Monitor, which is the only way to get audio out of OBS that isn't tied up in a stream or recording. The reason it does that is because the Monitor locks itself to the device that it's connected to, while the rest of OBS uses a different clock. Instead of resampling, it just grows the buffer, ad infinitum.
There are a couple of ways to fix that:
- Connect the Monitor to a different audio device that gets its clock from the same place that OBS does. This can be hard to tell, so it's effectively random.
- Insert a virtual device between the Monitor and anything physical. The idea here is that the virtual device gets its clock from the same place that OBS does, and so it solves this problem, and then the virtual device has its own chance to resample between itself and the physical one.
- Keep the connection as it is, and disrupt the flow of audio to the Monitor, just to reset the buffer. This could be:
- Removing and re-adding the source, though this is way too drastic for frequent use.
- Changing the Monitoring setting in Advanced Audio Properties to Monitor Off, and back again.
- Muting/unmuting the source in the Audio Mixer dock, or in a script or other automation.
For that last point, it may help to have two different copies of each audio source: one goes to the Output only, and the other goes to the Monitor only. Then you can "blink" the Monitor copy without affecting the stream or recording.