Актуальное состояние вещания видео в интернете

5,906 views

Published on

Published in: Technology
2 Comments
3 Likes
Statistics
Notes
No Downloads
Views
Total views
5,906
On SlideShare
0
From Embeds
0
Number of Embeds
3,139
Actions
Shares
0
Downloads
30
Comments
2
Likes
3
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Актуальное состояние вещания видео в интернете

    1. 1. Как передавать видео по интернету Макс Лапшин max@erlyvideo.org
    2. 2. Резюме Сегодня уникальная ситуация:• один аудиокодек• один видеокодек• один транспортный контейнер (почти один)
    3. 3. Экскурс в историю ТВ• Аналоговая передача была удобной• Никакой компрессии, никаких задержек• Рисуем синхронно с сигналом• Вещатель управляет клиентом
    4. 4. Потом появилось IPTV• Решения не поменялись• Multicast UDP / DVB-S MPEG-TS пакеты• Constant bitrate• Всё почти как в аналоге• И тормозные CMS-ки на Java по 100 тыс Евро
    5. 5. С constant bitrate хорошо• Время и трафик друг в друга конвертируются одной формулой• Перемотка элементарна• Нагрузка на сеть постоянна• Просто качество ужасное и трафик кошмарный
    6. 6. Вдруг появился интернет• Только «у них» это называется OTT — Over The Top• А в нём потери пакетов и jitter• UDP не работает, мультикаста вообще нет• TCP заменители UDP тоже не ахти
    7. 7. Пришли HLS/H.264/AAC• Доставка кусков MPEG-TS потока по HTTP• С задержкой видео. Ну и пусть, люди уже привыкли.• Кодеки тоже подоспели: H.264 экономит деньги.
    8. 8. Всё в рамках MPEG• Инженеры IPTV рады.• Им лишь бы кровавый энтерпрайз со стандартами.• Ведь у многих из них «HTTP пакеты бьются, надо чексуммы проверять».
    9. 9. Что творилось в интернете? В отличие от IPTV:• Совершенно другой мир• Денег мало и их умеют считать• Умеют программировать• Понимают, как это работает
    10. 10. Напрограммировали от души• RTSP• PNA• MMS• RTMP
    11. 11. Общая родовая травмаСервер управляет клиентом и равномерно во времени шлет кадры
    12. 12. Общая родовая травма Получается два плеера:• один на клиенте равномерно проигрывает кадры от сервера• второй на сервере равномерно шлет кадры Их слишком сложно синхронизировать
    13. 13. Тупиковый подход• стриминговые TCP протоколы не масштабируются• слишком дороги в обслуживании• мало чего могут• все плохо работают
    14. 14. Не-HTTP доставка не работает
    15. 15. Динозавры пытаются выжить• Adobe выпускает HDS. Но убивает флеш.• Microsoft выпускает SmoothStreaming. Но убивает Silverlight.
    16. 16. Другие динозавры сдохли• Quicktime Player• RealPlayer• MMS проигрыватели а вместе с ними и серверы, вещающие туда
    17. 17. Альтернативные кодеки• MPEG-2 и MPEG-4 уже перестали тухнуть и дурно пахнуть• VP8 — обман и лицемерство по поводу patent-free
    18. 18. Сухой остаток• HLS/H.264/AAC• небольшой временный атавизм в виде HDS для флеша
    19. 19. Причины изменений
    20. 20. Равномерность кадров• Клиент равномерно во времени засовывает кадры в железо• Энкодер равномерно во времени сжимает кадры в поток• Между ними рвущийся, тормозной, лагающий интернет• И ещё микроволновка возле WiFi точки
    21. 21. UDP• UDP передает данные с маленькой задержкой и с маленьким jitter• В изолированной сети вроде даже работает• Но в интернете нет• И нет мультикаста• Слишком велика плата за потери кадров в H.264
    22. 22. TCP• Одно решили, другое поломали• Потерь данных нет, зато есть jitter• Для компенсации jitter-а придумали буфер клиента• Для компенсации буфера придумали prepush• Оптимизация перемотки в рамках prepush буфера• А ещё мультибитрейт
    23. 23. TCP (RTMP, RTSP)Всё это глючит и тормозити не проходит через файрволы
    24. 24. Не-HTTP доставка контента не работает
    25. 25. Решение 30-летних проблемПускай клиент сам решает чтосмотреть
    26. 26. HTTP Streaming• Сервер рассказывает клиенту о доступных вариантах контента• Клиент скачивает чанки видео как обычные мегабайтные файлы• Если время скачивания чанка больше его длительности, значит интегральной скорости сети не хватает• Если чанков в очереди много, значит сеть хорошая
    27. 27. HTTP Streaming• Позволил перейти от ненадежных моментальных замеров качества к надежным интегральным• Во много раз удешевил «кластеризацию»: обычный HTTP-кеш даёт эффект близкий к мультикасту• Раздача файлов по HTTP. Просто как топор.
    28. 28. HLS уже работает• в компьютерах• в современных мобильных устройствах• в телевизионных приставках (Set-top-box)• в телевизорах• в кровавом энтерпрайзе
    29. 29. Трансляция прямого эфира HLS + H.264 + AAC временно немножко HDS для флеша
    30. 30. Раздача файлов• Быстрый старт проигрывания• Дешевая по трафику перемотка• Мультибитрейт
    31. 31. Кровавый энтерпрайз• Раньше была RTSP раздача файлов• Constant bitrate, много трафика, сложно и дорого (Kasenna)• Всё это глючит и тормозит
    32. 32. Кровавый энтерпрайз• Битрейт растет• Растет доля OTT• Старые технологии становятся слишком дорогими и нерабочими• А деньги даже там терять не любят
    33. 33. Всё идет кHLS + H.264 + AAC
    34. 34. Интернет• Тут люди привыкли деньги считать и думать• Долго жил flv + mod_flv• До 30 мегабайт — годно• Нет мультибитрейта, дорогая по трафику перемотка
    35. 35. Всё идет кHLS + H.264 + AAC
    36. 36. Практика• Ютуб перешел на HTTP стриминг для контента• Apple запрещает показывать видео не по HLS• В 2011 проекты выходили уже с HTTP стримингом• Adobe не развивает RTMP доставку
    37. 37. Почему же так?• Кусочно-фрагментированная доставка видеопотока решает все указанные проблемы• Хранение файла в виде чанков позволяет осуществить раздачу через nginx
    38. 38. Какие минусы у HLS/H.264/AAC• Родовая травма HLS в виде MPEG-TS• Связанность соседних чанков (continuity counters)• Большие накладные расходы (15-25%)• Временное отсутствие спектра инструментов
    39. 39. Резюме• Старые технологии эфирного ТВ в IPTV отмирают• Старые технологии live в интернете отмирают• Старые технологии раздачи файлов отмирают• Всё концентрируется на связке HLS + H.264 + AAC
    40. 40. Вопросы? Макс Лапшинmax@erlyvideo.org

    ×