Как стать автором
Обновить

Комментарии 72

Я провожу интернет-трансляции и вебинары с небольшим кол-вом участников: 500-1000.
Подскажите, какое максимальное кол-во просматривающих трансляцию может быть и в каком качестве будет эта трансляция (разрешение, битрейт) и с какой задержкой?
Плюс к тому вижу в своей голове схему nodejs + socket.io чата для обсуждения происходящего на камере :)
Вот я присоединяюсь к вопросу, особенно про задержку.
xaver, спасибо за правильный вопрос. Мы говорим о том, что мы не ограничиваем количество людей, которые смотрят трансляцию. Качество мы также берем либо то, которое выдается камерами со строенной поддержкой Ivideon, а это, как правило около 1 — 2 Мбит H264, либо то, что вы сами настроите в Ivideon Server, если он используется для подключения камер к облаку.

Пример трансляции камеры Microdigital, например, можно увидеть вот здесь.

Кстати, когда начались известные события в Украине, у нас были установлены нашими пользователями камеры на Майдане. Хотя это был не киевский, а львовский майдан, за 3 дня эти камеры были просмотрены примерно 5 000 000 человек. Наши датацентры и каналы связи позволяют нам обеспечивать качественно такие трансляции.

Что касается задержки, то обычно она не более 1-2 секунд. Зависит от настроек камеры и вашего исходящего канала, которого должно быть достаточно для отправки видео в одном экземпляре.

Ну, и nodejs + socket.io вам придется реализовать самостоятельно)
А как в таком случае считается трафик, вернее, кто его оплачивает? Понятно что если я нагоню 10 000 посетителей онлайн, будет очень большой поток исходящего трафика от облачного сервера до потребителя. Тут нужно быть дотошным в любой мелочи, потому что качество трансляции в итоге определяет лояльность человека смотрящего к какой-либо мотивации (совершению покупки, записи на оффлайн событие и тд).

Был опыт работы с несколькими системами: expertsystem, google hangout, GVO conference — везде есть свои плюсы и минусы, но так чтобы на «хорошо с плюсом» тянет далеко не у всех.
Мы оплачиваем этот трафик. И несем издержки для проведения таких трансляций. Основная причина почему мы так делаем — имиджевая. В плеере присутствует наш логотип. На качество семинаров и мероприятий он никак не повлияет, но зато так или иначе со временем отложится у вашей аудитории. Для нас это в некотором смысле демонстрация наших возможностей и реклама.
НЛО прилетело и опубликовало эту надпись здесь
Спасибо! Хотим, держать планку и оставаться на уровне. Надеемся, что нам быстро удастся укомплектовать команду сильными разработчиками и ivideon TV начнет развиваться очень быстро.
Что касается задержки, то обычно она не более 1-2 секунд

На смартфонах тоже? Если да, то подскажите в какую сторону смотреть. Т.к. из более-менее универсальных и более-менее стандартизированных способов для смартфонов знаю только HLS, который из-за структуры с сегментами не даст вложиться в 1-2 секунды.
В нашем приложении, которое не используется HLS, это точно не более 1-2 секунд. А вот что касается встроенного видео, то так сразу не скажу. Там действительно есть вопрос с сегментами. Но как-то мы его решили. Стример мы писали и оптимизировали самостоятельно. Активно общались по этому поводу на форумах, искали варианты сделать загрузку быстрее. Решения «в лоб» просто нет, к сожалению. Не могу сказать, какой сейчас точно результат. Сделаю это либо завтра, либо просто подключите вашу веб-камеру к Ivideon и попробуйте замерить.
НЛО прилетело и опубликовало эту надпись здесь
К сожалению, как и написано в статье Ivideon TV это проект, под который у нас отсутствует постоянная команда разработчиков. Над ним время от времени работают люди из основной — облачной команды. Поэтому мы и написали в статье, что ищем программистов для этого направления.
Что касается ошибки открытия камер, то она — логическая. Когда вы в первый раз открываете ссылку — слева появляется панель с двумя камерами, попавшими в область видимости на карте. Но когда вы открываете камеру, то эта панель скрывается и не открывается повторно при клике на значке на карте.
Скоро исправим такое поведение. А пока вы можете вернуть данную панельку, нажав на стрелочку в левой части экрана.



Александр, (begemot_nn), спасибо большое за сообщение. Исправили ошибочное поведение. Можно проверять.
Проверил, теперь все работает предсказуемо.
Я так понимаю расстановка геопозиционных меток полностью на совести пользователей?
получаются такие интересные места на планете
Не совсем так. Существенная часть координат проставляется автоматически при открытии доступа к камере по базе гео IP. К сожалению, та, которую мы используем сейчас, является не совсем точной.
Хотя да, в том числе возможно, чтобы пользователь и сам задавал координаты.
Еще там ограничение в 10 минут для непрерывного просмотра у бесплатных аккаунтов.
Да и на «Home» тарифе (судя по таблице) 10 минут лимит, и только на «Business» можно за дополнительную плату получить что-то более-менее серьезное.
Но, с другой стороны, в этой же таблице они честно пишут, что по истечении 10 минут плэер можно перезапустить.
«Хоум юз» — это заглянуть на минутку, посмотреть как ведут себя дети дома… а для этого 10 минут более чем достаточно, другой вопрос, зачем для такого использования подключать свою камеру к каким то облакам…
Удалённо можно смотреть трансляцию, но чтобы просмотреть запись, её нужно сохранять в облако — иначе она будет доступна только с компьютера, на который она велась. И если с ним что-то приключится — сломают, украдут — то и записи пропадут.
Ограничение в 10 минут очень косметическое. Через 10 минут появляется кнопка Play, которую просто нужно нажать еще раз. Согласитесь, если вы транслируете на своем сайте ход строительства жилого дома для его покупателей, то это более чем достаточно.
А если проводите масштабный семинар на 50 000 человек и вам нужна непрерывная трансляция в один час для каждого из них, то абонентская плата $5 в месяц + $1.20 в месяц или суммарно $6.20 не является большим расходом.

Кстати, если требуется непрерывная трансляция в 5 часов, то её стоимость в месяц составит суммарно меньше $12.
Пожалуй самый простой способ — это всё же ShowMe.pro — там и регистраций не нужно, и реально 3 клика нужно, чтобы трансляция началась, и встроить её в свой сайт можно очень просто, и транслировать можно сколько угодно. Словом, всем заинтересованным рекомендую наш бесплатный сервис.
К сожалению, с последней версией Flash для Linux, оно не работает… «Пожалуйста, обновите версию Вашего flash-плеера.»
Нам на такое никогда не жаловались. Мы всё проверим. Спасибо.
Мы проверили. Нам нужен Flash 11.5, а последний Flash для Linux это 11.2, и к сожалению, Adobe более не поддерживает Flash Player для Linux и выпускают только исправления в системе безопасности.
Есть костыль под названием freshplayer
cCube, не корректно сравнивать аналог Chatroulete с технологической точки зрения и решение, предлагаемое нами. Это решение хорошо для онлайн общения, но не для трансляции, например, камеры, установленной на столбе на Красной Площади. Будет странно, если на этом столбе будет не полноценная уличная IP-камера, а обычная Web-камера и компьютер.

Кроме того, то что вы предлагаете, это прежде всего Flash. В наш век мобильных платформ нельзя игнорировать возможность тех же трансляций на iOS. А iOS как и Android давно не дружит с Flash и вряд ли когда-нибудь будет дружить. Не любят его там.
Мы просто говорим о самом простом способе… Компьютер, примотанный к столбу и в самом деле глупость несусветная. =)
Транслировать с мобильного устройства Android или iOS и в самом деле не получится, а вот смотреть запросто. И мы не аналог Chatroulete с технической точки зрения… Наш сервис предназначен не для чата, а для того, чтобы быстро и просто организовать онлайн трансляцию себя или событий вокруг. Попробуйте ShowMe.pro, вдруг и Вам понравится.
cCube, это все-таки Хабр) Сразу же видно, что вы используете пиринговый механизм Flash, точно такой же, какой используется у ChatRoulete. С технической точки зрения это одно и то же. Или я не прав? Поправьте меня, если это не так.
Пиринг на flash? Это что и как?
В свое время об этом хорошо написал Bobos в своей статье.
Не хорошо, а откровенно плохо, как замечено в комментариях. :) Один абзац 4 года назад. Наверно тогда я и слышал о первых начинаниях. С тех пор так и непонятно можно ли сделать свой ютуб с p2p? Именно видеохостинг, а не онлайн трансляцию?
Нет предела совершенству) Это хорошая отправная точка-пример. Начав с нее, вы быстро найдете всю информацию по данному вопросу, так как теперь знаете что вам искать.
А с какой стороны в этот ваш сервис вообще камеру втыкать?
С технологической точки зрения есть два варианта.

1. Покупаете готовую камеру, которая поддерживает облако Ivideon. Таких камер становится все больше. Можете купить у нас, а можете купить в любом другом месте. Например, наша совместная с компанией Philips камера вообще продается в магазинах Apple.



2. Устанавливаете бесплатное ПО Ivideon Server на ваш компьютер (Windows/Linux/Mac), которое играет роль полноценного сервера видеонаблюдения с возможностью хранения архива локально или в облаке, с анализом детекции движения и звука, возможностями задать зоны, расписание и тд. Далее подключаете к нему во время установки ваши камеры. Поддерживаются IP-камеры множества производителей и даже обычные веб-камеры. ivideon Server в свою очередь подключает ваши камеры к облаку по шифрованному каналу и вы получаете к ним доступ откуда угодно с помощью наших мобильных приложений для iOS или Android, браузера и т.д.
Я про шоуми.про спрашивал, с ивидеон-то как раз понятно. ;)
С ними тоже понятно) Решение поддерживает только веб-камеры, подключенные к компьютеру. Flash плеер просит вас разрешить доступ к этим камерам и микрофону и начинает трансляцию.
Оно у меня ничего про камеры не спросило. Был только вопрос про какую-то p2p-трансляцию или что-то подобное. Так что сервис совершенно непонятный.
Кстати как-то по работе была нужда — пользовался, все круто и мое единственное пожелание — организация приватных трансляций (по паролю).
Проигрыватель видео недоступен.

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


Что не так с моим браузером?
Попробуйте разрешить в настройках браузера выполнение подключаемого модуля Adobe Flash Player и отключите дополнения, которые могут его блокировать (например, FlashBlock или AdBlockPlus), если вы открываете видео на компьютере.
Я что-то не понимаю, ваш плеер все-таки на флеше или нет?
Мы загружаем разные варианты плеера в зависимости от платформы. Для desktop версий браузера под Windows мы используем Flash. Для iOS и некоторых других систем — HTML5. Для Android трансляции в браузере, к сожалению пока полноценно не работают. Там есть очень серьезные ошибки в самой подсистеме Android для живого видео. Сейчас пытаемся их обойти. По результатам напишем статью на эту тему.
Почему не используете HTML5 на десктопе?
Потомучто Flash для просмотра живых трансляций обеспечивает лучшие показатели. Если вы глубоко разбираетесь в стандарте HTML5, то вы должны понимать, что для видео там используется так называемый HLS подход. И он оперирует не видеопотоком как Flash, а сегментами или, фактически, файлами.

Если вы нажали Play во Flash плеере, то нам просто достаточно отправить в него специальным образом упакованный видеопоток и он моментально начнет показывать. То есть низкая задержка отклика и низкая рассинхронизация видео с реальностью.

В случае с HLS все иначе. Вы должны отправить в HTML5 плеер несколько уже сформированных сегментов (как правило, их три), каждый из которых занимает определенное время. При этом в зависимости от реализации в браузере плеер может начать проигрывать видео только при получении всех трех сегментов. Когда вы смотрите через Интернет фильмы, то это нормально. Сегменты уже лежат на диске. Время отклика моментальное. Но для живого видео это не так. Можно обеспечить низкое время отклика, все время храня последние 5-10 секунд видео, готовые к отправке. Но это все равно не избавляет от задержки (рассинхронизации с реальностью).

Совершенно логичный вопрос. А почему нельзя отправлять файлы на лету? Как Flash поток? Просто в процессе отправки резать их на сегменты. Отправлять можно. Но воспроизведения все равно не будет, пока весь файл не будет отправлен. Так как в структуре сегмента используется механизм, заложенный в MP4 контейнер — данные о структуре файла/сегмента с информацией о ключевых кадрах, необходимые плееру располагаются в самом конце.
Спасибо за развернутый ответ. Я примерно так и догадывался.
А WebRTC не пробовали?
Мы только начали смотреть в этом направлении. Тема очень интересная. Не смотря на то, что WebRTC был создан не для этого, вполне возможно, что его получится использовать. Но пока задача находится на исследовательской стадии. Перед нами стоит цель сделать как минимум не хуже, чем во Flash, а желательно еще и лучше.
WebRTC очень солидное решение.
Попробовал поставить линукс-сервер ivideon для подключения айпикамеры — сам сервер не запускается. Только веб-интерфейс работает.
Скажите, пожалуйста, какую версию Linux вы используете? Сейчас официально мы поддерживаем Ubuntu, начиная с 10.04 или 11.04. Надо уточнить в отделе QA.
Ставили ли вы из репозитория согласно инструкции?
Понял. Он так и называется — старый. Предлагаю не слишком засорять комментариями топик. Напишите, пожалуйста, на support@ivideon.ru о проблеме, с которой вы столкнулись, сообщите побольше информации- о вашей системе, вывод в логах и т.д. Уверен, вам очень быстро помогут специалисты, которые намного лучше меня ориентируются в данной версии.
Я на форуме тему создал. Или лучше всё же на почту написать?
На форуме тоже хорошо. Просто добавьте туда побольше информации для тех. поддержки.
У нас ваша камера тоже стоит, работает хорошо и удобно. Правда, сейчас ночь и все закрыто.
image
Да, я читал вашу статью об этом! Кто не читал, крайне рекомендую. Очень интересная история!
Интересно, спасибо. Я так понимаю, вы для доставки до конечного потребителя используете RTMP? Или HLS где-то используете? Как раздачу делаете — через CDN или со своих серверов?
Юрий, мы используем сеть своих серверов в разных географически распределенных датацентрах, организованных в собственную CDN.
Ответы на остальные вопросы более подробно обсуждаются вот в этой ветке, хотя, на мой взгляд, это тема для отдельной статьи и даже не одной. Вы в этом хорошо разбираетесь и понимаете проблематику вопроса.
ivideon очень в тему ваша статья :) Один из заказчиков хочет организовать доступ к своим лекциям на платной основе, но не знает как. Можно ли сделать так, чтобы доступ к камере был закрыт временным токеном или еще как-то ограничен? Например, после оплаты «студент» получает временную ссылку на мою страницу (я сам управляю доступом к этой странице), которая содержит плеер с трансляцией. При подключении к вашему сервису плеер должен передать на сервер какое-то секретное слово, которое я настрою либо сам, либо вы мне его скажете, иначе трансляция не состоится. Может, просто реализовать возможность доступа к камере по пользовательской/временной ссылке? На время лекции я назначаю свой адрес, после лекции его отключаю. На следующей лекции будет уже другой адрес.

На самом деле, было бы очень круто, если бы вы на себя взяли всю головную боль по организации платных трансляций — собирали бы деньги со зрителей за билеты, контролировали бы доступ к трансляции, платили бы налоги и перечисляли деньги «лектору», оставляя себе определенный процент от проданных билетов. Или я изобретаю велосипед и такие сервисы уже есть?
Очень много раз нас просили о такой штуке. Хотим сделать, но руки всё не доходят. Все-таки не совсем наш основной бизнес. А что мешает вам реализовать подобное самостоятельно?
Просто закрывайте страницу, где встроено видео с Ivideon. Открывайте её после оплаты. За небольшие деньги можно убрать возможность поделиться таким видео.
Вот! Отлично, если им нельзя будет поделиться, включая «кул хацкеров», которые знают что такое DOM и F12, то этим можно и заняться… А что? Чем не бизнес план… :)
Тоже нужно, но с возможностью потом продавать еще и записи!
Прочитав про Ваш сервис так и подумал — закрывать страницу с трансляцией от неоплативших.
Но вот с сохранением записи вопрос не решается через вас :)
Все верно. Мы пока не даём в открытом доступе возможности записи в архив публичных камер и ретрансляции всем желающим.
Но для ваших задач публичные камеры не нужны. На тарифе «Бизнес» у нас есть возможность передавать права другим пользователям. Для них видео будет приватным и видеть они его будут в своём аккаунте.
Также там есть возможность купить расширенную передачу прав, например, на 5000 пользователей.

У нас есть API, которое пока мы не даём совсем в открытый доступ (это большая задача сама по себе), но предоставляем по запросу для интересных проектов. Интересные проекты делятся на два типа. Просто интересные. В которых мы видим большой потенциал, возможность поучаствовать в чём-то действительно прекрасном. А если это поможет нам сильно увеличить пользовательскую базу, то вообще отлично.
Другой тип проектов интересен с точки зрения денег.
В общем, с помощью API можно самостоятельно на своем ресурсе регистрировать пользователей, передавать им права на камеры и кастомизировать интерфейс пользователя, встраивая плеер и элементы управления на свой собственный сайт.
Очень странная экономическая политика. Если для теста дозволено использовать две камеры, то две!!! Но смена usb-порта влечет за собой увеличение +1… Не забавно ли? Если сервер запущен на две камеры, то используются ДВЕ! А не больше… Объяснения разработчиков просты до смешного:
«Попробуйте осуществить перепривязку Ivideon Server под другим именем. Это можно сделать щелкнув по кнопке „Настройка“ (кнопка с гаечным ключом)-> „Прикрепить сервер к другому аккаунту“->»Имя сервера"." Получается: перещёлкнул пару раз вэбку для удобства в другой usb, готовься регить новый аккаунт?
К сожалению, это обусловлено технической проблемой понимания реального количества веб-камер, подключенных к вашему компьютеру. В силу того, что уникальность идентификатора связки USB-вебкамера отданы часто на откуп производителям на уровне их драйверов, часто возникает ситуация, когда у одной и той же камеры возникают разные идентификаторы. Поэтому при переключении камеры из одного порта в другой возникает «новая камера». В новой версии Ivideon Server, которая сейчас доступна для загрузки на нашем сайте это поведение хоть и не исправлено полностью, но всё-же улучшено. Введены дополнительные эмпирические метрики, которые позволят избежать данной ситуации.
Так ведь, решение лежит на поверхности! Зачем считать usb-порты и камеры? Можно же просто в зависимости от тарифа не пускать одновременно больше определённого количества камер!
Такое решение уже применялось. И часто возникала ситуация, когда среди первых «автоматически выбранных» камер, которые система пускает — оказывались те, которые пользователю не нужны. В результате, он не могу получить доступ к тем, на которые рассчитывал. Это решение гораздо хуже, так как для пользователя непредсказуемое. Более того, среди наших постоянных пользователей намного больше тех, кто использует Ivideon как полноценную систему видеонаблюдения каждый день 24/7 без всяких переключений. Поэтому мы в большей степени ориентировались на них.
Кстати, сейчас поведение Ivideon Server при переключении USB — исправлено с помощью нескольких эвристик.
А можно транслировать 1920х1080 с качеством 8-10 мбит? Просто я делаю (делал точно) стримы разработки игр и там нужно pixel perfect для кода и графики в трансляции.
Если через Ivideon Server, то там нет такой возможности. Идет перекодирование до 1280x720.
Интересно, спасибо. Правда, у меня на Dell Venue 7 стримы с айвидеона не показывают в Chrome. Возможно, у меня настройки вывернуты странным образом.

Кстати, про путешествия — я у себя на веб-камерах Щёлкино сделал и «путешествия сквозь время». С 2011 пишутся «тайм-лапсы» с двух камер, а с декабря 2014 есть и полные записи с 4-х камер. В качестве видео-хостинга — youtube по api.

Но я лайв реализовал на HLS. Практика показала, что он более кросс-платформенный. Да и лайв с отставанием на 5-30 секунд — это всё ещё лайв для моей задачи.
Ой бы увидеть как Вы все это вместе собрали, тем более архив, интересно же.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий