One of the biggest factors in one of the algorithms that they use. If there are a group of us watching a documentary on Netflix (say 100 peeps) and I grab the specifics of time of day started, total time to view (if fully viewed), and where you stopped watching (there are a couple of parts to this stat: when I stopped it did I leave Netflix, or did I go to start something else on Netflix).
Now I have that data. I start mining the data for the user, and for the title. That gives me a remarkable amount of statistics about you as a user (combined with the stats I have been saving for you as a user). Let’s say I see a trend in your data that shows me that when watching documentaries you have a typical eye-span (amount of time your eyes are glued to Netflix) of 22 minutes. And you typically bounce out of that doc and go to another doc in the same genre (guitar players). When you end that one, you typically leave Netflix.
So the theory goes that I should show you shorter documentaries to choose from because when you actually watch one to completetion, you tend to choose to stay and usually pick something a little off that topic but in the same light. So now I can feed you new titles that match what you are more likely to choose. That in turn helps my eye-span number for you stay relevant.
Long winded and you kind of have to fill in the blanks for yourself. But it is one that they use. Never underestimate the thirst that people have for TV and how the companies that own the content and the massive amount of feeds.
Does that make sense?
It depends on the streaming service. YouTube does a pretty good job at this, for example.
The streaming service your using may not think that this is important and so they didn’t put the work in to implement it.
When it comes to software development you’re always trading off time to make the “thing” vs. the value the “thing” brings to the company. In this case for some streaming services, the “thing” that is bookmarking isn’t perceived to be worth the time relative to the money it would bring in from subscriptions or ads, etc..
#ELI5
It’s really two computers communicating with each other. Say, “server” and “client”.
The client requests a specific movie.
The server sends the client a stream of bytes that is the video/audio.
You press Pause, and the client sends a message to the server saying, “Hey, stop for a little bit please!”.
You press Fast Forward, and the client sends a message to the server saying “Hey, skip forward a little bit please”.
**There’s two ways this could be done.**
**FIRST WAY**
Every so often, while you’re watching, the client has to communicate to the server, “Hey, remember this is the spot I’m watching”.
So behind the scenes, there’s a constant “Hey server, I’m at 2 minutes 30 seconds. Hey server, now I’m at 2 minutes 45 seconds…” and so on.
Depending on how the client was designed, it could communicate that every second, or every minute, or every two minutes, or some other scheme. Maybe it only does it on Pause and Resume.
I’m sure different clients (Netflix, HBO, etc) do it differently.
Fewer communications means less bandwidth is used, which means the system can handle more people.
**SECOND WAY**
So the server is sending the client a stream of data, which is the audio and video.
But it’s not sending a byte at a time. Instead it’s sending **chunks**. “Here, have 2 megabytes. Here, have another 2 megabytes.”
Some systems are designed such that the SERVER remembers the last thing it sent you. “I just sent chunk #235, so I’ll remember that if he stops watching”.
The problem is, depending on the size of the chunks being sent, chunk #235 could be 2 full minutes of video!
So in that case, the server knows it sent chunk #235, but it doesn’t know how far into those 2 minutes you watched. So when it comes time to start back at a bookmark, it re-sends you chunk #235 and starts playing at the start of that chunk.
Latest Answers