matanui159 / ReplaySorcery

An open-source, instant-replay solution for Linux
GNU General Public License v3.0
851 stars 26 forks source link

Saving video not working? #136

Closed filipizydorczyk closed 2 years ago

filipizydorczyk commented 2 years ago

Describe the bug I can't save a recording. I have keyMods = ctrl+shift in condig and when I use it there is no notification and no video in ~/Videos/ReplaySorcery. My service file that I started look like this

[Unit]
Description=ReplaySorcery: an open-source, instant-replay solution for Linux.
After=graphical-session.target replay-sorcery-kms.service

[Service]
Type=simple
ExecStart=/bin/replay-sorcery
TimeoutStopSec=60
Restart=always

[Install]
WantedBy=graphical-session.target

I tried also replay-sorcery save but it gives me

 ➜ ~ replay-sorcery save           
Real user ID: 1000
Effective user ID: 1000
Failed to connect socket: No such file or directory
No such file or directory

Do I do something wrong?

Desktop:

Configuration:

# The minimum log-level to show
# Possible values: trace, debug, verbose, info, warning, error, fatal, panic, quiet
# Default value: info
logLevel = info

# The minimum log-level to add stacktraces to
# Possible values: trace, debug, verbose, info, warning, error, fatal, panic, quiet
# Default value: error
traceLevel = error

# The duration of the recording in seconds
# Default value: 30
recordSeconds = 30

# The video input backend to use for video recording
# Possible values: auto, hwaccel, x11, kms, kms_service
# Default value: auto
videoInput = auto

# The name of the input video device
# For kms and kms_service, see `replay-sorcery kms-devices`
# Possible values: auto, or a device string
# Default value: auto
videoDevice = auto

# The X, Y, width and height of recording rectangle
# Default value: 0, 0
videoX = 0
videoY = 0
# Possible values: a positive integer or auto
# Default value: auto, auto
videoWidth = auto
videoHeight = auto

# The framerate of the recording
# Default value: 30
videoFramerate = 30

# The video encoder backend to use for video recording
# Possible values: auto, hevc, x264, openh264, x265, vaapi_h264, vaapi_hevc
# Default value: auto
videoEncoder = auto

# The H.264 profile to use for video encoding
# Possible values: baseline, main, high
# Default value: baseline
videoProfile = baseline

# A high-level preset for video encoding performance
# Possible values: fast, medium, slow
# Default value: fast
videoPreset = fast

# The quality to use for video encoding, lower is better
# Possible values: 1-51 or auto
# Default value: 28
videoQuality = 28

# The bitrate to use for video encoding
# Possible values: a positive integer ending in an SI prefix (eg. 1M) or auto
# Default value: auto
videoBitrate = auto

# The number of frames between IDR frames
# Default value: 30
videoGOP = 30

# The width and height to scale the video to
# Possible values: a positive integer or auto
# Default value: auto, auto
scaleWidth = auto
scaleHeight = auto

# The audio input backend to use for audio recording
# Possible values: none, auto, pulse
# Default value: auto
audioInput = auto

# The name of the input audio device
# For pulse, see `pactl list sources`
# Possible values: auto, system, or a device string
# Default value: auto
audioDevice = auto

# The samplerate to use for audio recording
# Default value: 44100
audioSamplerate = 44100

# The audio encoder backend to use for audio recording
# Possible values: auto, aac, fdk
# Default value: auto
audioEncoder = auto

# The AAC profile to use for audio encoding
# Possible values: low (LC), main, high (HE)
# Default value: low
audioProfile = low

# The bitrate to use for audio encoding
# Possible values: a positive integer ending in an SI prefix (eg. 1K) or auto
# Default value: auto
audioBitrate = auto

# The controller backend to use for detecting key presses
# Possible values: auto, debug, x11
# Default value: auto
controller = auto

# The key name and key modifiers (as a set of flags) to press to save a video
# Default value: r
keyName = r
# Possible values: ctrl, shift, alt, super
# Default value: ctrl+super
keyMods = ctrl+shift

# Where to save the output file
# Possible values: a strftime formatted file path
# Default value: ~/Videos/ReplaySorcery_%F_%H-%M-%S.mp4
outputFile = ~/Videos/ReplaySorcery/%F_%H-%M-%S.mp4

# A command to run when a video is successfully saved
# Possible values: a printf formatted command
# Default value: notify-send ReplaySorcery "Saved replay as %s"
outputCommand = notify-send ReplaySorcery "Saved replay as %s"

Logs:

Nov 03 01:26:42 arch replay-sorcery[24783]: Real user ID: 0
Nov 03 01:26:42 arch replay-sorcery[24783]: Effective user ID: 0
Nov 03 01:26:42 arch replay-sorcery[24783]: Reading config file '/usr/etc/replay-sorcery.conf'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'logLevel' to 'info'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'traceLevel' to 'error'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'recordSeconds' to '30'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoInput' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoDevice' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoX' to '0'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoY' to '0'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoWidth' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoHeight' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoFramerate' to '30'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoEncoder' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoProfile' to 'baseline'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoPreset' to 'fast'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoQuality' to '28'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoBitrate' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'videoGOP' to '30'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'scaleWidth' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'scaleHeight' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'audioInput' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'audioDevice' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'audioSamplerate' to '44100'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'audioEncoder' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'audioProfile' to 'low'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'audioBitrate' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'controller' to 'auto'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'keyName' to 'r'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'keyMods' to 'ctrl+shift'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'outputFile' to '~/Videos/ReplaySorcery/%F_%H-%M-%S.mp4'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Setting 'outputCommand' to 'notify-send ReplaySorcery "Saved replay as %s"'...
Nov 03 01:26:42 arch replay-sorcery[24783]: Failed to get $HOME variable
Nov 03 01:26:42 arch replay-sorcery[24783]: Generic error in an external library
Nov 03 01:26:42 arch systemd[1]: replay-sorcery.service: Main process exited, code=exited, status=1/FAILURE
Nov 03 01:26:42 arch systemd[1]: replay-sorcery.service: Failed with result 'exit-code'.
Nov 03 01:26:43 arch systemd[1]: replay-sorcery.service: Scheduled restart job, restart counter is at 5.
Nov 03 01:26:43 arch systemd[1]: Stopped ReplaySorcery: an open-source, instant-replay solution for Linux..
Nov 03 01:26:43 arch systemd[1]: replay-sorcery.service: Start request repeated too quickly.
Nov 03 01:26:43 arch systemd[1]: replay-sorcery.service: Failed with result 'exit-code'.
Nov 03 01:26:43 arch systemd[1]: Failed to start ReplaySorcery: an open-source, instant-replay solution for Linux..
filipizydorczyk commented 2 years ago

Nevermind I missuderstood config file it works fine. The readme could contain default key combo though