home.social

#video_streaming — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #video_streaming, aggregated by home.social.

fetched live
  1. Как мы раздали 8 Гбитс видео на одном ядре CPU на GO. Проблема грохочущего стада

    Я до сих пор помню тот день, когда случайно положил собственный тестовый сервер. Схема была банальной: пара IP-камер, простенький бэкенд, всё это выплёвывает видео в веб-морду. На тестах работало идеально. А потом кто-то закинул ссылку на трансляцию в корпоративный чат. По ссылке одновременно кликнула тысяча(ладно, ладно вру конечно, но запросов было много) человек. Сервер завизжал кулерами, оператива кончилась за три секунды, а камера вообще перестала пинговаться. Добро пожаловать в проблему Thundering Herd (эффект леммингов). Если вы хоть раз пробовали масштабировать раздачу live-видео, вы эту боль знаете. Когда толпа зрителей ломится смотреть один и тот же поток, типичный сервер пытается честно открыть новое соединение или запустить отдельный процесс отдачи для каждого. Итог всегда один — OOM (Out of memory) и лежачий процессор. Я не хотел решать это вливанием денег в толстые AWS-инстансы или покупкой нового железа. Была идея маршрутизировать всё максимально дешево, используя Go. Спойлер не будет долгим: в итоге мы выжали 8.8 Гбит/с на одном ядре процессора , причем сборщик мусора (GC) в этот момент вообще отдыхал. Рассказываю, как мы собрали Ruseon Core.

    habr.com/ru/articles/1067504/

    #go #ai #video_streaming

  2. Украсть пиксели и не задохнуться в сетевом канале. Протокол SPICE в современном графическом стеке, часть 3

    Мы продолжаем увлекательное путешествие по миру удалённого доступа . Это третья часть цикла про протокол доставки рабочего стола SPICE и то, как он вынужден работать в современных условиях. Наша конечная цель - создать пилот стримингового агента для виртуальной машины на ОС Windows. В предыдущих двух частях рассматривали архитектуры самого протокола и графической подсистемы Windows, а сегодня мы готовим плацдарм в вопросах захвата экрана в Windows и сжатия видео средствами различных библиотек, фреймворков и API. С кодом и компактными пояснениями. Данная статья является своего рода пособием по написанию Remote Desktop драйвера. Приглашаю под кат всех любознательных - в особенности тех, кто сталкивается с Windows не только как пользователь; с решениями для удалённого доступа; с протоколом SPICE; с системами виртуализации и виртуальными машинами в принципе. К технологиям доставки рабочего стола

    habr.com/ru/articles/1041606/

    #spice #windows #winapi #directx #video_streaming #realtime #screencast #remote_desktop #gpu