6 ms·
The Netflix policy here is a good compromise: limit the number of concurrent streams for each account and then turn a blind eye to password sharing. That way sh
by jdblair 9y ago
The Netflix policy here is a good compromise: limit the number of concurrent streams for each account and then turn a blind eye to password sharing. That way sharing passwords is allowed in practice, but also has a clear consequence - you may be blocked from playback if too many of your family members (or friends) are watching simultaneously.
Implmenting stream limits is tricky, as there are edge cases that are hard to get right. However, common DRM services like Widevine and Playready have adopted the extensions necessary to implement stream limits, so there are already "of-the-shelf" solutions.
In short, this is a non-issue with available technical solutions.
Full disclosure: I'm an engineer at Netflix who works on cable set-top boxes.
- majormajor 9y agoI don't think it's that easy technically. The TV everywhere auth + stream limiting seems like a uniquely terrible problem to solve compared to the Netflix version. The HBO 3rd party app streams + the xfinity app streams + the ESPN app streams + the USA Network app streams [ + 30 other channel-specific apps ] all have to report to a single central place for each cable provider, if you're going to do this effectively, right?
- Retric 9y agoIt's just a counter. Also, you can shard based on a hash of the account letting you scale without limit.
- majormajor 9y agoIt's just a counter that has to be implemented properly between dozens of third party partners each with much weaker incentives than you have. It's gonna take a while, especially if you're waiting for things like smart-TV-side apps to get updated. Sorry, you're right, though, I chose the wrong word: it's not a mainly technically challenge e.g. for scaling, it's a process/implementation/people one.
- Retric 9y agoI assume they are already tightly coupled systems as you need a single login, but you're probably right it's 3rd party systems that would be an issue.
- majormajor 9y agoYeah, I haven't worked directly on these sorts of systems either, but my hunch is that it looks something like this, from working on some conceptually-similar areas, and playing around with the implementation some (and hitting certain limits but not others): To watch something in ESPN app: 1) user visits ESPN app 2) espn kicks user to cableco login embed to verify what channels they're allowed to watch 3) some sort of account-based rights info exchange 4) [everything past this point is ESPN-platform-mediated stream limiting only, and this part is analagous to what Netflix, etc, does as well, but they don't seem to be checking in to the same central place as other partner apps] Cause doing some account sharing in the past, I noticed there would sometimes be problems if we were all trying to use the same app with the same cable creds, but that me watching ESPN and Alice watching Fox Sports and Bob watching TBS didn't seem to interfere with each other at all.
- exelius 9y agoIt's all OAuth and SAML on the backend. The player asks for authorization to play content from the cable company (since it has to check against a few dozen criteria like entitlements, parental controls, concurrent stream limits, etc.) and is either given authorization or an error. It's honestly pretty simple.
- majormajor 9y agoThat still seems incomplete. How does e.g. the cable company know when I stop watching a piece of content through the ESPN app in this scenario, and so have that stream available for [other person on my account] to watch through the TBS app? E.g., still seems like you have to have a central heartbeat if you're centralizing your stream limits. And more directly, why can my parents watch more stuff if using multiple separate apps on their shared cable account than if they're both watching through their UVerse app?
- exelius 9y agoThis happens today and has for about 10 years. Each piece of content consumed hits an API endpoint at the cable company with an OAuth token requesting access to the content. If it's granted, a DRM key is sent. If it's rejected, it's not. The video players send metrics back to the cable companies and refresh the key periodically.
- Klathmon 9y agoSo I tried out a service called "Playstation Vue" a while back, and I'm very inclined to believe that "stream limits are tricky" There were dozens of times in the 2 months that I had the service that I was unable to stream, because I had hit a "concurrent streams" limit. Switching between devices, having my browser auto-login (which would take up a "slot"), And the fun bug they had for a while where if I started a stream on my phone, then "cast" it to a chromecast, it would count as 2 streams, and due to a limitation where playstations were given their own dedicated "slots" meant that 2 people couldn't watch on a chromecast at any given time even though I should have had 5 simultaneous streams allowed. I ended up canceling the service because of it, and I appreciate the limits that Netflix has much more.
- majormajor 9y agoIME, pretty much all the over-the-top cable alternatives right now, are, unfortunately, crappily enough designed that they're most effective as a way of generating a set of credentials to plug into the ESPN, Fox, etc, standalone apps and never using them directly. Which makes the only advantage compared to a "traditional" cable account be the price... Which, to be fair, is still a nice advantage, if you don't get the benefit of sweet bundle discounting anyway for whatever reason.
- Klathmon 9y agoThe only exception I found was YouTube TV. However the channel selection is pretty limited, and they are still only available in a few areas (luckily I am one of them)
- tedunangst 9y agoThe better solution would be to always start the new stream, but disrupt the oldest one.
- inetknght 9y ago...and a counter for how many times a new stream started so that you can send warnings to an account for bad behavior? ...and then the customer complaining that their poorly-behaving device keeps getting interrupted? Disrupt the oldest one, sure, but make sure to have some sort of clear indication of what happened and why.
- tsumnia 9y agoI actually liked the mindset you presented - "sharing passwords is allowed in practice". In other threads on HN in the past, I've seen people complain about why we are still using passwords and the like; but as I was reading your comment, it made me think that we lost sight of the purpose of passwords along the way. Obviously, safeguards for personal things is important, but the other way you see passwords used (at least in fiction) is for groups - secret door knock, "What's the password?" said by some bouncer through an eye slit in a door [1]. In this perspective, password sharing is a norm. It can be seen as a means to signifying your membership in a group... that shares Netflix. [1] - https://www.youtube.com/watch?v=MU5hCMAH-o4 https://www.youtube.com/watch?v=MU5hCMAH-o4
- kalleboo 9y agoRichard Stallman is also a proponent of sharing passwords https://lists.debian.org/debian-devel/2002/09/msg01810.html https://lists.debian.org/debian-devel/2002/09/msg01810.html Why GNU `su' does not support the `wheel' group =============================================== (This section is by Richard Stallman.) Sometimes a few of the users try to hold total power over all the rest. For example, in 1984, a few users at the MIT AI lab decided to seize power by changing the operator password on the Twenex system and keeping it secret from everyone else. (I was able to thwart this coup and give power back to the users by patching the kernel, but I wouldn't know how to do that in Unix.) However, occasionally the rulers do tell someone. Under the usual `su' mechanism, once someone learns the root password who sympathizes with the ordinary users, he or she can tell the rest. The "wheel group" feature would make this impossible, and thus cement the power of the rulers. I'm on the side of the masses, not that of the rulers. If you are used to supporting the bosses and sysadmins in whatever they do, you might find this idea strange at first.
- bryanlarsen 9y agoI swear at that stupid Netflix policy at least once a week. It means I have to track down the app that has misbehaved (usually by losing its connection to the Chromecast) or the tablet that the kids started and abandoned but left running. You really need a mechanism to remotely stop one of the other streams.
- zie 9y agoYou can also pay the extra few $'s a month to have more concurrent streams.
- taejo 9y agoBut they don't even want more streams.
- zie 9y agothe OP said it was a hassle to track down. I don't disagree, but instead of tracking down the problems, you can just spend the few dollars extra every month and ignore the problem. I don't disagree being able to stop streams remotely would be a great feature, I'm just saying there is another way to avoid the hassle of tracking down the offending devices.. ;)
- pavement 9y agoAnd this is why I don’t pay for a Netflix subscription. What is it with engineers willing to brainwash themselves regarding what constitutes a “good compromise” within the context of what their paycheck depends on?