растяжение видео после слияния - PullRequest
0 голосов
/ 28 января 2019

У меня проблема с объединением видеоклипов с использованием функции avfoundation.На самом деле, когда я делал видеоклипы, используя камеру (запись) и после объединения этих клипов, он выглядит великолепно, работает отлично, но когда я импортирую любое видео из галереи, а затем объединяю этот импортированный клип с записанными клипами.все объединенное видео растянуто.любая помощь будет оценена.спасибо.

func merge(arrayVideos:[AVAsset], completion:@escaping (_ exporter: AVAssetExportSession) -> ()) -> Void {


    let mainComposition = AVMutableComposition()
    let compositionVideoTrack = mainComposition.addMutableTrack(withMediaType: .video, preferredTrackID: kCMPersistentTrackID_Invalid)



    var time:Double = 0.0
    for (index, videoAsset) in arrayVideos.enumerated() {



        let atTime = CMTime(seconds: time, preferredTimescale: 1000)

        try! compositionVideoTrack?.insertTimeRange(CMTimeRangeMake(start: CMTime.zero, duration: videoAsset.duration), of: videoAsset.tracks(withMediaType: .video)[0], at: atTime)

        compositionVideoTrack!.preferredTransform = (videoAsset.preferredTransform)




        time = time + videoAsset.duration.seconds
    }

    let outputFileURL = URL(fileURLWithPath: NSTemporaryDirectory() + "merge.mp4")
    print("final URL:\(outputFileURL)")
    let fileManager = FileManager()

    do {
        try fileManager.removeItem(at: outputFileURL)
    } catch let error as NSError {
        print("Error: \(error.domain)")
    }

    let exporter = AVAssetExportSession(asset: mainComposition, presetName: AVAssetExportPresetHighestQuality)

    exporter?.outputURL = outputFileURL
    exporter?.outputFileType = AVFileType.mp4
    exporter?.shouldOptimizeForNetworkUse = true

    exporter?.exportAsynchronously {
        DispatchQueue.main.async {
            completion(exporter!)
        }
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...