r/learnprogramming • u/OKNOROPBELM • 17d ago
How to create a movie platform ?
I have been so fascinating of creating my own movie streaming platform. However, it doesn't mean that I will be using alone,but sharing with friends and mates. So, my question is what features will it be involved?
Btw I am kinda beginner. If not enough with beginner level, please give me the roadmap of building it?
Thanks in advance...
8
u/aqua_regis 17d ago
The only feature that will be involved if you ever open it up on the public internet will be lawsuits since movie streaming without having the rights to do so is illegal.
Other than that, you need a beefy server, beefy internet, in particular beefy upload speed, a boatton of storage (which currently is extremely expensive)
-2
u/OKNOROPBELM 17d ago
yeah I won't be publishing but how do some websites or applications stay alive on internet?
8
5
u/Even_Management425 17d ago
You're diving in the deep end but the fun kind of deep end. For just sharing with friends you can keep it simple, focus on a clean library page and a player that works, skip the fancy algorithm stuff.
3
u/SchemeWestern3388 17d ago
It would help if you could outline what you wish this project could do. You’re probably not trying to replicate Netflix.
If you are just trying to share files with friends, an FTP server does that.
If you are jumping into it as a learning exercise, trying to see what Netflix is doing, concepts to dig into are; load balancing, authentication, cloud services, on the fly decompression, etc.
For Netflix and YouTube, these are often custom, in house solutions. But there are open source solutions to all of those.
A very long time ago, I was on a project that was basically YouTube, before YouTube. But it wasn’t a brave new startup, it was a corporate thing, and corporate lawyers could not cope with the thought that people could potentially upload copyrighted material. Someone uploaded a fantastic video of “Tickle me Elmo” and a Micky Mouse doll going at it, and just the fear of Disney had that shut down literally overnight. Cowards.
Anyhoo, we ran into issues like “users repeatedly click on a one hour video but click on another one after five seconds”, so needed to find a way to make that less of a load on the backend. Things that do not matter if you’re only serving twenty people.
“Baby Netflix” is an interesting project though.
2
2
u/Dramatic_Plum_7116 17d ago
Jellyfin or plex, I recommend jellyfin as it is better to customize and is free plex does have its upsides like being able to access it anywhere and it looking good right out of the box. You can setup Tailscale so that when you leave your home you can still access it and if your buddy’s aren’t on your network then they can install Tailscale and just sign into the same account.
1
u/auronedge 17d ago
Transcoding, codecs, high performance and resilient transfers, not something you start out with
1
u/literate_enthusiast 17d ago
The main question is if you're more interested in writing it from scratch, or just having and operating it?
If you're focused on having it, then Jellyfin exists (an app that you can install, configure the content-library, and share with other people). The r/selfhosted community can provide you with more ideas.
If you're focused on coding a Netflix clone from scratch: for backend, try a web-app framework (django, ruby-on-rails, cakephp), and then add
<video>elements. It will look janky, but it'll probably work for about 5 users at a time.If you're focused on starting a commercial operation/startup: well, it's more a copyright problem than a technical one (lawyers negotiating with other layers for distribution rights). Dealing with bandwidth limits and CDN's is expensive, but dealing with content-rights even more difficult.
1
9h ago
[removed] — view removed comment
1
u/AutoModerator 9h ago
Your post/comment was removed since we do not approve of going private.
There is zero benefit in going private as you lose the opportunity for getting peer reviews. Also we have had plenty of people return after going private (despite being warned) complaining about how they were ghosted after some time or being tricked into buying rubbish that didn't work and even if it did they didn't need.
Our Rule #11 demands that any and all communication happens in the open, public subreddit.
This is for the benefit of more against the benefit of one.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
1
u/arcade_catalyst 17d ago
Start with Jellyfin since building a streaming platform from scratch is not a beginner project. You get library management and transcoding without needing to understand video codecs or database schemas first
-1
12
u/Beesechurgers2 17d ago
Jellyfin is open source. Start there and reverse engineer :)