-
Notifications
You must be signed in to change notification settings - Fork 1
Jobs
So this is the home page and where the magic* happens. If you need to do anything before you can start processing video's this is where it'll tell you. Once the prerequisites have been done, the checklist will disappear and you can add jobs, in a similar way to adding Presets.
- Pick your Filter from Radarr/Sonarr
- Pick a Preset from FFmpeg
- Tell Compressarr where to encode the files to. It's not clever enough to rename the video files so if you don't choose a folder and the container isn't changing the file extension you're going to get collisions.
One of the features of Compressarr is the ability to automatically choose the right FFmpeg parameters. It does this by creating a sample from the original video and trying various options against the chosen parameters. This section defines how it picks the best values, by comparing SSIM, Compression and Speed.
- "Best SSIM" is a system whereby the highest SSIM value is picked with a compression estimate below 100%.
- "First Past The Post" is the lowest estimated compression that occurs on or after the Minimum SSIM, this falls back to "Best Guess" if no sample reaches the minimum SSIM.
- "Bang for Buck" is where you get the most SSIM for the compression. Basically, a ratio is created based on the deviation of the SSIM and the Compression from the entire result set. This normally results in a middle-of-the-road selection.
- "By speed" is when the system picks the best SSIM that took as close to real-time speed to encode as possible.
- "Balanced" is where the values SSIM, Compression, and Speed are all compared to their minimums and the maximum value for all of them is picked.
- "Happy medium" is where you specify a minimum SSIM, the system will the first value over or equal to that SSIM. However, you also set a compression threshold, and the system will pick the highest SSIM as long as the file size is under that compression value.
- "Weighted for compression/speed/SSIM" is the same as balanced but there's a multiplier on the chosen value which creates a bias toward greater importance.
As with everything FFmpeg, the best options are subjective. SSIM is a logarithmic style value, and from what I've read you can categorise the output video thus: >99% Visually identical, >98% You're really going to have to look hard, >96% you may notice a few things <96% you are going to notice more and more. My personal preference is above 98%. Compression is a straight this file is X% of the original. Going from X264 and similar, files at 720p or above 50% - 60% compression can be achieved with 98% SSIM when re-encoding to x265.
This is the length of the sample, in seconds, that's used to determine the encoding parameters. The longer the value the longer it takes to find the right settings, but also the more accurate it will be.
If you choose to Auto Import a video and require a minimum SSIM to do so; SSIM will be calculated. What this option does is forces the process to calculate SSIM every time a video is successfully encoded. This allows you to check the visual quality of the output files, without having to import them.
This option tells Radarr/Sonarr that there's a new file for a specific Movie/TV Episode - please import it. Just like a manual import, in fact, it's exactly like doing a manual import, only we've automated it. So anything Radarr/Sonarr normally does, i.e. reject it or move old files to a folder it will still do.
Minimum SSIM is, in layman's terms; The resultant video must look this percentage like the original. It's never going to be 100%, if it was the file size would be massive, that's just the way re-encoding video works. There's always lost data at the same bit rate.
Maximum Compression says the output file must be at least this much smaller than the original to import.
Bear in mind that Radarr and Sonarr have the final say, they can reject the file if it isn't deemed a valid upgrade to the existing video.
So ideally you'd want the result to be as close to the original video as possible, and be smaller than the original. So 98% and 100%, respectively, is a good example.
Once the job has been saved it will check that it has all the permissions to complete the task and can find all the files.
Once configured, Compressarr will initialise the job. This is an integral part of the whole process and sets up the foundation for everything that happens after that. You can trigger an initialisation by clicking the orange sync icon in the top right. Also, it will initialise whenever it's finished or errored as a next step.
On the initialised screen you can see all the files that it's going to process as well as an (i) icon to get more information. A big button (more on that in a bit) and a log. The log will give you colour coded messages about what's going on, but each video has an (i) icon that will give you more information about the specifics of that particular encoding task.
Under workload you'll see all the files Radarr/Sonarr have provided to be processed, plus some additional columns, most of which are from FFmpeg, to identify what's going on.
- (i): brings up more information and controls for the file
- Name: The filename of the video to be encoded
- Percent: The percentage of completion of the current job on that file.
- ETA: Estimated Time of the completion of the current job.
- Frame: The current frame FFmpeg is working on.
- FPS: The frames per second FFmpeg is completing.
- Q: This is a quality metric, not sure what the values represent, it's an output from FFmpeg.
- Size: The current size of the output file.
- Time: The current timestamp in the video being worked on.
- Length: The overall length of the source video.
- Bitrate: The current bit rate assigned to the output file at this point or on average depending on FFmpeg parameters.
- Speed: How the FPS compares to the frames per second of the original video.
- Finished: If the job has finished, successfully or in error.
- Imported: Will only show up if auto-import is enabled and identifies if the file was successfully imported or not.
- SSIM: The calculated Structural SImilarity Metric of the output file.
- Compression: The final output file size versus the original.
Under the more information button (i) you'll see the following sections, you can manually walk a file through the whole process, step-by-step:
- Analyse: This is the first step, and it gathers the required info from FFProbe.
- Arguments: This calculates the arguments that are required for FFmpeg to encode the video based on your options. This will also get the media information if the first step is skipped.
- Encode: This runs FFmpeg, with the appropriate arguments, on the file.
- Import: This imports the output file into either Radarr or Sonarr.
- Log: Displays a more detailed log about what happened with that file.
The big button basically advances the job to the next stage, be that start encoding, stop encoding (Cancel), or re-initialise. It will also tell you what's currently going on. This is replicated in an info chip in the compressed job view.
Only one job can be run at a time, but if you start a second one it will wait until the first one has finished and then start itself, and it'll show "Waiting".
* There's no magic, sorry.