Skip to content

Releases

Rulik 0.3.3

Choose a tag to compare

@github-actions github-actions released this 07 Nov 16:49

Качество под сеть и игра через интернет / Quality that follows the network, and play over the internet.

Стрим

  • Качество подстраивается в обе стороны: при потерях снижается битрейт, а на минимальном битрейте и разрешение. Когда сеть ожила, всё само возвращается к выбранному в настройках
  • Смена битрейта и разрешения проходит без паузы: картинка не пропадает, раньше она гасла примерно на полсекунды
  • Битрейт, на котором сеть только что споткнулась, минуту не трогается, чтобы качество не скакало

Через интернет (Tailscale или ZeroTier)

  • Сервер сам находит свои адреса в Tailscale и ZeroTier и сообщает их телефону
  • Вне дома телефон находит ПК через эти адреса и подключается без ввода адреса и PIN
  • Через интернет стрим стартует с 6 Мбит/с и дальше подстраивается сам
  • Новая статья в вики: «Через интернет»

Stream

  • Quality adjusts both ways: on losses the bitrate drops, and at the lowest bitrate so does the resolution. When the network recovers, everything goes back to your settings by itself
  • Bitrate and resolution change without a pause: the picture no longer blanks for about half a second
  • The bitrate the network just stumbled on is left alone for a minute, so quality doesn't seesaw

Over the internet (Tailscale or ZeroTier)

  • The server finds its own Tailscale and ZeroTier addresses and tells the phone
  • Away from home the phone finds the PC through them and connects without typing an address or PIN
  • Over the internet the stream starts at 6 Mbit/s and adjusts from there
  • New wiki article: "Over the internet"

Update both rulik.apk on the phone and rulik-server.exe on the PC.

Rulik 0.3.2

Choose a tag to compare

@github-actions github-actions released this 07 Nov 16:08

Стрим по Wi-Fi, звук ПК и трей / Wi-Fi streaming, PC sound and the tray.

Стрим по Wi-Fi

  • Потерянный пакет больше не замораживает картинку: на NVIDIA и процессоре кадр заживает сам за полсекунды
  • Проверочные пакеты восстанавливают отдельные потерянные куски кадра
  • Кадр уходит в сеть не одной пачкой, а растянуто: роутер не захлёбывается, кнопки и пинг не ждут видео
  • Если сеть не тянет, приложение само снижает битрейт и говорит об этом
  • Звук идёт в 16 битах: вдвое меньше трафика, слышно так же

Телефон

  • Карточка «Звук ПК» на главной: громкость Windows, «без звука» и кнопки плеера
  • «Проверить сеть» на вкладке «ПК»: сигнал Wi-Fi, задержка, потери и совет, что исправить
  • Если роутер выдал ПК другой адрес, телефон найдёт его по имени и подключится сам
  • При первом запуске, если в сети один ПК, приложение подключается к нему само и спрашивает только PIN

ПК

  • Крестик прячет сервер в трей, сервер продолжает работать
  • Галочка «Запускать вместе с Windows»: сервер стартует сразу в трее
  • Повторный запуск показывает уже открытое окно вместо ошибки «порт занят»

Wi-Fi streaming

  • A lost packet no longer freezes the picture: on NVIDIA and on the CPU encoder the frame heals by itself within half a second
  • Parity packets rebuild single lost pieces of a frame
  • A frame goes out spread over time instead of in one burst: the router doesn't choke, and buttons and ping don't wait behind video
  • If the network can't keep up, the app lowers the bitrate by itself and says so
  • Sound goes in 16 bits: half the traffic, sounds the same

Phone

  • "PC sound" card on Home: Windows volume, mute and player buttons
  • "Check the network" on the PC tab: Wi-Fi signal, delay, lost packets and what to fix
  • If the router gives the PC a new address, the phone finds it by name and connects by itself
  • On first launch, if there is one PC on the network, the app connects to it and only asks for the PIN

PC

  • The close button hides the server to the tray, the server keeps running
  • "Start with Windows" checkbox: the server starts straight in the tray
  • Starting it again shows the running window instead of a "port busy" error

Update both rulik.apk on the phone and rulik-server.exe on the PC.

Rulik 0.3.1

Choose a tag to compare

@github-actions github-actions released this 04 Nov 07:13

Ровный стрим / Smooth streaming.

ПК

  • Экран снимается через Windows Graphics Capture: кадры приходят ровно, без рывков и «догона»
  • Картинку 1080p/720p/480p уменьшает видеокарта, а не процессор
  • Частота стрима не выше частоты монитора, поэтому весь битрейт идёт на настоящие кадры
  • Исправлена ошибка: окно сервера не всегда обновляло список сетей (русские названия сетей ломали разбор)

Телефон

  • Декодер в режиме низкой задержки на любых чипах. На MediaTek выключена постобработка видео MIUI/HyperOS. Декодирование 6–12 мс вместо 20–30
  • Кадры, пришедшие пачкой, не проигрываются ускоренно: сразу показывается самый свежий
  • По кабелю через adb видео идёт отдельным соединением, кнопки и пинг больше его не ждут
  • Во время игры экран переключается на 90/120 Гц, а Wi-Fi держится в режиме низкой задержки
  • В строке статистики виден декодер

PC

  • The screen is captured with Windows Graphics Capture: frames arrive evenly, without stutter or catch-up bursts
  • 1080p/720p/480p scaling runs on the graphics card instead of the processor
  • The stream never runs faster than the monitor, so the whole bitrate goes to real frames
  • Fixed: the server window didn't always refresh the network list (non-English network names broke parsing)

Phone

  • The decoder runs in low-latency mode on any chip. On MediaTek, MIUI/HyperOS video post-processing is turned off. Decoding takes 6–12 ms instead of 20–30
  • Frames that arrive in a bunch no longer play in fast-forward: the newest one is shown right away
  • Over an adb cable, video uses its own connection, so buttons and ping no longer wait behind it
  • While you play, the screen switches to 90/120 Hz and Wi-Fi stays in low-latency mode
  • The stats line shows the decoder

Update both rulik.apk on the phone and rulik-server.exe on the PC.

Rulik 0.3.0

Choose a tag to compare

@github-actions github-actions released this 03 Nov 17:48

Играть на телефоне / Play on the phone.

Телефон

  • Новый режим «Играть на телефоне»: картинка и звук с ПК на экране телефона, раскладка поверх
  • Режим «Рабочий стол»: экран ПК, которым управляете пальцем. Касание кликает, удержание жмёт правую кнопку, двумя пальцами прокрутка
  • Новое меню: «Главная» с выбором режима и раскладки, «Раскладки», «ПК», «Настройки»
  • Настройки картинки: разрешение, кадры, битрейт, звук, прозрачность кнопок поверх игры

ПК

  • Rulik Server снимает экран через ffmpeg и сжимает видео видеокартой: NVENC, AMF или Quick Sync
  • Звук ПК уходит на телефон
  • Нет ffmpeg? В окне сервера есть кнопка «Скачать ffmpeg»
  • По кабелю видео больше не тормозит кнопки: лишние кадры выкидываются

Сайт

  • Новый раздел вики «Играть на телефоне»

Phone

  • New "Play on the phone" mode: the PC's picture and sound on the phone screen, with your layout on top
  • "Desktop" mode: the PC screen you control with your finger. Tap to click, hold for right click, two fingers to scroll
  • New menu: Home with mode and layout choice, Layouts, PC, Settings
  • Picture settings: resolution, frames, bitrate, sound, how visible the buttons are over the game

PC

  • Rulik Server captures the screen with ffmpeg and compresses the video on the graphics card: NVENC, AMF or Quick Sync
  • The PC's sound goes to the phone
  • No ffmpeg? The server window has a "Download ffmpeg" button
  • Over a cable, video no longer holds up the buttons: extra frames are dropped

Website

  • A new wiki section, "Play on the phone"

Update both rulik.apk on the phone and rulik-server.exe on the PC: the new mode needs both.

Rulik 0.2.0

Choose a tag to compare

@github-actions github-actions released this 02 Nov 19:00

Точность нажатий / Touch accuracy.

Телефон

  • Ближайшая кнопка при промахе: тап в щель между кнопками засчитывается ближайшей
  • Щелчок на краю кнопок: короткая вибрация, когда палец съезжает с кнопки или заезжает на соседнюю
  • Подстройка под пальцы: Rulik запоминает, куда вы на самом деле жмёте, и чуть сдвигает невидимую зону кнопки
  • Всё это включается и выключается в настройках, блок «Точность нажатий»

Сайт

  • Новая вики: подключение, раскладки, игры без поддержки геймпада, настоящие геймпады, решение проблем

Phone

  • Nearest button on a miss: a tap in the gap between buttons goes to the closest one
  • Click at button edges: a short vibration when your finger slides off a button or onto the next one
  • Adapt to my fingers: Rulik remembers where you actually press and shifts each button's invisible hit zone a little
  • All of it can be turned on and off in the settings, under "Touch accuracy"

Website

  • A new wiki: connecting, layouts, games without gamepad support, real gamepads, troubleshooting

Download rulik.apk for the phone and rulik-server.exe for the PC. The server hasn't changed apart from the version number.

Rulik 0.1.0

Choose a tag to compare

@Wandraker Wandraker released this 02 Nov 10:55

Первая версия Rulik / First Rulik release.

Телефон (Android 10+)

  • Геймпад Xbox, мышь и клавиатура по Wi-Fi или USB
  • Шесть готовых раскладок и редактор: кнопки, стики, крестовины, тачпад
  • Гироприцел, руль наклоном, вибрация из игры
  • Поиск ПК в сети, PIN, автоподключение

ПК (Windows 10/11)

  • Виртуальный геймпад для каждого телефона через ViGEmBus
  • Установка драйвера и правило брандмауэра в один клик
  • USB через adb reverse

Phone (Android 10+)

  • Xbox gamepad, mouse and keyboard over Wi-Fi or USB
  • Six built-in layouts and an editor: buttons, sticks, D-pads, touchpad
  • Gyro aiming, tilt steering, game rumble
  • PC discovery, PIN, auto-reconnect

PC (Windows 10/11)

  • A virtual gamepad per phone through ViGEmBus
  • One-click driver install and firewall rule
  • USB through adb reverse

Download rulik.apk for the phone and rulik-server.exe for the PC.