Я выбираю видео из своего быстрого приложения для iOS, используя UIImagePickerController. Я сохраняю этот URL-адрес и теперь хотел бы преобразовать его в данные для отправки на мой сервер для хранения, используя:
let messageVideoData = NSData(contentsOfURL: chosenVideoURL)
Проблема в том, что размер файла очень большой. Для 7-секундного видео, снятого на мой iPhone 6s, разрешение составляет 1280, 720, частота кадров — 30, а размер файла — более 4 МБ. Я заметил, что одно и то же изображение, отправленное с WhatsApp и другими приложениями для чата, уменьшилось до нескольких сотен КБ.
Каков наилучший способ уменьшить размер файла для внешнего хранилища? Видео в первую очередь предназначено для телефонов, поэтому можно уменьшить разрешение до 800 или меньше.
Я попытался установить качество UIImagePickerController на:
picker.videoQuality = UIImagePickerControllerQualityType.Type640x480
но это только уменьшило размер файла до 3,5 МБ.
С использованием:
picker.videoQuality = UIImagePickerControllerQualityType.TypeLow
уменьшил разрешение до значения намного ниже, чем хотелось бы.
Есть ли другой подход, который я должен использовать, чтобы уменьшить размер моего видеофайла для хранения на моем сервере?