deltacv / EOCV-Sim

Develop, test, and tune your EasyOpenCV pipelines directly on your computer with a simple GUI !
https://docs.deltacv.org/eocv-sim/
MIT License
54 stars 19 forks source link

Cannot load opencv_java451.dll #79

Closed ghost closed 2 years ago

ghost commented 2 years ago

Describe the bug Cannot load opencv_java451.dll i.e. the simulator cannot load.

To Reproduce Steps to reproduce the behavior: Not sure, probably by installing my version of JRE as described by: Adoptium

Expected behavior It loads

Logfile

/--------------------------------\

  EOCV-Sim v3.3.2 crash report

\--------------------------------/

: Crash stacktrace

java.lang.UnsatisfiedLinkError: C:\Users\spaceneb\AppData\Local\Temp\opencv_openpnp18014565658874430514\nu\pattern\opencv\windows\x86_64\opencv_java451.dll: Can't find dependent libraries
    at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
    at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:384)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:228)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:170)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389)
    at java.base/java.lang.Runtime.load0(Runtime.java:755)
    at java.base/java.lang.System.load(System.java:1953)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:330)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:326)
    at nu.pattern.OpenCV$LocalLoader$Holder.<clinit>(OpenCV.java:336)
    at nu.pattern.OpenCV$LocalLoader.getInstance(OpenCV.java:340)
    at nu.pattern.OpenCV.loadLocally(OpenCV.java:323)
    at com.github.serivesmejia.eocvsim.EOCVSim$Companion.loadOpenCvLib(EOCVSim.kt:79)
    at com.github.serivesmejia.eocvsim.EOCVSim.init(EOCVSim.kt:152)
    at com.github.serivesmejia.eocvsim.EOCVSimCommandInterface.run(Main.kt:65)
    at picocli.CommandLine.executeUserObject(CommandLine.java:1939)
    at picocli.CommandLine.access$1300(CommandLine.java:145)
    at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
    at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
    at picocli.CommandLine.execute(CommandLine.java:2078)
    at com.github.serivesmejia.eocvsim.Main.main(Main.kt:17)

==========================================

: EOCV-Sim info
   Version: 3.3.2
   Built on: 2021-11-11 07:21:21

: System specs
   OS name: Windows 10
   OS version: 10.0
   Detected OS: WINDOWS
   Architecture: amd64
   Java version: 17.0.1
   Java vendor: Eclipse Adoptium
   Last memory usage: 7 MB

==========================================

: Full thread dump

 > Thread "Attach Listener"
 > Thread "Java2D Disposer"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
     java.desktop@17.0.1/sun.java2d.Disposer.run(Disposer.java:145)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)
 > Thread "main"
     java.base@17.0.1/java.lang.Thread.dumpThreads(Native Method)
     java.base@17.0.1/java.lang.Thread.getAllStackTraces(Thread.java:1662)
     app//com.github.serivesmejia.eocvsim.util.exception.handling.CrashReport.<init>(CrashReport.kt:78)
     app//com.github.serivesmejia.eocvsim.EOCVSim$Companion.loadOpenCvLib(EOCVSim.kt:85)
     app//com.github.serivesmejia.eocvsim.EOCVSim.init(EOCVSim.kt:152)
     app//com.github.serivesmejia.eocvsim.EOCVSimCommandInterface.run(Main.kt:65)
     app//picocli.CommandLine.executeUserObject(CommandLine.java:1939)
     app//picocli.CommandLine.access$1300(CommandLine.java:145)
     app//picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
     app//picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
     app//picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
     app//picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
     app//picocli.CommandLine.execute(CommandLine.java:2078)
     app//com.github.serivesmejia.eocvsim.Main.main(Main.kt:17)
 > Thread "AWT-EventQueue-0"
     java.base@17.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@17.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
     java.base@17.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:506)
     java.base@17.0.1/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3463)
     java.base@17.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3434)
     java.base@17.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1623)
     java.desktop@17.0.1/java.awt.EventQueue.getNextEvent(EventQueue.java:567)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:190)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
     java.desktop@17.0.1/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 > Thread "Notification Thread"
 > Thread "Reference Handler"
     java.base@17.0.1/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
     java.base@17.0.1/java.lang.ref.Reference.processPendingReferences(Reference.java:253)
     java.base@17.0.1/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:215)
 > Thread "Finalizer"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
     java.base@17.0.1/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:172)
 > Thread "AWT-Shutdown"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.Object.wait(Object.java:338)
     java.desktop@17.0.1/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)
 > Thread "Common-Cleaner"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@17.0.1/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)
     java.base@17.0.1/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:162)
 > Thread "Signal Dispatcher"
 > Thread "AWT-Windows"
     java.desktop@17.0.1/sun.awt.windows.WToolkit.eventLoop(Native Method)
     java.desktop@17.0.1/sun.awt.windows.WToolkit.run(WToolkit.java:365)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)

==================================

: Full logs

00:00  INFO: [LockFile] Probably locked file C:\Users\spaceneb\.eocvsim\.lock
00:00  INFO: [EOCVSim] Confirmed claiming of the lock file in C:\Users\spaceneb\.eocvsim

00:00  INFO: [EOCVSim] Initializing EasyOpenCV Simulator v3.3.2 (2d9d4f9d)

00:00  INFO: [EOCVSim] Loading native lib...
00:00  INFO: [Icons] Loading future icon ico_eocvsim
00:01 ERROR: [EOCVSim] Failure loading the OpenCV native lib
java.lang.UnsatisfiedLinkError: C:\Users\spaceneb\AppData\Local\Temp\opencv_openpnp18014565658874430514\nu\pattern\opencv\windows\x86_64\opencv_java451.dll: Can't find dependent libraries
    at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
    at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:384)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:228)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:170)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389)
    at java.base/java.lang.Runtime.load0(Runtime.java:755)
    at java.base/java.lang.System.load(System.java:1953)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:330)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:326)
    at nu.pattern.OpenCV$LocalLoader$Holder.<clinit>(OpenCV.java:336)
    at nu.pattern.OpenCV$LocalLoader.getInstance(OpenCV.java:340)
    at nu.pattern.OpenCV.loadLocally(OpenCV.java:323)
    at com.github.serivesmejia.eocvsim.EOCVSim$Companion.loadOpenCvLib(EOCVSim.kt:79)
    at com.github.serivesmejia.eocvsim.EOCVSim.init(EOCVSim.kt:152)
    at com.github.serivesmejia.eocvsim.EOCVSimCommandInterface.run(Main.kt:65)
    at picocli.CommandLine.executeUserObject(CommandLine.java:1939)
    at picocli.CommandLine.access$1300(CommandLine.java:145)
    at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
    at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
    at picocli.CommandLine.execute(CommandLine.java:2078)
    at com.github.serivesmejia.eocvsim.Main.main(Main.kt:17)
00:01 ERROR: [EOCVSim] The sim will exit now as it's impossible to continue execution without OpenCV

;

Desktop (please complete the following information):

ghost commented 2 years ago

Tested with OpenJDK/OpenJRE 1.8, 11 and 17. Seems to be an issue with the vendor.

ghost commented 2 years ago

Tested Amazon Corretto 16. Seems to be an issue with OpenJDK itself.

ghost commented 2 years ago

It seems to now be an issue with the windows build, the official builds don't work.

/--------------------------------\

  EOCV-Sim v3.3.2 crash report

\--------------------------------/

: Crash stacktrace

java.lang.UnsatisfiedLinkError: C:\Users\spaceneb\AppData\Local\Temp\opencv_openpnp11790636083095851322\nu\pattern\opencv\windows\x86_64\opencv_java451.dll: Can't find dependent libraries
    at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
    at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:384)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:228)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:170)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389)
    at java.base/java.lang.Runtime.load0(Runtime.java:755)
    at java.base/java.lang.System.load(System.java:1953)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:330)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:326)
    at nu.pattern.OpenCV$LocalLoader$Holder.<clinit>(OpenCV.java:336)
    at nu.pattern.OpenCV$LocalLoader.getInstance(OpenCV.java:340)
    at nu.pattern.OpenCV.loadLocally(OpenCV.java:323)
    at com.github.serivesmejia.eocvsim.EOCVSim$Companion.loadOpenCvLib(EOCVSim.kt:79)
    at com.github.serivesmejia.eocvsim.EOCVSim.init(EOCVSim.kt:152)
    at com.github.serivesmejia.eocvsim.EOCVSimCommandInterface.run(Main.kt:65)
    at picocli.CommandLine.executeUserObject(CommandLine.java:1939)
    at picocli.CommandLine.access$1300(CommandLine.java:145)
    at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
    at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
    at picocli.CommandLine.execute(CommandLine.java:2078)
    at com.github.serivesmejia.eocvsim.Main.main(Main.kt:17)

==========================================

: EOCV-Sim info
   Version: 3.3.2
   Built on: 2021-11-11 07:21:21

: System specs
   OS name: Windows 10
   OS version: 10.0
   Detected OS: WINDOWS
   Architecture: amd64
   Java version: 17.0.1
   Java vendor: Oracle Corporation
   Last memory usage: 7 MB

==========================================

: Full thread dump

 > Thread "Notification Thread"
 > Thread "AWT-Shutdown"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.Object.wait(Object.java:338)
     java.desktop@17.0.1/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)
 > Thread "Reference Handler"
     java.base@17.0.1/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
     java.base@17.0.1/java.lang.ref.Reference.processPendingReferences(Reference.java:253)
     java.base@17.0.1/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:215)
 > Thread "AWT-EventQueue-0"
     java.base@17.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@17.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
     java.base@17.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:506)
     java.base@17.0.1/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3463)
     java.base@17.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3434)
     java.base@17.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1623)
     java.desktop@17.0.1/java.awt.EventQueue.getNextEvent(EventQueue.java:567)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:190)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
     java.desktop@17.0.1/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
     java.desktop@17.0.1/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 > Thread "Common-Cleaner"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@17.0.1/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)
     java.base@17.0.1/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:162)
 > Thread "Finalizer"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
     java.base@17.0.1/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:172)
 > Thread "Signal Dispatcher"
 > Thread "AWT-Windows"
     java.desktop@17.0.1/sun.awt.windows.WToolkit.eventLoop(Native Method)
     java.desktop@17.0.1/sun.awt.windows.WToolkit.run(WToolkit.java:365)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)
 > Thread "main"
     java.base@17.0.1/java.lang.Thread.dumpThreads(Native Method)
     java.base@17.0.1/java.lang.Thread.getAllStackTraces(Thread.java:1662)
     app//com.github.serivesmejia.eocvsim.util.exception.handling.CrashReport.<init>(CrashReport.kt:78)
     app//com.github.serivesmejia.eocvsim.EOCVSim$Companion.loadOpenCvLib(EOCVSim.kt:85)
     app//com.github.serivesmejia.eocvsim.EOCVSim.init(EOCVSim.kt:152)
     app//com.github.serivesmejia.eocvsim.EOCVSimCommandInterface.run(Main.kt:65)
     app//picocli.CommandLine.executeUserObject(CommandLine.java:1939)
     app//picocli.CommandLine.access$1300(CommandLine.java:145)
     app//picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
     app//picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
     app//picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
     app//picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
     app//picocli.CommandLine.execute(CommandLine.java:2078)
     app//com.github.serivesmejia.eocvsim.Main.main(Main.kt:17)
 > Thread "Java2D Disposer"
     java.base@17.0.1/java.lang.Object.wait(Native Method)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@17.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
     java.desktop@17.0.1/sun.java2d.Disposer.run(Disposer.java:145)
     java.base@17.0.1/java.lang.Thread.run(Thread.java:833)
 > Thread "Attach Listener"

==================================

: Full logs

00:00  INFO: [LockFile] Probably locked file C:\Users\spaceneb\.eocvsim\.lock
00:00  INFO: [EOCVSim] Confirmed claiming of the lock file in C:\Users\spaceneb\.eocvsim

00:00  INFO: [EOCVSim] Initializing EasyOpenCV Simulator v3.3.2 (2d9d4f9d)

00:00  INFO: [EOCVSim] Loading native lib...
00:00  INFO: [Icons] Loading future icon ico_eocvsim
00:01 ERROR: [EOCVSim] Failure loading the OpenCV native lib
java.lang.UnsatisfiedLinkError: C:\Users\spaceneb\AppData\Local\Temp\opencv_openpnp11790636083095851322\nu\pattern\opencv\windows\x86_64\opencv_java451.dll: Can't find dependent libraries
    at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
    at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:384)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:228)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:170)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389)
    at java.base/java.lang.Runtime.load0(Runtime.java:755)
    at java.base/java.lang.System.load(System.java:1953)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:330)
    at nu.pattern.OpenCV$LocalLoader.<init>(OpenCV.java:326)
    at nu.pattern.OpenCV$LocalLoader$Holder.<clinit>(OpenCV.java:336)
    at nu.pattern.OpenCV$LocalLoader.getInstance(OpenCV.java:340)
    at nu.pattern.OpenCV.loadLocally(OpenCV.java:323)
    at com.github.serivesmejia.eocvsim.EOCVSim$Companion.loadOpenCvLib(EOCVSim.kt:79)
    at com.github.serivesmejia.eocvsim.EOCVSim.init(EOCVSim.kt:152)
    at com.github.serivesmejia.eocvsim.EOCVSimCommandInterface.run(Main.kt:65)
    at picocli.CommandLine.executeUserObject(CommandLine.java:1939)
    at picocli.CommandLine.access$1300(CommandLine.java:145)
    at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
    at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
    at picocli.CommandLine.execute(CommandLine.java:2078)
    at com.github.serivesmejia.eocvsim.Main.main(Main.kt:17)
00:01 ERROR: [EOCVSim] The sim will exit now as it's impossible to continue execution without OpenCV

;

This is my only Windows system and it is modified for privacy, so updating will not be possible. If anybody has the cpu power to create a VM, you can download a copy of my build and edition from UUPDump. I will try this on a POSIX system and see if that will work.

ghost commented 2 years ago

Got the application to load but now I cannot get the webcam to load.

/--------------------------------\

  EOCV-Sim v3.3.2 crash report

\--------------------------------/

: Crash stacktrace

com.github.sarxos.webcam.WebcamException: java.util.concurrent.ExecutionException: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at com.github.sarxos.webcam.WebcamDiscoveryService.getWebcams(WebcamDiscoveryService.java:124)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:893)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:866)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:845)
    at com.github.serivesmejia.eocvsim.gui.dialog.source.CreateCameraSource.initCreateImageSource(CreateCameraSource.java:81)
    at com.github.serivesmejia.eocvsim.gui.dialog.source.CreateCameraSource.<init>(CreateCameraSource.java:77)
    at com.github.serivesmejia.eocvsim.gui.DialogFactory.lambda$createSourceDialog$1(DialogFactory.java:95)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:316)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.util.concurrent.ExecutionException: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.github.sarxos.webcam.WebcamDiscoveryService.getWebcams(WebcamDiscoveryService.java:116)
    ... 19 more
Caused by: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.process(WebcamProcessor.java:72)
    at com.github.sarxos.webcam.WebcamProcessor.process(WebcamProcessor.java:140)
    at com.github.sarxos.webcam.WebcamTask.process(WebcamTask.java:46)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver$GetDevicesTask.getDevices(OpenImajDriver.java:47)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver.getDevices(OpenImajDriver.java:67)
    at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:36)
    at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:26)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
    at java.base/java.lang.Thread.run(Thread.java:831)
Caused by: java.lang.UnsatisfiedLinkError: 'org.bridj.Pointer org.openimaj.video.capture.OpenIMAJGrabber.getVideoDevices()'
    at org.openimaj.video.capture.OpenIMAJGrabber.getVideoDevices(Native Method)
    at org.openimaj.video.capture.VideoCapture.getVideoDevices(VideoCapture.java:221)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver$GetDevicesTask.handle(OpenImajDriver.java:58)
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.run(WebcamProcessor.java:81)
    ... 3 more

==========================================

: EOCV-Sim info
   Version: 3.3.2
   Built on: 2021-11-11 07:21:21

: System specs
   OS name: Mac OS X
   OS version: 11.5
   Detected OS: MACOS
   Architecture: x86_64
   Java version: 16.0.1
   Java vendor: AdoptOpenJDK
   Last memory usage: 70 MB

==========================================

: Full thread dump

 > Thread "DefaultDispatcher-worker-3"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:376)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
 > Thread "main"
     java.base@16.0.1/java.lang.Thread.sleep(Native Method)
     app//com.github.serivesmejia.eocvsim.util.fps.FpsLimiter.sync(FpsLimiter.kt:37)
     app//com.github.serivesmejia.eocvsim.EOCVSim.start(EOCVSim.kt:257)
     app//com.github.serivesmejia.eocvsim.EOCVSim.init(EOCVSim.kt:200)
     app//com.github.serivesmejia.eocvsim.EOCVSimCommandInterface.run(Main.kt:65)
     app//picocli.CommandLine.executeUserObject(CommandLine.java:1939)
     app//picocli.CommandLine.access$1300(CommandLine.java:145)
     app//picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
     app//picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
     app//picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
     app//picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
     app//picocli.CommandLine.execute(CommandLine.java:2078)
     app//com.github.serivesmejia.eocvsim.Main.main(Main.kt:17)
 > Thread "Signal Dispatcher"
 > Thread "atomic-processor-1"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
     java.base@16.0.1/java.util.concurrent.SynchronousQueue$TransferQueue.awaitFulfill(SynchronousQueue.java:759)
     java.base@16.0.1/java.util.concurrent.SynchronousQueue$TransferQueue.transfer(SynchronousQueue.java:689)
     java.base@16.0.1/java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:920)
     app//com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.run(WebcamProcessor.java:81)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "kotlinx.coroutines.DefaultExecutor"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
     app//kotlinx.coroutines.DefaultExecutor.run(DefaultExecutor.kt:82)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "Java2D Queue Flusher"
     java.base@16.0.1/java.lang.Object.wait(Native Method)
     java.desktop@16.0.1/sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:205)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "Java2D Disposer"
     java.base@16.0.1/java.lang.Object.wait(Native Method)
     java.base@16.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@16.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
     java.desktop@16.0.1/sun.java2d.Disposer.run(Disposer.java:144)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "Finalizer"
     java.base@16.0.1/java.lang.Object.wait(Native Method)
     java.base@16.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@16.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
     java.base@16.0.1/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:171)
 > Thread "AppKit Thread"
 > Thread "process reaper"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
     java.base@16.0.1/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
     java.base@16.0.1/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
     java.base@16.0.1/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1055)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "Common-Cleaner"
     java.base@16.0.1/java.lang.Object.wait(Native Method)
     java.base@16.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     java.base@16.0.1/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
     java.base@16.0.1/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)
 > Thread "Pipeline-DefaultPipeline"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
     java.base@16.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505)
     java.base@16.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137)
     java.base@16.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614)
     java.base@16.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1170)
     java.base@16.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116)
     java.base@16.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "FileWatcher-Workspace"
     java.base@16.0.1/java.lang.Thread.sleep(Native Method)
     app//com.github.serivesmejia.eocvsim.util.io.FileWatcher$Runner.run(FileWatcher.kt:68)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "DefaultDispatcher-worker-2"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:376)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
 > Thread "AWT-EventQueue-0"
     java.base@16.0.1/java.lang.Thread.dumpThreads(Native Method)
     java.base@16.0.1/java.lang.Thread.getAllStackTraces(Thread.java:1647)
     app//com.github.serivesmejia.eocvsim.util.exception.handling.CrashReport.<init>(CrashReport.kt:78)
     app//com.github.serivesmejia.eocvsim.util.exception.handling.EOCVSimUncaughtExceptionHandler.uncaughtException(EOCVSimUncaughtExceptionHandler.kt:46)
     java.base@16.0.1/java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1074)
     java.base@16.0.1/java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1069)
     java.desktop@16.0.1/java.awt.EventDispatchThread.processException(EventDispatchThread.java:222)
     java.desktop@16.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:214)
     java.desktop@16.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
     java.desktop@16.0.1/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
     java.desktop@16.0.1/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
     java.desktop@16.0.1/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
     java.desktop@16.0.1/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 > Thread "Reference Handler"
     java.base@16.0.1/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
     java.base@16.0.1/java.lang.ref.Reference.processPendingReferences(Reference.java:243)
     java.base@16.0.1/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:215)
 > Thread "Notification Thread"
 > Thread "DefaultDispatcher-worker-1"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:376)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
     app//kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
 > Thread "AWT-Shutdown"
     java.base@16.0.1/java.lang.Object.wait(Native Method)
     java.base@16.0.1/java.lang.Object.wait(Object.java:320)
     java.desktop@16.0.1/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "MatPoster-Viewport-Thread"
     app//com.github.serivesmejia.eocvsim.gui.util.MatPoster$PosterRunnable.run(MatPoster.java:185)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)
 > Thread "TimerQueue"
     java.base@16.0.1/jdk.internal.misc.Unsafe.park(Native Method)
     java.base@16.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
     java.base@16.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1661)
     java.base@16.0.1/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
     java.desktop@16.0.1/javax.swing.TimerQueue.run(TimerQueue.java:171)
     java.base@16.0.1/java.lang.Thread.run(Thread.java:831)

==================================

: Full logs

00:00  INFO: [DefaultWorkspaceTemplate] Extracting template to /Users/spaceneb/.eocvsim/default_workspace
00:00  INFO: [DefaultWorkspaceTemplate] Successfully extracted template
00:00  INFO: [LockFile] Probably locked file /Users/spaceneb/.eocvsim/.lock
00:00  INFO: [EOCVSim] Confirmed claiming of the lock file in /Users/spaceneb/.eocvsim

00:00  INFO: [EOCVSim] Initializing EasyOpenCV Simulator v3.3.2 (5c1a8622)

00:00  INFO: [EOCVSim] Loading native lib...
00:00  INFO: [Icons] Loading future icon ico_eocvsim
00:00  INFO: [EOCVSim] Successfully loaded the OpenCV native lib

00:00  INFO: [EOCVSim] Using the OpenIMAJ webcam driver
00:00  INFO: [ConfigManager] Initializing...
00:00  INFO: [ConfigManager] Creating config file...

00:00  INFO: [WorkspaceManager] Set current workspace to /Users/spaceneb/.eocvsim/default_workspace
00:00  INFO: [WorkspaceManager] Creating workspace config file...
00:00  INFO: [FileWatcher-Workspace] Starting to watch directories in:
/Users/spaceneb/.eocvsim/default_workspace
/Users/spaceneb/.eocvsim/default_workspace

00:00  INFO: [WorkspaceManager] Loaded workspace config successfully

00:00  INFO: [InputSourceManager] Initializing...
00:00  INFO: [ClasspathScan] Starting to scan classpath...
00:01  INFO: [InputSourceManager] Adding InputSource ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_4.jpg", 320x240) (ImageSource)
00:01  INFO: [InputSourceManager] Adding InputSource ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_1.jpg", 320x240) (ImageSource)
00:01  INFO: [InputSourceManager] Adding InputSource ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_0.jpg", 320x240) (ImageSource)
00:02  INFO: [ClasspathScan] ClassGraph finished scanning (took 1.323561432s)

00:02  INFO: [ClasspathScan] Found 0 pipelines

00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.BooleanField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.EnumField
00:02  INFO: [ClasspathScan] Found acceptor for this tunable field, com.github.serivesmejia.eocvsim.tuner.field.EnumField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.StringField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.cv.PointField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.cv.RectField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.cv.ScalarField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.numeric.DoubleField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.numeric.FloatField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.numeric.IntegerField
00:02  INFO: [ClasspathScan] Found tunable field com.github.serivesmejia.eocvsim.tuner.field.numeric.LongField

00:02  INFO: [ClasspathScan] Found 10 tunable fields and 1 acceptors

00:02  INFO: [ClasspathScan] Finished scanning (took 1.332286642s)
00:02  INFO: [InputSourceManager] Set InputSource to ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_4.jpg", 320x240) (ImageSource)

00:02  INFO: [PipelineManager] Initializing...
00:02  INFO: [CompiledPipelineManager] Initializing...
00:02  INFO: [PipelineManager] Found 1 pipeline(s)

00:02  INFO: [WorkspaceManager] Loaded workspace config successfully
00:02  INFO: [CompiledPipelineManager] Building java files in workspace, at /Users/spaceneb/.eocvsim/default_workspace
00:02  INFO: [PipelineStandardFileManager] Scanning classpath files...
00:02  INFO: [PipelineStandardFileManager] Found classpath file /Users/spaceneb/Downloads/eocvsim/EOCV-Sim-3.3.2-all.jar in classpath

00:04  INFO: [Icons] Loading future icon ico_colorpick_pointer
00:04  INFO: [CompiledPipelineManager] Looking for pipelines in jar file /Users/spaceneb/.eocvsim/compiler/out_jars/pipelines.jar
00:04  INFO: [CompiledPipelineManager] Added AprilTagDetectionPipeline from jar
00:04  INFO: [CompiledPipelineManager] Added SimpleThresholdPipeline from jar
00:04  INFO: [CompiledPipelineManager] Added StoneOrientationAnalysisPipeline from jar
00:04  INFO: [CompiledPipelineManager] Added StageSwitchingPipeline from jar
00:04  INFO: [CompiledPipelineManager] Added SkystoneDeterminationPipeline from jar
00:04  INFO: [CompiledPipelineManager] Build successful (took 2.02 seconds)

Using the JDK compiler

> AprilTagDetectionPipeline.java
      (95:17): MANDATORY_WARNING: finalize() in java.lang.Object has been deprecated

00:04  INFO: [Icons] Loading future icon ico_img
00:04  INFO: [EOCVSim] Begin EOCVSim loop

00:04  INFO: [Icons] Loading future icon ico_hammer
00:04  INFO: [Icons] Loading future icon ico_gears
00:05  INFO: [PipelineManager] Changing to pipeline com.github.serivesmejia.eocvsim.pipeline.DefaultPipeline
00:05  INFO: [PipelineManager] Instantiated pipeline class com.github.serivesmejia.eocvsim.pipeline.DefaultPipeline
00:05  INFO: [PipelineSnapshot] Taken snapshot of pipeline com.github.serivesmejia.eocvsim.pipeline.DefaultPipeline
00:05  INFO: [Icons] Loading future icon ico_slider
00:05  INFO: [Icons] Loading future icon ico_config
00:05  INFO: [Icons] Loading future icon ico_colorpick
00:05  INFO: [PipelineManager] Initialized pipeline DefaultPipeline

00:11  INFO: [InputSourceManager] Set InputSource to ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_1.jpg", 320x240) (ImageSource)
00:11  INFO: [InputSourceManager] Set InputSource to ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_0.jpg", 320x240) (ImageSource)
00:12  INFO: [InputSourceManager] Set InputSource to ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_1.jpg", 320x240) (ImageSource)
00:13  INFO: [InputSourceManager] Set InputSource to ImageSource("/var/folders/84/bn6fxy8912s_h4_k2nt6bnv00000gn/T/ug_eocvsim_4.jpg", 320x240) (ImageSource)
00:39  INFO: [VSCodeLauncher] Opening VS Code...
00:39  INFO: [VSCodeLauncher] VS Code failed to open
00:49 ERROR: [EOCVSimUncaughtExceptionHandler] Uncaught exception thrown in "AWT-EventQueue-0" thread
com.github.sarxos.webcam.WebcamException: java.util.concurrent.ExecutionException: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at com.github.sarxos.webcam.WebcamDiscoveryService.getWebcams(WebcamDiscoveryService.java:124)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:893)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:866)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:845)
    at com.github.serivesmejia.eocvsim.gui.dialog.source.CreateCameraSource.initCreateImageSource(CreateCameraSource.java:81)
    at com.github.serivesmejia.eocvsim.gui.dialog.source.CreateCameraSource.<init>(CreateCameraSource.java:77)
    at com.github.serivesmejia.eocvsim.gui.DialogFactory.lambda$createSourceDialog$1(DialogFactory.java:95)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:316)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.util.concurrent.ExecutionException: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.github.sarxos.webcam.WebcamDiscoveryService.getWebcams(WebcamDiscoveryService.java:116)
    ... 19 more
Caused by: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.process(WebcamProcessor.java:72)
    at com.github.sarxos.webcam.WebcamProcessor.process(WebcamProcessor.java:140)
    at com.github.sarxos.webcam.WebcamTask.process(WebcamTask.java:46)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver$GetDevicesTask.getDevices(OpenImajDriver.java:47)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver.getDevices(OpenImajDriver.java:67)
    at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:36)
    at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:26)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
    at java.base/java.lang.Thread.run(Thread.java:831)
Caused by: java.lang.UnsatisfiedLinkError: 'org.bridj.Pointer org.openimaj.video.capture.OpenIMAJGrabber.getVideoDevices()'
    at org.openimaj.video.capture.OpenIMAJGrabber.getVideoDevices(Native Method)
    at org.openimaj.video.capture.VideoCapture.getVideoDevices(VideoCapture.java:221)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver$GetDevicesTask.handle(OpenImajDriver.java:58)
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.run(WebcamProcessor.java:81)
    ... 3 more

00:49  INFO: [CrashReport] Saved crash report to /Users/spaceneb/Downloads/eocvsim/lasterror-eocvsim.log
00:49  WARN: [EOCVSimUncaughtExceptionHandler] If this error persists, open an issue on EOCV-Sim's GitHub.

00:49  WARN: [EOCVSimUncaughtExceptionHandler] The application might not work as expected from this point
01:03 ERROR: [EOCVSimUncaughtExceptionHandler] Uncaught exception thrown in "AWT-EventQueue-0" thread
com.github.sarxos.webcam.WebcamException: java.util.concurrent.ExecutionException: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at com.github.sarxos.webcam.WebcamDiscoveryService.getWebcams(WebcamDiscoveryService.java:124)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:893)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:866)
    at com.github.sarxos.webcam.Webcam.getWebcams(Webcam.java:845)
    at com.github.serivesmejia.eocvsim.gui.dialog.source.CreateCameraSource.initCreateImageSource(CreateCameraSource.java:81)
    at com.github.serivesmejia.eocvsim.gui.dialog.source.CreateCameraSource.<init>(CreateCameraSource.java:77)
    at com.github.serivesmejia.eocvsim.gui.DialogFactory.lambda$createSourceDialog$1(DialogFactory.java:95)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:316)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.util.concurrent.ExecutionException: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.github.sarxos.webcam.WebcamDiscoveryService.getWebcams(WebcamDiscoveryService.java:116)
    ... 19 more
Caused by: com.github.sarxos.webcam.WebcamException: Cannot execute task
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.process(WebcamProcessor.java:72)
    at com.github.sarxos.webcam.WebcamProcessor.process(WebcamProcessor.java:140)
    at com.github.sarxos.webcam.WebcamTask.process(WebcamTask.java:46)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver$GetDevicesTask.getDevices(OpenImajDriver.java:47)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver.getDevices(OpenImajDriver.java:67)
    at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:36)
    at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:26)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
    at java.base/java.lang.Thread.run(Thread.java:831)
Caused by: java.lang.UnsatisfiedLinkError: 'org.bridj.Pointer org.openimaj.video.capture.OpenIMAJGrabber.getVideoDevices()'
    at org.openimaj.video.capture.OpenIMAJGrabber.getVideoDevices(Native Method)
    at org.openimaj.video.capture.VideoCapture.getVideoDevices(VideoCapture.java:221)
    at com.github.sarxos.webcam.ds.openimaj.OpenImajDriver$GetDevicesTask.handle(OpenImajDriver.java:58)
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.run(WebcamProcessor.java:81)
    ... 3 more

;
serivesmejia commented 2 years ago

Thank you so much for the detailed comments, I will try my best to track the first issue later as I'm currently a little busy.

Regarding the issue with the webcam, that should be fixed in the latest dev version among other issues: https://github.com/deltacv/EOCV-Sim/releases/Dev . Let me know how it works as I haven't tested a lot on other machines (quick testing reveal that it should work on Windows and MacOS x86_64)

serivesmejia commented 2 years ago

The OpenCV dll exclusively depends on these other dlls which are directly from the windows system:

image

Not sure if your edition of windows or the "modifications for privacy" are causing issues or removed some of these files for some reason, it would be great if you could check that

ghost commented 2 years ago

I actually removed Windows recently, however, I think it may be the specific build of windows I'm using or perhaps the DLLs were just corrupted/outdated. I wouldn't worry about this issue because it's probably just a weird edge case. I was also using a slightly outdated build of windows and the Education edition so maybe features were removed that the system DLLs depended on for full functionality. I digress.