From bee4bb5e4a4e1074854e275e8a933873d65bce0a Mon Sep 17 00:00:00 2001 From: Eduardo Ramos Date: Fri, 9 Dec 2022 13:32:44 +0100 Subject: [PATCH] Add Mac driver --- README.md | 83 +++--- pom.xml | 21 ++ ...tureManagerDriver.java => TestDriver.java} | 28 +- .../webcamcapture/drivers/NativeDriver.java | 36 +++ .../avfoundation/driver/AVFDriver.java | 102 +++++++ .../avfoundation/driver/AVFVideoDevice.java | 280 ++++++++++++++++++ .../avfoundation/driver/LibVideoCapture.java | 49 +++ .../darwin-aarch64/libvideocapture.dylib | Bin 0 -> 195640 bytes .../darwin-x86-64/libvideocapture.dylib | Bin 0 -> 200456 bytes 9 files changed, 553 insertions(+), 46 deletions(-) rename src/main/java/com/github/eduramiba/webcamcapture/{TestCaptureManagerDriver.java => TestDriver.java} (74%) create mode 100644 src/main/java/com/github/eduramiba/webcamcapture/drivers/NativeDriver.java create mode 100644 src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFDriver.java create mode 100644 src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFVideoDevice.java create mode 100644 src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/LibVideoCapture.java create mode 100755 src/main/resources/darwin-aarch64/libvideocapture.dylib create mode 100755 src/main/resources/darwin-x86-64/libvideocapture.dylib diff --git a/README.md b/README.md index 3782d11..4ed52d6 100644 --- a/README.md +++ b/README.md @@ -2,21 +2,23 @@ This is a native driver for [Webcam Capture](https://github.com/sarxos/webcam-capture) that is reliable, has very good performance, fast startup time and is able to correctly list the detailed capabilities of video devices such as resolutions and device IDs. -Currently it works on Windows only, with the `CaptureManagerDriver`, based on [CaptureManager-SDK](https://www.codeproject.com/Articles/1017223/CaptureManager-SDK-Capturing-Recording-and-Streami), which uses the MediaFoundation Windows API. +Currently it works on Windows and Mac. + +For Windows, it uses the `CaptureManagerDriver`, based on [CaptureManager-SDK](https://www.codeproject.com/Articles/1017223/CaptureManager-SDK-Capturing-Recording-and-Streami), which uses the MediaFoundation Windows API. +For Mac, it uses `AVFDriver`, based on a [custom library](https://github.com/eduramiba/libvideocapture-avfoundation) that uses [AVFoundation](https://developer.apple.com/av-foundation/). # How to use 1. Download this repository and run `mvn install` 2. Add `com.github.eduramiba:webcam-capture-driver-native:1.0.0-SNAPSHOT` dependency to your application. -3. Copy the DLLs of the `natives` folder for your system into the java library path. -4. Use the driver with `Webcam.setDriver(new CaptureManagerDriver())` -5. List the devices with `Webcam.getWebcams()` as normal and use the library in your preferred way. In JavaFX it's recommended to do it as in the example below. +3. Use the driver with `Webcam.setDriver(new NativeDriver())` +4. List the devices with `Webcam.getWebcams()` as normal and use the library in your preferred way. In JavaFX it's recommended to do it as in the example below. # Simple example with JavaFX ```java +import com.github.eduramiba.webcamcapture.drivers.NativeDriver; import com.github.eduramiba.webcamcapture.drivers.WebcamDeviceWithBufferOperations; -import com.github.eduramiba.webcamcapture.drivers.capturemanager.CaptureManagerDriver; import com.github.sarxos.webcam.Webcam; import com.github.sarxos.webcam.WebcamDevice; import java.util.concurrent.Executors; @@ -32,62 +34,73 @@ import javafx.stage.Stage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class TestCaptureManagerDriver extends Application { +public class TestDriver extends Application { + + private static final Logger LOG = LoggerFactory.getLogger(TestDriver.class); - private static final Logger LOG = LoggerFactory.getLogger(TestCaptureManagerDriver.class); - public static final ScheduledExecutorService EXECUTOR = Executors.newScheduledThreadPool(4); public static void main(String[] args) { - Webcam.setDriver(new CaptureManagerDriver()); + Webcam.setDriver(new NativeDriver()); launch(args); } @Override public void start(Stage stage) throws Exception { - ImageView imageView = new ImageView(); - HBox root = new HBox(); + final ImageView imageView = new ImageView(); + final HBox root = new HBox(); root.getChildren().add(imageView); Webcam.getWebcams().stream() - .findFirst() - .ifPresent((final Webcam camera) -> { - final WebcamDevice device = camera.getDevice(); - LOG.info("Found camera: {}, device = {}", camera, device); + .findFirst() + .ifPresent((final Webcam camera) -> { + final WebcamDevice device = camera.getDevice(); + LOG.info("Found camera: {}, device = {}", camera, device); - final int width = device.getResolution().width; - final int height = device.getResolution().height; - final WritableImage fxImage = new WritableImage(width, height); - Platform.runLater(() -> { - imageView.setImage(fxImage); - }); - - camera.open(); - if (device instanceof WebcamDeviceWithBufferOperations) { - EXECUTOR.scheduleAtFixedRate(() -> { - ((WebcamDeviceWithBufferOperations) device).updateFXIMage(fxImage); - }, 0, 16, TimeUnit.MILLISECONDS); - } + final int width = device.getResolution().width; + final int height = device.getResolution().height; + final WritableImage fxImage = new WritableImage(width, height); + Platform.runLater(() -> { + imageView.setImage(fxImage); + stage.setWidth(width); + stage.setHeight(height); + stage.centerOnScreen(); }); + camera.getLock().disable(); + camera.open(); + if (device instanceof WebcamDeviceWithBufferOperations) { + EXECUTOR.scheduleAtFixedRate(() -> { + ((WebcamDeviceWithBufferOperations) device).updateFXIMage(fxImage); + }, 0, 16, TimeUnit.MILLISECONDS); + } + }); + + stage.setOnCloseRequest(t -> { + Platform.exit(); + System.exit(0); + }); + // Create the Scene - Scene scene = new Scene(root); - // Add the scene to the Stage + final Scene scene = new Scene(root); stage.setScene(scene); - // Set the title of the Stage - stage.setTitle("Displaying an Image"); - // Display the Stage + stage.setTitle("Webcam example"); stage.show(); } } + ``` # Future work * Publish this as a maven central artifact. At the moment you will need to build it yourself. -* Implement MacOS and Linux native driver that uses LibUVC. +* Implement Linux driver # Notes -The source code in `natives` folder and `capturemanager` java package has been copied from [CaptureManager-SDK](https://www.codeproject.com/Articles/1017223/CaptureManager-SDK-Capturing-Recording-and-Streami) and slightly improved for this driver. \ No newline at end of file +The source code in `natives` folder and `capturemanager` java package has been copied from [CaptureManager-SDK](https://www.codeproject.com/Articles/1017223/CaptureManager-SDK-Capturing-Recording-and-Streami) and slightly improved for this driver. This code is not idiomatic java and needs improvement. +The DLLs for Windows can just be copied along with your program. + +The native dynamic libraries for Mac are on `src/main/resources` and loaded by JNA from inside the JAR. +Note that if you want to distribute a Mac app you will need to properly codesign the dylib files with entitlements, have an Info.plist, notarization... diff --git a/pom.xml b/pom.xml index 4831822..a315134 100644 --- a/pom.xml +++ b/pom.xml @@ -21,6 +21,7 @@ 0.3.13-SNAPSHOT 1.3.2 + 5.12.1 19 @@ -55,6 +56,17 @@ ${driver.webcam-capture.version} + + net.java.dev.jna + jna + ${driver.jna.version} + + + net.java.dev.jna + jna-platform + ${driver.jna.version} + + com.fasterxml aalto-xml @@ -82,6 +94,15 @@ webcam-capture + + net.java.dev.jna + jna + + + net.java.dev.jna + jna-platform + + com.fasterxml aalto-xml diff --git a/src/main/java/com/github/eduramiba/webcamcapture/TestCaptureManagerDriver.java b/src/main/java/com/github/eduramiba/webcamcapture/TestDriver.java similarity index 74% rename from src/main/java/com/github/eduramiba/webcamcapture/TestCaptureManagerDriver.java rename to src/main/java/com/github/eduramiba/webcamcapture/TestDriver.java index 1dbcfbb..2811130 100644 --- a/src/main/java/com/github/eduramiba/webcamcapture/TestCaptureManagerDriver.java +++ b/src/main/java/com/github/eduramiba/webcamcapture/TestDriver.java @@ -1,7 +1,7 @@ package com.github.eduramiba.webcamcapture; +import com.github.eduramiba.webcamcapture.drivers.NativeDriver; import com.github.eduramiba.webcamcapture.drivers.WebcamDeviceWithBufferOperations; -import com.github.eduramiba.webcamcapture.drivers.capturemanager.CaptureManagerDriver; import com.github.sarxos.webcam.Webcam; import com.github.sarxos.webcam.WebcamDevice; import java.util.concurrent.Executors; @@ -17,22 +17,22 @@ import javafx.stage.Stage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class TestCaptureManagerDriver extends Application { +public class TestDriver extends Application { - private static final Logger LOG = LoggerFactory.getLogger(TestCaptureManagerDriver.class); + private static final Logger LOG = LoggerFactory.getLogger(TestDriver.class); public static final ScheduledExecutorService EXECUTOR = Executors.newScheduledThreadPool(4); public static void main(String[] args) { - Webcam.setDriver(new CaptureManagerDriver()); + Webcam.setDriver(new NativeDriver()); launch(args); } @Override public void start(Stage stage) throws Exception { - ImageView imageView = new ImageView(); - HBox root = new HBox(); + final ImageView imageView = new ImageView(); + final HBox root = new HBox(); root.getChildren().add(imageView); Webcam.getWebcams().stream() @@ -46,8 +46,12 @@ public class TestCaptureManagerDriver extends Application { final WritableImage fxImage = new WritableImage(width, height); Platform.runLater(() -> { imageView.setImage(fxImage); + stage.setWidth(width); + stage.setHeight(height); + stage.centerOnScreen(); }); + camera.getLock().disable(); camera.open(); if (device instanceof WebcamDeviceWithBufferOperations) { EXECUTOR.scheduleAtFixedRate(() -> { @@ -56,13 +60,15 @@ public class TestCaptureManagerDriver extends Application { } }); + stage.setOnCloseRequest(t -> { + Platform.exit(); + System.exit(0); + }); + // Create the Scene - Scene scene = new Scene(root); - // Add the scene to the Stage + final Scene scene = new Scene(root); stage.setScene(scene); - // Set the title of the Stage - stage.setTitle("Displaying an Image"); - // Display the Stage + stage.setTitle("Webcam example"); stage.show(); } } diff --git a/src/main/java/com/github/eduramiba/webcamcapture/drivers/NativeDriver.java b/src/main/java/com/github/eduramiba/webcamcapture/drivers/NativeDriver.java new file mode 100644 index 0000000..8473648 --- /dev/null +++ b/src/main/java/com/github/eduramiba/webcamcapture/drivers/NativeDriver.java @@ -0,0 +1,36 @@ +package com.github.eduramiba.webcamcapture.drivers; + +import java.util.List; +import java.util.Locale; + +import com.github.eduramiba.webcamcapture.drivers.avfoundation.driver.AVFDriver; +import com.github.eduramiba.webcamcapture.drivers.capturemanager.CaptureManagerDriver; +import com.github.sarxos.webcam.WebcamDevice; +import com.github.sarxos.webcam.WebcamDriver; + +public class NativeDriver implements WebcamDriver { + + private final WebcamDriver driver; + + public NativeDriver() { + final String os = System.getProperty("os.name", "generic").toLowerCase(Locale.ENGLISH); + + if ((os.indexOf("mac") >= 0) || (os.indexOf("darwin") >= 0)) { + this.driver = new AVFDriver(); + } else if (os.indexOf("win") >= 0) { + this.driver = new CaptureManagerDriver(); + } else { + throw new IllegalStateException("Unsupported OS = " + os); + } + } + + @Override + public List getDevices() { + return driver.getDevices(); + } + + @Override + public boolean isThreadSafe() { + return driver.isThreadSafe(); + } +} diff --git a/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFDriver.java b/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFDriver.java new file mode 100644 index 0000000..dbf969e --- /dev/null +++ b/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFDriver.java @@ -0,0 +1,102 @@ +package com.github.eduramiba.webcamcapture.drivers.avfoundation.driver; + +import java.awt.*; +import java.nio.ByteBuffer; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; +import java.util.regex.Pattern; + +import com.github.sarxos.webcam.WebcamDevice; +import com.github.sarxos.webcam.WebcamDriver; +import com.sun.jna.Native; + +public class AVFDriver implements WebcamDriver { + + private static final ByteBuffer buffer = ByteBuffer.allocateDirect(255); + + @Override + public synchronized List getDevices() { + final var lib = LibVideoCapture.INSTANCE; + + final List list = new ArrayList<>(); + + lib.vcavf_initialize(); + final int count = lib.vcavf_devices_count(); + + if (count < 1) { + return list; + } + + for (int devIndex = 0; devIndex < count; devIndex++) { + final String uniqueId = deviceUniqueId(devIndex); + final String name = deviceName(devIndex); + + final int formatCount = lib.vcavf_get_device_formats_count(devIndex); + + final Set resolutions = new LinkedHashSet<>(); + for (int formatIndex = 0; formatIndex < formatCount; formatIndex++) { + final String format = deviceFormat(devIndex, formatIndex); + + final Dimension resolution = formatToDimension(format); + if (resolution != null) { + resolutions.add(resolution); + } + } + + final AVFVideoDevice device = new AVFVideoDevice(devIndex, uniqueId, name, resolutions); + if (device.isValid()) { + list.add(device); + } + } + + return list; + } + + @Override + public boolean isThreadSafe() { + return true; + } + + private static String deviceUniqueId(final int deviceIndex) { + final var bufferP = Native.getDirectBufferPointer(buffer); + LibVideoCapture.INSTANCE.vcavf_get_device_unique_id(deviceIndex, bufferP, buffer.capacity()); + return bufferP.getString(0, StandardCharsets.UTF_8.name()); + } + + private static String deviceModelId(final int deviceIndex) { + final var bufferP = Native.getDirectBufferPointer(buffer); + LibVideoCapture.INSTANCE.vcavf_get_device_model_id(deviceIndex, bufferP, buffer.capacity()); + return bufferP.getString(0, StandardCharsets.UTF_8.name()); + } + + private static String deviceName(final int deviceIndex) { + final var bufferP = Native.getDirectBufferPointer(buffer); + LibVideoCapture.INSTANCE.vcavf_get_device_name(deviceIndex, bufferP, buffer.capacity()); + return bufferP.getString(0, StandardCharsets.UTF_8.name()); + } + + private static String deviceFormat(final int deviceIndex, final int formatIndex) { + final var bufferP = Native.getDirectBufferPointer(buffer); + LibVideoCapture.INSTANCE.vcavf_get_device_format(deviceIndex, formatIndex, bufferP, buffer.capacity()); + return bufferP.getString(0, StandardCharsets.UTF_8.name()); + } + + public static final Pattern RESOLUTION_PATTERN = Pattern.compile("[0-9]+x[0-9]+", Pattern.CASE_INSENSITIVE); + + private static Dimension formatToDimension(final String format) { + final String[] parts = format.split(";"); + if (parts.length > 0) { + final String resolution = parts[0].trim(); + + if (RESOLUTION_PATTERN.matcher(resolution).matches()) { + final String[] widthAndHeight = resolution.split("[Xx]"); + return new Dimension(Integer.parseInt(widthAndHeight[0]), Integer.parseInt(widthAndHeight[1])); + } + } + + return null; + } +} diff --git a/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFVideoDevice.java b/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFVideoDevice.java new file mode 100644 index 0000000..5b9e39d --- /dev/null +++ b/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/AVFVideoDevice.java @@ -0,0 +1,280 @@ +package com.github.eduramiba.webcamcapture.drivers.avfoundation.driver; + +import java.awt.*; +import java.awt.image.BufferedImage; +import java.awt.image.ComponentSampleModel; +import java.awt.image.DataBuffer; +import java.awt.image.DataBufferByte; +import java.awt.image.Raster; +import java.nio.ByteBuffer; +import java.util.Arrays; +import java.util.Collection; + +import com.github.eduramiba.webcamcapture.drivers.WebcamDeviceWithBufferOperations; +import com.github.eduramiba.webcamcapture.drivers.WebcamDeviceWithId; +import com.github.sarxos.webcam.WebcamDevice; +import com.sun.jna.Native; +import javafx.scene.image.PixelFormat; +import javafx.scene.image.PixelWriter; +import javafx.scene.image.WritableImage; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import static com.github.eduramiba.webcamcapture.drivers.avfoundation.driver.LibVideoCapture.STATUS_AUTHORIZED; + +public class AVFVideoDevice implements WebcamDevice, WebcamDevice.FPSSource, WebcamDevice.BufferAccess, WebcamDeviceWithId, WebcamDeviceWithBufferOperations { + private static final Logger LOG = LoggerFactory.getLogger(AVFVideoDevice.class); + + private final int deviceIndex; + private final String id; + private final String name; + private final Dimension[] resolutions; + private Dimension resolution; + + //State: + private boolean open = false; + private ByteBuffer imgBuffer = null; + private byte[] arrayByteBuffer = null; + private BufferedImage bufferedImage = null; + + public AVFVideoDevice(final int deviceIndex, final String id, final String name, final Collection resolutions) { + this.deviceIndex = deviceIndex; + this.id = id; + this.name = name; + this.resolutions = resolutions != null ? resolutions.toArray(new Dimension[0]) : new Dimension[0]; + this.resolution = bestResolution(this.resolutions); + } + + public boolean isValid() { + return resolution != null && resolution.width > 0 && resolution.height > 0; + } + + private Dimension bestResolution(final Dimension[] resolutions) { + Dimension best = null; + int bestPixels = 0; + + for (Dimension dim : resolutions) { + int px = dim.width * dim.height; + + if (px > bestPixels) { + best = dim; + bestPixels = px; + } + } + + return best; + } + + public int getDeviceIndex() { + return deviceIndex; + } + + @Override + public String getId() { + return id; + } + + @Override + public String getName() { + return name; + } + + @Override + public Dimension[] getResolutions() { + return resolutions; + } + + @Override + public Dimension getResolution() { + return resolution; + } + + @Override + public void setResolution(Dimension resolution) { + if (isOpen()) { + return; + } + + this.resolution = resolution; + } + + @Override + public BufferedImage getImage() { + return getImage(imgBuffer); + } + + @Override + public synchronized void open() { + if (isOpen()) { + return; + } + + final var lib = LibVideoCapture.INSTANCE; + final int authStatus = lib.vcavf_has_videocapture_auth(); + + if (authStatus != STATUS_AUTHORIZED) { + LOG.warn("Capture auth status = {}", authStatus); + } + + if (authStatus != STATUS_AUTHORIZED) { + lib.vcavf_ask_videocapture_auth(); + } + + final int width = resolution.width; + final int height = resolution.height; + final int startResult = lib.vcavf_start_capture(deviceIndex, width, height); + + if (startResult < 0) { + LOG.warn("Capture start result for device {} = {}", id, startResult); + return; + } + + final var bufferSizeBytes = width * height * 3; + + this.open = true; + this.imgBuffer = ByteBuffer.allocateDirect(bufferSizeBytes); + this.bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_BGR); + this.arrayByteBuffer = new byte[imgBuffer.capacity()]; + + LOG.info("Device {} opened successfully", id); + } + + @Override + public synchronized void close() { + if (isOpen()) { + LibVideoCapture.INSTANCE.vcavf_stop_capture(deviceIndex); + open = false; + imgBuffer = null; + arrayByteBuffer = null; + bufferedImage = null; + } + } + + @Override + public void dispose() { + } + + @Override + public boolean isOpen() { + return open; + } + + public static final int MAX_FPS = 30; + + @Override + public double getFPS() { + //TODO: Use actual FPS declared by stream + return MAX_FPS; + } + + @Override + public synchronized ByteBuffer getImageBytes() { + if (!isOpen()) { + return null; + } + + updateBuffer(); + + return imgBuffer; + } + + @Override + public synchronized void getImageBytes(final ByteBuffer target) { + if (!isOpen()) { + return; + } + + if (target.remaining() < imgBuffer.capacity()) { + LOG.error("At least {} bytes needed but passed buffer has only {} remaining size", imgBuffer.capacity(), target.capacity()); + return; + } + + updateBuffer(); + imgBuffer.rewind(); + target.put(imgBuffer); + } + + @Override + public String toString() { + return "AVFVideoDevice{" + + "deviceIndex=" + deviceIndex + + ", id='" + id + '\'' + + ", name='" + name + '\'' + + ", resolutions=" + Arrays.toString(resolutions) + + '}'; + } + + @Override + public synchronized BufferedImage getImage(ByteBuffer byteBuffer) { + if (!isOpen()) { + return null; + } + + updateBuffer(); + updateBufferedImage(); + + return bufferedImage; + } + + @Override + public synchronized boolean updateFXIMage(WritableImage writableImage) { + if (!isOpen()) { + return false; + } + + updateBuffer(); + + return updateFXIMage(writableImage, imgBuffer); + } + + public boolean updateFXIMage(final WritableImage writableImage, final ByteBuffer byteBuffer) { + if (!isOpen()) { + return false; + } + + final int videoWidth = resolution.width; + final int videoHeight = resolution.height; + + final PixelWriter pw = writableImage.getPixelWriter(); + + byteBuffer.mark(); + byteBuffer.position(0); + pw.setPixels( + 0, 0, videoWidth, videoHeight, + PixelFormat.getByteRgbInstance(), byteBuffer, 3 * videoWidth + ); + + return true; + } + + private void updateBuffer() { + if (LibVideoCapture.INSTANCE.vcavf_has_new_frame(deviceIndex)) { + LibVideoCapture.INSTANCE.vcavf_grab_frame( + deviceIndex, + Native.getDirectBufferPointer(imgBuffer), imgBuffer.capacity()); + } + } + + private void updateBufferedImage() { + if (!isOpen()) { + return; + } + + final int videoWidth = resolution.width; + final int videoHeight = resolution.height; + + final ComponentSampleModel sampleModel = new ComponentSampleModel( + DataBuffer.TYPE_BYTE, videoWidth, videoHeight, 3, videoWidth * 3, + new int[]{0, 1, 2} + ); + + imgBuffer.mark(); + imgBuffer.position(0); + imgBuffer.get(arrayByteBuffer, 0, imgBuffer.capacity()); + imgBuffer.reset(); + + final DataBuffer dataBuffer = new DataBufferByte(arrayByteBuffer, arrayByteBuffer.length); + final Raster raster = Raster.createRaster(sampleModel, dataBuffer, null); + bufferedImage.setData(raster); + } +} diff --git a/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/LibVideoCapture.java b/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/LibVideoCapture.java new file mode 100644 index 0000000..167a03b --- /dev/null +++ b/src/main/java/com/github/eduramiba/webcamcapture/drivers/avfoundation/driver/LibVideoCapture.java @@ -0,0 +1,49 @@ +package com.github.eduramiba.webcamcapture.drivers.avfoundation.driver; + +import com.sun.jna.*; + +public interface LibVideoCapture extends Library { + String JNA_LIBRARY_NAME = "videocapture"; + NativeLibrary JNA_NATIVE_LIB = NativeLibrary.getInstance(LibVideoCapture.JNA_LIBRARY_NAME); + LibVideoCapture INSTANCE = Native.loadLibrary(LibVideoCapture.JNA_LIBRARY_NAME, LibVideoCapture.class); + + public static final int RESULT_OK = (0); + public static final int ERROR_DEVICE_NOT_FOUND = (-1); + public static final int ERROR_FORMAT_NOT_FOUND = (-2); + public static final int ERROR_OPENING_DEVICE = (-3); + public static final int ERROR_SESSION_ALREADY_STARTED = (-4); + public static final int ERROR_SESSION_NOT_STARTED = (-5); + public static final int STATUS_AUTHORIZED = (0); + public static final int STATUS_NOT_DETERMINED = (-2); + public static final int STATUS_DENIED = (-1); + + + boolean vcavf_initialize(); + + int vcavf_has_videocapture_auth(); + void vcavf_ask_videocapture_auth(); + + int vcavf_devices_count(); + + void vcavf_get_device_unique_id(int deviceIndex, Pointer pointer, int availableBytes); + + void vcavf_get_device_model_id(int deviceIndex, Pointer pointer, int availableBytes); + + void vcavf_get_device_name(int deviceIndex, Pointer pointer, int availableBytes); + + int vcavf_get_device_formats_count(int deviceIndex); + + void vcavf_get_device_format(int deviceIndex, int formatIndex, Pointer memory, int availableBytes); + + int vcavf_start_capture(int deviceIndex, int width, int height); + + int vcavf_stop_capture(int deviceIndex); + + boolean vcavf_has_new_frame(int deviceIndex); + + int vcavf_frame_width(int deviceIndex); + + int vcavf_frame_height(int deviceIndex); + + boolean vcavf_grab_frame(int deviceIndex, Pointer pointer, int availableBytes); +} diff --git a/src/main/resources/darwin-aarch64/libvideocapture.dylib b/src/main/resources/darwin-aarch64/libvideocapture.dylib new file mode 100755 index 0000000000000000000000000000000000000000..6e242d594821cdd56edf2a273e8c37ce8ebfeded GIT binary patch literal 195640 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 jI?B1i5jRnOj8pkARlxU_VphTsTOOBqM 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%0A!pY`*k5!pBG_k=HFEYB zza3=kNA7gB3pKkRCCl$Hn#~fa8%nxF4tqQYkp(ONh)RJX5j4AvrK|RkK+tgf6o9bi z4dU2K4|-D0Zew8uRT%VCh$EXTu!1E-uy+xX=hPSp^HL^`BIw=|IMfkAJFS1FzZfCS zj3aQi3xh0qB#p5&9P_(VP;bBgD1q5uFzJ7>_b%{J7T5pqv$;UH?g~Uv0T%^DYw0Es zNPyUEF0czp2y6(5;%1X1*wF7vsvr)i0mJAZ!OOkzXCu@?BhJh zIgL7R7kQvlvp-)GD$XhGgh%j!`G_Rvi_!le#_0KC8(6f>Z8Yt{c4q;+UIEoEsMz^p z3yJ(acmKrAPKqTr;bX3hR()G=LF+?^5lWuPyj;D(N{;>)9aaBIfsZG=P~dvPvw?5o zxEnV-2noF_RmD0}a8X4DCkUJ+=>*P_5(LhYj+n?WmQv`=9rcXh`%%7|I0dLs(uuJu zlz;y_p#Iz#r9Z!fL|#<#r~cs$ybswM8+hG}2sL%j0%{KVJs<@{PCe#NY=hSbhHf^+ zIi`639W3X7$VMK8359GHAxAhF81OPy7wF)R5$4}OIfP0^y9Al3An5-CWsiQf_Vx4q z)O2_&uag8kPQnK=>wnFu@>bq9V!R79)HEg4Z!51IUKj#fi0iV;2p4+qm6eQdCVz{t zjHckzBdF<#H3a@svpznTr0`Z=2WR1=w(@>?17gJ*_a#QoXgy{0BC;*RTX{Z~dqVqu zDqre&GFy42Eb!z_{9d85IokifOnd{zJ=EFBZ{>+LIJ^E2I&GHh^Ujx}}KM4ys{{OH>g(lg;q4Qt@R`kU%M=n-7|i0g8JcN1PDaF&!SaF&z~ob)$KA^lC=BzSI= z?Qf@zc0P|P_d|TJp=xE!yxwWPs#p$hL{Jlf58z}rZgl6vwu~- z|EB$m!x_l_Efe-H06H(J4iv4E!HMnPxrn6Nzw{dJzhM7z_fOnhLD}hV|LTPP+`_rT z#=-+YVE;0&w0}9ew0{N8R%@ZasmX%b!10w7;=)#f8)g3rt|a1`AaEVwI)SsK1c9@p zBblT>rId*M8|CX4Z?TSV|9)@%xpf}Z`#}2hP7yMI{`4UvqCZRjbX@&;CW%SbxqEIP1@+*Krs0mr`oU%{Bu6ss6kYKY98-`f~{Fa>we=9kV#Q ztUrIT6ZrSipSNRbI;B7V8~XE?bD%#_53G5_(KR=e!`rf~vm*xA2-h^-! z9a}zIzw+HMo61Wy_87$)^n8F{vdn?Y=j9fl@;Oeje2X}(6PJ&EKx(7|Ad4+Hx9Skm zQE;+nYvvyk(AbA4vDVBfwCDIp8fAV*KJFd5lCa(REr)|s;o02bosLd&7Is45#ozDo zy}iM=I0jC!NUj-5G2W#Eul^`RzKI>L;H9d_%zw~wjYJ*|?g4`oxf=<=D@x>zVUa(I zh^!DIZzqvMRFPBfQ$-#OULO&84U0S&C30q1{0ziz&7}RlU{#c?qrs06B8&PqavNLJyTh_}4GGs?Bgyh7PFkrbpKEoA z_u`dbrFOcq#)t%VV2dy~L?+-*d#jpQGyM=8RoeMssp}(BFD0o>ndd;NX#ATI7W`)_ z`%Wfb?S{MKK(%IGH4-6zr;ygn>#0PyQ``+5p1D*-t!dZ64>cA1lvr94Ke}3kPK5es zqztttj~h*3R2ehA8+=H}T28XeLYB7qJ|rosJh&EqW@rn4+T<$od^dO_$C&u?1R~$0 zw8tRf!=s4Y9sGh5#%LS0n$q^C4M(#1EnfwTI3UdbrsUrd<~Ixe_mK?o>nT7Ae^xTz z!OZ9i6Q>X}PK;WBY~RAZiDwG0d#D+%7ha=<*IndQBfR2;*U!o8Qu0C)Ra91gT0IwV zcksa!qExe5N z@S$o`i+3YV>cp|g8#=Vj6EXPs`XL+|*1A@Y?`H5FO0M6IgIB*`qN8c(w|M z2c~seDKZz_gyN!iO%-0n7Ckvhw^$RlHzX!D=e^vwv*7kC zOq!!8$QJ+VaV_31lja*lY408GUy?5HHvbYN^lGTnyOYl#(KgQ{W2))eE%@~7LV>me zousDi%g4nH#->Zo)Nbgb3a8)AwJtIFjajDF1fOYpcY>)kS7XA`qk;AqGP<-s>*R)6 zw#~OLYp8a^uQ?X|k|k>zPS=h{X*X+||0nEg(wpM(D?o9JgFh>m>LxFRmL8qC8XVhF z(B@CLVQyZRyQE;lKRin~MI1%spP(_tui9e#GcpR>`LKEWK^&%=w{f9=p25^|AgKI= zTVhmR%RyskXF(!q>*o?);2vH?O@Jzpug1|DG!{&E;Po zYS*WuKsatIVD!&VFl(R>^L(L>xp{lF8~C+N)6VLsqkUxudkFgv=yEHHMVF%vW+^ha zyke%4k-mk-xfu+&=Mdrf8ArUNq?_S`VL+#O(MaHvf+jvm4ezA$1+O=b-xH(DX8=W4l5SaZ6d5tP}4=2Nl=?aShk=hh_HErx<-V} z64V$GW)PH1gk2=4BoQ`6P<0|~lAz8IVdDkm6k%foHA;ky6x13KHbhV|FN&b96Jg)D zxjtoHz67-^@n3K?J$7vCP|r(|=ax#dGG#v$h$r3L@}+6RVUGcw&)gCU{_00mKd|@? z2A{hKC=}ILOoODWXukS9xCsosafsZqk9u}kw};ha5s9rc<7O3ztz@y^1x+lL!~~yZ zvHLye@inXH(w_!bzzaPc1_SJfx4NC%@%YoStL4@H0Bs?7{*SCr^h(CJ-d^*C-Lepq!+F79ak}t`l_Iw#$)SlU7x3N*5-|~LY zL~%Ck_x!~C=Wq@CbM*O>yP=G^hA*J1+)j~YtMtZ0m*(?LC*vb|AQ0DgUD8(k2-iDC(BjcuoDOdqK$&Ci}-q|w>4JOsM0db-Jeu+=0$Y)j0 zq6@-mc7h1IR)(R8#|WRRqz_CWf7++KES|U=excV?nto5UkDGgyXl4Zb9gIk7dUWL9 zi^ylGk(nMS@fB#T5tx5@+baW$V>(2uEhQD)AXDxXAZL4sh>Vt3tP2mD%hb$w5E)Gun%DI z|9T3hghMGEy>abyI=1M;+($ymO^5=XRXu+mExIA@zgE2-mR@o~GPk@DN-jsBv1J$J zpPtw9Wy*fDf8M)69~e!c9p;R;z5mQ@=~Fu-ClQIvN)Xr0yb)YW{4{BOjGYhs?mLux zF~riMB;#8TcCpgDmlDIfq2#>_sh6Kv;?!d#zF!j~@jO-H`jeFS+Nl0{+#DAXZU4tZI{bCcs`~~|13WsJdEXnF1 z64GXqH2=hO#AfyQELLLZL%``Xe}CEq2*<7PThP87eh#OOOTw53UFT}d8Tq)Y3X{+_ zOhU_-gWsQ74S;^$NB~n3Vh0OHQX@W(*$BcgrM*w`uEhjG^@nLB^jbm2N1kE0LfYi_ zc5z@kGVmxwgkD1;WTgBN^8->rYJPiH?@*}HGbp_le93`BR#$bJTHZoGyOI*cgnkh9 zkxtbvOqI~orKTwL%*)Ih4s9gUnN|Xce_lX&=KMx1pnU%YxDo_L(BI9IF{NFrD2)jP z{@SDhzh{b`=H-RU=s|aw{Rvad{(L(9RK3cw0kO@zE!>jlBZO9}8wsHp0aTV5 zt%rMVQ4m;d&rIW@y&IgX$M39(pk|m3!tD2sXDjoq{Fe8EpOOzIHCkmKW-dPN*R*XY z2*no)6}0?2UtE1@p1j*U8K&t!gC8JL{;;d{1!yjDwsOHR)JVj>C^*lqH#W_iqBJHJ z_$#I);X7P<>0RLW8VWWX);6bWuuMex67u|c_`4#ZV8ecG^IoKA^k2febt(Ie{F9da zmIE#O%}v)#N>V)IjsE;edS3Lr*4^}V$f(VIF5@|Ec9#YQ;LF}Oj9+!-X}0IKyr6mY ztGA3TuNo)6fU~DJyxqjwT+MJwGPFH6<4t!Z671cN)ntdM1$9q{ zJhY%KZ~zS;G#J{6PAG4oHbc|p1S>DLpTuOnDb> zH~P?d8n6+Q_${`tI0iZCy=U;ntt0^m#wh%ZzL8UW1udQ_1|w=GSJP>PZ$e&tK~f%x z<8edEV>mhst(1GA%6hMRG)8I6$Z72{c@QIAF@2ZIJQlQ*lJ+$`K6=Mvv zCevvq*r3$R;>f`vlUQExZ9tPh@zz`diV2$l-sF5-K!eYCP{zne+YxM^*l(mk&q4Pf zAKwPIKnmuE!#R45_X6YL`2eWR#CNJ7m4@w6=!RHL7U~w`Ie0$u1s%e+(!t<(rgo~4 zK7pzXPKI#adN=tkdeh_=&BK=I&F2;B&BN#(;1~m+^&_TR*rXRyzI0SNOtB{99X9X~ z&L9?KaziXMH3vDw%sa-PlkQ(M&vfBmn>vOzbssTlq$wFzxTMvOrW_6)MLW>+4e_*h z9;|_68fmccM*%HB%A=|N!rKU#M!$+sm^ZNZr>;U&p%3>HIx!-2+k}%5deZwQvgD7g(7 zS|;T%_B&ApRM(;8TZJblwyKA!Mr{MJGpWNQn%{cu+vuvH9fa=l#2Z_Nz}81Y>jp6j^8Iys+FiSXEsmp@cM=rO z?7Wl@js8`NQTy22X8$!4lY$STw3s6%LU9yNght2k+7-O?ELv{uEbu$^d2{Uvu9u95 zhbDN&nYO7bIrDk*^*1Cb%J{+T1zI=ZZch~D$0kf}o(n`S{sfK9zb*1~LIZsj{O(K~ z|N5pGw}*yym@<;q(sV1g%fcgp?^GjkStM>*Qv=Gen2nvIm>vB|C<}g8dwCL6>$|2_ z@8013$UR#LGyHU?7E1J7uoVeWZ6MWu2KR!%79q`gS-Eo?5?oJ2K@@W!~_E&7`VEIb%6 zau3kHj1L}*S|?l(o?+h{50Bls7i6J^AT4&chE7F52 z_Kv`*z9E=DujXI)f;seDFLsVh8(t81IN}|yM!Vr}h*xmoi{{p)wD+NH`U}ymmk-m> zop)b#nKjShte-^hxNVlTj!NSUjZypLl7yzuJ;R>!EXry=ysZfQPv^kl{lUZq2IR1H z;@XP=w0Zlmpq$M<*Y+7(I=6vMu^27JrN*Vfqi28xxBB!hgwk6$fT-_&!lEu#MKv8t zg1Fb&_u4*`DX*ogpykb!4omQHA&X{Hx;zH&7b0DR-n!yMV%lNfisX&LLTyd_gAo4& zKwk4<%Iwon_^93k!Dmt5FjwekCln?#6=qNH2Kd3QJ!k`f5q4TiD7ckUC4HON1z!x; zlszdg1RsE}v?pi5aurh996AuJWWkl57G2`~VDH=Xj8*SR}yZz4)y zZe5TFa$hgP@RQqCT>jTuu$Ri&fY4@`Wwm5Cim(oZby3*mGHeOkl-KS<9eGYi{Z~SG z@D}8fDrhDGdxx1a-qmin5U79IUf42tZ32_rk4^s8w3U>V)>SZh-c9KUjyN6FVCILVHE0C_ddP5k*4==ROOAfn~n zXOtnRnU}{2mJK(MuRra4EX8HN!Wz|pBGKBlwNyjKvOk%bJy+83_ou~y7h8xUz@#4d zh8Ox6z3*W=5gp|sBnP$+u!v-jwD$-jV~X;R#T?!lPyp}o28WYyxeXOwr0fXZfD8tr zA9eB}1AvyGC@6OS6Y(WZ$cvi|sA%Zg*iu8uy}Yfv4s9hj5Z{MBiKu0C+?Oejt;v5x zo-jkzA+g?Pj{W^1D!wUmLX0d0F z6x#ZnTrpWgqv+7PFUP6}g~~5KI#Zrl#%R zc?_mZwe)OKQ`f=Q~7lX)I0Z^T0OIY9rnCxYPv-6{uOtz_U=NNad}{L zdmY8)+4wnbW(aF3?flLgzD|Tm;2FK)1@A(9j&{zQwB}6hlNwWKJ7&N> z*#1UDq;?sO?O4-p3{x84xXO_qZttedo!|-4t-Og(0HcfUG9RaCt!ei&NZvXeso!%N z3ba4EKoR3jeX%U}K$HJf#_OQfQ`UHF(|OP4mDk}O8{(zBKyQ9JydR(`u!HxJ+$ibP zHl0OMalslcYz_2Ij>#_)+laRr*v|+clD7Gu&>xr{Hqx8ceE&QRz6{gQt^jWbWbF3p zd;ex?$sCP5iSuyHO}i8F=l+F)(an9H$IRttEG!>6Cm%1LH{fW-W!pR#lkL#debl7s zq6-Z$C3vv1#m&r}-tE0-Mdt?N33;ch^APrHAlv-Lk$7v|)IGH6NWAvOKT+mdvH#JU z{AWVTN3N&W+3%UkwQR@Cp^n`0l3DW|=2Pv4JJ7PEpMMG1bOhGT)f{QN$)AvpiqdYl z6#+eoq`%6C!T^JxNt=5lSfqmwMf?Qeq}rM?A6UtacPj=|?cRKSGE-p22LT%(Bq z@{BMyU8e)XF!*i{PHO7bU|FzBw*`!R-!JuW>Qr+P-b3FAKz?OFYU3OCB6F-VwHsal zT7a8(d1va+L|}_*!~KZS^C&2&n&rqPRE>#2vV$y%RP5CD{0%$^9xsB2iQsQAxPxOU z_$;I>Y{`6Wt{nquV&!tG+Wnq!`5EOpFW&iMn>8b6yter-C=xz-x&+}Vq24nh6|DUQ z&YX28HFxA|^S&_qCsFJX9Q&i*8k+xM?Jj%<3p(X#%yXp4+JhxXoJu~KMiSjBwtE3F z;8G7XA~kXqnc|(eG?(_TVErx7g9WoC4fj5?_V<@)n;-fXMT4n=d}=q~>|baTnb!>t zqA*b<2J^71i*LaKC6o^DoauY6riiVX2~^V7w0}`hYw|%1^k4{cPEVbv(PR-kghBFh zsRF92dA~vIYiPQI&Wpywjh#)IH=$h6JWkC0c`5&(>Wb<*WDl8eo<^}q1)Z*e zI$g$!@t(PA`4IjB!h46y`I;sIQo>oL45Q9F&XjTKc#koMn5j~JZ)?VSHn zA6Y1CMm=kWAxPEiA1YMBF$yyocG{AH7Mi-eV|o|J`YG^NLB)OOnN9BifF1VyIJn{~ zQgpjK6ASPKHW_R~s8rq(F3}fA5etakNl1ytt1#C}gt@l30Jn{k(KjECcEe)yir%^C z0tYFZt!ZyCNIrsm2DhVE^z0J~=OGbH-vwcC(HA%|KUyzS?>*jO-uD@*ibe1RUdu}ketT-w`|-v31| zbs`%rFrkr+Js7&dvniJ@{QgPpU#dMU_JYJ3hF*60C$6Mu&}O>)jH`6s;rSU?Ll53b z8E&0A3t`ZM+R6ayzjC4fJ}~q#$FY=njud_73)PS0&+MCohRlm$Ci8h=Mr{O04t59^yE+>o5{m9{y6n!>^pRub*gkaYwrn$|z- za{WIt9)3Q{>&)|?Z#=v+%UhY(@=v4h<8yLbx~H6DOyBKYW-7L55?796v{aX4s)x`g?WWNcj!niuCj4O!uZ zZMgdLnnU=ivpffzP}hu4g2beStsX;C@MkC|=EB=LdS6CHbsj9@z|*uN2_JZRM!_}= zUI`8wptO%;{OWl{!7gQ1Ve7?n3tO+5tLYt9(0cLEg4Sz>Vow04wNtgBFlS<;P3!yG z;(5>a^-|B2$X6`CP4^2i6u@Uk(aN3w1W5%|$Y3{^ZK)c8Fkd2OY&)kXYL2K9V zr>@hQa5jD{qI;H^(OKA6>|$-ijQhQN|?tQ31n<{(<*Tl@ZL*M2vh4!WgDqHtR(tOEosHf zo0&;q`@#6&N=m&Y@yA3{k-Lf2KWZw`txKQ{lj-}P{FaMZ^MUiX1w^K81t@6w7wuAD zWmeEqk(gA_a!sO+zMg17efSeMfdeAFYoP01CfuL+itzHx$#0!WS8nE#?_ASv{J0P8 zBxx-z|1vsV{|X+&tWI4OUlw@r8?%WUDLQ)W%jCa1aRW$tfVv{6RYhT!0u9!}K*Csw z*5kpmAs|XWtm-*Pzj>Xy@j^^nQ#Y}D6T3IF8({Yqc5h?%4t6)QdndbhvwJVQZS3C1 z?gQ*T$nF+)f5Yx0>^{nFJG+mwyOrH1+1FkbY_bhfNusexe zJ-g?!JB8iz*`3DjMeJV8?sRqy?546iligYDrn5VT-FfU@!fqD3+3e=BJD*(>y9?RP zXSa~uB6gRuTg+|=yYw|`XzEIKFK71(c1zhUW4D6cN_MN+y^`G;cI()!XV=B9hut;o zHn6*n-D}vrj$I$S>)CB)_h;;GWOoz0H?ey&y8(7@VfQw6?_hT`yLYmCH@o+;+s5vF z>^{KmgY0f$_c!c5!tSH&wzK;!GlFaJYM@`VQ>t^}J2k zqlE1ttdp=#!rmwB8N%Ym0^3TMp0M8#mQ7e2VOJ1#2Vv_7yNR&d2wP8BJ7KhORqYuE z49A9ts#^%FAnXufIDaTqJqnw@yg^bujW8S!8>(JF*gV2k5td5WTEeCg79eaAVUH3v zj<8n<8%|h|FnZ}x{cpl(^PqbC>A>i!h3eUay-!#fVPt_<`v`lPu+4<+B_)=! z344`lEt{|&!qN#FL3K5qu(Jr8LfACI&LS+0F!~8?bv|K32rDJ*JIn&rZG?SJ*kgpz z@h;WR5O#pDzY(^Vuy+W1k+5A<-VVafr&2yiST{G(pV3YKGNZ0|w-Xbg&vu6*TXk2Y0Y!_iy z!Hnpky`$>0U~Kd}PFNO6*+SUWgxyQn!-U;Nm<0x5&nCidCd^0JYlN*KtPZPyo*Kd) zB&>`uvWt3F5OyZzrI4^}!g2}o5H^RfO@tW;qw{ro&L`}7!X^;bP1qR1ro%GmNg`|! zVMnp+QGGpOUlR6v!agDF0AbyPold2Eov;~%y+qh{!k#1SGs3nJmIMp2=TXAWBkTdf z<`H%$VT%Y05auH6XN3KXuxki=m@pS%ZxU8b*q4M|LD+Pvp<=?`qk36L*a)ieEW*kN zn?=}Tgk4P7ON5%Jw+Z{0 zuswuj(>_ushZ6P-VW(q9tY<4>ZG`=XF#RZCZG>$i><+^IO4v<=eM{JS!tzH0Yar}N z!s-b7g0Kn>)dE{d*m}Z>2z!dK`GoZlHjl7m8Vjj}EhcOlVPk0YOd{+;!p0GnL)dV_ z?1U+V{fw}~Ujw_ButS7BMcDg~6yL6Lt$>M+w_V*yOW-T}M~}VIIP+BJ4`St|P3Ju-gbLA?#to@(Fv1uxwxz_BD=j zyL-9AQ(a)MaM+3)>+N%tN~f#V=5Z_DI>&0S-JGk`IxFlofHlr?Ta9C#y`s=oYnN=f zc6YhUQSWg$>y&zz6Vlw~x=N?wa4)X6yKEjuU6rNL?XlMyJ^6N<+f!n9xxqU}v3Wh! zPM2dHSe$hhkImzC&v&|_vf;8Lb+^Y@PBLSH%AK|KHFk<;vei}8*j;m!S~dHMqt4+` zD(sauZ;dC%Ugxp9lyY0W$Lq3NAO~@ldh0xnT6><$<#Z{wii*W$Zo6v@gt+ZB_HvKY zHKz{6o8v6I64V^UWv_Lvv4@!;+E#;#P~0A8Jw(-^fJ&LY%2Ai&tgCcXd8y2(i*j3? zv7*9USMP-kq#`llz1Ztf{Z$lYs&#l`Ww<>ymq$%wdU->GwE`95@|JtlBFWeljtYTU zY*aJZ-pWdpr_$xDg}^!#138+bxb2=2M}^&Kv3sal-0WklS!-)_=Q`ZwHdlo^-{!G1 z&wLl^KyXCM%taMdfoBey#*3~(l})`TmpjrNJJso&V>6fQa@I$SIVNikciw8Rt!9o= zZF5&EZZEn{d5z8OR)mX|sZ`)cJ=3DL(lH)uk&(r+)%r6>g+-z0rA01hLnGiKM_t9@ z${b1*#c~(eYs>7eutz!C7HPYSo#6L4%bm!o%kHjs)>XhSk|mejV{_CYs0MxAPJP^| z;vy)=iQcEIbK)yFv}JhYRM^YBRnbGK#%Zfi>g;Qk3Kt0!ozdtq*HzdX>=hPonTX3x zD9dacAXLP|;8|pEjENQ_5G}^p;=!Qy`uZAMIl4WOGTk}RH5V;8Iv1#>{%N7#2|06Q z7LVnR3^PhkdKuJfOC{8yC=s2 z0l;f*4f)JD#~uzAnn4{DEMSfh7sYgyy)m!OTT99j3aHNBAZtgl*cvU)lr&>Wj?h

(tQDMAsuV%IoU2pMU~xFR%0(hnB`I_OE5r| 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%0A>Ff0jwjBmyZV}6 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

IV zF%WDt+W2ZL*IA!t5HHJ)xA`lE8*S8{K8wl@$EqnLR-GyV&7vK5Dm_l+NaZ9=OK!oA zH%acBsf`j~lyIvh$ctE2>k7wxgJ*$d-fWUhB_3qJk+n3efFm*J^c#N>60o}r`>k7NZ_lYdy>De>7h+;&Kdtcldy`Y?FZ(#gfY-8c>ZoVcf&M(XXSGGUg9HI|3+~i zXxR6qZdqwOwU_E+<0-sU9~)2AW!xUpcmgk@=Z&ZJGJ4*4vM*snN8`!71kV~z)+Kn> zcrq?|H^YVD>zV>zvwyW^o!mT{FHb&Z8h4v`&X5gz&xUOQ4}N`8KR3h#har%OUb~BP z5@`k>BZW4G^62Pg`o6;0w(}M0cKu5h+YIUm40HxQRj0N$@KPG6q2OB>x3ER&jIl*C z>1*^a5sf;~VpCRl&OcW;z@5G2I zjz3l_aqao`R=c&ihB_a<+qjxOPPI}0_+y9eX>8a}I_0)uCHG+9hE*wL^-0MME331H z8`i=xzYXhn8-RwDDURy+^+jo_L#Z3qbWccbSe1smat&)yB-NPvqBQA*>xLDB4|s0a znXdc{mRn`VvsmXMY}#`IXerFW>TkUPoTyuS*|4nE<_k}QTYY~c zzMzZJh%fA-ZtdYBpIG0Y=uGz8!y`kZLtR7th^4b|&s@}oIWL=rBGp0n;cEWnWLn8R z<-R*Hny~HBa#wJ~gE}Dav~Mgig0J#M)fVTOlNw?BD81J*l$!A<#xsT-jJ-^DW%$Aq@>VD_eDK zSmWfljRE}8#2^lmt+HOTK6za5Ma=Q6UhQ!IgDa*)F*xfS-)rbPnj^^#$&n;Qz1~Ko zwra4S)$wbvO$ck6gBqSLYRlcqw?w}eu8mb53=NMix)N47=BXr3%2!z;A6<(^Me<~< zu0_qBT4WfjS7Y_*u>I=8fsXkMm_!=ru4U>h@2~BKG7Xwz3ZIe^e?t!x9dLaNotW~3 zJ=BhhLBRQ_^*CRLovH*1e#!cJ7d;$qXN~~}sRdlrT-w5^>K>X&$6@j_-*K4ys99Y! zg{`nS0+Ykd$6@+SYj_lT9H!$Mw*C8EqXRPei4G)9@#&oP&*mXybXX-jX3X?SUK>x5 zEcKqs7w9T{q_gWn%tB`eMWN2K>q1;tXV+=7fH^ZK#sOyT0dEVOT_^5`O}Vij!R0Zq z?RAH_S~ksP<}!6{BSxbV5Qm+GEjw`?LPJeIZbHL-($n~$s?%fKzU!Th+z{j_ZZK{d|iZFGmd;684T7VVi1=!DEljfbpG( z-90xmQwdp?Rj5uZl3yIK#!q6NC;mOS3*M4a#&W+|IK3D(B+6pc;)_#j zTAUij?H3bBTm-ThwbsR{wJlB!+shXdNOkghaNS&vGw=)QJImY|5O_v^evusZMjbJuICJzEqhzf*b*H;Q(ni;)+#?6R>J;{L91%p zU|DUcP%ErCsXFr5&44S7a~R^lb`fka^lk)HcABH1c8r~V%6d~vZR=_uAA8;cKY6RS zyFJX!ss1=NMXOcJxGskm@Ount=Xce^rdE&NpAT8E_unH*hty>1le>tLT1_C~TjIdy35 zJkF&NlXY{Y;<{XRoIIs}#UmR>^5jeNYg1=wpYzX^2GN-y)TjJN7_~(N5p5*xzHO)z z%1Y*;6`tcV^hL|OZP&ZEU%h@zn}^T+$*Q%BD0RM57!IHNBU{f8pZkNJD{Xh?3U&D0 zpG>NRlOVijcW|3zo~*$~6?wnE1C-1IFg(rE0_XNLxrdghhONrG1@z4(v`XK5(|SOB z51;$vIW)#UVqlC0_!G}O4nv3Ba&;2RkP{zaO{@91l{n2Aa zG$Mr}A?E?rKKG}AkE7vSs!XFcrF8?T^pLf6Z9yJ*KA^1bjoLUCTN_=A6;7EV#*){T zCU&SVr|fJxH#d=4XQydv%UWD6&YwPVcIjW^;32gbFMMrw%?a9YwXkX0!wYQ#7y1S# t*Z;DGwo6+1`L|diaCjz6P1zlu2|GL!=A55>cqWV{?*13dghe8e{|{x@K#BkW literal 0 HcmV?d00001