Прямая трансляция видео с PHP - PullRequest
33 голосов
/ 22 октября 2008

У меня есть чат-приложение PHP / AJAX / MYSQL. Я хочу добавить видео чат в свое приложение. Как я могу создать потоковое видео в реальном времени, которое будет использоваться для видеоконференций в реальном времени / в чате в приложении PHP. Какие ключевые термины мне нужно знать, если я хочу построить такую ​​систему? Это хорошая идея, в первую очередь, использовать PHP? Есть ли что-то, о чем я не думаю? Какие еще языки я могу использовать, возможно, в сочетании с PHP?

Ответы [ 7 ]

21 голосов
/ 22 октября 2008

Я не говорю, что вы должны отказаться от PHP, но здесь вам нужны разные технологии.

Давайте начнем с простого (без Akamai :-)) и подумаем о последствиях здесь. Видео, чат и т. Д. - все это на стороне клиента в начале. У пользователя есть веб-камера, вы хотите как-то захватить сигнал и отправить его на сервер. Пока нет PHP.

Я знаю, что Flash поддерживает это (см. Это руководство по веб-камерам и flash ), чтобы вы могли использовать Flash для передачи содержимого на сервер. Я думаю, что если вы останетесь с Flash, то Flex ( flex и учебник по веб-камере ), вероятно, будет хорошей идеей.

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

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

НТН!

7 голосов
/ 01 октября 2013

Обратите внимание, что описанная ниже услуга больше не доступна как это было основано на СМИ FLV (Вспышка)

Этот проект, использующий Red5, Flex и PHP для потоковой передачи и записи живого видео, имеет множество функций

  1. Потоковое видео для зрителей

  2. Запись потоков с вашей камеры или других устройств ввода видео на сервер

  3. Предварительный просмотр записанных потоков и файлов и миниатюра кадра, который вы хотите отобразить для видео.

  4. Загрузите видео со своего компьютера и конвертируйте его в FLV, который можно транслировать с помощью Red5.

  5. Выберите из любого разрешения

  6. Может быть подключен к любому сценарию

  7. Каждый пользователь веб-сайта может иметь отдельный каталог для хранения своих видео и миниатюр использовать эту ссылку http://code.google.com/p/red5-flex-streamer/

4 голосов
/ 22 октября 2008

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

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

Далее вы хотите вывести свое видео в браузеры - Windows Media Player, Flash или Silverlight позволит вам добиться этого - встроить соответствующий элемент управления для выбранной вами технологии на вашу страницу (с использованием PHP или чего-либо еще) и дать адрес вашего живого видео канала.

PHP (или другой язык сценариев) будет использоваться для построения чата в приложении и для объединения всего этого (чат и встроенный видеоплеер).

Надеюсь, это поможет.

2 голосов
/ 22 октября 2008

Для видеоконференций в режиме реального времени нельзя игнорировать необходимость потокового сервера.

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

Если вы собираетесь создать что-то подобное, разумно подумать о том, как вы собираетесь разместить видео с самого раннего этапа, так как это повлияет на то, как вы создадите приложение. Flash / Flex / Silverlight / Windows Media .... и т. Д. *

1 голос
/ 25 января 2010

В вашей среде будет много готовых "серверов". Большинство из них используют вышеупомянутый Flex или Silverlight для реализации самого видео, но я уверен, что все будет работать под LAMP / PHP.

Проблемы будут заключаться в выборе лучшего программного обеспечения из всего, что доступно, и в том, чтобы ваш хостинг-провайдер позволял вам передавать потоковое видео (само собой разумеется, что потоковая передача сильно зависит от пропускной способности).

1 голос
/ 22 октября 2008

PHP / AJAX / MySQL будет недостаточно для создания приложения для потоковой передачи живого видео. Здесь есть похожая тема здесь . В первую очередь рекомендуется использовать Flex или Silverlight.

0 голосов
/ 08 октября 2012

Та же проблема / ответ здесь , цитируется ниже

Полагаю, вы имеете в виду, что хотите запустить собственное видео звонки, а не просто ссылки на звонки Skype или аналогичные. У вас действительно есть 2 варианты здесь: разместить его самостоятельно, или использовать размещенное решение и интегрировать это в ваш продукт.


Self-Hosted ----------------- Это грязно. Все это может быть достигнуто с помощью PHP, но это, вероятно, не самое рекомендуемое решение, так как не лучший инструмент для работы со всех сторон. Флэш намного больше эффективен при захвате и передаче аудио / видео на стороне пользователя. Вы можете попробовать сделать это без вспышки, но у вас будут головные боли. HTML5 может сделать ваша жизнь легче, но если вы стреляете для максимальной совместимости, flash - это самый простой способ создания клиента. Тогда, насколько как фактическая сторона сервера, которая будет передавать аудио / видео, вы могли бы напишите чат-сервер в php, но вам лучше использовать открытый исходный код проект, как janenz00 упоминание red5 , это уже построено и взаимодействовать с ним через вашего клиента (если он еще не один). Или вы можете сделать домашний флэш-клиент, как упоминалось ранее, и подключите его к серверу флэш-потоков с обеих сторон ... в любом случае быстро усложняется, и я не могу помочь вам в все.


Хостинг Сервис ----------------- В общем, моя рекомендация, если вы не хотите управлять нелепой настройкой многих сложных серверов и сбоев указывает использовать размещенный сервис, как UserPlane или аналогичный и разгрузить все обработка и техническая работа для людей, которые хороши в этом, а затем беспокоиться о взаимодействии с их API и получить их клиенту хорошо интегрированы в ваш сайт. Вы будете более счастливым разработчиком, если сделаете.

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