У меня есть пользователи, которые отправляют огромные (2 + ГБ) файлы в формате .mov на сервер, единственное, что мне нужно знать об этих файлах, - это несколько мета-тегов (само видео мы загружаем на YouTube со стороны клиента).
Очевидно, я хочу иметь возможность просто анализировать эти метатеги, не загружая полный файл на сервер, более того - чтобы можно было не начинать загрузку видео на YouTube, если метатеги пустые или недействительные.
Я вижу следующее решение проблемы:
Пользователь выбирает файл
JS-фрагменты из файла первые 128 Кбайт байтов, где расположены метаданные
JS Отправляет эти байты на сервер, и сервер анализирует его ИЛИ. Сам JS анализирует его
Поскольку JS имеет метод Blob.prototype.slice типа BlobЯ использую следующий код:
filePart = file.slice(0, 131072); // first 128kb
Проблема в последнем шаге, потому что я не знаю, как проанализировать эти нарезанные байты.