Last night, I had a live show paused on my Apple TV for about 15 minutes. When I went to resume the show, I accidentally hit the Home button. When I re-opened the app, it resumed playing the same channel, but it was playing live and there was no longer any buffer saved that I could use to rewind. It would be nice if the Channels DVR server could maintain buffers in the background.
Expanding on this, it would be nice if Channels could behave live a traditional set top box where you can have multiple live buffers that you swap between. For example, it would be nice if I could swap to a different channel during a commercial break, swap back to the original buffer after a few minutes, and rewind to the end of the commercial break if I switched back too late.
I would implement this feature as three different settings:
- The number of buffers available
- The maximum length of each buffer behind the current seek point
- The amount of time a buffer can be totally inactive before it is closed
To illustrate, imagine that I have my settings as follows:
- Buffers: 2
- Buffer Seek-Back Length: 1 hour
- Buffer Timeout: 2 hours
Scenario 1
1:00pm
- Begin watching Channel A
3:00pm
- It is possible to rewind to 2:00pm (1 hour seek-back buffer)
- Pause Channel A, leave app open
7:00pm
- It is still possible to rewind to 2:00pm (seek-back buffer calculated from current seek point)
- It is also possible to fast forward through the whole buffer to the 7:00pm point
- Resume Channel A from point where it was previously paused
9:00pm
- Current seek point in buffer is playing what was on Channel A at 5:00pm
- It is possible to rewind to 4:00pm (1 hour seek-back buffer)
Scenario 2
1:00pm
- Begin playing Channel A
- Switch to Channel B
2:30pm
- Channel B can rewind to 1:30pm (1 hour seek-back buffer)
- Channel A can also rewind to 1:30pm (1 hour seek-back buffer, 2 hour inactivity timeout)
- Continue watching Channel B
5:00pm
- Channel B can rewind to 4:00pm (1 hour seek-back buffer)
- There is no longer a buffer for Channel B (it hasn't been viewed in over 2 hours and timed out)
Scenario 3
1:00pm
- Begin playing Channel A
- Close app
2:30pm
- Open app
- Channel A is showing live content
- It is possible to rewind to 1:30pm (1 hour seek-back buffer)
- Close app
4:30pm
- Open app
- Channel A is showing the guide
- Choose Channel A
- It is playing live content and it is not possible to rewind (it hadn't been viewed in 2 hours and timed out)
Scenario 4
1:00pm
- Begin playing Channel A
- Switch to Channel B
2:00pm
- Channel B is playing live content and can rewind to 1:00pm
- Channel A is also playing live content and could be rewound to 1:00pm
- Pause Channel B
- Switch to Channel A
- Close app
3:00pm
- Open app
- Channel A is playing live content and can rewind to 2:00pm
- Channel B is paused at 2:00pm and can be fast-forwarded to 3:00pm or rewound to 1:00pm (1 hour seek-back buffer)
- Continue watching Channel A
5:00pm
- Channel A is playing live content and can rewind to 4:00pm
- The buffer for Channel B has been closed because it was in the background for 2 hours (even though it was paused)