Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Unraid as Mediaserver: Reduce Noise + HDD Spinups + HDD wearout + Buffering - Move streamed media to cache

Featured Replies

Hi,

would it be possible to introduce a feature that automatically moves media files to Cache drive, if streamed?

There are several discussions in the wild, for example this one.

Possible Workflow:

- User installs Plex/Emby/Jellyfin/audiobookshelf/... docker container

- Inside XML-Template, User selects to move to Cache for active media (maybe choose which filetypes)

- User starts docker container

- User streams media (aka. media file in use)

  - Consideration: If streamed longer than x minutes, than move to Cache

- Space is reserved on cache / if cache is full, nothing happens

- Media gets moved to cache temporarily (stays there for y hours)

- If streaming is finished, 

  - either remove immediately or 

  - stays there for y hours

- If streaming is not finished

  - stays there for y hours 

Pros:

- Reduce HDD Noise while streaming

- Reduce HDD Spinups

- Reduce HDD wearout

- Helps users with low RAM*

- SSD/NVMe Caches are faster, if more users streams at the same time (for example 4K content), max. read-speed could get exceeded = buffering

Cons:

- For multiple streaming users and huge files, larger Cache drive may be required

* Users with higher RAM can use --mount type=tmpfs,destination=/tmp,tmpfs-size=4000000000 for plex, but for low budget / starter NAS buildsm RAM might be limited. So this would be a nice option.

What do you think? :)

All the best

p0p

Edited by p0p

There are many plugins for optimizing unraid for this sort of usage, but I cant see limetech doing much in this regard as it is only one of many niche use cases for their software. They want to keep it as simple as possible and let the community plugins tweak it for these specific cases and only add those plugin features when the majority of installs are relying on them, though i do think they could add some of the features of mover tuning like moving by age instead of doing a full cache flush on a schedule. I just think it makes more sense to use the cache like a "leaky bucket" this way.

Funnily enough that Reddit thread has me as the top comment, but things have advanced quite a bit in the last few years.

There is plugin called Cache Mover by Alturismo that can pull a series folder from the array to the cache when an episode is played. This can pre-load the cache with a series when a binge watch starts and pretty much does what you are asking. he also has the Simple Mover, which offers media specific mover tuning features.

Then there is PlexCache, a set of scripts that can look at things like "up-next" and "watchlist" in plex and preload files to cache based on that. This works very well but takes a bit more setup.

Then there is the Mover tuning plugin, that can be used to keep recently added media on cache until space is needed, minimizing the need to touch the array disks at all.

The old Plex Preloader script I mentioned in that Reddit thread does still work, and if you have plenty of ram and not a lot of media it is pretty much a perfect solution, but it doesn't scale well to very large libraries and only solves the disk spinup issue.

  • 2 weeks later...

I personally use PlexCache along with Mover Turner. I add the exported list file and pathway from PlexCache into the Exceptions list of Mover Tuner and every morning it Caches files and updates the list and Mover Tuner ignores them until a media file is watched and Plex Cache removes it from the list and Mover Tuner moves it into the Array.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.