Можно улучшить Steam Remote Play с помощью Lossless Scaling

Можно улучшить Steam Remote Play с помощью Lossless Scaling

Начнем с сути и коротко

Если вы используете remote play, и чувствуете некоторые фризы и нестабильность картинки - то запуск на клиенте Losseless scaling в режиме кадрогенератора может улучшить впечатление.

Для тех, кто не понимает, про что вообще речь

Бывают ситуации, когда вы выехали в другой город, квартиру, комнату - от вашего основного производительного пк. А хочется поиграть во что-то, что ваш ноутбук/стимдек - ну ни в какую тянуть не будет. Для таких сценариев в steam уже много лет есть восхитительная функция remote play. Суть её заключается в том, что игра запускается на пк, где она установлена, а потом по сети стримится туда, где вы играете. А управление соответственно наоборот с клиентской машины транслируется на хост-пк. Аля Nvidia Gforce Now, только в качестве стриминг компьютера - выступает ваш компьютер (функция включается в настройках, steam должен быть установлен и на передающем и на принимающем устройстве).

Но есть два нюанса. Первый - очевидно необходимо стабильное соединение, и чем стабильнее тем лучше. Второй - даже при идеальном коннекте - качество картинки будет однозначно хуже, чем на источнике - всему виной необходимость сжимать видео в реальном времени.

Но даже при близких, к идеальным, условиях - картинка на принимающей стороне может быть чуть дерганной (из-за неровной задержки сети). И вот тут нам поможет приложуха losseless scaling (можно купить в стим или зелёном магазине, где скидки 100% круглый год если вы живете в рф).

Losseless scaling - это такой аналог dlss апскейлера и кадрогенератора от nvidia, но работающей с любыми (ну почти) приложениями и конечно намного более простой. Кадрогенерацию я бы тут вообще скорее сравнил с memc в телевизорах. Но большего нам и не нужно - запускаем losseless scaling на клиенте, включаем кадрогенерацию (я ставил с коэффициентом х3 который делал из 80 - 90 фпс стрима ~240 сгенерированных), переключаемся на окно стримящейся игры и получаем более плавную картинку.

Большие сетевые фризы конечно таким способом не победить, да и даже средние не то, чтобы пропадут совсем - тем не менее если до этого играть было приемлемо, то со включенным скейлером - уже можно сказать комфортно (хоть и не идеально).

У меня было предположение, что лучше получать с источника меньше кадров со стабильным интервалом и скейлить до большого числа (старое доброе 30 стабильных лучше 60 плавающих) - получая идеальный фреймтайм, но по наблюдениям - 90 кадров с источника лучше, чем 60 - в плане ощущемой плавности игры.

Тестовые условия

Собственно извращялся я так т.к. новый Indiana jones неплох, и приемлемо работает на моем домашнем пеке с 3080, но вот на ноутбуке с 3060 получаем 6 кадров, только не смешные.

Как итог - источник находится в поволжье, клиент в московской области. Разрешение 2560х1440 при 90гц с достроенными до 270 на клиенте (монитор выводит 100 в режиме freeSync). Сетевая задержка чуть плавающая в районе 30мс. Соединения в обе стороны проводные (хотя с 5ггц wifi на стороне ноутбука хуже как будто не становится, но на всякий случай). Игра играется отлично, да иногда ощущение микрофризов, но не раздражает. Учитывая что новый doom: the dark ages, как и индиана не будет работать без включенного rtx, да и новый alan wake еще не пройден - чувствую мне этим методом придётся пользоваться и дальше.

Послесловие

Сейчас, когда нейросетевые ускорители встраивают даже в тапочки, добрая половина картинки в новых поколениях видеокарт уже достраиваются нейросетями и генерирующими алгоритмами, интернет становится всё быстрее и стабильнее, а портативки захватывают рынок - было бы очень здорово, если бы nvidia/amd или габен встроили подобные технологии напрямую в систему стриминга. Тогда полу-портативный гейминг мог-бы задрать нос еще выше. Представляю себе светлое будущее - где удалённый пк (возможно свой или арендованный) - генерирует картинку в fullHD при 75 кадрах, транслирует её в таком виде вместе с векторами движения, а клиентский стимдек с помощью последней dlss - достраивает её до 4к, 150fps, заодно еще и предсказывая следующий кадр для ситуаций когда сетевая задержка чуть выше. А игрок имеет идеальный гладкий геймплей.

P.S. Конечно все эти штуки не подходят для PVP игр требующих мгновенной реакции от игрока.

4
5 комментариев