First, you say the video is 1GB in size, but are you sure it is properly encoded for online viewing? What is the running time of the video? I would recommend using a tool like
Handbrake to ensure your video is encoded & compressed appropriately for downloading.
Next, Amazon S3 is not fast. It is simply Amazon’s “Simple Storage Service” which is exactly what the title says: It’s basically cheap network accessible data storage offered by Amazon in the “cloud.”
If you want to optimize download streaming, then you should use Amazon’s CDN service known as Amazon Cloudfront. The way it works is you basically a attach an origin source—which can be an S3 bucket or another server—and then connected it to CloudFront. Then Amazon’s CloudFront does the heavy lifting of detecting where your visitors are coming from & will serve content to them based on their geographic location.
You can read up more about the differences between Amazon S3 & Amazon CloudFront here and here as well as this thread on StackOverflow. The best explanation comes from Bucket Explorer: Comparison between Amazon S3 and Amazon CloudFront:
Amazon S3 provides a storage service on the internet while Amazon
CloudFront is a web service for content delivery. Amazon S3 uses its
own global network of websites while Amazon CloudFront delivers your
content through a worldwide network of edge locations.
Also, of note for streaming media such as video:
- S3 allows download first and then view the object.
- CloudFront allows download as well as streaming access to view the object.