Процесс загрузки видео и Amazon S3 - PullRequest
5 голосов
/ 16 января 2012

Мой вопрос касается того, как мне поступить. Мой сайт позволяет пользователям загружать видео (от 1 минуты до 5 минут). На данный момент пользователь выбирает видеофайл, затем я начинаю загружать его в iframe. Затем пользователь заполняет некоторую информацию о видео. После заполнения формы я надеялся позволить пользователю сделать что-то еще, пока я загружаю эту видео-серверную часть.

Сейчас эта система работает, но после заполнения формы и нажатия кнопки «Отправить» браузер начинает загрузку, и пользователь не может предпринимать никаких действий, пока она не будет загружена. Это мой первый веб-сайт, работающий с такими файлами, поэтому любые предложения приветствуются.

Ответы [ 2 ]

5 голосов
/ 26 января 2012

Обработка видео в контексте веб-приложений является общеизвестно сложной задачей (по крайней мере, не тратя много драгоценного времени, лучше всего используемого в других местах) - учитывая мой опыт, вы, скорее всего, столкнетесь с большим количеством проблем и / или продвинутых потребностей в будущем соответственно, например создание эскизов, преобразование форматов и т. д.

Поэтому я собираюсь взять "любые предложения очень приветствуются" буквально здесь и настоятельно рекомендуем проверить Transloadit - их предложение включает в себя желаемую функциональность, а также многое другое ( необязательно, конечно):

  • Гибкая, быстрая и масштабируемая загрузка и кодирование файлов с помощью нашего API:
    • Кодирование видео и аудио в любой формат
    • Изменение размера, водяных знаков и конвертирование изображений
    • Хранить файлы в S3 , облачных файлах или SFTP
    • Поставьте индикатор прогресса загрузки на свой сайт
    • Аутсорсинг обработки файлов и концентрация на вашем приложении!

Есть демонстраций для большинства функций (которые выделяют множество вариантов использования обработки изображения / видео на стороне), например показывая, как сохранять первоначально загруженные файлы в своем S3-контейнере или как комбинировать функции кодировать видео, извлекать 8 миниатюр и хранить все в своем S3-контейнере .

Обязательно прочитайте Уведомления против URL переадресации , в котором объясняются ваши варианты касательно рассматриваемого варианта использования, в частности, вы, вероятно, захотите использовать Уведомления , чтобы избежать блокировки пользователя. :

Если вы используете плагин jQuery и устанавливаете для его параметра ожидания значение false, вы придется использовать уведомления, в противном случае нет возможности получить файл результатов из Transloadit.

Будучи коммерческим предложением, они действительно преуспели в использовании и сняли большую часть бремени обработки видео в веб-приложениях; их предложение основано на Amazon Web Services (AWS), и цена очень разумна и соответственно доступна по цене.

Удачи!

0 голосов
/ 26 января 2012

Загрузка сложна, потому что стандартный HttpRequest не может показать процент загрузки в большинстве браузеров без какого-либо опроса на стороне сервера через ajax, и если это большой файл, пользователь может ждать целую вечность, даже не видяесли загрузка прошла успешно.

Есть несколько решений для этого.(1) многие люди используют объект Flash для этого, и есть много примеров:

http://www.plupload.com/example_queuewidget.php

http://blueimp.github.com/jQuery-File-Upload/

.. есть нагрузкипросто Google, пока вы не найдете тот, который вам нравится

(2), если вы не хотите использовать небольшой SWF для этого, то вы должны опубликовать файл с помощью ajax и продолжать проверять сервер (с ajax), чтобы ответитьтекущий размер файла, который является более сложным.

Если вы хотите, чтобы ваш пользователь мог продолжать использовать сайт и другие страницы вместо ожидания на одной и той же странице, почему бы не использовать всплывающее окно для отображения фактической загрузкиприставка?или даже кадр (противнее).

Приветствия A

...