Giter Club home page Giter Club logo

replaysorcery's Introduction

ReplaySorcery

An open-source, instant-replay solution for Linux.

Back when I used to use windows I used AMD ReLive alot. It, and the nVidia version ShadowPlay Instant Replay, will constantly record the screen without using too much computer resources and at the press of a keycombo will save the last 30 seconds.

I wanted something like this for Linux...

I got tired waiting for someone else to do it.

Documentation

Installing

Arch

There is an official AUR package that gets updated from the CI (thanks to Bennett Hardwick): replay-sorcery.

Sergey A. has also setup a -git AUR package: replay-sorcery-git.

Building from Source

$ git submodule update --init
$ cmake -B bin -DCMAKE_BUILD_TYPE=Release
$ make -C bin
$ sudo make -C bin install

Required dependencies

  • CMake
  • FFmpeg
  • X11

Optional dependencies

  • PulseAudio (for audio recording)
  • libdrm (for listing kms devices)

Running

It can be enabled as a user systemd service:

$ systemctl --user enable --now replay-sorcery

Once it is running, just press Ctrl+Super+R to save the last 30 seconds.

You can also use systemd to look at the output:

$ journalctl --user -fu replay-sorcery

The service runs as root using SETUID and SETGID permissions since this is needed if you enable hardware acceleration. If this causes issues, you can disable it with -DRS_SETID=OFF in CMake:

$ cmake -B bin -DRS_SETID=OFF

Configuration

The config file location and options has completely changed since version 0.3.x

There are two config files:

  • The global config file is located at @CMAKE_INSTALL_PREFIX@/etc/replay-sorcery.conf (/usr/local/etc/replay-sorcery.conf by default).
  • The local config file is located at ~/.config/replay-sorcery.conf. Options in this file will overwrite options in the global file.

See sys/replay-sorcery.conf for the default values along with documentation. This file is installed into the global config file location.

TODO

  • Support NVENC API
  • Document code better
  • Cross-platform support
    • Doubt there is any demand though
    • Maybe for Intel devices if they are fast enough?

replaysorcery's People

Contributors

bennetthardwick avatar calinou avatar darthfloopy avatar dependabot-preview[bot] avatar dependabot[bot] avatar kattjevfel avatar pseregiet avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.