Skip to main content
Version: dev-latest

Valid Data Formats

MCAP Files

MCAP is a flexible serialization format that supports a wide range of options and message encodings. This includes the capability to encode ROS1, ROS2/CDR serialized, Protobuf, Flatbuffer, and more.

Header Time vs Log Time

MetriCal uses the header timestamp in each message for synchronization purposes. If your current workflow uses the log time instead, you should make sure that the header timestamp is also populated during recording. If not, MetriCal will not be able to synchronize your data correctly.

Message Encodings

MetriCal only supports a limited subset of the total well-known message encodings in MCAP.

Message TypeROS1 EncodingsROS2 with CDR SerializationProtobuf Serialization Schemas
Imagesensor_msgs/Imagesensor_msgs/msgs/ImageRawImage.proto
CompressedImagesensor_msgs/CompressedImagesensor_msgs/msgs/CompressedImageCompressedImage.proto
PointCloudsensor_msgs/PointCloud2sensor_msgs/msgs/PointCloud2PointCloud.proto
IMUsensor_msgs/Imusensor_msgs/msgs/Imu--
H264 Video----CompressedVideo.proto

Valid Image Encodings

Image typeEncoding
Ordered pixelsmono8, mono16, rgb8, bgr8, rgba8, bgra8, rgb16, bgr16, rgba16, bgra16
8-bit, multi-channel8UC1, 8UC2, 8UC3, 8UC4, 8SC1, 8SC2, 8SC3, 8SC4
16-bit, multi-channel16UC1, 16UC2, 16UC3, 16UC4, 16SC1, 16SC2, 16SC3, 16SC4
32-bit, multi-channel32UC1, 32UC2, 32UC3, 32UC4, 32SC1, 32SC2, 32SC3, 32SC4
64-bit, multi-channel64UC1, 64UC2, 64UC3, 64UC4, 64SC1, 64SC2, 64SC3, 64SC4
Bayer imagesbayer_rggb8, bayer_bggr8, bayer_gbrg8, bayer_grbg8, bayer_rggb16, bayer_bggr16, bayer_gbrg16, bayer_grbg16
YUYV imagesuyvy, UYVY, yuv422, yuyv, YUYV, yuv422_yuy2