Repository navigation
Releases
Rulik 0.3.3
Качество под сеть и игра через интернет / 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
Стрим по 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
Ровный стрим / 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
Играть на телефоне / 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
Точность нажатий / 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
Первая версия 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.