Transcode Doctor for Emby — guide
Installation
You need Emby Server 4.10.1 or newer.
- Sign in to your MediaLab Works account, open Licenses and download the plugin DLL (available on an active subscription, a lifetime license within its update window, or during the free 30-day trial).
- Copy the DLL into the Emby plugins folder and restart Emby Server:
- Linux (package):
/var/lib/emby/plugins/ - Docker: the
pluginsfolder inside your Emby config volume - Windows:
%AppData%\Emby-Server\programdata\plugins\
- Linux (package):
- Open Transcode Doctor in the Emby dashboard menu and click License. Paste your license key and activate it, or enter your e-mail to start the free 30-day trial or buy a license. The plugin contacts the license server, binds the key to this Emby server and shows the license as Active.
The license is checked once a day (and at every Emby start). Without internet the plugin keeps working for 7 days after the last successful check; after that it is stopped until it can check again.
License
Without a valid license the plugin is stopped: no test runs and no alert is written, and only the License page keeps working (there you can start the trial, buy, enter the key or update). The last report and the history are kept. Your Emby settings are never changed by the plugin, so nothing in Emby depends on it.
With a valid license, the same page can install an update or roll back to the previous version if an update causes trouble. Restart Emby after either.
Configuration
Open Transcode Doctor in the Emby dashboard.
- Hardware acceleration diagnosis: click Run the tests. The plugin checks the NVIDIA card and the
/dev/dridevices, creates a few short test clips with Emby's ffmpeg in Emby's cache folder, then tries each method (NVIDIA NVENC, Intel QuickSync, VA-API) at decoding H.264, HEVC, HEVC 10-bit, MPEG-2, VP9 and AV1 and at encoding H.264 and HEVC. Each test takes at most a minute; the table shows what works and how fast. - Problems: if something blocks acceleration, the page says what and how to fix it, for example the command that adds the Emby user to the
rendergroup (then restart Emby and run the tests again). In Docker, pass the GPU device into the container. - Recommendation: the method that works, the card's codecs and about how many 1080p transcodes can run at once. To use them, open Emby's Settings → Transcoding, set hardware acceleration to Advanced and tick the card's codecs; Emby picks the detected hardware codecs itself. The plugin does not change these settings.
Daily use
- Why it transcodes lists the recent transcoded playbacks: when, who, what, the reasons in plain words with what can be done, and whether the GPU or the CPU did the work.
- When a video transcode runs on the CPU although the last diagnosis found a working hardware method, the plugin writes an entry in Emby's activity log. If the tests pass but playbacks still run on the CPU, check the codecs in Settings → Transcoding.
- Run the tests again after a driver, Emby or hardware change.
Troubleshooting
- Every VA-API / QuickSync test fails: check the problems list; usually the Emby user is missing from the
rendergroup or the device is not passed into the Docker container. - Every NVENC test fails: the NVIDIA driver is missing or
nvidia-smidoes not respond. - No hardware method passed the tests: transcoding stays on the CPU.