Interface ISynchronizationCalibrator
The interface for synchronization calibration strategies.
Namespace: Unity.LiveCapture
Syntax
public interface ISynchronizationCalibrator
Methods
Execute(ITimecodeSource, IReadOnlyCollection<ITimedDataSource>)
Perform calibration such that we have a reasonable guarantee that all timed data sources can be presented in a synchronized manner by a Unity.LiveCapture.Synchronizer.
Declaration
IEnumerable<CalibrationResult> Execute(ITimecodeSource timecodeSource, IReadOnlyCollection<ITimedDataSource> dataSources)
Parameters
Type | Name | Description |
---|---|---|
ITimecodeSource | timecodeSource | Timecode source used by the Unity.LiveCapture.Synchronizer. |
IReadOnlyCollection<ITimedDataSource> | dataSources | The set of ITimedDataSource instances to be synchronized. |
Returns
Type | Description |
---|---|
IEnumerable<CalibrationResult> | Calibration results are returned iteratively. |
Remarks
The calibrator should 1) determine a suitable global delay such that the data source with the highest latency will have time to receive the sample for a frame before it is asked to present it, and 2) attempt to adjust the buffers of each data source such that they will not have to drop samples they have not been presented yet due to full buffers.