Network Attached Storage (NAS) devices are increasingly popular for hosting Plex Media Servers due to their convenience, power efficiency, and ease of use. Brands like Synology and TerraMaster have emerged as reliable choices for such setups. However, the specific nature of NAS hardware presents challenges, especially when it comes to CPU-intensive tasks like transcoding.
This guide will focus on understanding Plex transcoding when using NAS devices like Synology and TerraMaster, and how to optimize performance for the best streaming experience.
Understanding Transcoding on NAS
A NAS isn’t typically as powerful as a dedicated PC or server. While they are competent at file storage and management tasks, transcoding requires more horsepower, especially when dealing with high-resolution media like 4K. Therefore, ensuring that your Plex setup on a NAS can handle transcoding efficiently is paramount for a smooth viewing experience.
Direct Play, Direct Stream, and Transcoding
Firstly, understanding how Plex serves content:
- Direct Play: The media file is entirely compatible with the viewing device. No changes are made, and the file plays as-is.
- Direct Stream: Only the media’s container isn’t compatible. Plex repackages the media without altering the video or audio.
- Transcoding: The media’s codec isn’t compatible with the device. Plex converts either the video, audio, or both.
Factors Affecting Transcoding on NAS
- NAS Hardware: Not all NAS devices are created equal. Some have more potent processors than others.
- Media Properties: High-resolution files (e.g., 4K) will be more demanding to transcode than lower resolutions.
- Concurrent Streams: More simultaneous streams will place a greater burden on the NAS.
- Network Speed: NAS setups often rely on ethernet connections. Ensure a stable and high-speed connection for both local and remote streaming.
Improving Transcoding Performance on Synology & TerraMaster
1. Choosing the Right NAS
- Processor: Ensure your NAS has a powerful enough CPU. Synology and TerraMaster models with Intel CPUs generally offer better transcoding capabilities than ARM-based models.
- RAM: While transcoding is more CPU-centric, having at least 2GB of RAM (preferably more) can help, especially if the NAS is used for other tasks.
2. Media Optimization
- Plex Version: Always use the latest version of Plex Media Server. Synology and TerraMaster have their app stores, but sometimes the latest versions are available directly from Plex’s official site.
- Standardize Formats: Convert your media to universal formats (e.g., H.264 for video). This minimizes the need for transcoding as most devices can natively play these formats.
- Limit High-Resolution Media: Unless you have a high-end NAS, avoid storing high-resolution 4K media. They can be taxing to transcode. If you must, consider a separate 4K library and a 1080p version for broader compatibility.
3. Hardware Transcoding
Modern Synology and TerraMaster units with Intel CPUs can take advantage of Plex’s hardware-accelerated transcoding, which uses the CPU’s integrated GPU:
- Plex Pass: This feature requires a Plex Pass subscription.
- Enable Hardware Acceleration: Go to
Settings > Server > Transcoder
and enable “Use hardware acceleration when available.”
4. Network Optimizations
- Ethernet Over Wi-Fi: Always prefer a wired connection for both your NAS and primary viewing devices.
- Port Forwarding: For remote access, ensure that you’ve set up port forwarding on your router. This ensures a direct connection instead of relying on Plex’s relay, which can limit speeds.
5. Reduce Unnecessary NAS Tasks
- Scheduled Tasks: If your NAS is running other tasks like backups, try scheduling them during off-peak hours when you’re less likely to stream from Plex.
Monitoring Transcoding on NAS
- NAS Interface: Both Synology and TerraMaster have user-friendly interfaces that allow you to monitor system performance. Keep an eye on CPU and RAM usage.
- Plex Dashboard: Shows real-time streaming data, including whether content is being transcoded, direct streamed or played directly.
Synology Transcoding Chart
The below chart shows the transcoding capabilities of various Synology NAS devices. For software transcode, this is all done via the CPU. Hardware accelerated using the embedded GPU for superior performance.
Plex Transcoding | Software Transcoding | Hardware – Accelerated Transcoding | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Model | CPU Model | SD 480p / 576p | HD 720p | HD 1080p | 4K SDR 2160p | SD 480p / 576p | HD 720p | HD 1080p | H.264 2160p | HEVC SDR 2160p | HEVC UHD 2160p |
DS224+ | x64 (Celeron J4125) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
DS423+ | x64 (Celeron J4125) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
DS223 | ARMv8 (RTD1619B) 1.1 Ghz | Awaiting App | Awaiting App | Awaiting App | Awaiting App | Awaiting App | Awaiting App | Awaiting App | Awaiting App | Awaiting App | Awaiting App |
DS923+ | x64 (Ryzen R1600) 2.6 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS723+ | x64 (Ryzen R1600) 2.6 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
RS822+ | x64 (Ryzen V1500B) 2.2 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS1522+ | x64 (Ryzen R1600) 2.6 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
RS1221+ / RS1221RP+ | x64 (Ryzen V1500B) 2.2 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS1621xs+ | x64 (Xeon D-1527) 2.2Ghz | Yes | Yes | Some | Some | No | No | No | No | No | No |
DS1621+ | x64 (Ryzen V1500B) 2.2 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS1821+ | x64 (Ryzen V1500B) 2.2 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
RS4021+ | x64 ( Xeon D-1541) 2.1 Ghz | Yes | Yes | Some | Some | No | No | No | No | No | No |
RS3621+ | x64 ( Xeon D-1541) 2.1 Ghz | Yes | Yes | Some | Some | No | No | No | No | No | No |
RS3621RPxs | x64 ( Xeon D-1541) 2.1 Ghz | Yes | Yes | Some | Some | No | No | No | No | No | No |
DS1520+ | x64 (Celeron J4125) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
DS120j | ARMv8 (Realtek 1296) 1.4Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS220j | aarch64 (Realtek 1296) 1.4Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS220+ | x64 (Celeron J4025) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
DS420j | aarch64 (Realtek 1296) 1.4Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS420+ | x64 (Celeron J4025) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
DS620slim | x64 (Celeron J3355) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | No |
DS720+ | x64 (Celeron J4125) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
DS920+ | x64 (Celeron J4125) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
DS720+ | x64 (Celeron J4125) 2.0 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | SDR Only | H.264 Output | H.264 Output |
RS820+/RS820RP+ | x64 (Atom C3538) 2.1 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
RS1221+ / RS1221RP+ | x64 (Ryzen V1500B) 2.2 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS1621XS+ | x64 (Xeon D-1527) 2.2Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS1621+ | x64 (Ryzen V1500B) 2.2 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS1821+ | x64 (Ryzen V1500B) 2.2 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
RS4021+ | x64 ( Xeon D-1541) 2.1 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
RS3621+ | x64 ( Xeon D-1541) 2.1 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
RS3621RPxs+ | x64 ( Xeon D-1541) 2.1 Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS418j | aarch64 (Realtek 1293) 1.4Ghz | Yes | Yes | Some | No | No | No | No | No | No | No |
DS418play | x64 (Celeron J3355) 2.0-2.5 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | H.264 Only | Decode Only | Decode Only |
DS718+ | x64 (Celeron J3455) 1.5-2.3 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | H.264 Only | Decode Only | Decode Only |
DS918+ | x64 (Celeron J3455) 1.5-2.3 Ghz | Yes | Yes | Some | No | Yes | Yes | Yes | H.264 Only | Decode Only | Decode Only |
DS1618+ | x64 (Atom C3538) 2.1 GHz | Yes | Some | Some | No | No | No | No | No | No | No |
RS818+ / RS818RP+ | x64 (Atom C2538) 2.4 Ghz | Yes | Some | Some | No | No | No | No | No | No | No |
DS1517+ | x64 (Atom C2538) 2.4 Ghz | Yes | Some | Some | No | No | No | No | No | No | No |
DS1817+ | x64 (Atom C2538) 2.4 Ghz | Yes | Some | Some | No | No | No | No | No | No | No |
DS3617xs | x64 (Xeon D-1527) 2.2-2.7 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
FS2017 | x64 (Xeon D-1541) 2.1-2.7 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
FS3017 | x64 (Xeon E5-2620 v3) 2.4 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
RS3617xs | x64 (Xeon E3-1230 v2) 3.3 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
RS3617RPxs | x64 (Xeon E3-1521) 2.4-2.7 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
RS3617xs+ | x64 (Xeon D-1531) 2.2-2.7 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
RS4017xs+ | x64 (Xeon D-1541) 2.1-2.7 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
RS18017xs+ | x64 (Xeon D-1531) 2.2-2.7 Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
DS116 | ARMv7 (Armada 385) 1.8GHz | No | No | No | No | No | No | No | No | No | No |
DS216 | ARMv7 (Armada 385) 1.3GHz | No | No | No | No | No | No | No | No | No | No |
DS216+ | x64 (Celeron N3050) 1.6GHz | Yes | Yes | Some | No | Yes | Yes | Yes | No | No | No |
DS216+II | x64 (Celeron N3060) 1.6GHz | Yes | Yes | Some | No | Yes | Yes | Yes | No | No | No |
DS216j | ARMv7 (Armada 385) 1.0GHz | No | No | No | No | No | No | No | No | No | No |
DS216play | ARMv7 (STM STiH412) 1.5GHz | No | No | No | No | No | No | No | No | No | No |
DS216se | ARMv7 (Armada 370) 0.8GHz | No | No | No | No | No | No | No | No | No | No |
DS416 | ARMv7 (Alpine AL-212) 1.4GHz | No | No | No | No | No | No | No | No | No | No |
DS416j | ARMv7 (Armada 385) 1.3GHz | No | No | No | No | No | No | No | No | No | No |
DS416play | x64 (Celeron N3060) 1.6GHz | Yes | Yes | Some | No | Yes | Yes | Yes | No | No | No |
DS416slim | ARMv7 (Armada 385) 1.0GHz | No | No | No | No | No | No | No | No | No | No |
DS716+ | x64 (Celeron N3150) 1.6GHz | Yes | Yes | Some | No | Yes | Yes | Yes | No | No | No |
DS716+II | x64 (Celeron N3160) 1.6GHz | Yes | Yes | Some | No | Yes | Yes | Yes | No | No | No |
DS916+ | x64 (Pentium N3710) 1.6GHz | Yes | Yes | Some | No | Yes | Yes | Yes | No | No | No |
RS816 | ARMv7 (Armada 385) 1.8GHz | No | No | No | No | No | No | No | No | No | No |
RS18016xs+ | x64 (Xeon E3-1230 v2) 3.3Ghz | Yes | Yes | Yes | Some | No | No | No | No | No | No |
RS2416+/RP+ | x64 (Atom C2538) 2.4GHz | Yes | No | No | No | No | No | No | No | No | No |
DS115j | ARMv7 (Armada 370) 0.8GHz | No | No | No | No | No | No | No | No | No | No |
DS215+ | ARMv7 (Alpine AL-212) 1.4GHz | No | No | No | No | No | No | No | No | No | No |
DS215j | ARMv7 (Armada 375) 0.8GHz | No | No | No | No | No | No | No | No | No | No |
DS415+ | x64 (Atom C2538) 2.4GHz | Yes | Some | Some | No | No | No | No | No | No | No |
DS415play | x86 (Atom CE5335) 1.6GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS715 | ARMv7 (Alpine AL-314) 1.4GHz | No | No | No | No | No | No | No | No | No | No |
DS1515 | ARMv7 (Alpine AL-314) 1.4GHz | No | No | No | No | No | No | No | No | No | No |
DS1515+ | x64 (Atom C2538) 2.4GHz | Yes | Some | Some | No | No | No | No | No | No | No |
DS1815+ | x64 (Atom C2538) 2.4GHz | Yes | Some | Some | No | No | No | No | No | No | No |
DS2015+ | ARMv7 (Alpine AL-514) 1.4GHz | No | No | No | No | No | No | No | No | No | No |
DS3615xs | x64 (Core i3-4130) 3.4GHz | Yes | Yes | Yes | No | No | No | No | No | No | No |
DS114 | ARMv7 (Armada 370) 1.2GHz | No | No | No | No | No | No | No | No | No | No |
DS214 | ARMv7 (Armada XP) 1.066GHz | No | No | No | No | No | No | No | No | No | No |
DS214+ | ARMv7 (Armada XP) 1.33GHz | No | No | No | No | No | No | No | No | No | No |
DS214play | x86 (Atom CE5335) 1.6GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS214se | ARMv7 (Armada 370) 0.8GHz | No | No | No | No | No | No | No | No | No | No |
DS414 | ARMv7 (Armada XP) 1.33GHz | No | No | No | No | No | No | No | No | No | No |
DS414slim | ARMv7 (Armada 370) 1.2GHz | No | No | No | No | No | No | No | No | No | No |
DS2314+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
RS214 | ARMv7 (Armada 370) 1.33GHz | No | No | No | No | No | No | No | No | No | No |
RS2414(RP)+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS213j | ARMv7 (Armada 370) 1.2GHz | No | No | No | No | No | No | No | No | No | No |
DS713+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS1513+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS1813+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS2413+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
RS10613xs+ | x64 (Xeon E3-1220 v2) 3.1GHz | Yes | Yes | Yes | No | No | No | No | No | No | No |
DS412+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS712+ | x86 (Atom D425) 1.8GHz | No | No | No | No | No | No | No | No | No | No |
DS1512+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS1812+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
DS3612xs | x64 (Core i3-2100) 3.1GHz | Yes | Yes | Yes | No | No | No | No | No | No | No |
RS812 | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
RS812+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
RS2212+ | x64 (Atom D2700) 2.13GHz | Yes | Some | No | No | No | No | No | No | No | No |
RS3412xs | x64 (Core i3-2100) 3.1GHz | Yes | Yes | Yes | No | No | No | No | No | No | No |
DS411+ | x86 (Atom D510) 1.6GHz | No | No | No | No | No | No | No | No | No | No |
DS411+ II | x86 (Atom D525) 1.8GHz | No | No | No | No | No | No | No | No | No | No |
DS1511+ | x86 (Atom D525) 1.8GHz | No | No | No | No | No | No | No | No | No | No |
DS2411+ | x86 (Atom D525) 1.8GHz | No | No | No | No | No | No | No | No | No | No |
DS3611xs | x64 (Core i3-2100) 3.1GHz | Yes | Yes | Yes | No | No | No | No | No | No | No |
RS2211+ | x86 (Atom D525) 1.8GHz | No | No | No | No | No | No | No | No | No | No |
RS2411xs | x64 (Core i3-2100) 3.1GHz | Yes | Yes | Yes | No | No | No | No | No | No | No |
DS710+ | x86 (Atom D410) 1.6GHz | No | No | No | No | No | No | No | No | No | No |
DS1010+ | x86 (Atom D510) 1.6GHz | No | No | No | No | No | No | No | No | No | No |
RS810+ | x86 (Atom D510) 1.6GHz | No | No | No | No | No | No | No | No | No | No |
Conclusion
Plex on a NAS offers an energy-efficient, always-on solution for your media needs. However, the challenge lies in managing transcoding, given the typically limited resources of a NAS. By optimizing your media, investing in a suitable NAS, and ensuring efficient settings, you can enjoy a buffer-free streaming experience. Always remember to cater your setup to the devices accessing your media most frequently, minimizing the need for on-the-fly transcoding.
- Nighthawk RS600 WiFi 7 Router Review - October 24, 2024
- Why is BT Broadband Internet Slow & How to Fix Slow WiFi? - April 1, 2024
- eufyCam 2C vs Blink XT2 Compared - April 1, 2024