Служба для загрузки видео и обмена между пользователями

88jayto спросил: 28 марта 2018 в 03:12 в: video-streaming

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

Я ищу службу для обработки потоковой передачи / видео.

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

Это, по сути, клон того, что делает Facebook, когда вы отправляете видео в Facebook-мессенджер.

Одно из рассмотренных мной решений связано с использованием подписки S3 и url для загрузки видео, а Cloud Front и подписывание URL для потоковой передачи видео, но это решение включает в себя кучу поддержки работы и изменения модели данных. В идеале услуга будет жить вне нашего бэкэнда.

Я также рассматривал такие услуги, как Brightcove, но они не предлагают этот тип решения из коробки (также как пользовательское решение для looooooads денег, которые мы надеваем 't have)

В ореховой раковине им нужен предварительно испеченный сервис, который предлагает следующее:

  • Разрешить тысячам пользователей загружать видео
  • Разрешить тысячам пользователей передавать потоки видео, загруженные другими пользователями, с некоторой защитой вокруг тех, кто может передавать видео.

Есть ли у кого-нибудь опыт в этой проблеме или какие-либо услуги, которые могут предложить решения?


1 ответ

Есть решение
colde ответил: 28 марта 2018 в 06:18

Существует несколько способов найти то, что вы ищете, в зависимости от требуемой необходимой инженерии.

Службы мультимедиа Microsoft Azure имеют гораздо больше уже созданной видеоинфраструктуры по сравнению с AWS. Используя это, не нужно много ресурсов, чтобы построить то, к чему вы стремитесь. Скорее всего, вам не понадобится намного больше, чем требовалось бы для Brightcove.

Mux имеет новый и чрезвычайно простой API и простую бизнес-модель для того, к чему вы стремитесь. Это может быть довольно неплохо, учитывая, что они многое делают, чтобы скрыть сложность и упростить работу с ним.

Я сам не пробовал, но Cloudflare Stream выглядит так, как будто это интересный продукт и для вашего случая.

Как правило, службы, в которых вы транскодируете видео перед его просмотром, дадут заметную задержку от отправки до возможности просмотра на другом конце. Если вы хотите избежать этого, вы можете записывать фрагменты MP4 и просто использовать их, так как они будут воспроизводиться на большинстве мобильных телефонов. Использование S3 в качестве бэкэнда для этого или любого другого механизма хранения данных не должно быть сложным, и я сомневаюсь, что для этого вы найдете гораздо более простой сервис, чем S3.