Swift3 AVAssetExportSession有时会制作黑色视频
我是视频处理的新手,使用Swift 3。我尝试将多个视频与Swift3 AVAssetExportSession有时会制作黑色视频,swift3,overlay,video-processing,avassetexportsession,Swift3,Overlay,Video Processing,Avassetexportsession,我是视频处理的新手,使用Swift 3。我尝试将多个视频与AVAssetExportSession合并,并使用AVVideoCompositionCoreAnimationTool为最终视频添加覆盖 问题是,有时最终的视频是完美的,但有时它只是给我一个黑色的视频,只有声音,即使我没有改变任何东西:( 任何遇到这个问题的人,请告诉我一个想法,谢谢 let mixComposition: AVMutableComposition = AVMutableComposition() //Add ass
AVAssetExportSession
合并,并使用AVVideoCompositionCoreAnimationTool
为最终视频添加覆盖
问题是,有时最终的视频是完美的,但有时它只是给我一个黑色的视频,只有声音,即使我没有改变任何东西:(
任何遇到这个问题的人,请告诉我一个想法,谢谢
let mixComposition: AVMutableComposition = AVMutableComposition()
//Add assets here
let mainComposition: AVMutableVideoComposition = AVMutableVideoComposition(propertiesOf: mixComposition)
mainComposition.frameDuration = CMTimeMake(1, 30)
mainComposition.renderSize = renderSize
mainComposition.renderScale = 1.0
mainComposition.animationTool = AVVideoCompositionCoreAnimationTool(postProcessingAsVideoLayer: videoLayer, in: parentLayer)
mainComposition.instructions = instructions
let exportSession: AVAssetExportSession = AVAssetExportSession(asset: mixComposition, presetName: AVAssetExportPresetHighestQuality)!
exportSession.videoComposition = mainComposition
exportSession.audioMix = audioMix
exportSession.outputURL = outputURL
exportSession.outputFileType = AVFileTypeMPEG4
exportSession.shouldOptimizeForNetworkUse = true
exportSession.exportAsynchronously {
// Ended here
}
我所做的是尝试在导出视频后等待几秒钟,似乎导出的视频尚未准备好播放!我面临相同的问题。您找到解决方案了吗?