Feature #5111

"always on" timeshift

Added by Luis Alves over 4 years ago. Updated over 1 year ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:


Many times I would like to be able to rewind to the beginning of a programe to watch from start without worrying to set a DVR entry.
This functionality exists in all of the Portuguese official tv service providers (not sure on other countries) and at least I know that xtreamcodes (stalker) can also do this.

This could be implemented as a list of channels that would be automatically recorded for timeshift purposes and for each channel we should be able to select:
- how many minutes/hours/days we would like to have available on the timeshift buffer
- how many programes we would like to have on the timeshift buffer

At the moment, what I've been doing is to set an automatic recording with no title (to record everyting), filter the channels by tag and set the "retention period" to 1 day but that's not practical...
Also, there are some channels where I set the retention to 7 days, but other I would like to set to just 1 programe (which is not possible at the moment - minimum is 1 day)

Ideally, with this implementation, we should be able to go to the EPG of that channel and select the programe (that is being timeshifted) we would like to watch without the pain to search on the recordings but I believe this is more frontend specific stuff that backend.

Alternatively, add to the DVR options the retention period of "X hours" instead of a combobox with predefined options and if possible the ability to retain by nr of programes instead elapsed time.



Updated by saen acro over 4 years ago

TVHeadend itself is ondemand beckend and midware.
Timeshift is available option, but with limitation it need client on frequency,
aka tuner for frequency witch need static configuration or tuner per frequency (mux/transponder).

For all Astra 19.2E services you need 120 tuners ;) + enough storage space.

Sort of solution is to implement HLS + API index of events
but this is complicated and there will be developer challenge.


Updated by Luis Alves over 4 years ago

I know how the current timeshift implementation works.
Of course nobody would want to have that kind of timeshift for every channel/mux available but only for a selected group of channels...
In my case, I have 14 tuners with 6 channels always recording with a retention period of 7 days and still lots of tuners left (some share same mux).

By the way, how can HLS be a solution?


Updated by Andreas Fornberg over 4 years ago

Would be nice with some sorts of index in timeshift so you can select an earlier program in the EPG if it's available in timeshift. Something similar it does with recordings.


Updated by Eymert Versteegt over 4 years ago

I'd second this request!

In the Netherlands, too, many (if not all) TV service providers offer functions salled "replay TV", "missed program", "missed start of program", etc.

Of course, no-one has enough tuners and enough disk space to record all transponders on, e.g. one Astra satellite.

But a 4-tuner HDHomerun is quite affordable so it could potentially 'always-on timeshift' 4 DVB-C muxes.

So what I would really like to see:
  • Choose which services I want to timeshift/record permanently and with which priority related to other services / recordings on non-timeshifted services
  • Per service, choose if I want to timeshift for a certain period of days, or a number of tv-shows (e.g. timeshift 5 tv-shows, delete oldest)
  • Ability to 'keep' a tv-show (just like when I recorded it).

Updated by saen acro over 4 years ago

This go's more at VOD then TimeShift


Updated by Luis Alves over 4 years ago

Timeshift is VOD

Eymert, that is exactly what I would like to see.
My tvh server setup has 14 tuners with a 6Gb raid0 and it's enough to keep recordings for the past 7 days for a couple of channels (mostly use it for movie channels).
At the moment I use the DVR as I mentioned on the first post but it would be much easier to "browse" the recordings if I could use the EPG window.

xtream-codes (+stalker) already support this functionality (you can select for each channel how many days to timeshift) ant then "navigate" on the timeshift with the rewind/forward keys or using the EPG.

Maybe this is as easy as linking the EPG to the recordings...


Updated by Eymert Versteegt over 4 years ago

It should be fairly easy to implement (but not for me: I can read code in most languages easily, but do not have the time or experience to effectively develop something like this).

TVheadend does already have the EPG, Timeshift and recordings features. Only thing which is needed, is to stitch them together. Example workflow:

  • Choose which services to 'record' continuously, which TVHeadend will then do and split the recordings based on the EPG.
  • The existing recording profile functionality will take care of how much space this can take, I guess

This would already be a great improvement.

Further nice to haves:
  • Be able to browse back in the EPG (also through the HTSP API) and see which programs are available as recording
  • Make existing timeshift functionality aware that the currently running show is being recorded, so you can start from beginning.

Obviously, a dedicated tuner would need to be on the frequency carrying the chosen service all the time, but, for example, in the Netherlands, 2-3 channels I am interested in are carried on one mux, so I could already simultaneously record 3 channels using only one tuner.

And of course, this would be more VOD-like functionality than "timeshift", but hey, that is the whole idea behind TVHeadend, right.

At least improving on existing recording functionality already would make TVHeadend come quite a bit cloer toward this functionality. It would not need to be that complex.


Updated by saen acro over 4 years ago

lets see how timeshift work and can be implemented
/simple or not so/

Time shift is indexed archive of recorded content
similar as HLS segments but in difference from HLS have:
Time index
You wont to return and see what is been exactly 10 hours ago.
Event index /connected to EPG/
In this case can be see event with name on date.

in difference or regular 27/7 record time shift need to have time segments with extra event code
/to be more easy to skip commercials ;) /

Also implemented to container, with will store all this information,
plus stream changes as video aspect, audio type and count.

Don't make mistake with Camera DVR devices,
they have only fixed parameters of video and audio streams, and timer


Updated by Luis Alves almost 4 years ago

Jaroslav, all,
How hard would it be the implementation of re-using the timeshift buffers from an active subscription?

User A is subscribed to channel X for 1 hour.
User B starts a subscription to the same channel.
When user B subscription starts tvh checks is the channel is already subscribed && stream profile is the same,
then it could share the timeshift buffer from user A subscription (instead of creating a new one).

If this is possible and not so hard to implement, then it's half-way to the initial goal.


Updated by Jaroslav Kysela almost 4 years ago

We need really to change the whole MPEG-TS data handling (bug #3991) to store the original mpeg-ts data for the advanced re-play possibilities. The current timeshift implementation is too much tied to the HTSP protocol.


Updated by Ulrar Ulrar over 1 year ago


I see we're two years later, is there any plans to implement this in the future ?
It would be an awesome feature, like others I have more tuners than muxes so having them always-on would make a lot of sense. Ideally keep one or two programs back, but even the ability of just configuring a time (keep two hours) would be great already.


Updated by Flole Systems over 1 year ago

If you implement it (or find someone who wants to implement it) then it's planned. Otherwise it's not planned as there are no developers (which means no progress/no implementation of new features).

Also available in: Atom PDF