У нас есть возможность сделать любую камеру, подключенную к Ivideon публичной и встроить её на свой сайт или в блог. Об этом мы рассказывали в одной из наших статей «Самый простой способ организовать видеотрансляцию на сайте».
Соответственно встроенное видео воспроизводится на разных платформах по разному. В случае iOS как раз используется HLS. А здесь объясняется почему, все-таки, это не самый лучший вариант.
Кстати, встраивание поддерживается даже здесь на Хабре. Например, вот так:
Это не совсем так. К данному посту есть довольно длинное предисловие, которое рассказывает почему же я публикую здесь интервью, которое я дал для ЦП на прошлой неделе.
К сожалению для нас как для компании, находящейся в России, Украина не входит в таможенный союз и с точки зрения законодательства как с нашей стороны, так и с вашей организация доставки в Украину для нас крайне сложное и дорогое мероприятие. Особенно учитывая тот факт, что мы прежде всего разрабатываем и продаем сервис, а не оборудование. С другой стороны в Украине у нас есть партнеры, которые могут продать вам камеру и организовать доставку внутри страны.
Более того, прошивки многих камер у нас доступны на сайте для загрузки. Вы можете купить камеру в любом месте и самостоятельно обновить прошивку.
Постараюсь ответить на этот вопрос более подробно немного позже. В то время когда я принимал непосредственное участие в разработке данной подсистемы мы использовали libavcodec из FFmpeg.
Мы не получали от Сколково грантов или каких-либо денег. Разве что кроме того случая, когда недавно из 2500 проектов мы вошли в финал Startup Village и заняли третье место. В результате мы выиграли 150 000 рублей и поездку в Бразилию на ЧМ по футболу для одного человека.
Кстати, в этот день выступления слушал Дмитрий Медведев.
Если говорить кратко, то Сколково для нас полезно. Мы пришли туда уже сформировавшейся компанией, но они всё равно смогли нам во многом помочь. Я думаю, что это тема для отдельной статьи, которую мы постараемся скоро опубликовать.
У нас не было цели просто открыть офис в США. Уже сейчас большая часть наших технологических партнеров, включая компанию Ambarella, а также разработчиков домашних камер и различных Internet of Things продуктов находится в Silicon Valley. Мы осознали, что эффективность работы нашей команды будет намного выше, если ответственные за проекты люди будут находиться в США.
Прежде всего такими людьми являются хорошо разбирающиеся в нашей платформе менеджеры/руководители проекта, а также люди, которые способны правильно представить нашим потенциальным клиентам основные преимущества при использовании Ivideon как технологического партнера.
На первом этапе у нас нет в планах искать разработчиков в США. С другой стороны в нашей команде есть люди, которые хотели бы там побывать. Скорей всего мы будем практиковать переезд наших людей в Долину на какое-то время для совмещения работы и отдыха благодаря смене обстановки. Я считаю, что разработчикам это будет очень полезно. Они увидят как делаются продукты там и с какой молниеносной скоростью принимаются решения и выпускаются новые функции у успешных команд.
Да. Это очень частый запрос для корпоративных пользователей. Сейчас работаем над возможностью конфигурирования серверов без иксов через облако. Когда вы ставите демон без GUI и управляете им удалённо в вашем личном кабинете.
Пока это не реализовано есть не совсем очевидный вариант. Пакет установки Ivideon Server Linux содержит в себе два приложения — демон и GUI для конфигурации. Некоторые наши клиенты ставят демон и настраивают его вручную, меняя конфигурационный файл.
Смотрим исключительно на то, насколько человек подходит для той или иной задачи, независимо от того, откуда он. Сейчас для начала в США едет несколько человек из нашего российского офиса.
Конечно, Ivideon разрабатывался для того, чтобы пользователи не задумывались о серверах, а сразу получали решение. Поэтому «из коробки» такое решение не предусмотрено. Тем не менее, есть возможность поступить немного иначе. Установить Ivideon Server для Linux в датацентре и подключить к нему любую удаленную камеру по стандартному RTSP протоколу. Некоторые наши клиенты так делают.
Сейчас мы расширяем нашу команду разработки в том числе и для того, чтобы сделать нашу платформу доступной для разработчиков. Это позволит не только встраивать компоненты Ivideon в собственные мобильные или Web-приложения, но и решать описанные вами задачи. Когда вы сможете «попросить» у облака по заданным событиям отправлять видеопотоки туда, где они вам нужны.
Все верно. Мы пока не даём в открытом доступе возможности записи в архив публичных камер и ретрансляции всем желающим.
Но для ваших задач публичные камеры не нужны. На тарифе «Бизнес» у нас есть возможность передавать права другим пользователям. Для них видео будет приватным и видеть они его будут в своём аккаунте.
Также там есть возможность купить расширенную передачу прав, например, на 5000 пользователей.
У нас есть API, которое пока мы не даём совсем в открытый доступ (это большая задача сама по себе), но предоставляем по запросу для интересных проектов. Интересные проекты делятся на два типа. Просто интересные. В которых мы видим большой потенциал, возможность поучаствовать в чём-то действительно прекрасном. А если это поможет нам сильно увеличить пользовательскую базу, то вообще отлично.
Другой тип проектов интересен с точки зрения денег.
В общем, с помощью API можно самостоятельно на своем ресурсе регистрировать пользователей, передавать им права на камеры и кастомизировать интерфейс пользователя, встраивая плеер и элементы управления на свой собственный сайт.
Очень много раз нас просили о такой штуке. Хотим сделать, но руки всё не доходят. Все-таки не совсем наш основной бизнес. А что мешает вам реализовать подобное самостоятельно?
Просто закрывайте страницу, где встроено видео с Ivideon. Открывайте её после оплаты. За небольшие деньги можно убрать возможность поделиться таким видео.
Мы только начали смотреть в этом направлении. Тема очень интересная. Не смотря на то, что WebRTC был создан не для этого, вполне возможно, что его получится использовать. Но пока задача находится на исследовательской стадии. Перед нами стоит цель сделать как минимум не хуже, чем во Flash, а желательно еще и лучше.
Юрий, мы используем сеть своих серверов в разных географически распределенных датацентрах, организованных в собственную CDN.
Ответы на остальные вопросы более подробно обсуждаются вот в этой ветке, хотя, на мой взгляд, это тема для отдельной статьи и даже не одной. Вы в этом хорошо разбираетесь и понимаете проблематику вопроса.
Потомучто Flash для просмотра живых трансляций обеспечивает лучшие показатели. Если вы глубоко разбираетесь в стандарте HTML5, то вы должны понимать, что для видео там используется так называемый HLS подход. И он оперирует не видеопотоком как Flash, а сегментами или, фактически, файлами.
Если вы нажали Play во Flash плеере, то нам просто достаточно отправить в него специальным образом упакованный видеопоток и он моментально начнет показывать. То есть низкая задержка отклика и низкая рассинхронизация видео с реальностью.
В случае с HLS все иначе. Вы должны отправить в HTML5 плеер несколько уже сформированных сегментов (как правило, их три), каждый из которых занимает определенное время. При этом в зависимости от реализации в браузере плеер может начать проигрывать видео только при получении всех трех сегментов. Когда вы смотрите через Интернет фильмы, то это нормально. Сегменты уже лежат на диске. Время отклика моментальное. Но для живого видео это не так. Можно обеспечить низкое время отклика, все время храня последние 5-10 секунд видео, готовые к отправке. Но это все равно не избавляет от задержки (рассинхронизации с реальностью).
Совершенно логичный вопрос. А почему нельзя отправлять файлы на лету? Как Flash поток? Просто в процессе отправки резать их на сегменты. Отправлять можно. Но воспроизведения все равно не будет, пока весь файл не будет отправлен. Так как в структуре сегмента используется механизм, заложенный в MP4 контейнер — данные о структуре файла/сегмента с информацией о ключевых кадрах, необходимые плееру располагаются в самом конце.
В нашем приложении, которое не используется HLS, это точно не более 1-2 секунд. А вот что касается встроенного видео, то так сразу не скажу. Там действительно есть вопрос с сегментами. Но как-то мы его решили. Стример мы писали и оптимизировали самостоятельно. Активно общались по этому поводу на форумах, искали варианты сделать загрузку быстрее. Решения «в лоб» просто нет, к сожалению. Не могу сказать, какой сейчас точно результат. Сделаю это либо завтра, либо просто подключите вашу веб-камеру к Ivideon и попробуйте замерить.
Соответственно встроенное видео воспроизводится на разных платформах по разному. В случае iOS как раз используется HLS. А здесь объясняется почему, все-таки, это не самый лучший вариант.
Кстати, встраивание поддерживается даже здесь на Хабре. Например, вот так:
Более того, прошивки многих камер у нас доступны на сайте для загрузки. Вы можете купить камеру в любом месте и самостоятельно обновить прошивку.
Кстати, в этот день выступления слушал Дмитрий Медведев.
Если говорить кратко, то Сколково для нас полезно. Мы пришли туда уже сформировавшейся компанией, но они всё равно смогли нам во многом помочь. Я думаю, что это тема для отдельной статьи, которую мы постараемся скоро опубликовать.
Прежде всего такими людьми являются хорошо разбирающиеся в нашей платформе менеджеры/руководители проекта, а также люди, которые способны правильно представить нашим потенциальным клиентам основные преимущества при использовании Ivideon как технологического партнера.
На первом этапе у нас нет в планах искать разработчиков в США. С другой стороны в нашей команде есть люди, которые хотели бы там побывать. Скорей всего мы будем практиковать переезд наших людей в Долину на какое-то время для совмещения работы и отдыха благодаря смене обстановки. Я считаю, что разработчикам это будет очень полезно. Они увидят как делаются продукты там и с какой молниеносной скоростью принимаются решения и выпускаются новые функции у успешных команд.
Пока это не реализовано есть не совсем очевидный вариант. Пакет установки Ivideon Server Linux содержит в себе два приложения — демон и GUI для конфигурации. Некоторые наши клиенты ставят демон и настраивают его вручную, меняя конфигурационный файл.
Сейчас мы расширяем нашу команду разработки в том числе и для того, чтобы сделать нашу платформу доступной для разработчиков. Это позволит не только встраивать компоненты Ivideon в собственные мобильные или Web-приложения, но и решать описанные вами задачи. Когда вы сможете «попросить» у облака по заданным событиям отправлять видеопотоки туда, где они вам нужны.
Но для ваших задач публичные камеры не нужны. На тарифе «Бизнес» у нас есть возможность передавать права другим пользователям. Для них видео будет приватным и видеть они его будут в своём аккаунте.
Также там есть возможность купить расширенную передачу прав, например, на 5000 пользователей.
У нас есть API, которое пока мы не даём совсем в открытый доступ (это большая задача сама по себе), но предоставляем по запросу для интересных проектов. Интересные проекты делятся на два типа. Просто интересные. В которых мы видим большой потенциал, возможность поучаствовать в чём-то действительно прекрасном. А если это поможет нам сильно увеличить пользовательскую базу, то вообще отлично.
Другой тип проектов интересен с точки зрения денег.
В общем, с помощью API можно самостоятельно на своем ресурсе регистрировать пользователей, передавать им права на камеры и кастомизировать интерфейс пользователя, встраивая плеер и элементы управления на свой собственный сайт.
Просто закрывайте страницу, где встроено видео с Ivideon. Открывайте её после оплаты. За небольшие деньги можно убрать возможность поделиться таким видео.
Ответы на остальные вопросы более подробно обсуждаются вот в этой ветке, хотя, на мой взгляд, это тема для отдельной статьи и даже не одной. Вы в этом хорошо разбираетесь и понимаете проблематику вопроса.
Если вы нажали Play во Flash плеере, то нам просто достаточно отправить в него специальным образом упакованный видеопоток и он моментально начнет показывать. То есть низкая задержка отклика и низкая рассинхронизация видео с реальностью.
В случае с HLS все иначе. Вы должны отправить в HTML5 плеер несколько уже сформированных сегментов (как правило, их три), каждый из которых занимает определенное время. При этом в зависимости от реализации в браузере плеер может начать проигрывать видео только при получении всех трех сегментов. Когда вы смотрите через Интернет фильмы, то это нормально. Сегменты уже лежат на диске. Время отклика моментальное. Но для живого видео это не так. Можно обеспечить низкое время отклика, все время храня последние 5-10 секунд видео, готовые к отправке. Но это все равно не избавляет от задержки (рассинхронизации с реальностью).
Совершенно логичный вопрос. А почему нельзя отправлять файлы на лету? Как Flash поток? Просто в процессе отправки резать их на сегменты. Отправлять можно. Но воспроизведения все равно не будет, пока весь файл не будет отправлен. Так как в структуре сегмента используется механизм, заложенный в MP4 контейнер — данные о структуре файла/сегмента с информацией о ключевых кадрах, необходимые плееру располагаются в самом конце.