void AddMetadataOverlayLayers (IEnumerable<MetadataObjectLayer> layers)
{
// Add the metadata object overlays as sublayers of the video preview layer.
// We disable actions to allow for fast drawing.
CATransaction.Begin ();
CATransaction.DisableActions = true;
metadataObjectOverlayLayers.Clear ();
foreach (var l in layers) {
PreviewView.VideoPreviewLayer.AddSublayer (l);
metadataObjectOverlayLayers.Add (l); // Save the new metadata object overlays.
}
CATransaction.Commit ();
// Create a timer to destroy the metadata object overlays.
removeMetadataObjectOverlayLayersTimer = NSTimer.CreateScheduledTimer (TimeSpan.FromSeconds (1), t => RemoveMetadataObjectOverlayLayers());
}