Стриминг и воспроизведение видео поверх голых сокетов и кодеков

День 2 /  / Зал 1  /  RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Многие разработчики воспринимают видеоплеер как данность (AVPlayer или ExoPlayer/MediaPlayer). Это хорошие решения, однако можно добиться лучших результатов, используя голые сокет и кодек.

В этом докладе мы посмотрим, как уменьшить задержку старта видео, задержку между стримером и зрителем и утилизацию CPU при стриминге и воспроизведении. Сначала улучшим AVPlayer, а потом заменим его на свой DASH-плеер. Расскажем, как правильно готовить ExoPlayer, и сделаем свой RTMP-плеер на Android. Рассмотрим протоколы стриминга HLS/DASH/RTMP/webRTC/rawUDP.

Все будет рассказано на примере мобильного клиента Одноклассников и приложения OK Live — первого Android-приложения для мобильного стриминга в качестве 1080p.