hi every one.
I want to create a video sharing system with meteor and react. That every user can share the video and can watch or download it in different qualities.
Do you think this is possible? And what challenges do I face?
I am happy with any experience, suggestion or opinion.
hi every one.
I think this is definitely doable but this is more about the technology used to connect the two clients (i.e. webRTC) and how to go about it. Also, check this out it may be of a good use.
Honestly there is what I would perceive as a substantial infrastructure cost for this type of an app if you wanted to do this without a third party service. Personally I would probably start with something like cloudinary and then maybe transition to something custom after meeting some level of success.
It is very doable. I do it in one of my projects. You would need:
- A storage (like S3) for your users to upload to.
- An automation (like Lambda functions) to kickstart your video conversion
- A service like AWS Media Convert to convert your videos (mp4, mov etc) to HLS in your desired resolutions and frame rates. With HLS (just like youtube) the device selects the most appropriate stream given the screen size and bandwidth.
- React-player as your HLS player.
I didn’t do the download part but I think you would need a specialized downloader that can take the HLS segments and add together under a desired encapsulation (like the inverse process as from MP4 to HLS). This would be a video downloader similar to a youtube video downloader and hopefully it exists as a JS library.
- Ready made solutions: https://www.jwplayer.com/pricing/ or https://www.cloudflare.com/products/stream-delivery/