2016-05-31 3 views
2

UIImagePickerController를 사용하여 신속한 iOS 앱에서 비디오를 가져옵니다. 나는이 URL을 저장하고 현재 사용하는 저장 내 서버로 전송할 데이터로 변환하고 싶습니다 :서버에 업로드하기 위해 swift/iOS에서 비디오 크기 줄이기

let messageVideoData = NSData(contentsOfURL: chosenVideoURL) 

문제는 파일 크기가 매우 큰 것입니다. 내 iPhone 6s에서 7 초짜리 비디오 촬영의 경우 해상도는 1280, 720이며 프레임 속도는 30이고 파일 크기는 4MB를 넘습니다. whatsapp 및 기타 채팅 응용 프로그램과 함께 보낸 동일한 이미지가 수백 KB로 줄어들 었음을 알았습니다.

외부 저장소의 파일 크기를 줄이는 가장 좋은 방법은 무엇입니까? 비디오는 주로 휴대 전화를 대상으로하므로 해상도를 800 또는 그 이하로 줄이는 것이 좋습니다.

나는에 UIImagePickerController를 품질을 설정하려고 :

picker.videoQuality = UIImagePickerControllerQualityType.Type640x480 

하지만이 3.5 MB에 파일 크기를 감소.

사용 :

picker.videoQuality = UIImagePickerControllerQualityType.TypeLow 

바람직보다 훨씬 낮은 값으로 해상도를 감소시켰다.

내 서버에 저장하기 위해 비디오 파일 크기를 줄이려면 다른 방법을 사용해야합니까?

+0

정확히 어떻게 해결 했습니까? –

답변

2

압축 비디오에 대한 답변입니다. jojaba's answer에 따르면 :

원격 공유를 위해 비디오를 압축하고 에 아이폰에 로컬 스토리지의 원래 품질을 유지하고자하는 경우 AVAssetExportSession 또는 AVAssetWriter으로 보일 것입니다.

Compress Video Without Low Quality

이 방식은 비록 오브젝티브 C 당이다.

iOS가 Assets을 어떻게 관리하는지 읽는 것도 고려해야합니다.

관련 문제