thestr4ng3r/chiaki Free and Open Source PS4 Remote Play Client

Chiaki Logo

Chiaki

Disclaimer: This project is not endorsed or certified by Sony Interactive Entertainment LLC.

Travis Build Status AppVeyor Build status builds.sr.ht Status

Chiaki is a Free and Open Source Software Client for PlayStation 4 Remote Play
for Linux, macOS, Windows and potentially even more platforms.

Screenshot

Features

Everything necessary for a full streaming session, including the initial
registration and wakeup of the console, is supported.
The following features however are yet to be implemented:

  • Congestion Control
  • H264 Error Concealment (FEC and active error recovery however are implemented)
  • Touchpad support (Triggering the Touchpad Button is currently possible by pressing T on the keyboard)
  • Rumble
  • Configurable Keybindings

Downloading a Release

Builds are provided for Linux, macOS and Windows. You can find them here.

  • Linux: The provided file is an AppImage. Simply make it executable (chmod +x <file>.AppImage) and run it.
  • macOS: Drag the application from the .dmg into your Applications folder.
  • Windows: Extract the .zip file and execute chiaki.exe.

Building from Source

Dependencies are CMake, Qt 5 with QtMultimedia, QtOpenGL and QtSvg, FFMPEG (libavcodec with H264 is enough), libopus, OpenSSL 1.1,
protoc and the protobuf Python library (only used during compilation for Nanopb).
Then, Chiaki builds just like any other CMake project:

git submodule update --init
mkdir build && cd build
cmake ..
make

Acknowledgements

This project has only been made possible because of the following Open Source projects:
radare2,
Cutter,
Frida and
x64dbg.

Also thanks to delroth for analyzing the registration and wakeup protocol,
as well as a huge thank you to FioraAeterna for giving me some
extremely helpful information about FEC and error correction.

About

Created by Florian Märkl.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see https://www.gnu.org/licenses/.