Я думаю, что это проблема управления памятью.Например, полученный вами CGImageRef освобождается перед его использованием.Используйте «Продукт»> «Схема»> меню «Редактировать схему», выберите раздел «Выполнить», вкладку «Диагностика» и включите опцию «Объекты-зомби». Затем запустите приложение. Если какой-либо объект используется после освобождения, вы получитесообщение в консоли.
Если это так, то что-то вроде этого должно решить проблему:
// pointer is your UnsafeRawPointer for CGImageRef
let cgImage = Unmanaged<CGImage>.fromOpaque(pointer).takeRetainedValue()
Еще лучше, если вы можете редактировать или переопределять заголовочные файлы для рассматриваемой библиотеки,Вы можете аннотировать функции C, чтобы Swift знал, как правильно обращаться с указателями.