2015-07-09 7 views
3

Я должен загрузить видео из интерфейсного веб-сайта в свой Django-back-end.Сжатие видео на веб-странице клиента

Мне нужно сжать видео прежде, чем загрузить его.

Так что мне нужно несколько библиотек (например, библиотеки javascript) для использования на клиентской стороне (браузере) для сжатия видео и вызова моей функции ajax для ее загрузки.

Возможно ли это?

Можем ли мы предложить мне что-то вроде библиотек javascript, чтобы это сделать?

+0

Почему вы не можете сделать транскодирование на внутреннем интерфейсе? – DavidDomain

ответ

0

№ Нет. В браузере отсутствует API кодирования видео, для использования JavaScript. Возможно, в один прекрасный день появится официальный MediaEncoding API - не так ли?

+4

Это не совсем так. Браузеры не предоставляют такой самолет API, но посмотрите [здесь] (https://github.com/bgrins/videoconverter.js). Хотя может показаться сумасшедшим компилировать ** ffmpeg ** в Javascript, похоже, что они это сделали. – DavidDomain

+0

Вау! (Это одна огромная библиотека и может не подходить для живого сайта производства. Вам нужно будет проверить это, Safari.) – kieranpotts

+0

Конечно, мы должны проверить это, и это кажется довольно далеким от того, чтобы быть готовым к производству, кроме того что я всегда буду рассматривать транскодирование видео как задание, которое должно выполняться на сервере, а не в браузере, не только с точки зрения производительности. – DavidDomain

3

Я нашел этот проект. Это преобразование декодера FFMPEG на языке javascript. Таким образом, вы можете использовать его для работы с изображениями, видео и аудиофайлами без загрузки файла на сервер.

Домашняя страница: https://bgrins.github.io/videoconverter.js/

GitHub: https://github.com/bgrins/videoconverter.js

Я еще не пробовал, но демонстрационная страница говорит, что он работает: https://bgrins.github.io/videoconverter.js/demo/

+0

Если вы планируете использовать это, чтобы сжать видео до того, как ваш клиент загрузит его, потому что скорость вашего интернет-доступа в Интернете медленная, рассмотрим этот пример: для видео за 1 мин требуется всего около 10 минут для кодирования. и обеспечил размер архива размером 21 МБ. Предполагая, что максимальная скорость 3g составляет 384 Кбит/с, эта дополнительная загрузка в 21 МБ займет 9,3 минуты. , так что это, к сожалению, даже на прилично быстром компьютере, загрузка быстрее, чем сжатие перед загрузкой. до тех пор, пока в будущем браузеры не появятся с какой-то родной библиотекой сжатия. – deweydb

+1

@deweydb версия WebAssembly выглядит многообещающей, поскольку она намного меньше и быстрее https://github.com/bgrins/videoconverter.js/issues/43 –

+1

@MatthewLock DOPE! Спасибо за это! – deweydb

 Смежные вопросы

  • Нет связанных вопросов^_^