Pull to refresh
  • by relevance
  • by date
  • by rating

Доставка видеоконтента пользователям

Website development *
[ Часть I. Доставка видеоконтента ] [ Часть II. CDN своими руками ]

Что такое «контент» для видеохостинга? Во-первых, контент видеохостинга – это просто видео, которое представляет собой набор файлов в различных форматах, в частности, в формате FLV для просмотра пользователем через Flash Player. Эти файлы статичны, видеохостинг при загрузке пользователем видеоролика осуществляет конвертацию во все требуемые форматы с необходимым битрейтом. Хранение такого контента — это хранение обычных файлов, только довольно большого размера. Отдача контента — это, по сути, организация скачивания файлов.
Во-вторых, контент видеохостинга — это «живые» потоки или вещания. Вещания не записываются на диск, не происходит их конвертация, потоки раздаются клиентам с учетом пропускной способности каналов (происходит пропуск пакетов, если канал клиента недостаточен для получения потока вещания в полном качестве). Отдача контента в данной ситуации — это раздача потока на большое количество подключенных пользователей (тысячи смотрящих).
Читать дальше →
Total votes 44: ↑44 and ↓0 +44
Views 8.6K
Comments 79

Adobe откроет RTMP

Adobe Flash
Adobe объявила о планах открыть в I пол. 2009 года спецификации протокола Real-Time Messaging Protocol (RTMP), который используется в веб-разработке (например, см. подробное руководство на Хабре по организации сервера вещаний).

Несмотря на своё изначальное предназначение, иногда RTMP используют не только для видеовещания. Например, на нём работает система Adobe LiveCycle Data Services ES. По мнению некоторых специалистов, после открытия RTMP он может сильно потеснить с рынка свободный протокол Comet.

Спецификации RTMP будут выложены здесь.
Читать дальше →
Total votes 6: ↑5 and ↓1 +4
Views 4.6K
Comments 0

FMSPy, релиз Alpha (0.1)

Website development *
FMSPy Flash Media Server written in Python (FMSPy) — это еще один RTMP-сервер для приложений на Adobe Flash/Flex/Air. FMSPy является аналогом Adobe Flash Media Server, с гораздо меньшими возможностями, однако FMSPy — совершенно бесплатный проект с открытым исходным кодом. Проект находится на ранней стадии развития, но в активной разработке.

Итак, что есть на сегодняшний день:
  • Реализация RTMP-протокола: кодирование/декодирование пакетов, разрезание и склеивание из chunks и т.п.
  • Поддержка базового RPC (Invoke) клиент-сервер и сервер-клиент. То есть из Flash-приложения можно вызывать с помощью класса NetConnection методы приложения на стороне сервера, и наоборот со стороны сервера вызывать методы приложения.
  • Инфраструктура для написания приложений (в качестве плагинов к FMSPy) со своим API на Python.

Читать дальше →
Total votes 39: ↑34 and ↓5 +29
Views 2K
Comments 26

FVD Suite — Качает Всё! Ну или почти всё…

FVD Media corporate blog
Дорогие Друзья!
Рады вас приветствовать на нашем блоге, который мы надеемся займет достойное место на хабракарте.

Наша компания занимается разработкой программного обеспечения для работы с медиаконтентом. Об выходе новой версии одного из наших продуктов, а именно FVD Suite и пойдет речь в этом посте.

FVD Suite это возможность скачивать Ваше любимое видео и кодировать в нужный формат в несколько кликов мышью.

image

Читать дальше →
Total votes 52: ↑35 and ↓17 +18
Views 15K
Comments 41

Как устроен видео-хостинг

Working with video *
Жизнь устроена так, что показывать и обрабатывать цифровое видео всегда сложнее, чем цифровые фото:
  • Видео-контент занимает гораздо больше места.
  • Все манипуляции с видео (сжатие, масштабирование, перекодировка) требуют неизмеримо больше ресурсов, чем преобразование фото.
  • Из-за большего объема контента суммарный видео-трафик сильно перегоняет трафик всех остальных ресурсов, да еще и требует хорошей пропускной способности.
Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Views 2.3K
Comments 16

Вещание онлайн-видео с помощью nginx

Adobe Flash

Что такое онлайн-видео?


Под термином онлайн-видео я понимаю длительное вещание какого-то живого видеосигнала (к примеру, из телестудии). Традиционные средства отдачи видео (flv- и mp4-стриминг) в данном случае не работают, просто потому что файла, содержащего весь видеопоток, не существует.

В этой статье речь будет идти не об организации видеохостинга, а об организации видеовещания в прямом эфире. Это две принципиально разные задачи, и обычно способы их решения существенно отличаются друг от друга.
Читать дальше →
Total votes 89: ↑88 and ↓1 +87
Views 85K
Comments 61

Реализация простого видеочата на ASP.NET MVC

.NET *Action Script *
Tutorial

Доброго времени суток, господа хабраюзеры!
В данном топике я расскажу, как можно сделать простой видео-чат на ASP.NET MVC.

Но для начала предыстория. Мы запускаем сервис видеоконсультаций с врачом через интернет. О нём обязательно будет отдельная статья, а сейчас хотим выяснить, насколько большую нагрузку смогут выдержать сервера и каналы.
Для этого мы написали небольшое веб-приложение, исходным кодами и описанием которого рад с вами поделиться.
Основная идея позаимствована у чатрулетки: заходишь в общий чат, выбираешь любого собеседника и общаешься по видео.
Исходный код проекта опубликован на codeplex.com под свободной лицензией, буду рад комментариям/замечаниям/предложениям.
Читать дальше →
Total votes 32: ↑27 and ↓5 +22
Views 33K
Comments 21

Реализация аудио звонков с web и мобильных клиентов (RTMP, RTMFP, WebRTC)

Development of communication systems *
Sandbox

Введение


Доброго времени суток, Хабровчане.

Хочу поделится с сообществом своим опытом по реализации аудио-звонков c web и мобильных клиентов в Cisco UCCX. Возможно, он кому-нибудь поможет в будущем или в настоящем.

Итак, однажды, передо мной была поставлена задача организовать аудио-звонки с web и мобильных клиентов на в Cisco UCCX. Все знают прекрасные сервисы по типу zingaya, но заказчик четко ограничивал использование сторонних сервисов.
Задача свелась к написанию клиента, выбора SBC и пробрасыванием сигнализации от клиента на Cisco Call Manager.

Проведенный мною анализ остановил меня на трех способах реализации требований:
  • RTMP клиенты, написанные под Adobe AIR и Flash + mod_rtmp к freeswitch в качестве SBC
  • RTMFP клиенты, написанные под Adobe AIR и Flash + RTMFP2SIP gateway от компании Flashphoner
  • WebRTC клиенты, написанные на js + Mobicents SIP Servlets

Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Views 5.8K
Comments 0

Онлайн вещание через Nginx-RTMP: несколько готовых рецептов

Website development *Adobe Flash
Недавно я наткнулся на топик "Сервер онлайн-вещаний на базе nginx" о замечательном модуле Романа Арутюняна (@rarutyunyan) для nginx: nginx-rtmp-module. Модуль очень прост в настройке и позволяет на основе nginx создать сервер публикации видеозаписей и живого вещания.

Про сам модуль можно прочитать на его странице на GitHub, я же хочу привести несколько простых примеров использования. Надеюсь, топик поможет новичкам в видеоделах (таким как я).

Читать дальше →
Total votes 38: ↑34 and ↓4 +30
Views 142K
Comments 22

HLS против RTMP — сухая статистика

Working with video *
Если кто-то решил сделать самостоятельно обработку, хранение и передачу видео для своего онлайн-проекта, а не использовать сайты вроде YouTube, он неизбежно приходит к вопросу о том, какой протокол передачи использовать для трансляции видео на устройства пользователей. Выбор невелик, т.к. есть ряд отраслевых стандартов, которые поддерживают те или иные устройства. Кроме того, выбор протокола во многом зависит от «класса» видео — живая трансляция или видео-по-запросу. От выбора протокола также зависит и выбор медиа-сервера, который будет двигателем вашей медиа-машины: будете ли ставить несколько разнородных серверов или построите сеть доставки на одном решении? Поэтому нужно взвесить всё и принимать решение исходя из критериев вашего бизнеса.

В общем, получается уравнение со многими неизвестными. Здесь немаловажна динамика процесса — а куда вообще идёт индустрия? Вдруг я вложусь в поддержку технологии, а она загнётся через год, ведь такое уже бывало. Или поставлю на модную технологию, а её никто не поддерживает?

Мы решили оценить, как менялась доля разных протоколов с течением времени — посмотреть в динамике весь процесс. Данные взяли за последний год.

Расклад по протоколам на начало августа 2014

Как менялась карта мира
Total votes 8: ↑7 and ↓1 +6
Views 63K
Comments 19

«Нет времени объяснять!» или Как реализовать трансляцию с IP камеры на сайт?

Nginx *
Sandbox
image


Пожалуй, мне везет на идиотские задачи в самый неподходящий момент. Это что, карма такая?! Ну да ладно…
В данном «отпускном» посте речь пойдет о том, как при наличии 3g модема и ноутбука реализовать трансляцию с IP-камеры на сайт.
Сам пост я бы не написал, если бы не задал вопрос на «Тостере», где мне подсказали, что гуглить.

Что мы имеем?


  1. Недешевая IP камера AXIS Q1755, которую я даже в руках не держал. Сама камера находится в городе «А» и подключена через тормозной 3g модем.
  2. Сервер на Debian 7, который крутится на почти дохлом Core2Duo. Хотя не такой уж он и дохлый, но для данных задач подходит не очень. Ах, да, сам сервер живет в городе Б.
  3. Сайт, на который необходимо повесить плеер. Находится на другом, более производительном сервере, в том же городе Б.
  4. Я, который находится в городе В, с ноутбуком, 3g-модемом и ограниченным трафиком в 4gb.

Читать дальше →
Total votes 57: ↑56 and ↓1 +55
Views 106K
Comments 31

Альтернатива HLS для iOS Safari — потоковое видео через Websocket

Website development *JavaScript *Development for iOS *Development of mobile applications *
Sandbox
image

Apple HTTP Live Streaming — широко распространенная технология для доставки видео на мобильные устройства, которая делает ставку на простоту, универсальность и проходимость. В качестве протокола доставки используется самый простой, доступный и проверенный протокол Интернета HTTP, что позволяет доставить видео практически на любое устройство или ПО в сети.

Ниже под катом рассматривается альтернатива — Websocket Streaming для iOS Safari и подробно описывается процесс тестирования.
Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Views 22K
Comments 15

Переключение звуковых дорожек в Flash с помощью RTMP сервера Wowza2

Adobe Flash
В данной статье описана древняя история о том, как мне удалось реализовать переключение звуковых дорожек для Flash-плеера с помощью RTMP сервера Wowza Media Server 2.

В далеком 2011 году я занимался исследованием возможностей стриминговых серверов для Adobe Flash Player'а. Передо мной стояла задача найти способ воспроизведения видео файлов с несколькими звуковыми дорожками. При этом было необходимо, чтобы переключение происходило без скачков по воспроизводящемуся видео. Поиск готовых решений в интернете никаких результатов тогда не дал. Более того, выяснилось, что сам Adobe Flash Player переключать дорожки не умеет и использует только первую попавшуюся…
Читать дальше →
Total votes 10: ↑7 and ↓3 +4
Views 4.2K
Comments 0

Забираем аудиопоток с Twilio по SIP и отправляем на RTMP CDN для дальнейшей раздачи

Website development *Adobe Flash Development of communication systems *
Sandbox
image

Как известно, в природе существуют CDN-сети, которые используются для доставки потокового видео конечным пользователям. Взять к примеру онлайн-трансляцию футбольного матча. Исторически сложилось, что протокол RTMP, разработанный Adobe, в определенное время стал очень популярен для доставки Live-видеоконтента, и поддержка этого протокола есть в каждом уважающем себя Encoder–устройстве или программе, которая захватывает видеопоток с камеры и отправляет на сервер или CDN для последующей раздачи. В статье описывается как сделать SIP источником потока для CDN.
Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Views 6K
Comments 0

Трансляция конференций и вебинаров с использованием протокола SIP

IT systems testing *Adobe Flash Development of communication systems *
Sandbox
Статья посвящена возможным вариантам организации взаимодействия между программным обеспечением для интеграции между сетями доставки контента и источниками контента с использованием протокола SIP.

При проведении корпоративных обучающих вебинаров, конференций или общественных собраний, митингов используются существующие сервисы и решения с поддержкой протокола SIP. Однако у таких сервисов, как правило, отсутствуют решения, направленные на массовое вещание (трансляции) в сети Интернет. Существующие сервисы, такие как Zoom.us, InterCall, Twilio, Vidyo, iMeet и так далее, а также другие программно-аппаратные решения и продукты других производителей — не предоставляют функционала конвертации конференции, организованной с использованием протокола SIP, в массовую трансляцию в сети Интернет.

Общая схема сервисов митингов в Интернете


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

Ниже будут рассмотрены возможные варианты интеграции между двумя серверами потокового видео Adobe Media Server и Wowza Streaming Engine, сервисами Twilio, Zoom.us, Vidyo, Lifesize, Blue Jeans, iMeet, софтфоном CounterPath Bria 4 и платформами Flashphoner Web Call Server 4 в различных сочетаниях.
Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Views 22K
Comments 11

Миграция сервиса виртуальных компаньонок на WebRTC

Adobe Flash
Sandbox
Это история одного проекта по видеостримингу.

image

Интересный клиент


Я сидел перед монитором уже битый час, а может и два. Все началось со ссылки на чей-то твиттер, которую коллега любезно закинул мне в скайп. Потом случайно открыл новостной сайт, потом Facebook, за это время успела появиться еще пара новостей… В общем, спина уже затекла и пора было пойти размяться. В офисе было прохладно, тихо работали кондиционеры. Выходить на уличную жару совсем не хотелось и, разогнувшись, я доковылял до ближайшего кофейного автомата. Где-то на ресепшене прозвенел колокольчик.

Через пару минут я увидел Ольгу, сопровождающую джентельмена азиатской наружности. На вид ему было около пятидесяти. На слегка морщинистой голове восседала серая шляпа с короткими полями. Они явно шли ко мне. Поравнявшись с кофейным автоматом, который уже журчал в стаканчик моим капучино, джентельмен произнес на ломаном русском: Здраствуйте, я относительный проекта WebRTC. Моя зовут Суконако, и протянул руку. Что привело сюда этого японца, подумал я, ответив на рукопожатие, и пригласил гостя в свой кабинет. Дальше нам пришлось перейти на английский язык, который нам обоим был более понятен.

Собираем требования


Я: Итак, чем могу быть полезен?

С: Мы работаем с 2000 года в стриминге и Flex для большого количества пользователей. Мы используем Adobe Flash Media Server (FMS) и сейчас хотели бы использовать WebRTC.

Я: Можно подробнее о том, чего вы хотели бы достичь использованием WebRTC-сервера?

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

Я: Без проблем, мы можем сделать решение на базе одного из WebRTC-серверов.

С: Adobe FMS нас полностью устраивает. Мы хотели бы расширить круг наших пользователей на WebRTC, не убирая FMS. Он работает хорошо.
Читать дальше →
Total votes 33: ↑29 and ↓4 +25
Views 14K
Comments 12

Трансляция WebRTC-видеопотока из браузера на YouTube Live в 65 строк JavaScript/HTML-кода

Website development *JavaScript *HTML *Browsers Development of communication systems *
Sandbox


В данной статье мы расскажем как работают трансляции Youtube Live и покажем как человек с базовыми знаниями JavaScript может закодить трансляцию на Youtube Live с HTML страницы с использованием технологии WebRTC.

Для работы категорически потребуются следующие знания и умения:

1) Базовые знания JavaScript / HTML
2) Умение работать в командной строке Linux.
3) Прямые руки.
Читать дальше →
Total votes 28: ↑27 and ↓1 +26
Views 30K
Comments 15

Запуск WebRTC медиасервера в облаке Amazon EC2 для Live видеотрансляций из браузеров и мобильных приложений

Website development *JavaScript *Programming *Development of mobile applications *Development of communication systems *

AWS Marketplace


Прежде всего хотелось бы сказать несколько слов о маркете Amazon AWS Marketplace. В отличии от Google Play и App Store, где выкладываются мобильные приложения, на AWS разработчики выкладывают серверные приложения. Здесь можно найти много интересного, начиная от бесплатного стека LAMP и заканчивая серверными Enterprise-решениями вроде SAP.

Прелесть работы с маркетом кроется в быстроте и удобстве развертывания. Требуемый сервер приложений, как правило, уже настроен, оптимально сконфигурирован и будет запущен во время запуска самого EC2 инстанса (виртуального сервера Amazon EC2). Запуск инстанса происходит из веб-интерфейса и не требует каких-то дополнительных админских знаний и умений.
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Views 10K
Comments 7

Браузерная WebRTC трансляция с RTSP IP-камеры с низкой задержкой

Website development *JavaScript *Programming *Browsers Development of communication systems *

По некоторым данным, на сегодняшний день, в мире установлены сотни миллионов IP-камер для видеонаблюдения. Однако далеко не для всех из них критична задержка в воспроизведении видео. Видеонаблюдение, как правило, происходит «статично» — поток записывается в хранилище и может быть проанализирован на движение. Для видеонаблюдения разработано множество программных и аппаратных решений, которые хорошо делают свою работу.

В данной статье мы рассмотрим немного другое применение IP-камеры, а именно применение в онлайн-трансляциях, где требуется низкая коммуникационная задержка.
Читать дальше →
Total votes 26: ↑22 and ↓4 +18
Views 54K
Comments 23

Трансляция RTMP видеопотока из Live Encoder на WebRTC

Flashphoner corporate blog Website development *JavaScript *Programming *Development of communication systems *

HTTP протоколы доставки видеоконтента, такие как HLS и DASH давно потеснили Flash в нише воспроизведения онлайн-видео контента в браузерах.

Тем не менее, изначально флэшовый протокол RTMP, остается одним из самых популярных способов доставки Live видео от источника видео до сервера ретранслятора. RTMP продолжают использовать такие сервисы, как Facebook Live, Youtube Live, и другие, где требуется вещать живое видео и проводить трансляции. Таким образом, несмотря на предсказания и констатации скорой кончины Flash, протокол RTMP все еще на коне и не уступает своих позиций в нише видеотрансляций.
Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Views 29K
Comments 1