Видео — это вам не фото: о чём нужно знать разработчикам видеостриминговых сервисовВ видеостриминге есть два типа инженеров: разработчики,Видеоэтовамнефотоочёмнужнознатьразработчикамвидеостриминговыхсервисовзенит крылья советов прямая трансляция смотреть онлайн бесплатно которые создают сервисы потокового вещания, и инженеры, которые делают контент. Два этих множества практически не пересекаются — в результате не все айтишники понимают, насколько легко может пострадать качество видео во время его обработки.Привет, меня зовут Антон Кортунов, я техлид Yandex Infrastructure. В 2017 году мы запустили новый для Яндекса проект — платформу потокового видео Яндекс Эфир. Сам проект закрылся, но на основе платформы работают Кинопоиск, видеокарточки товаров в Яндекс Маркете, Реклама и множество других сервисов.Как разработчик тогда я столкнулся с чудным дивным миростич смотреть онлайн 2025м телевидения и кино, и понял, что видео — не просто последовательность кадров на фонпоздравления с днем рождения прозее звуковой дорожки. Под катом расскажу о тонкостях, о которых я узнал от видеоинженеров за последние 5 лет.В 2017 году у Яндекса уже была своя система поиска видео и собственная платформа видеохостинга — но они не позволяли вещать потоковое видео. После запуска проекта Яндекс Эфир уже в 2018 году Яндекс впервые транслировал в прямом эфире крупное мероприятие — Зимние Олимпийские игры.Летом того же года на платформе проекта прошла трансляция не менее крупного события — Чемпионата мира по футболу, который проходил в России. По мере того как российская команда проходила в следующие раунды, у нас становилось всё больше зрителей. Поэтому иногда мы даже болели, чтобы наши проиграли, — расширять инфраструктуру с такой скоростью было просто физически невозможно. Мы улучшали ситуацию алгоритмически: пытались использовать ресурсы эффективнее. Но российская команда вышла в четвертьфинал, а Эфир прошёл проверку: справился с потоками данных более 1 Тб/c и аудиторией более 1 миллиона зрителей одновременно.Новая эра проекта началась в 2019 году с игр НХЛ. Мы были второй компанией в мире, которая транслировала все игры, в то время как одновременно в эфире шло до 13 соревнований. Тогда мы перешли от стримингового сервиса к миру профессионального телевещания:работали с компаниями, передающими телевизионный сигнал между континентами;создавали конвейер для передачи видео из США в Россию, а затем из наших дата‑центров — в партнёрские профессиональные телестудии и обратно;сотрудничали с телеканалами, которые сделали студию и будки для переводов комментаторам российских команд;доставляли сигнал из студии обратно в наши дата‑центры, а далее — в интернет.Этот проект изменил правила игры. Как IT‑специалист и разработчик, я понял, что видеостриминг — совершенно иной мир, где очень многое делают совсем не так, как принято в IT. Новый опыт показал, что команде Yandex Infrastructure нужно учиться:правильно создавать видео;правильно транскодировать видео;измерять качество видео и следить за этим.Все эти наработки мы реализовали в нашей платформе, и теперь все сервисы Яндекса, которые воспроизводят видео на основе Эфира, могут переиспользовать эти решения. Ниже вкратце расскажу о способах оценить качество видео и пяти факторах, на которые разработчики редко обращают внимание.В мире видеостриминга есть множество метрик для оценки качества видео: PSNR, SSIM, VQM, MSAD и множество других. Некоторые из них оценивают качество сжатия изображений, например, PSNR — пиковое отношение сигнала к шуму. Но видео — не просто последовательность изображений, хоть его и можно механически разделить на отдельные кадры. Если вы попробуете склеить из фотографий видео, результат вас вряд ли обрадует: чётко воссоздать движения не получится, они будут рваными. Поэтому важно учитывать изменение изображения во времени — при оценке качества для этого применяются более сложные методики. Один из популярных способов выполнить такую комплексную оценку — разработанная Netflix методика VMAF. Она оценивает исходное видео по трём критериям: точность воспроизведения визуальной информации (Visual information fidelity, VIF);потеря детализации (Detail Loss Metriс, DLM);учёт составляющей изменений во времени (Mean Co‑Located Pixel Difference), который измеряет временную разницу между кадрами. Технически, видеопоток состоит из отдельных кадров, которые меняются с определённой частотой (Frames per second, FPS). Допустим, стандарт телевещания PAL подразумевает FPS в 25 кадров в секунду (на самом деле, всё чуть сложнее, но об этом позже). VMAF помогает дать оценку как отдельным кадрам, так и их соотношению в потоке. Итоговая оценка приводится на один кадр, в баллах от 1 до 100, где 100 — идеальное совпадение с оригинальным видео.Но подобные методики не дают точного понимания, что мы можем улучшить на этапе производства видео. И первое, что не учитывают большинство подобных метрик — это (внезапно!) качество аудио. Как бы абсурдно это ни звучало, но звук бывает важнее видео. Особенно в том, что касается двух проблем: потерь и задержек кадров.Для сравнения, допустим, у нас есть видеопоток с определённой частотой кадров в секунду: при разных фреймрейтах в 25, 30 или 60 кадров/сек один видеокадр может длиться от 40 мс до 16,7 мс соответственно. Вместе с этим у нас есть и аудиопоток со своей частотой звуковых кадров: для разных кодеков аудиокадр длится разное время — как правило, около 20–24 миллисекунд. Если потерять всего один видеокадр, вы вряд ли заметите разницу: что‑то похожее постоянно происходит с вами при моргании. Но если потерять звуковой кадр, вы обязательно это заметите — будет слышен характерный щелчок. В целом, не очень сложно следить за тем, нет ли в контенте таких потерянных аудиокадров. А если вдруг они появились, нужно идти и искать проблему. Есть ещё более серьёзная проблема, связанная с распространением звука. Скорость звука довольно низкая — всего 340 метров в секунду. Это значит, что на расстоянии 30 метров задержка звука составляет примерно 100 миллисекунд. Но мы этого не замечаем, поскольку наш мозг всегда делает поправку на расстояние, если мы видим источник звука. Кроме того, наш мозг неплохо справляется с чтением по губам, даже если на самом деле вы не умеете этого делать. Например, в шумной комнате часто бывает сложно расслышать, что говорит собеседник. Но стоит только начать смотреть ему в лицо, как мозг начинает видеть губы, а речь становится значительно понятней и отчётливей (на эту тему есть много исследований). Какие практические выводы можно сделать из этих особенностей восприятия? Если звук отстаёт от видео на 300 миллисекунд (например, при использовании некачественной громкой связи Bluetooth), вы ничего не заметите. Однако если звук идёт на 300 миллисекунд раньше видео, вы, скорее всего, заподозрите неладное. При этом на самом деле вы не заметите, что именно не так с видео. Но оно будет выглядеть для вас очень странным и неправильным. Я подготовил специальный ролик, в котором сначала звук идёт синхронно, затем запаздывает, а затем опережает видео. Для того, чтобы было заметнее — сосредоточьтесь на лице.Так что звук обязательно должен быть синхронизирован с видео. На телевидении действуют очень жёсткие требования: звук может отставать от видео не более чем на четыре кадра, а видео от звука — не более чем на один кадр. Без тренировки заметить однокадровую задержку на глаз довольно сложно. Можно схитрить и использовать специально подготовленное видео, например, с Twitch. В таких роликах по временной шкале перемещается специальная рамка, которая помогает определить миллисекунды задержки. Теперь поговорим о том, что влияет на качество видеокадров. Если вы когда‑нибудь имели дело с зеркальным фотоаппаратом или камерой с похожим принципом действия, то наверняка знаете о таком понятии, как экспозиция — это количество света, которое можно «поймать» в кадр: то, что попадёт на матрицу фотоаппарата через его объектив. Чёткость и шумность изображения сильно зависят от того, как мы управляем количеством пойманного света. Есть четыре способа повлиять на экспозицию:Диафрагма (или апертура) — это часть объектива, с помощью которой можно регулировать его пропускную способность. Диафрагму можно закрывать и открывать. Чем меньше света, тем больше глубина резкости изображаемого пространства (или ГРИП) кадра, поэтому диафрагму обычно используют для того чтобы контролировать резкость, а не экспозицию. 
Предыдущая статья
https://www.youtube.com/watch?v=GjC6Zc6Gn5Q&ntb=1&msockid=899fb354332611f1bd1283d92f26f33e
Следующая статья