Our application produces images and big videos which we want to store on server, so they are available for other applications (web and desktop). What is the best option for image and video storage for proprietary data, cloud APIs or VPS extra hard drives? Based on pricing and storage / retrieval performance. Can you please guide us?
Related
Is there a way to store approximately 2GB of binary data (video files with ~600MB each) in Flutter web?
I need to support web on both desktop and mobile devices.
I tried Localstorage (converting everything to List<int>), but it caps out at a couple of MB. Drift seems to be based on Localstorage aswell. Best thing I found was Sembast, which uses IndexedDB, but even there I seem to be reaching the limits.
Maybe there's a work-around to access the file system?
Edit: I basically want to cache the videos, so they are available offline (so downloading and using FilePicker is not an option). I also considered using assets, but 2GB would be too much to download initially, even if I compress it.
I need a way to add videos to a firebase database, and I was able to find a video where someone had explained how to do this with native coding, but I was wondering if there was a way to do this with flutter.
This will not be possible (if you are sane).
The maximum data size of a string in the Realtime Database is 10 MB and it would be one hell of a torture to try to store videos in chunks of UTF-8 encoded strings.
Firebase offers Cloud Storage for Firebase, where you can easily store videos and other files.
The documentation is great for beginners with Cloud Storage and it should be easy to integrate it into your existing Realtime Database project.
If you compare GB stored of the Realtime Database and Cloud Storage on the pricing page, you will quickly realise that it would be insane to store videos in the Database instead of Cloud Storage.
The documentation on the Firebase website do not yet include Flutter, but the firebase_storage Flutter plugin is easy to operate in combination with the official docs.
I am trying to create a web server(REST APIs), which should be able to store, organise and stream videos for a client request.
My confusion:
How should a user can upload videos. From research, I decided that I would store all the metadata for the videos in database(google datastore), and all the video files in separate storage(Google cloud storage). Now, to upload videos, what is the proper way?
Once a video is uploaded and stored, how will the streaming will happen. Suppose a user make a request to watch a video, server will get a http request for that. But how to stream videos? Is there any service for this? Because using http streaming directly in code affects performance I guess.
From my understanding, I want to use a service which should be able to stream videos from my storage to a client upon the server's request. I guessed the server should make request to this "video streaming service" only after verifying the user credentials.
For question 1 (how to enable customers to upload objects), signed URLs are a good bet.
Question 2 is a lot bigger. Depending on your needs you could simply point clients to GCS video files, but modern media serving is a bit more advanced than that. You may want to look into using GCE with a streaming video service, for example something like Wowza. Google offers a click-to-deploy experience for it: http://cloud.google.com/tryitnow/wowza
(Keep in mind that Wowza is a separate products requiring a paid license. I don't have any experience with it and neither advocate for nor disapprove of it).
I would like to develop a facebook app (using as3) where the output is xml files and mp3 files. what are the recommended way of doing so ?
From small research I did I came up with these options so far:
convert xml files to sql tables , store the mp3 as a blob using facebook sql // is that allowed? what is the size limit for the table?
use amazon cloud service ? // up tp 5gb free but I would rather find a completely free option.
Thanks
Facebook doesn't have storage facility, you can use dropbox (2gb), sky-drive (5gb), live-kive (5gb) and recently, Box.net offers 50GB free for Apple mobile devices only :(
My partner and I have a webcam site that basically runs the old-school method....Every 0.5 seconds the javascript reloads the image in the browser from the webcam. However we are wanting to upgrade to a streaming media server to get higher quality video, and possibly audio. We aren't tied to any one specific file format or server type, as of right now we are leaning towards slicehost (as scalability is important), and installing darwin streaming server or wowza.
This is meant to be a live stream. Does anyone have any suggestions for hosts/server software?
Wowza is great and they offer an Amazon EC2 setup with micro pricing to make it affordable.
You can always go with Flash Media Server, but that is expensive.
Red5 is free and open source.
UPDATE
Based on your comment, you can also use UStream. It is free and will hook into Flash Encoder, which is also free.
Do you absolutely have to stand up your own streaming server? Services like LiveStream can do what you're talking about for much cheaper than setting up your own hardware.