Недавно я писал обзорную статью про трансляции в реальном режиме времени или Live Streaming и о том, как их можно организовать, например, для показа каких-либо мероприятий удаленным пользователям. Сегодня же мы поближе познакомимся с одним из главных звеньев системы живых трансляций, а именно с программным обеспечением Flash Media Live Encoder, узнаем для чего оно нужно и как с ним работать.
Трансляция с камеры в реальном режиме времени
Для того чтобы организовать полноценную трансляцию, например, видеосигнала с USB камеры вашего ноутбука в сеть Интернет, в первую очередь необходимо забрать или другими словами захватить сигнал с камеры. Далее перекодировать его в нужный формат и отправить на медиа сервер, откуда его уже будут запрашивать для просмотра удаленные пользователи, используя Flash плеер или HTML5 плеер, встроенный в веб страницу.
Также, нужно учитывать, что камеры бывают разные, поэтому существует несколько способов забрать с них изображение, но об этом чуть позже.
Зачем нужен Flash Media Live Encoder?
Как раз для захвата и кодирования видеосигнала мы будем использовать Flash Media Live Encoder. Данное программное обеспечение можно установить бесплатно, при условии того, что вы его используете совместно с Adobe Flash Media Server (исходя из лицензии). Хотя, как показывает практика, оно также хорошо работает с Wowza сервером.
Три основных типа камер
Существует несколько способов забрать видеосигнал с камеры на компьютер и далее на Медиа сервер, которые непосредственно связаны с моделью и типом той или иной камеры. Рассмотрим основные способы для разных камер.
- Аналоговая камера. В данном случае нам придется использовать плату захваты или обычный ТВ тюнер, установленный на компьютере. К плате захвата подключается камера и сигнал от камеры передается, например, по композитному (RCA) или S-video кабелю. Далее Flash Media Live Encoder забирает сигнал с платы захвата, с помощью драйвера устройства, для дальнейшего преобразования.
- USB веб камера. С данным типом камер, как правило, программное обеспечение Flash Media Live Encoder работает без каких-либо проблем напрямую, через драйвер.
- IP Камера. В случае же с IP камерой, иногда возможно забрать сигнал напрямую по протоколу RTP на медиа сервер, без использования Flash Media Live Encoder (FMLE). Подробнее читайте в статье Трансляция видео с IP камеры в сеть Интернет.
Как вы уже, наверное, догадались, сегодня мы говорим об использовании FMLE совместно с первыми двумя типами камер (аналоговая и USB камера). Ниже, на рисунке, вы можете посмотреть, как выглядит FMLE. Его вы можете бесплатно скачать с официального сайта компании Adobe и установить на свой компьютер.
Теперь более детально разберемся с его настройками и попробуем создать тестовую трансляцию, для того чтобы удаленные пользователи смогли увидеть изображение с нашей камеры. Также нам необходимо установить Adobe Flash Media Streaming Server (FMSS), который можно скачать и установить бесплатно (бесплатная версия — максимум до 10 одновременных подключений). В данной статье я не буду рассказывать, как устанавливать FMSS. В Интернете можно найти очень много информации об этом. Хочу только отметить, то, что устанавливается он довольно просто и для простых трансляций не требуется сложных настроек. Также вы можете почитать мою статью про медиа сервера.
Параметры настройки Flash Media Live Encoder (Видео, Аудио)
- Device: Выбираем камеру или плату захвата с которой собственно и будет забираться видеосигнал. В моем случае это ТВ тюнер AverMedia. Сверху есть окна Input и Output, в которых можно наблюдать входной видеосигнал и резул.
- Format: Выбираем кодек H.264. H.264 один из лучших на сегодняшний день.
- Frame rate: Частота кадров видео в секунду.
- Input Size: Разрешение видео в пикселях. Я выбираю 640х360 – одно из самых распространённых на сегодняшний день.
- Bit Rate: Скорость мультимедийного видеопотока в Кбит/сек, который мы хотим отправит на сервер. Чем больше скорость потока, тем лучше качество.
- Audio: В данной секции вы найдете настройки для кодирования звука. В моем случае звук забирается со звуковой карты Realtek. Также, в настройка аудио, есть возможность регулировки уровня звука (Volume).
Параметры настройки Flash Media Live Encoder (Трансляция)
- Stream to Flash Media Server: Выбираем эту галочку для того чтобы указать FMLE, что мы будет посылать перекодированный сигнал на Flash Media Server.
- FMS URL: Вводим адрес сервера и указываем приложение для Live Streaming (“live”). В моем случае получилась следующая строка rtmp://172.20.20.100/live.
- Stream: Название потока. Можно указать любое, у меня это live500. Чуть позже, будем использовать его в качестве параметра для Flash плеера.
Далее нажимаем на кнопку Connect.Если соединение прошло успешно, то можно считать, что сигнал с вашей камеры успешно передается на медиа сервер в реальном режиме времени. Теперь осталось создать веб страницу с плеером, для удаленных клиентов.
Установка и настройка клиентского плеера
- Скачиваем бесплатный плеер JW Player (Flash плеер), в архиве, с официального сайта.
- Распаковываем архив.
- Помещаем распакованную папку на web сервер (я использую для этого Apache web сервер).
- Создаем файл flash_player.htm, но вы можете использовать другое название для файла. Для удобства я выкладываю уже готовый файл, в котором вам нужно только изменить адрес сервера на свой (мой адрес — rtmp://172.20.20.100/live/). Данный HTML файл с JavaScript загружает Flash плеер.
- Далее открываем браузер, прописываем адрес до нашего файла flash_player.htm. Должна загрузиться страничка с Flash плеером.
- Нажимаем кнопку проигрывания и после этого вы должны увидеть изображение со своей камеры. У меня вместо камеры был ТВ тюнер, который получал видеосигнал по S-video кабелю от телевизионной приставки. Ниже, на картинке, можете посмотреть изображение моего Flash плеера!
Если вам нужно что-то настроить или получить консультацию по медиа-серверам и мультимедийным системам, можете обращаться ко мне и нашей команде через форму контактов.
Вот вроде и все. Желаю всем успехов!
Приглашаю подписаться на новости моей публичной страницы ВКонтакте, ее адрес http://vk.com/itmultimedia . Буду рад видеть Вас в своих подписчиках!
Здравствуйте. Как с Вами можн связаться? Мне нужны консультации, связанные с проектом интернет-вещания. Спасибо. Если можно, пришлите мне, пожалуйста, контакты на tito5@bk.ru
Добрый день. Можно связаться через пункт меню блога Контакты, потом я вам отвечу по почте. http://itmultimedia.ru/kontakty/ .
Здравствуйте, статья отличная. Но вы ставили в статье заголовки абзацам «настройки Adobe Flash Media Server»
А на самом деле это настройки Adobe Flash Media Encoder. Это как бы не проблема, но, может новичкам составит кое-каких проблем.
Спасибо за Ваш труд.
Сергей, спасибо! Исправил.
Добрый день!
Подскажите пожалуйста, как сделать так чтобы стрим отправлялся, не по сети интернет, а по внутреннему адресу в локальной сети?
Спасибо!
Использовать для кодера, сервера и клиентов внутренние IP адреса.
Подскажите пожалуйста, можно ли для вещания в интернет использовать в качестве сервера тот-же компьютер на котором происходит захват изображения с Web-камеры. И как в таком случае получить к трансляции из интернета.
Можно. Для этого вам нужно иметь на компьютере внешний IP адрес.
Доброго времени суток!
Очень полезная статья! Но возникает вопрос о вещании на несколько камер… Подскажите пожалуйста — можно ли обойтись без спец пульта — у нас две камери подсоединяются по Fire-Wire к компу.
Зарание благодарен за ответ!
Тарас
Здравствуйте! Может, вам подойдет WireCast (программный видеокодер с функцией микширования потоков) http://itmultimedia.ru/wirecast-i-onlajn-translyacii/
Здравствуйте автор))))Очень понравилась ваша статья, много полезной информации, но я не могу скачать файл flash_player.htm с вашего сайта, не могли бы вы его мне перекинуть на почту garipals@yandex.ru или заново закинуть этот файл на сайт. Заранее спасибо=))))
1. Откройте в браузере страницу с плеером flash_player.htm.
2. Посмотрите исходный код страницы flash_player.htm в браузере.
3. Скопируйте код.
Добрый час! Спасибо за статью!
Я правильно понимаю, что роль Flash Media Server в вашем примере выполняет обычный веб-сервер, на котором установлен обычный flash-плеер? И официальный стриминг продукт от Adobe не является необходимой частью для простейшего стриминга?
Здравствуйте! Медиасервер в данном случае нужен. Одного веб-сервера недостаточно.
у меня спрашивает логин пас при попытке подключить енкодер к серверу. ввожу те же данный которые вводил при установке сервера- отвечает invalid. деинсталировал сервер и установил заново -то же. что не так ?
У меня аналогичная ситуация, когда найдете решение не поленитесь напишите здесь как вы её решили.
короче ., не знаю как у вас у меня паралельно работал сервер wowza , надо оставить один тогда ок
Спасибо, все получилось!
Здравствуйте! Подскажите, как можно (и возможно ли вообще) добавить в Flash Media Live Encoder несколько источников-камер? Еще вопрос, не по основной теме но всё же, как можно организовать «повтор» в трансляции, так же как делают на спортивных каналах, забили гол и тут же идет повтор в замедленном виде либо просто повтор? Нужен самый бюджетный вариант.
Добрый день!
Несколько источников с FMLE использовать нельзя. Повторы можно делать с помощью WireCast.
Подскажите есть ли некая настройка в Flash Media Live Encoder где можно выставить количество подключаемых к трансляции компьютеров? У нас почему-то не подключаются больше 9 человек, вроде даже лимиты на сайте убрали. Странности в общем.
На Flash Media Live Encoder ограничений нет. Какой медиа-сервер вы используете? Например, на каких-то бесплатных версиях Wowza сервера как раз было ограничение на 10 подключений (то есть, 1 кодер + 9 клиентов).