Sevak Tadevosyan
05/12/2024, 9:39 AMiosMain
it can't create CIImage from ByteArray:
@OptIn(BetaInteropApi::class)
actual fun toFile(image: ByteArray): File? {
val ciImage = image.toNativeImage()?.let {
CIImage.create(it)
}
if (ciImage?.url() != null) {
return File(url = ciImage.url()!!)
} else {
return null
}
}
@OptIn(ExperimentalForeignApi::class, BetaInteropApi::class)
fun ByteArray.toNativeImage(): Image = this.usePinned {
val nsData = NSData.create(bytes = it.addressOf(0), this.size.convert())
return Image(data = nsData)
}