Беспроводная передача картинки для стриминга игр с ПК. Итоговый мини-лонг.
Живу в съемной 2комн. квартире, комп стоит в одной комнате, телевизор висит напротив кровати в другой. Обычно играю во всякие динамичные игры на 165гц мониторе, но иногда хочется покатать во что-то лежа на кровати и расслабившись. Жена, которая в последнее время тоже начала приобщаться к играм, вообще не хочет сидеть в кресле у монитора и играет только с геймпадом на телике.
Ранее эта задача решалась пробросом 15-метрового HDMI из комнаты в комнату. Решение, в целом, ультимативное, но есть некоторые нюансы:
- У меня подключено 3 монитора к ПК, для подключения ТВ приходилось отключать один из них, это неудобно + не думаю, что разьёму пойдет на пользу регулярное (раз в несколько дней точно) взаимодействие с ним;
- Провод надо прокладывать между комнатами, которые разделены коридором. Тут два варианта: либо он будет лежать на полу поперёк коридора( как у меня и было ранее), либо нужен провод 30+ метров, чтоб попробовать аккуратно провести его вдоль всех стен и углов;
- Даже при наличии длинного кабеля я бы не смог проложить его грамотно, заведя во все дверные проёмы - квартира съемная, сверлить тут стены весьма проблематично, а еще они кирпичные.
При всех этих нюансах, у кабеля было одно неоспоримое преимущество - минимальная задержка и максимальное качество картинки. Пользовался я этой конструкцией около 1.5 лет, работало все хорошо, но надоело постоянно разматывать кабель, тащить его по полу, чтобы поиграть, а потом убирать все эти сопли обратно.
Было принято решение изучить актуальные на 2025 год способы беспроводной передачи картинки. Я был весьма удивлен, узнав, что эта технология в целом никак не изменилась за последние ~10 лет. Все также есть дорогие и профессиональные передатчики, которые в основном применяются при видеосъемке, и пара софтовых решений.
Со Steam Link я был уже знаком, тестил его на телике и забыл это как страшный сон - ужасный инпутлаг и шакальное качество картинки побудили меня еще на ~полгода смириться с валяющимся по полу HDMI. Но тут один из пдферов рассказал мне про связку Apollo + Artemis
Apollo + Artemis
По сути, это аналоги программ Sunshine (для кодирования и передачи картинки) и Moonlight (для декодирования и приёма на устройстве), с несколькими полезными нововведениями типа поддержки нативного разрешения/герцовки у любого подключаемого монитора. Я решил потестить, как это работает, скачал стример на ПК, приёмник на телефон и запустил Spider-Man 2.
Шикарно! Нативное разрешение экрана телефона (Galaxy Fold 3), 120 герц, замечательная плавная картинка без артефактов и заиканий. Походил с телефоном по квартире, отходя от ПК как можно дальше - все работает супер стабильно и плавно. Обрадовавшись, я пошел устанавливать Artemis на телик (бюджетный TCL BeyondTV2).
Но тут меня и ждало разочарование: там, где телефон спокойно вывозил около-2к разрешение в 120фпс с хорошим битрейтом, телик уже захлебывался в 1080р60гц с битрейтом около 20-30. Был сделан вывод, что начинка андроид-тв телика достаточно слаба для хорошего декодирования сигнала без видимой задержки, и я пошел курить 4пда и изучать рынок ТВ-приставок.
ТВ-приставки
Сперва я подумал, что передо мной стоит достаточно нетривиальная задача - купить тв-бокс на Андроиде, который железками будет банально мощнее того недоразумения, что стоит внутри телика и лагает даже при прокрутке списков.
Почитав форумы и ознакомившись с актуальными топами рынка, осознал что рынок тв-боксов практически мертв, до сих пор за немаленькие (~100$+) деньги выпускаются модели на процах 8-9 летней давности, а актуальными и топовыми считаются модели, выпущенные еще в 18-19 году.
Т.е. рынок тв-приставок за последние 5 лет разжился буквально 0 новых интересных моделей. Люди на 4пда как советовали покупать ряд конкретных приставок в 2019 году, так и сейчас продолжают советовать их же. Когда лез изучать рынок, я рассчитывал, что к 2025 году кто-то изобрел тв-приставку с железом хотя бы среднебюджетного смартфона, которого бы с головой хватило для всех "телевизионных" задач (оказалось, что нет).
Также был изучен сам вопрос стриминга игр с ПК на ТВ-приставки. Выяснилось, что недостаточно просто "нормального железа" внутри бокса, чтобы все заработало как надо. Важную роль играет т.н. "задержка аппаратного декодирования", простыми словами - время, которое требуется приставке на раскодирование цифрового сигнала стрима обратно в изображение. На форуме рекомендовали несколько конкретных моделей (причем все старше 5 лет), которые максимально подходили под эту задачу и обладали наименьшей задержкой: пара китайских приставок с задержкой 20-40мс и безоговорочный лидер Nvidia Shield TV с задержкой менее 3мс.
"Вот это мой выбор", - подумал я и полез на Авито в надежде, что аппарат 2019 года я смогу купить на вторичке за вменяемые деньги.
Но мои мечты разбились об реальность - от 22к на вторичке. Можно сделать вывод о том, насколько "качественно" состарился аппарат, если цена на него не только не упала, а даже подросла относительно старта продаж в 2019 году.
Не вариант, слишком дорого. Листая Авито, я также натыкался на модели 2017 года за уже куда более вменяемые деньги (11-13к), путем изучения нескольких обзоров стало ясно, что модели 2017 и 2019 (да даже и 2015 с натяжкой) не сильно отличаются между собой.
Чип у них практически один, в более новых моделях просто уменьшали техпроцесс и разгоняли частоту, модель 19 года выгодно отличается только улучшенным ИИ-апскейлингом видео и поддержкой различных стандартов изображения и звука вроде Dolby Vision, Atmos и т.д., что мне не сильно надо при моём дешевом телике. Зато, как оказалось, железки этой приставки даже спустя 8 лет способны работать намного быстрее, чем внутрянка моего ТВ, плюс все еще лучший показатель задержки декодера, что наиболее важно для моих целей.
В итоге была приобретена Nvidia Shield TV 2017 на Авито за 12.000 рублей.
Nvidia Shield TV 2017
И вот с этой штукой все заработало на полную. Стриминг работает около-идеально (ниже расскажу подробнее), также получил несколько бонусов:
- улучшилась картинка на ТВ в целом;
- стал в несколько раз быстрее работать сам ТВ при прокрутке плейлистов и взаимодействии с приложениями. В кои-то веки я могу свернуть идущий видос в Smartube в окошко, как на телефоне, и продолжить листать рекомендации или вообще выйти из Smartube и запустить что-то другое - мой телик умирал на этапе "свернуть в окошко"
- сильно улучшился звук. Не знаю, как это работает, и как китайцы умудрились запороть передачу звука со своего телика на его же встроенные динамики, но с Шилда звук намного чище и глубже через те же самые встроенные динамики телевизора
Но что там про стриминг игр?
Настроив Шилд и дополнительно покопавшись в настройках Artemis/Apollo, мне удалось добиться того, на что я даже не рассчитывал - можно полностью исключить необходимость взаимодействия с компом, запуская игры сразу с телевизора.
На хоумскрине телика есть раздел, где отображаются добавленные (вручную, правда) приложения. При выборе приложения происходит подключение к ПК, создается отдельный виртуальный монитор с нужным разрешением, остальные мониторы отключаются (настраивается отдельно, предположил, что так будет меньше нагрузка на карту в процессе игры), запускается игра сразу на ТВ. После выхода из игры просто завершаю сеанс прям на ТВ, можно отправить комп в гибернацию или оставить работать дальше.
Можно запускать не игру, а какой-нибудь лаунчер, заточенный под геймпад, типа Playnite или Steam Big Picture, тогда и добавлять вручную все приложения не нужно. Настроек внутри стрим-софта очень много и они не самые дружелюбные, + русскоязычных гайдов по настройке я почти не встретил, но разобраться при желании можно. Если есть какие-то полезные лайфхаки - буду благодарен.
Про работу самого стриминга - все работает около-идеально, пока протестил 4к с битрейтом 150 - летит без задержек, вечером буду тестить, увеличивая битрейт, чтобы найти золотую середину по качеству картинки и задержке.
Спосиба за внимание.
#своеобразныерешениявыдуманнойпроблемы