Сначала получите ориентацию видео, используя следующий код:
func getVideoOrientationFromAsset(asset: AVAsset) -> UIImageOrientation {
let videoTrack = asset.tracks(withMediaType: .video)[0]
let size = videoTrack.naturalSize
guard let txf = asset.tracks(withMediaType: .video).first?.preferredTransform else {
return .up
}
if (size.width == txf.tx && size.height == txf.ty) {
return .left
}
else if (txf.tx == 0 && txf.ty == 0) {
return .right
}
else if (txf.tx == 0 && txf.ty == size.width) {
return .down
}
else {
return .up
}
}
Затем примените Перевод и Поворот на основе ориентации с помощью AVMutableVideoCompositionInstruction и AVMutableVideoComposition к видео для визуализации правильного вывода.