Как передавать видео                          по интернету                              Макс Лапшин                       ...
Резюме                      Сегодня уникальная ситуация:               • один аудиокодек               • один видеокодек  ...
Экскурс в историю ТВ                      •   Аналоговая передача была удобной                      •   Никакой компрессии...
Потом появилось IPTV                      •   Решения не поменялись                      •   Multicast UDP / DVB-S MPEG-TS...
С constant bitrate хорошо                      •   Время и трафик друг в друга конвертируются одной формулой              ...
Вдруг появился интернет                      •   Только «у них» это называется OTT — Over The Top                      •  ...
Пришли HLS/H.264/AAC                      •   Доставка кусков MPEG-TS потока по HTTP                      •   С задержкой ...
Всё в рамках MPEG                      •   Инженеры IPTV рады.                      •   Им лишь бы кровавый энтерпрайз со ...
Что творилось в интернете?                      В отличие от IPTV:               •      Совершенно другой мир             ...
Напрограммировали от души                      •   RTSP                      •   PNA                      •   MMS         ...
Общая родовая травма                      Сервер управляет клиентом и равномерно во времени шлет кадрыMonday, April 2, 12
Общая родовая травма                      Получается два плеера:               • один на клиенте равномерно проигрывает ка...
Тупиковый подход                      •   стриминговые TCP протоколы не масштабируются                      •   слишком до...
Не-HTTP доставка                         не работаетMonday, April 2, 12
Динозавры пытаются выжить                      •   Adobe выпускает HDS. Но убивает флеш.                      •   Microsof...
Другие динозавры сдохли               •      Quicktime Player               •      RealPlayer               •      MMS про...
Альтернативные кодеки                      •   MPEG-2 и MPEG-4 уже перестали тухнуть и дурно пахнуть                      ...
Сухой остаток                      •   HLS/H.264/AAC                      •   небольшой временный атавизм в виде HDS для ф...
Причины измененийMonday, April 2, 12
Равномерность кадров                      •   Клиент равномерно во времени засовывает кадры в железо                      ...
UDP                      •   UDP передает данные с маленькой задержкой и с маленьким jitter                      •   В изо...
TCP                      •   Одно решили, другое поломали                      •   Потерь данных нет, зато есть jitter    ...
TCP (RTMP, RTSP)                      Всё это глючит и тормозит                      и не проходит через файрволыMonday, A...
Не-HTTP доставка контента                            не работаетMonday, April 2, 12
Решение 30-летних проблем                      Пускай клиент сам решает что                      смотретьMonday, April 2, 12
HTTP Streaming                      •   Сервер рассказывает клиенту о доступных вариантах контента                      • ...
HTTP Streaming                      •   Позволил перейти от ненадежных моментальных замеров качества                      ...
HLS уже работает                      •   в компьютерах                      •   в современных мобильных устройствах      ...
Трансляция прямого эфира                        HLS + H.264 + AAC                          временно немножко HDS для флеша...
Раздача файлов                      •   Быстрый старт проигрывания                      •   Дешевая по трафику перемотка  ...
Кровавый энтерпрайз                      •   Раньше была RTSP раздача файлов                      •   Constant bitrate, мн...
Кровавый энтерпрайз                      •   Битрейт растет                      •   Растет доля OTT                      ...
Всё идет к                      HLS + H.264 + AACMonday, April 2, 12
Интернет                      •   Тут люди привыкли деньги считать и думать                      •   Долго жил flv + mod_flv...
Всё идет к                      HLS + H.264 + AACMonday, April 2, 12
Практика                      •   Ютуб перешел на HTTP стриминг для контента                      •   Apple запрещает пока...
Почему же так?               • Кусочно-фрагментированная доставка видеопотока решает все                      указанные пр...
Какие минусы у HLS/H.264/AAC                      •   Родовая травма HLS в виде MPEG-TS                      •   Связаннос...
Резюме                      •   Старые технологии эфирного ТВ в IPTV отмирают                      •   Старые технологии l...
Вопросы?                        Макс Лапшин                      max@erlyvideo.orgMonday, April 2, 12
Upcoming SlideShare
Loading in...5
×

Окончательное решение вопроса трансляции видео в интернете (Макс Лапшин)

1,052

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,052
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
16
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Окончательное решение вопроса трансляции видео в интернете (Макс Лапшин)

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

    Clipping is a handy way to collect important slides you want to go back to later.

×