2017-10-25 1 views
0

AVAssetWriter를 사용하여 비디오 자르기를 시도하고 있습니다. AVAssetExportSession에 대한 사전 설정보다 출력에 대한 심층적 인 제어가 필요합니다.AVAssetWriterInput은 현재 AVVideoScalingModeFit를 지원하지 않습니다.

let videoSettings: [String : Any] = [ 
     AVVideoCodecKey: AVVideoCodecH264, 
     AVVideoWidthKey: 450, 
     AVVideoHeightKey: 450, 
     AVVideoScalingModeKey: AVVideoScalingModeFit, 
     AVVideoCompressionPropertiesKey: [ 
      AVVideoAverageBitRateKey: 1000000, 
      AVVideoProfileLevelKey: AVVideoProfileLevelH264Baseline41, 
      AVVideoAllowFrameReorderingKey: false, 
      AVVideoExpectedSourceFrameRateKey: 23 
     ] 
    ] 
: 현재 AVVideoScalingModeFit 여기

내가 사용하고있는 비디오 설정입니다 지원

AVAssetWriterInput하지 않는 : 내 AVAssetWriterInput으로 출력 모드 AVVideoScalingModeFit을 사용하려고하지만이 내용의 충돌이 발생

내 질문에 두 가지가 있습니다. 1) 사용하지 못하는 이유는 무엇입니까? 2) 내가 그것을 사용할 수 있다면 어떻게해야만 하는가?

다른 사람들은이 질문을했지만 아직 답변이 없습니다. 참조 : here.

답변

0

1) AVAssetWriterAVVideoScalingModeKey을 지원하지 않기 때문에 AVFoundation에서 다른 곳에서 지원되지 않는다는 의미는 아닙니다.

2) 코어 이미지 또는 VTPixelTransferSession 또는 파이프 라인에 적합한 것을 사용하여 비디오 프레임의 크기를 조정하십시오.

관련 문제