FFmpeg

FFmpeg is piece of software to handle various multimedia formats. It's used by other software and plugins to take screenshots, make file conversions and other things.

You'll need to execute some commands via SSH to use this software. There is a separate guide on how to connect to your slot via SSH. Commands are kept as simple as possible and in most cases will simply need to be copied and pasted into the terminal window (then executed by pressing the Enter key).

Table of contents

Installation

FFmpeg is already installed to the servers, but if you want a later version then you can install it by logging in via SSH, then copying and pasting the following:

mkdir -p ~/bin && bash
wget -qO ~/ffmpeg.tar.xz https://johnvansickle.com/ffmpeg/builds/ffmpeg-git-amd64-static.tar.xz
tar xf ~/ffmpeg.tar.xz && cd && rm -rf ffmpeg-*-amd64-static/{manpages,presets,readme.txt}
cp ~/ffmpeg-*-amd64-static/* ~/bin
chmod 700 ~/bin/{ffmpeg,ffprobe,qt-faststart}
cd && rm -rf ffmpeg{.tar.xz,-*-amd64-static}

Usage

Your slot is not the place to encode large videos or use resource-intensive filters and options. You share the RAM and CPU with others on the server; using ffmpeg in an unrestricted way is likely to take up too many of these shared resources and as such is likely to be considered abusive. In addition to this, it wouldn't be possible to use hardware-accelerated encoding either. Your encodes are likely to take longer than encoding off-slot and transferring.

You can limit FFmpeg's CPU usage with its -threads option. In the Feral context this should be set to 1.

Use-cases for FFmpeg which are unlikely to cause issues are:

  • Taking screenshots
  • Demuxing
  • Remuxing