Skip to content

Releases: splitshotz/Vice

Vice 2.15.0

Choose a tag to compare

@splitshotz splitshotz released this 18 Oct 16:51

A big one. Vice shows a short What's new window the first time you open it after updating.

New

  • Game Capture: a quick setting that records only the game's window, so Discord and everything else stay out of your clips. Off unless you turn it on. Thanks @bryan-ovalle2 (#157).
  • Discord-sized clips: right-click Share for a copy that fits Discord's free upload limit, and the editor can export one too. Settings, Sharing can make that what Share does. Also @bryan-ovalle2 (#190).
  • Keyboard overlay: a small panel that shows the keys you press over your game, for streams and clips, in your accent colour. Drag it anywhere or pick a corner. Vice can also keep the keys with each clip, to show in the viewer or burn into an editor export. Both are off by default, under Settings, Overlay, and only the panel's own keys are ever read. Needs X11, or KDE Plasma, Hyprland, Sway or Niri on Wayland (#209, asked for by @Su6o and @jjito1).
  • Trimming keeps the original: Save as new clip is now the main button in the trim window. Replace original is still there and asks first (#255, thanks @milan483).
  • A volume for each separate audio track, under Settings, Audio, so a call or your mic can be heard over the game (#251, @NicklasLMJensen).
  • System tray: on desktops with a tray, closing the window keeps Vice in the tray. Thanks @20plays (#194).
  • Your game's own icon on your Discord profile, and any Steam game named in clips and on Discord even when it is not on Vice's list. Thanks @suriyahs (#234, #235).
  • Niri: Vice now sees which game you are playing there (#232, @Lipsum27).
  • Exact clip lengths: click the value next to the clip length slider and type the seconds (#240, @Localghost5075).
  • The Flatpak build of gpu-screen-recorder: Vice uses it when it is the only one installed, or when you pick it under Settings, Recording. It carries its own FFmpeg and keeps recording on the GPU on older NVIDIA cards that a newer system FFmpeg has left behind, like the GTX 970 in #247 (thanks @kevinalavik for the digging, and @dec05eba for the suggestion).
  • NixOS: a flake with a package and a NixOS module. Thanks @UMCEKO (#215).
  • French, German and Brazilian Portuguese. Thanks @voltek-laruelle (#211, #238), @MLG993 (#239) and @marcobabinski (#184).

Fixes

Everything in 2.14.2 and 2.14.3 is in here too.

The keyboard overlay needs PyGObject, pycairo and gtk-layer-shell. They are optional dependencies on the AUR, and install.sh installs them where your distro packages them.

Vice 2.14.3

Choose a tag to compare

@splitshotz splitshotz released this 18 Oct 15:44

Bug fixes only. The new features on main will come in 2.15.0.

  • Trimmed clips that wouldn't play in the Vice window (#246). When a trim has to re-encode, the copied audio used to keep a short lead-in from before the cut. The QtWebEngine on Ubuntu 24.04 and Pop!_OS (Chromium 102) refuses files like that with "unfixable negative timestamp". Trims now drop it, and the audio stays in sync. Thanks @thebrightspark for the files that made this reproducible.
  • Trims now keep the recording's bitrate (#256). A re-encoded trim used fixed quality settings, so a clip recorded at 10 Mbit/s could come back at more than three times that. It's now capped at the original's own video bitrate. Also found by @thebrightspark.
  • A clip sometimes opened to a black player (#249). Reopening the clip you'd just closed left the player with no video loaded. The "can't play this, open it in your player" message also never appeared when a clip genuinely couldn't play. Both are fixed. Reported by @thebrightspark.
  • Reveal in file manager did nothing on KDE Plasma (#252). The service didn't pass KDE_SESSION_VERSION, so xdg-open tried a KDE 3 tool that no longer exists and still reported success. @evez0 tracked this down exactly. If you use the AUR package or install.sh, the updated service file is installed for you. Vice also refreshes those variables from your session before opening anything.
  • Game detection on KDE Wayland with kdotool (#152). When kdotool couldn't see a Proton game, the fallback scan of XWayland windows was skipped on KDE, so nothing got tagged. It now runs there too. Thanks @Localghost5075 for the logs.

Vice 2.14.2

Choose a tag to compare

@splitshotz splitshotz released this 14 Oct 21:20

Bug fixes. Nothing to do after updating.

Vice has moved to splitshotz

The GitHub account behind Vice is now splitshotz, so the project lives at github.com/splitshotz/Vice and the site at splitshotz.github.io/Vice-Website. Vice's update check, the AUR package and the install commands all point there now. Older versions keep finding updates through GitHub's redirect, but update when you can, since that redirect only lasts until someone else takes the old name.

$n keeps counting in custom clip names (#243)

A clip name template with $time or $date in it, like clip_$n_$game_$date_$time, started $n again at 1 every minute, so a session ended up full of clip_1 files. The count now carries on across minutes, days and games. Thanks to evez0 for the report, which pointed straight at the cause.

The CPU fallback says why on older NVIDIA cards (#247)

With FFmpeg 9, NVENC needs NVIDIA driver 610 or newer, and the 580 driver is the last one for Maxwell cards like the GTX 970. Vice correctly fell back to recording on the CPU, but the banner said a reboot would fix it and that it would go away on its own. When gpu-screen-recorder reports that mismatch, the banner now says what's actually wrong. Thanks to kevinalavik for the report and the vulkaninfo output.

Renaming a clip while trimming it no longer leaves a ghost (#246)

Saving a trim and renaming the clip in the same dialog could put a broken copy of the old name back in the gallery, because Vice was still reading the trimmed file under its old name when the rename landed. Thanks to thebrightspark for the report.

The installer survives a distro upgrade (#236)

After an upgrade, a gpu-screen-recorder that install.sh built from source can lose the FFmpeg it was built against. The installer then stopped without a word right after the kdotool warning. It now rebuilds gpu-screen-recorder and carries on. Thanks to EnderLord12 for the report and for confirming the fix.

Install: yay -Syu vice-clipper, then open Vice. For install.sh, clone it again and run it.

Vice 2.14.1

Choose a tag to compare

@splitshotz splitshotz released this 04 Oct 15:59

Three bug fixes. Nothing to do after updating.

Vice no longer fails to record after a boot on X11 (#231)

On some X11 sessions Vice starts before the desktop has told systemd where its X login cookie is. gpu-screen-recorder was then refused by X, gave up, and failed with "failed to create window", and retrying never helped because the daemon kept the environment it started with. Vice now picks up the session's environment again before each retry, so the recorder starts on its own once the desktop is up. If X refuses the recorder anyway, the error now says that instead of the generic message. Thanks to afonya2 for the report.

Renaming a clip in the trim dialog waits until you close it (#226)

Renaming from the trim dialog renamed the file immediately, which reloaded the clip and threw away the selection you had made. The new name now shows straight away and is applied when the dialog closes, after the trim if you save one. Renaming a clip also keeps its thumbnail and preview instead of rebuilding them, which mattered most for H.265 clips. Thanks to thebrightspark for the report.

The installer builds gpu-screen-recorder 6.1.3 (#154)

install.sh now builds gpu-screen-recorder 6.1.3, and running it again upgrades an older source build. 6.1.2 fixed a security issue in gpu-screen-recorder's privileged helper. If your copy came from your distro's package manager, the installer leaves it alone and tells you to update it there. Systems with FFmpeg 4 (Ubuntu 22.04) stay on 5.12.5, since 6.x does not build there. The AUR package is unaffected, as it uses the AUR gpu-screen-recorder. Thanks to dec05eba for pointing at the change in 6.1.3 that may fix the MP4 files in #154.

Install: yay -Syu vice-clipper, then open Vice. For install.sh, run it again.

2.14.0

Choose a tag to compare

@splitshotz splitshotz released this 24 Sep 05:10

This one fixes a privacy hole in share links, and a bug in 2.13.1 that could destroy MP4 clips on some Debian 13 setups. If you share clips, read the first part: links you shared before this update stop working.

Share links no longer expose your other clips

A share link used to name the clip by its filename, like /c/Vice_Clip_12. Clip names are sequential, so anyone you sent one link to could change the number and watch the rest of your library. That held on the Cloudflare link and on your local network alike. Thanks to TinfoilyTim for reporting it (#222) and to def750 for raising it first (#213).

Share links now carry a random token instead, like /c/6wSLAdYsDF0_, and the public server accepts nothing else, so editing a link gets you nowhere.

  • Every clip already in your library gets a token the first time Vice starts.
  • A link keeps working when you rename its clip, and stops when you delete it.
  • A new recording that reuses an old clip number gets a fresh link, so nobody holding the old one sees the new clip. That also stops Discord replaying a stale cached clip under a reused name.

Links you shared before this update no longer work. That is the fix rather than a side effect: a filename that still worked would leave the hole open. Copy a fresh link from Vice for anything you want to share again.

A share link also can no longer ask your machine to transcode a preview. That exists for Vice's own player, and over a link it let a stranger put your machine to work.

MP4 clips could be trimmed down to a single frame (#154)

On Debian 13, gpu-screen-recorder 5.13.3 can write MP4 files with every frame stamped at the same time, so FFmpeg can read only one frame of the whole recording. 2.13.1 took the frame count as the clip's length and let the file through, and the trim that cuts every clip to your chosen length then replaced the recording with that one frame. The version before at least left the file alone.

  • Vice now checks how many frames FFmpeg can actually read before trusting the count. A file like this is left on disk untouched, with a message that says what is wrong with it.
  • The trim now checks its own result before replacing anything. If the result comes out broken, Vice tries again with a re-encode, and keeps the whole clip if that fails too.

If you record MP4 on Debian 13 with Vice's installer, switch to MKV for now (Settings, Recording, Container). I'm asking upstream whether a newer gpu-screen-recorder fixes the files at the source. Thanks to LouReinaK for sharing the file that made this findable.

Also

  • A clip that reads fine but reports no duration now says exactly that, instead of blaming ffprobe for giving no reason.

Install: yay -Syu vice-clipper, then open Vice.

2.13.1

Choose a tag to compare

@splitshotz splitshotz released this 23 Sep 02:42

Vice 2.13.1

Fixes

  • Existing clip links update when the public tunnel becomes available. Tunnel
    startup retries transient failures and reports useful error details.
  • GSR can retry with software encoding when the available hardware encoder
    cannot start.
  • Mix-first audio no longer asks GSR to combine application and inverse
    application sources in one unsupported track.
  • MP4 files with zero duration metadata remain readable when their frame count
    and frame rate provide a reliable duration.
  • Scrolling inside a clip context menu no longer dismisses it.

Thanks to KITE-Force for the context menu fix.

2.13.0

Choose a tag to compare

@splitshotz splitshotz released this 19 Sep 23:09

Home finally uses the width it has been given, and screenshots stopped being a second-class citizen in their own gallery.

Home on a wide window

Past about 1580 points of content width, screenshots move into their own panel beside the clips column instead of sitting under it. Past about 2368, which is most ultrawides, the quick settings move again into a rail down the right with a storage readout at the bottom: free space on the drive your clips land on, what Vice is using of it, and when the last clip was saved. Nothing changes below those widths.

The gallery only draws rows that fit, so there is no half-visible row at the bottom and no band of empty panel under the last one.

Screenshots

  • The library, playlists and Home all show screenshots the same way now: the picture is the card, with its name and actions over it on hover or keyboard focus.
  • The viewer can fill the window, from the button, the F key or a double click, and grows into it rather than cutting to it. Your pen strokes stay registered with the picture the whole way.
  • Renaming a screenshot and deleting it straight after could bring it back from the dead. The rename reloads the whole list, which takes about a second on a real library, and that stale list landed after the delete and put the row back.

Game detection on KDE Plasma Wayland

Thanks to @KITE-Force, clips save with the right game tag on KDE Plasma under Wayland, through kdotool, instead of falling back to XWayland and seeing nothing for native Wayland games. It is an optional dependency: install kdotool and it is used, leave it out and behaviour is exactly as before. This is the missing piece for several of the KDE reports in #152.

Also

  • Free space where clips land is now part of the daemon's status, so anything that needs it can ask.
  • vice-app recovers from a QtWebEngine window that fails to start rather than exiting with nothing on screen.

Install: yay -Syu vice-clipper, then open Vice.

Vice 2.12.0

Choose a tag to compare

@splitshotz splitshotz released this 19 Sep 17:56
  • Discord share pages now include Twitter player metadata pointing at the direct clip and thumbnail URLs, which lets Discord embed clips without waiting for its own thumbnail conversion. Fixes #207.

The existing OpenGraph metadata remains in place for other unfurlers. Validated with the share server test suite and the previously completed full regression suite.

2.11.1

Choose a tag to compare

@splitshotz splitshotz released this 19 Sep 17:50
  • The Arch installer now selects the distro Python for system Qt packages and checks that PyQt6 and QtWebEngine are importable before replacing an existing virtual environment. A failed preflight leaves the working installation intact. Thanks to @20plays for this fix.

Validated with 661 tests, including installer regression coverage. This is a maintenance release following 2.11.0.

2.11.0

Choose a tag to compare

@splitshotz splitshotz released this 19 Sep 17:43
  • Fixed separate audio tracks in the editor (#164). Detach audio now creates an aligned lane for each recorded source, with individual source, mute, and volume controls. Preview and export use the selected tracks and preserve delayed audio timing. Only the first track starts enabled so a combined track is not doubled with its separate sources.
  • Fixed spacebar pause/resume in the clip viewer (#204). Holding the key, typing in a field, and activating a focused button no longer interfere with playback shortcuts.
  • Fixed encoder selection on systems where GSR lists Vulkan encoders but none of its usual hardware codecs (#206). Added explicit H.264, HEVC, and AV1 Vulkan choices for GSR, including 10-bit handling. Systems with working usual encoders keep their existing automatic selection, and failed capability probes keep the previous behavior.
  • Home now displays image cards beside the clips when the window has enough spare width. Narrower windows keep the existing layout.

Validated with 659 tests, TypeScript and translation checks, native QtWebEngine playback and editing checks, and real FFmpeg exports. The GTX 1070 Vulkan capture path still needs confirmation on the affected hardware. Older-clip playback and other hardware-specific reports remain open where the cause or retest is still outstanding.