title | description | author | ms.author | ms.prod | ms.date | ms.topic | keywords |
---|---|---|---|---|---|---|---|
Capture Azure Kinect device synchronization |
Learn how to synchronize Azure Kinect capture devices using the Azure Kinect Sensor SDK. |
xthexder |
jawirth |
kinect-dk |
06/26/2019 |
conceptual |
kinect, azure, sensor, sdk, depth, rgb, internal, external, synchronization, daisy chain, phase offset |
The Azure Kinect hardware can align the capture time of color and depth images. Alignment between the cameras on the same device is internal synchronization. Capture time alignment across multiple connected devices is external synchronization.
Image capture between the individual cameras is synchronized in hardware. In every k4a_capture_t
that contains images from both the color and depth sensor, the images' timestamps are aligned based on the operating mode of the hardware. By default the images of a capture are center of exposure aligned. The relative timing of
depth and color captures can be adjusted using the depth_delay_off_color_usec
field of k4a_device_configuration_t.
See setup external synchronization for hardware setup.
The software for each connected device must be configured to operate in a master or subordinate mode. This setting is configured on the k4a_device_configuration_t.
When using external synchronization, subordinate cameras should always be started before the master for the timestamps to align correctly.
k4a_device_configuration_t deviceConfig;
deviceConfig.wired_sync_mode = K4A_WIRED_SYNC_MODE_SUBORDINATE
k4a_device_configuration_t deviceConfig;
deviceConfig.wired_sync_mode = K4A_WIRED_SYNC_MODE_MASTER;
To programmatically retrieve the current state of the synchronization input and synchronization output jacks, use the k4a_device_get_sync_jack function.
Now you know how to enable and capture device synchronization. You also can review how to use
[!div class="nextstepaction"] Azure Kinect sensor SDK record and playback API