// // ExamplePluginSwift.swift // VisionCamera // // Created by Marc Rousavy on 30.04.21. // Copyright © 2021 mrousavy. All rights reserved. // import AVKit import Vision @objc(ExamplePluginSwift) public class ExamplePluginSwift: NSObject, FrameProcessorPluginBase { @objc public static func callback(_ frame: Frame!, withArgs args: [Any]!) -> Any! { guard let imageBuffer = CMSampleBufferGetImageBuffer(frame.buffer) else { return nil } NSLog("ExamplePlugin: \(CVPixelBufferGetWidth(imageBuffer)) x \(CVPixelBufferGetHeight(imageBuffer)) Image. Logging \(args.count) parameters:") args.forEach { arg in var string = "\(arg)" if let array = arg as? NSArray { string = (array as Array).description } else if let map = arg as? NSDictionary { string = (map as Dictionary).description } NSLog("ExamplePlugin: -> \(string) (\(type(of: arg)))") } return [ "example_str": "Test", "example_bool": true, "example_double": 5.3, "example_array": [ "Hello", true, 17.38, ], ] } }