Improve clarity in README

This commit is contained in:
Joshua Boniface 2019-10-19 18:42:50 -04:00
parent 251b6be574
commit df28fce595

View file

@ -14,7 +14,7 @@ rffmpeg is a remote FFmpeg wrapper used to execute FFmpeg commands on a remote s
1. Create symlinks for the command names `ffmpeg` and `ffprobe` to `rffmpeg.py`, for instance `/usr/local/bin/ffmpeg -> /usr/local/bin/rffmpeg.py` and `/usr/local/bin/ffprobe -> /usr/local/bin/rffmpeg.py`.
1. Edit your media program to use the `rffmpeg.py` binarry instead of the standard `ffmpeg` binary.
1. Edit your media program to use the `rffmpeg.py` binary (via the symlink names) instead of the standard `ffmpeg` binary.
1. Profit!
@ -24,21 +24,21 @@ This example setup is the one I use for `rffmpeg`, involving a Jellyfin server (
1. Prepare the remote transcode server. This involves the following steps:
1. Install any required tools or programs to make use of hardware transcoding. This is optional if you only plan to use software (i.e. CPU) transcoding.
1. Install any required tools or programs to make use of hardware transcoding. This is optional if you only plan to use software (i.e. CPU) transcoding.
1. Create a temporary transcoding directory somewhere on the system. Ideally, this should be fast scratch storage with no persistence required. In my case I use a pair of RAID-0 SSDs, though you could use a ramdisk if you have sufficient RAM. For my purposes, I put this directory at `/var/transcode` and mount my SSD RAID there.
1. Create a temporary transcoding directory somewhere on the system. Ideally, this should be fast scratch storage with no persistence required. In my case I use a pair of RAID-0 SSDs, though you could use a ramdisk if you have sufficient RAM. For my purposes, I put this directory at `/var/transcode` and mount my SSD RAID there.
1. Create a user to accept SSH connections in and run the FFmpeg commands. I use a user called `jellyfin` with a home directory of `/var/lib/jellyfin`, identical to the user that is created by the Jellyfin server itself - this is important for the directory layout to work.
1. Create a user to accept SSH connections in and run the FFmpeg commands. I use a user called `jellyfin` with a home directory of `/var/lib/jellyfin`, identical to the user that is created by the Jellyfin server itself - this is important for the directory layout to work.
1. Ensure the temporary transcoding directory is owned by the new user.
1. Ensure the temporary transcoding directory is owned by the new user.
1. Create a symlink from the user's home directory to the temporary transcoding directory. This much match the Jellyfin file layout to preserve paths. For insance, if your `transcoding-temp` directory on the Jellyfin server is at `/var/lib/jellyfin/transcoding-temp`, the symlink must exist at the same location on the transcode server.
1. Create a symlink from the user's home directory to the temporary transcoding directory. This much match the Jellyfin file layout to preserve paths. For insance, if your `transcoding-temp` directory on the Jellyfin server is at `/var/lib/jellyfin/transcoding-temp`, the symlink must exist at the same location on the transcode server.
1. Similarly to the transcoding directory, ensure your media volume is mounted on the transcode server at the same location as on the Jellyfin server.
1. Similarly to the transcoding directory, ensure your media volume is mounted on the transcode server at the same location as on the Jellyfin server.
1. Install an FFmpeg binary, in my case the `jellyfin-ffmpeg` package, on the transcode server.
1. Install an FFmpeg binary, in my case the `jellyfin-ffmpeg` package, on the transcode server.
1. Install the NFS kernel server, and set up an export of your temporary transcoding directory such that the Jellyfin server can mount it.
1. Install the NFS kernel server, and set up an export of your temporary transcoding directory such that the Jellyfin server can mount it.
1. On your Jellyfin server, create a new SSH private keypair owned by the Jellyfin service user.