i want to export bitmaps to video using OpenCV.
OpenCV is initialized in activity:
val openCVIsInitialized = OpenCVLoader.initDebug()
Timber.d("OpenCV initialized: $openCVIsInitialized")
if (!openCVIsInitialized) {
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION, this, this)
} else {
onManagerConnected(LoaderCallbackInterface.SUCCESS)
}
When i remove if/else and only OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION, this, this) is run OpenCV init is stuck, in logs i see:
D/OpenCVManager/Helper: Request new service installation
and onManagerConnected is never called.
In
onManagerConnected
following code is run:
when (status) {
LoaderCallbackInterface.SUCCESS -> {
Timber.d("OpenCV SUCCESS")
imageCaptureFragment.setupVideoRecorder()
}
LoaderCallbackInterface.INIT_FAILED -> Timber.d("OpenCV INIT_FAILED")
LoaderCallbackInterface.INSTALL_CANCELED -> Timber.d("OpenCV INSTALL_CANCELED")
LoaderCallbackInterface.MARKET_ERROR -> Timber.d("OpenCV MARKET_ERROR")
}
and then:
if (videoWriter?.isOpened == false) {
val fourcc = VideoWriter.fourcc('M','J','P','G')
videoWriter = VideoWriter(fileName, fourcc, fps, frameSize)
}
While VideoWriter(fileName, fourcc, fps, frameSize) is run there is a crash:
OpenCV(4.5.5) Error: Requested object was not found (could not open directory: /data/app/~~123==/com.test.test-123==/base.apk!/lib/arm64-v8a) in glob_rec, file /build/master_pack-android/opencv/modules/core/src/glob.cpp, line 279
Any help? I saw this issue https://github.com/opencv/opencv/issues/18463 but the only one solution/tip does not work for me.