Judging from the clunky, buggy, nonsensical experiences on 2nd tier streaming services (i.e., everything except Netflix, Amazon Prime, YouTube, Disney+, Max), I'd say the biggest cost is probably hiring a decent Engineering+Product+Test team. There are complexities here, like making these things work on different TV brands, versions, older models, etc.
Pushing all the complexity to YT seems like a total no-brainer.
With the exception of Netflix, these other companies' apps are similarly buggy and painful to use. I run into an at least issue daily (usually multiple times a day) in every streaming app I use except Netflix.
I agree -- if I could separate these out into 3 categories rather than 2, Netflix/YT would be in a class of their own, way ahead of the pack.
I am constantly surprised how Apple TV offers such a poor experience despite their excellence in Product Management in other product areas. I was watching Apple TV last night and my wife and I slogged thru the recap and intro because we were so afraid of the app chocking on the "Skip" button.
Aside from Apple, which seems to be a Product Management issue, I find other platforms to bucket into two areas:
1. Poor performance, probably due to bad threading and poor cacheing
2. Incompatibility with older TVs. TVs last 8-10yrs easily these days, and features have topped off so people do not upgrade. This means you have a LOT of target builds and compatibility to check and I dont think they test all the possible builds.
Things like throttling by IP Address which used to be a viable option is not effective anymore.
Video player controls have been a solved problem for something like several decades. It's actually impressive that they managed to screw it up so badly.
Cutesy error pages are cute exactly once, then they're even worse than a minimally viable error page.
I agree that eg Disney+ is a bit rougher around the edges.
Not sure where this come from, I have been unsubscribed for a few months so my experience is not current but back in mid 2024 I got video not showing up with some obscure error codes once in a while.
It is a bit better now.
I think part of the problem is their dumb microservices architecture. They operate something like 10,000 microservices and different devices talk to different subsets of those.
On our old, cheap roku stick, they regularly would produce “could not stream” errors or fallback to screenshots instead of trailers (which was actually better!) more often than not. The website would be fine, and no one else I know noticed the outages.
The worst thing is that I’ve worked at places that have moron middle managers that actually decided to emulate this and moved to microservices. It wasted years of my life at work.
Yeah it's really annoying that they all recreated the wheel instead of just playing ball with netflix or paying netflix to license their technology. The only feature I miss from another service is that x-ray view stuff that Amazon has to let you know who is in a scene.
Does Netflix license their technology to anyone? I know of examples like BAMTech, although I don't even know if they still take on outside clients or just do Disney now. I get that their might be good options to license and that fewer companies should build crappy in-house products, but is Netflix one of them?
From Netflix's perspective, it's not clear to me that the payment for licensing technology to e.g. NBC is worth it, versus hoping that they end up with an inferior product, especially when they're competing with each other for customers and licensed content.
1: Every customer wants their own twist. It is not enough to create an awesome video player app and reskin it, no they all want to be special.
2: Getting the last 5% takes twice as much work as the first 95%. Probably even more.
It's quite doable for 'normal' engineers to make a steaming platform. You need to get the video files out there on some CDN, you need some service for the DRM keys (which needs to scale, and handle the different access packages), and you probably want some history and profile stuff. Easy enough. But for the best experience you want every video to start playing in less than a second. That means getting those starting video segments as close as possible to the customer, it means optimizing that DRM key delivery, and optimizing the player so it just gets that video pushed to the screen ASAP.
Because the content owners demand it. No content = no customers. You could probably build out a public domain streaming service, if you really wanted to build out a non-DRM streaming platform, but it's going to be hard to find customers for that too, I'd imagine.
Even Netflix and Disney+ do not have that. The TV also takes some time to respond.
And on my TV Netflix manages sub-second (at least sometimes). IDK how. Maybe they somehow give me the DRM keys ahead of time? Maybe everything in the "continue watching" is pre-approved? Maybe the first couple of seconds are handled differently, maybe they are not DRM protected? Maybe the netflix intro logo thingy is cached locally, and then stuff happends in the background? It is after all more pleasant to hear the intro sound that watch a spinning loading-thingy. Maybe as I move the selection across stuff they pre-emptively fetch the first seconds? In some cases it also seems to start auto-playing in the background, so the only thing that happends when I press a selection is that the GUI overlay dissapears.
There are open source HTML players tho but they are not as powerful and feature rich as YouTube player.
I remember watching IGN gaming videos on their website's player and the experience was horrible. Tbh idk what's the best open source video player out there right now.
Part of it is cost, but a lot is culture and leadership. Streaming (especially live) is one of the toughest areas to maintain a good user experience. I've led Streaming Product teams for years. Product teams almost always needs to deliver growth, which comes in the form of new features, monetization, and other changes. But the user cares most about the core experience - did the video start playing without a delay? Were there buffering issues? Audio playback out of sync? Issues are very noticeable, and sometimes very difficult to test proactively for. Product needs to find this balance, and can not go 100% all in on growth and neglect the not sexy stuff. If the whole Product/Engineering/Test org is not aligned on stability/QoE being a top priority, it can degrade very quickly after a few releases for a streaming app.
The app is so full of click-me dark patterns, it feels more like an iffy porn site than the product of a major tech corp.
Look at something like the CCC video streaming site. Hyper focused on its thing, works wonders, developed entirely by volunteers with the help of academia.
If volunteers can do something on a shoestring budget, why can't Disney or Amazon with close to unlimited budgets approach even a fraction of the usability?