I talked about the QuickSync Tdarr plugin I was working on in the Donator-chat channel on Discord this morning, and mentioned I was still working out a couple bugs. I played around with it a bit more and now the two files that failed previously completed successfully, so now I’m posting it in here if you want to test it on your own media collections.
This plugin does one thing, it re-encodes the video stream into h.265 HEVC. All other streams (audio, subtitle, attachment, data, and metadata) are copied to the output file without modifications. I’ve tested it with h.264, mpeg2, and vc1 videos, and in each case the resulting output looks to my eyes virtually the same as the input, at approximately half the file size, both on my monitor and my TV. I know that when you re-encode video you always lose some quality, which is why I added an optional filter to the plugin to only work on remuxes, as well as an optional minimum bitrate filter, so you can make sure that you don’t re-encode a shitty source.
Performance-wise, on my HP 290 I can transcode a single h.264 remux at roughly double speed. Adding a second concurrent transcode doesn’t really slow down the first, but when I go higher than that, individual transcodes start slowing down. The most I tested was 8 at the same time, and the average transcode speed was 0.5x. The good news is, you can run Tdarr transcodes and Plex transcodes simultaneously. I haven’t tested the combined limits yet, but I was able to run 2 Tdarr transcodes and three Plex transcodes with buffering issues in Plex.
This plugin uses ffmpeg, so you don’t need the QSV container, the Update: As of 5/24/2020 the containers have been merged together, so you should switch to the haveagitgag/tdarr_aio
container is all you need.haveagitgat/tdarr
container at your convenience. If you’ve never used Tdarr before, please read the documentation before you let this loose on your entire library, because Tdarr is designed to replace your files with the output. For testing purposes, you may want to use the Output Folder
option in the libraries so it copies the output there instead of overwriting the original.
I’m just positing this on my Github gist for now. Please keep this link private for now, I want to do a bit more testing and polish the code a bit before I submit an official pull request on the Tdarr_Plugins project. To install, download the zip file from the gist link below and paste the single file inside the zip file ( If you have any questions, comments or concerns, please let me know either via reply here or in the Discord.Tdarr_Plugin_Mthr_VaapiHEVCTranscode.js
) in your Tdarr local plugins folder.
You can download the file here:
Update 05/28/2020 - My pull request was accepted, so you can now find this plugin in the community plugins. Look for plugin ID Tdarr_Plugin_Mthr_VaapiHEVCTranscode
And finally, as with most software, this plugin is being provided “AS IS”. I make no warranties, express or implied, and hereby disclaim all implied warranties, including any warranty of merchantability and warranty of fitness for a particular purpose.