Best way to store video for a Flutter Application - flutter

I'm working on a Flutter App and want to include some Tutorial Videos, which all Users have unlimited access to, so they can rewatch it any time. The Videos will be about 10-20 files with 1-5 minutes length.
I guess these amount of data will be too big to be stored as app assets, so I researched a bit and found Firebase Storage and AWS MediaStore.
Thoughts on this ? Or any recommendations - I don't want to run in the wrong direction.

I suggest hosting them on a private S3 bucket with a public CloudFront distribution in front of it for best performance. HLS file groups are fine.

This might be a bit of an obvious answer but my suggestion is that you place these videos on YouTube and mark them as Unlisted. This way you can build the URLs of these videos into your Flutter application and then load those videos with a web_view plugin that you can find on pub.dev.

Related

Stream / play Movies (Lot's of GB) in flutter offline?

I want to make an offline app which will be installed on android smart tv, there the idea is to stream movies offline (the movies will require lots of storage).
Can anyone provide an approach or a solution to this?
I could store the movies on assets but it will be really big, one solution I was thinking was with external HDD, is there a way maybe to get / read the video from external HDD and stream it offline inside the installed app on tv?
Any other approaches will be acceptable.
Thank you!

Using Youtube as video storage for my app

I am still relatively new to these topics.
I am programming my app in Flutter and I can already use Flutter to play a foreign video from Youtube in the app.
I want to upload in Youtube all my video resources as private to be able to display them in my app.
Is there any documentation on how to do this? What are the costs per request?
Is Youtube even right for such a mobile app?`
I was going to use Firebase cloud storage, but think that can get very expensive once I release the app.
What other options would I have?
This question isn't really suitable for StackOverflow, since it's basically just asking whether you can use YouTube.
That being said, as long as you don't violate the T&C of YouTube and you're fine with storing all your videos on their platform, yes, you can do this. Using YouTube this way is free as of now. But note that there is a difference between "private" and "unlisted".
You can create a profile on youtube, upload as many videos as you want and list them as unlisted, meaning you can only find the video if you have the link, then in your app link the vides to whatever selection method you have. so ex I have a button when clicked launches a specific unlisted youtube url link and plays the video.
It would be the same as if someone was searching your video publicly and playing it, both are free.

What is a good server I can use for uploading / storing videos?

I am making a video sharing app for IOS and eventually will be adding it to the google play store too.
I was previously using firebase for my server to upload videos to, but I ran into some problems and firebase doesn't allow you to upload videos while your app is in the background (at least I couldn't figure it out). So I am switching servers and I would like to get some recommendations from you guys.
Question:
What is a good server / API that I can use to upload and store a lot of videos until they need to be downloaded when a user wants to watch one of them? Videos will be about 10 minutes on average, but they could be as long as 24 hours.

[Flutter]How to download video to app, and make it accessible only through the app (Similarly to Youtube/Netflix)

i'm fairly new to Flutter and is currently working on a course app that requires downloading the videos to the app.
The downloaded video will only be accessible through the app just like Youtube and Netflix, and will be hidden/encrypted from gallery. Would greatly appreciate if someone if someone could point me in the right direction in building this feature.
On iOS and Android your app has it's own isolated folder for storing documents. Items stored there are not intended to be accessible to the user outside of your app. This folder isn't scanned by the Gallery or accessible to other apps on the device. (However, with a little effort a user can access the files so this is not a complete solution where security is an concern. You would need to add encryption if you didn't, say, want a motivated user to copy the video file to a PC and be able to play it.)
the path_provider plugin gives your Flutter app common file locations on a device. The private app folder location is retrieved with getApplicationDocumentsDirectory()
"Download video" is a vague requirement. Most video on the internet (Netflix, Youtube) is provided via HLS or DASH for streaming, which you do download but the video is split up into many files- sometimes thousands of files for a single video. The dart:http package is likely what you're going to want to use to get/download the files (unless the video files aren't available via HTTP/HTTPS, then you'll need a different transport-specific library, like FTP, RTSP, etc.)

Youtube caching on Chrome app

Does anyone knows a solution to cache YouTube videos on a chrome app ?
I know there are ways to write data and access it later, but i can't find a way to do it with Youtube.
I'm aiming at be able to display those videos Offline or just to consume a small amount of bandwidth.
Thanks in advance.