Enchancing the DVR


I know that there is still a lot of work to be done to get Jellyfin in order before adding additional features. I am writing this today to start the discussion of enhancements to the DVR portion of Jellyfin.

I’m an old roll-your-own-dvr guy. I’ve probably used 10-15 different software packages over the past 20 years. By far the best I’ve used is SageTV which I ran until switching to Plex and now Jellyfin. SageTV was built as a DVR first and a media center second so it had some features that I’d love to see in Jellyfin.

In Jellyfin when scheduling a series recording the user is given the option to ‘keep up to’ a certain number of recordings. For example, let’s say we set this value to five recordings. As it stands now, this will record five programs and on the airing of another instance of the show will delete the oldest and record a new program keeping the number of recordings to five.

It would be fantastic if JF could have a setting that would present a check box under the ‘keep up to’ setting that said something like ‘keep oldest’. With this, JF would record five programs and stop recording until one of the programs is deleted.

The current setting is fine for doing something like keeping the last two episodes of the local news or something that you’re really interested in the current version only. My kids watch some cartoons and they certainly don’t need them all but along the same lines, we certainly don’t need to be recording them daily just to have them replace episodes that they haven’t watched.

Adding the functionality described will accommodate both types of recordings.

I’m guessing that modifications would need to be made to the server to allow this extra option to be saved with each recording schedule item in the database, and then a simple check would need to be made in:

What are your thoughts on this? Is this more suited, if possible, for a plugin?


I don’t really have much experience with plugins, so I don’t know how far plugins can “reach” into the system.

At any rate, I feel like this is definitely part of a “core” experience.

What does this option look like in Sage/Plex/other?


From the SageTV user guide (http://download.sage.tv/SageTV_Manual.pdf) Page74:

Keep At Most – This option instructs SageTV to keep no more than the specified number of
recordings for this favorite, if AutoDelete is set to Automatic. When AutoDelete is set to
Manual, SageTV will stop recording new shows when the specified number of recordings is
reached (up to 63); however, if another recording is already in progress, it will also be recorded.
It is possible to have extra recordings created until the recording schedule is fully updated.
Manually delete one of the recordings to allow SageTV to record another show. To keep all
recordings of a favorite, set this value to 0.

In Jellyfin now, the only option we have is similar to SageTV ‘AutoDelete’ set to ‘Automatic’. As such, the oldest program is deleted to make room for the newest. I’d like to see the addition of the ‘Manual’ type option. The code would require a boolean variable be set for each series recording so that ‘Automatic’ would be TRUE (our current method) and ‘Manual’ would be FALSE (my proposed). Then a check would be done in the code I referenced above (I think. IMNAP) so that the recording either happens or doesn’t based on the current check in addition to the boolean check I’m proposing.

The Jellyfin DVR works very well. In fact, it is the main reason that I abandoned Plex and moved to Jellyfin from the initial post on Reddit. That said, it could use a few tweaks to make it even better. It wouldn’t take very much at all and this option, while appearing small to non DVR users, is an example of adding a bit of functionality that is desirable to users.