Base64 из AVCaptureOutput

#swift #xcode #base64 #avfoundation #avcapture

Вопрос:

Я пытаюсь получить представление base64 изображения, которое можно использовать на сервере в формате jpeg или png. текущие данные не могут использоваться сервером и отображаются как «поврежденные» или «нечитаемые», и открытие файла в Windows также приводит к той же ошибке. Я думаю, что эта ошибка вызвана разрывами строк в тексте base64, и она не заканчивается на==, если это имеет какой-либо эффект. Я перепробовал много решений, и все они не сработали. Я новичок в swift и потратил часы на поиски решения. Любая помощь будет оценена по достоинству! Код, который я сейчас использую:

     @IBAction func takePhotoButtonPressed(_ sender: Any) {
          let settings = AVCapturePhotoSettings()
          let previewPixelType = settings.availablePreviewPhotoPixelFormatTypes.first!
          let previewFormat = [kCVPixelBufferPixelFormatTypeKey as String: previewPixelType,
                               kCVPixelBufferWidthKey as String: 160,
                               kCVPixelBufferHeightKey as String: 160]
          settings.previewPhotoFormat = previewFormat
          sessionOutput.capturePhoto(with: settings, delegate: self)
    }


    func photoOutput(_ output: AVCapturePhotoOutput, didFinishProcessingPhoto photo: AVCapturePhoto, error: Swift.Error?) {
        let imageData = photo.fileDataRepresentation()
        var base64Data = imageData?.base64EncodedString()
        print(base64String!)
}