Миниатюра видео переворачивается с ног на голову - PullRequest
0 голосов
/ 08 октября 2019

Я пытался создать миниатюры из видео и перенести их на мой сервер. Я использую язык Swift и использую AVFoundation для создания миниатюры видео, которое снято с телефона или записано с камеры. Миниатюра успешно сгенерирована, но для некоторых видео она поворачивается вверх ногами. Это код, который я написал.

func getThumbnailImage(forUrl url: URL) -> UIImage? {
       let asset: AVAsset = AVAsset(url: url)
       let imageGenerator = AVAssetImageGenerator(asset: asset)

       do {
           let thumbnailImage = try imageGenerator.copyCGImage(at: CMTimeMake(value: 1, timescale: 60) , actualTime: nil)
           return UIImage(cgImage: thumbnailImage)
       } catch let error {
           print(error)
       }

       return nil
   }

Вот как я получаю URL-адрес видео.

var u = info[UIImagePickerController.InfoKey.mediaURL] as? URL

Вот изображение, которое поворачивается. Видео перевернуто, но миниатюра перевернута. Thumnail Rotated

Пожалуйста, дайте мне знать, как я могу решить эту проблему.

1 Ответ

0 голосов
/ 08 октября 2019

На ваш вопрос уже есть ответ здесь .

В более общем случае обычные форматы фотографий имеют поле метаданных, соответствующее ориентации носителя, перекодирование носителя может привести к удалению этих метаданных(в зависимости от используемой вами библиотеки / процедуры), если вы хотите узнать больше, вам следует взглянуть на формат exif.

...