Найти в Дзене
Birdy's house

Как стримить онлайн игры при DSL интернете?

Столкнулся я с такой ситуацией. Есть в наличии не очень шустрое dsl соединение, примерно 8 мбит на скачивание и... 800кбит на отдачу(8/0.8 далее по тексту). Сами понимаете, при такой отдаче, когда рекомендуемый битрейт для стрима в минимально комфортных 720p начинается от 3 мбит исходящего трафика - особо не постримишь. Зато для онлайн игр вроде dota 2, world of tanks или даже pubg такого битрейта хватает за глаза и что самое главное, соединение через провод гарантирует стабильный пинг. К слову, это огромный плюс и сейчас я объясню почему.
Первое решение пришедшее мне в голову: а почему бы не заменить устаревший DSL модем на новейший 4G? Если повезло с зоной покрытия то можно рассчитывать на скорости вплоть до 50/20, что неслабо даже для оптоволоконного кабеля. Но есть у этого решения свой камень преткновения и имя ему - пинг. Не буду вдаваться в утомительные подробности, просто поверьте на слово - 4G соединение гораздо менее стабильно. Пинг временами плавает, картинка дергается, а

Столкнулся я с такой ситуацией. Есть в наличии не очень шустрое dsl соединение, примерно 8 мбит на скачивание и... 800кбит на отдачу(8/0.8 далее по тексту). Сами понимаете, при такой отдаче, когда рекомендуемый битрейт для стрима в минимально комфортных 720p начинается от 3 мбит исходящего трафика - особо не постримишь. Зато для онлайн игр вроде dota 2, world of tanks или даже pubg такого битрейта хватает за глаза и что самое главное, соединение через провод гарантирует стабильный пинг. К слову, это огромный плюс и сейчас я объясню почему.
Первое решение пришедшее мне в голову: а почему бы не заменить устаревший DSL модем на новейший 4G? Если повезло с зоной покрытия то можно рассчитывать на скорости вплоть до 50/20, что неслабо даже для оптоволоконного кабеля. Но есть у этого решения свой камень преткновения и имя ему -
пинг. Не буду вдаваться в утомительные подробности, просто поверьте на слово - 4G соединение гораздо менее стабильно. Пинг временами плавает, картинка дергается, а нервные клетки безвозмездно сгорают когда вместо вожделенного фрага вас отправляют в таверну/меню поиска игры. Но для стрима стабильность пинга не так важна т.к ключевой параметр тут - стабильный битрейт, грубо говоря, главное чтобы объем передаваемых данных не падал ниже критической отметки, а небольшие задержки в обработке пакетов, которые случаются при нестабильном пинге компенсируется кэшированием изображения.

При нестабильном или высоком пинге, многие действия в игре вызывают настоящие мучения. Например попадание ненаправленной способностью.
При нестабильном или высоком пинге, многие действия в игре вызывают настоящие мучения. Например попадание ненаправленной способностью.


Отсюда возникла следующая идея: а почему бы не реализовать в одной системе сразу два интернет соединения?
Dsl для клиента игры, а 4g для передачи изображения на стриминговый сервис. Да, на бумаге все круто (кроме оплаты сразу двух интернет тарифов), только вот Windows по умолчанию не понимает какое соединение в какой ситуации ей использовать. Что под горячую руку попало, через то и попробует подцепится к серверу. И если в настройках OBS можно привязать трансляцию к отдельному ip, то в клиентах игр, такой функции нет и в любой момент операционная система может переключиться с одного соединения к другому.
(Естественно, каждую из идей я пытался реализовать сразу на практике. У меня уже была на руках 4g симкарта, а в качестве usb модема я использовал свой смартфон на android, дабы не тратить деньги на потенциального кота в мешке. Ведь я не знал, будет ли все работать как задумано).
Несколько дней я безуспешно пытался найти уже готовую реализацию моей идеи в интернете. Но айтишники на форумах в основном предлагали либо пытаться настроить vpn для каждого соединения через сторонний софт, либо... перейти на линукс где параллельные интернет соединения настраивать на порядок проще. В общем мучился я ровно до тех пор, пока не узнал что в настройках соединения есть такой параметр как метрика интерфейса. Далее в картинках.

Вот у нас есть два интернет соединения. Заходим в свойства
Вот у нас есть два интернет соединения. Заходим в свойства

Выбираем компонент ip версия 4(TCP/IPv4), чуть ниже справа так же тыкаем кнопочку свойства>дополнительно.
Выбираем компонент ip версия 4(TCP/IPv4), чуть ниже справа так же тыкаем кнопочку свойства>дополнительно.
По умолчанию у нас стоит галка "автоматическое назначение метрики" именно из-за нее Windows и меняет подключения динамически. Галку снимаем, а как выставлять нужную цифру читаем ниже.
По умолчанию у нас стоит галка "автоматическое назначение метрики" именно из-за нее Windows и меняет подключения динамически. Галку снимаем, а как выставлять нужную цифру читаем ниже.

Сам параметр предельно прост. Чем меньше цифра, тем выше приоритет у соединения т.к. WIndows будет думать что оно быстрее и пользоваться им по умолчанию. Я выставил цифру 15 для 4G соединения и 14 для DSL, вы же можете выставить любые другие (от 1 до 50), главное чтобы цифра для более приоритетного подключения отличалась в меньшую сторону. Кстати если поставить одинаковые цифры, то соединения будут работать одновременно. Что положительно сказывается на общей скорости, или битрейте, но пинг все равно будет лимитироваться слабым в этом плане 4G соединением.
И напоследок покажу вам где находится нужная настройка для OBS

Проходим в меню "настройки">"расширенные">"привязать к ip". На выбор у вас будет всего два цифровых айпи. Найти подходящий будет легко даже методом тыка. Настраиваем и включаем трансляцию на любой сервис и смотрим на значок-индикатор битрейта, если он сразу покраснел, значит скорее всего вы выбрали IP вашего DSL соединения. Значок зеленый - вы угадали.
Проходим в меню "настройки">"расширенные">"привязать к ip". На выбор у вас будет всего два цифровых айпи. Найти подходящий будет легко даже методом тыка. Настраиваем и включаем трансляцию на любой сервис и смотрим на значок-индикатор битрейта, если он сразу покраснел, значит скорее всего вы выбрали IP вашего DSL соединения. Значок зеленый - вы угадали.

Вот таким нехитрым способом вы можете поделиться с друзьями качественным игровым (и не только) контентом. Возможно есть и более простые способы о которых я не знаю. Так получится настроить только приложение вроде obs или браузер через vpn, все остальные программы будут по умолчанию подключаться к более приоритетному dsl соединению. Опять же, нам пришлось использовать аж два соединения с интернетом, но проблему с низкой исходящей скоростью dsl можно решить только так.
Не вполне изящно, зато работает. Если вам помогла статья - ставьте лайк, если нет - пишите в комментариях в чем именно возникли затруднения, постараюсь вам помочь.