Amazon S3 video hosting - speed issues

23 replies
Hi. I've hit a brick wall here. I'm hosting some videos on S3. I have a WordPress site and I'm playing the videos with Flash Video Player plugin. It works fine except for the really long load times.

I wanted to stick with HD video, but I think the file sizes are what's killing me right now. The video I'm working with right now is 117MB.

Here's my question... Is there a way to speed this up without going lower quality on the video? Should I be looking for a player that has better buffering or something?

Your help is appreciated. Thanks.
#amazon #hosting #issues #speed #video
  • Profile picture of the author stevenh512
    Don't know for sure that it'll help, but have you looked into CloudFront?

    I've noticed speed issues with S3 lately too.. not necessarily just with videos, I noticed on a lot of sites that load images from S3 (like Twitter, and a few of Mike Filsaime's sites) things load really slow for me.
    Signature

    This signature intentionally left blank.

    {{ DiscussionBoard.errors[699626].message }}
  • Profile picture of the author Quentin
    I think the size of your video would not be helping.

    This must be a really long video.

    If you want to test go here and watch this 10 minute video I stream from amazon.

    Wordpress | The Internet Marketers Club

    I am using MP4 files

    Quentin
    {{ DiscussionBoard.errors[699706].message }}
  • Profile picture of the author Josh Anderson
    Guys...

    The size of your video file has nothing to do with how fast it loads and plays.

    Read that again.

    Of course most people have no clue.

    There are very few things that effect video load time:

    1. The bit rate of your video
    2. The bit rate of the visitor's internet connection
    3. The buffer time setting on your player (if it has one) which governs how long a video loads before it plays.
    4. How much other stuff you have on your page that is being forced to load.

    Even if you film in HD you should encode at a relatively low bit rate. Your target bit rate for your video should be less than the bit rate of your average website visitors internet connection.

    My own rule of thumb is to encode at 220kbps for the video and 32kbps for the audio which is a total of 252kbps and which is just under the 256kbps which is the speed of a high percentage of us based low speed broadband connections.

    The only time you need to fuss over file size is to save on bandwidth costs or if you are unlucky enough to be working with a player that does not have buffer time controls and forces the entire video to download before it plays.

    I can take any video and make it play in 1 second. That's right... nearly instantly. Yes, even a 117 mb video I can make play in 1 second without buffer issues and without stopping and stuttering.

    And I can do a relatively good job of preserving quality...

    But yes, if you are going to make it load fast you are going to always have to sacrifice a little quality.

    The rule of thumb is that you should never encode with any other codec besides vp6 for flv and h.264 for mp4

    My own player supports both formats and provides buffer time control.
    Signature
    {{ DiscussionBoard.errors[699747].message }}
    • Profile picture of the author RazoLova
      Originally Posted by Josh Anderson View Post


      My own rule of thumb is to encode at 220kbps for the video and 32kbps for the audio which is a total of 252kbps and which is just under the 256kbps which is the speed of a high percentage of us based low speed broadband connections.

      I can take any video and make it play in 1 second. That's right... nearly instantly. Yes, even a 117 mb video I can make play in 1 second without buffer issues and without stopping and stuttering.

      The rule of thumb is that you should never encode with any other codec besides vp6 for flv and h.264 for mp4
      Hey Josh!

      Wow. I was just trying to make optimizepress work with s3 cloudfront videos and I wasted 4 hours.

      Thanks too much for this. I applied to the letter and it works wonderful.
      I've spent at least 4 Hours trying to figure out why my newly S3 cloudfront uploaded videos were waiting for the entire video to download before playing. Meaning it was not instantly playing but waiting for 3 / 4 minutes etc and longer if the video was bigger. What a conversion killer.

      What I've used to make it play in 1 second:
      (your advise of course
      - Video = 220 kbps (yeah!)
      - Audio = 32 kbps (Wouhooo!)
      - uploaded to S3
      - Opened S3Fox Plugin for firefox
      - Set the video permission to public (meaning permission = read ok for everyone)
      - grabbed S3 cloudfront URL via the S3Fox plugin
      - pasted the URL into OptimizePress Dashboard
      And badaboom!

      The video loads/plays in ... ... 1 second!!!!!! <---- Yeah!!!

      Thanks Josh. You're my hero of the day.
      {{ DiscussionBoard.errors[2992576].message }}
      • Profile picture of the author magentawave
        I'm just about to start using OptimizePress so thanks for sharing that HUGE tidbit of information too!

        Steve



        Originally Posted by ML View Post

        Hey Josh!

        Wow. I was just trying to make optimizepress work with s3 cloudfront videos and I wasted 4 hours.

        Thanks too much for this. I applied to the letter and it works wonderful.
        I've spent at least 4 Hours trying to figure out why my newly S3 cloudfront uploaded videos were waiting for the entire video to download before playing. Meaning it was not instantly playing but waiting for 3 / 4 minutes etc and longer if the video was bigger. What a conversion killer.

        What I've used to make it play in 1 second:
        (your advise of course
        - Video = 220 kbps (yeah!)
        - Audio = 32 kbps (Wouhooo!)
        - uploaded to S3
        - Opened S3Fox Plugin for firefox
        - Set the video permission to public (meaning permission = read ok for everyone)
        - grabbed S3 cloudfront URL via the S3Fox plugin
        - pasted the URL into OptimizePress Dashboard
        And badaboom!

        The video loads/plays in ... ... 1 second!!!!!! <---- Yeah!!!

        Thanks Josh. You're my hero of the day.
        {{ DiscussionBoard.errors[2997053].message }}
        • Profile picture of the author magentawave
          By the way...

          I'm using S3 as my video host but how do you get their "cloudfront" hosting? Is it more expensive? Any downsides to cloudfront over their regular S3 hosting?

          Thanks again.

          Steve
          {{ DiscussionBoard.errors[2997071].message }}
  • Profile picture of the author ehicks727
    Thanks for the detailed response, Josh. I'm going to re-render my video with the settings you described above and give it a shot. Flash Video Player plugin does have a buffer setting, and I've got it set to the fastest. And I'm not auto-starting the video, so it has nothing to do with my page load time.

    Anyway, I'll give it a shot and report back.
    {{ DiscussionBoard.errors[700423].message }}
  • Profile picture of the author ehicks727
    Ok, still no luck. I rendered a video 320x240, frame rate = 25PAL, bit rate = 192k, audio = AAC - 44.1 - 32k (which sucks, btw).

    The load time dropped from about 30 seconds down to 10 seconds... but that's still not acceptable.

    I've got my host setting up a CNAME record to my Amazon S3 bucket to see if that does anything.

    Any other ideas folks? I'm using JWPlayer... is this just a crappy player? Should I be trying something else?
    {{ DiscussionBoard.errors[700565].message }}
  • Profile picture of the author ehicks727
    Awww... screw it. I just uploaded it to YouTube.
    {{ DiscussionBoard.errors[700807].message }}
  • Profile picture of the author Josh Anderson
    Ok, still no luck. I rendered a video 320x240, frame rate = 25PAL, bit rate = 192k, audio = AAC - 44.1 - 32k (which sucks, btw).

    The load time dropped from about 30 seconds down to 10 seconds... but that's still not acceptable.

    I've got my host setting up a CNAME record to my Amazon S3 bucket to see if that does anything.

    Any other ideas folks? I'm using JWPlayer... is this just a crappy player? Should I be trying something else?
    I don't use JW player so I am not certain but I would think that they have a buffer control setting you can adjust right?

    If they do you just set it to the number of seconds you want it to buffer and your issue is resolved.

    For example with my own player which we developed I set my buffer setting to 1 second because I know my target market and optimize my videos so my video play is instantaneous.
    Signature
    {{ DiscussionBoard.errors[702061].message }}
    • Profile picture of the author kidino
      I read some reports and blog post that using CloudFront increased load time, sometimes up to 14 times.

      Well, from my experience viewing launch videos from Malaysia, those 20-40 mins videos always take hours to load. The best I've seen so far is LaunchTree. Their 20-min (I think), after the first load, the video didn't pause to re-load again even once. Mind you that other that I watched in the past, even on S3 took HOURS to load. Sometimes I just click play once and then pause and leave it overnight. Or if I can get the URL for the FLV, I put that into my download manager and view it later.

      Anik and Mike, with their LaunchTree, they use BrightCove. Pricing for BirghtCove starts at $6000/year. Should be OK for a business that generates $10 million in 6 days.

      Alternative to BrightCove are Ooyala, Fliqz, etc. From what I understand, videos on BrightCove are delivered using CDN (Content Delivery Network) platform. So BrightCove, Ooyala, Fliqz are video hosting platform with CDN.

      In case you don't really know this, with CDN, your content is distributed all of the world. So viewers will get your data sent from servers closest to them. CloudFront has datacenters all over the world in USA, Europe, Hongkong and Japan.

      So, if you are already on S3, I think it's wise to add CloudFront. I can test your video viewing from Malaysia if you want Those little extra will help to get your prospect watch and act on your messages, rather than just abandoning it...

      If you need video hosting platform that utilizes CDN, then try BrightCove.com, Ooyala.com, Fliqz.com, DelveNetwork.com... mind you, they don't come cheap. I know that some people pay for hosted players + S3 hosting. Like EZS3 + S3, or S3 Media Player + S3. If it's easier, cheaper, etc... then just pay one bill (like Ooyala, Fliqz, etc). But I also know that those hosted video player also provide other things like analytics, etc... well, your choice. Something to think about I guess.

      But if you can handle the video player part yourself (like using FlowPlayer, JW Player), then just get storage with CDN. With Amazon, you have to bundle your S3 with CloudFront. I've been looking around, generally you have to pay for storage and bandwidth.

      Apart from S3 and CloudFront, there's also Mosso CloudFile, SoftLayer CDNLayer, which I would consider as affordable.

      I guess that's all then. I am shopping around for my own video platform, which explains all this info I have right now. Like you, my concern is load time.

      Just recommended Michelle to try out CloudFile for her video on CrowdMountain. Since it works with EZS3, should be a smooth upgrade for her.

      If any of you upgraded to CloudFront, do update. Would love to try out your video load time.
      Signature

      DIPPEC - PHP Script for Selling Digital Products with Paypal. No more monthly SaaS fees. No more commission fees. Keep it all for yourself (except for Paypal fees).

      Free Pricing Table Builder

      {{ DiscussionBoard.errors[762730].message }}
  • Profile picture of the author kidino
    Just found a few more option

    Another affordable CDN hosting
    CacheFly: Start Delivering - CacheFly Pricing and Signup

    Another affordable video hosting platform on CDN
    Mydeo - Subscription plans and viewing limits

    Still don't know how they perform though...
    Signature

    DIPPEC - PHP Script for Selling Digital Products with Paypal. No more monthly SaaS fees. No more commission fees. Keep it all for yourself (except for Paypal fees).

    Free Pricing Table Builder

    {{ DiscussionBoard.errors[762777].message }}
  • Profile picture of the author Josh Anderson
    Anik and Mike, with their LaunchTree, they use BrightCove. Pricing for BirghtCove starts at $6000/year. Should be OK for a business that generates $10 million in 6 days.
    Except that they ran out of bandwidth and had to switch to a different host for the most recent video ;-)

    The best priced cdn I have found for scalable publishing is:

    http://www.simplecdn.com/
    Signature
    {{ DiscussionBoard.errors[773033].message }}
    • Profile picture of the author magentawave
      Originally Posted by Josh Anderson View Post

      Except that they ran out of bandwidth and had to switch to a different host for the most recent video ;-)

      The best priced cdn I have found for scalable publishing is:

      SimpleCDN - Pure Delivery
      I have no idea how much space I will need (my bandwidth is unlimited but diskspace is what my host hits me for) but will be getting heavily into video. Do you think simplecdn would be the answer? The problem is that I can't relate at all to the figures they give for how much space they give you, plus the other thing is that I hear Amazon S3 is slow. What do you think?

      Thanks
      Steve
      {{ DiscussionBoard.errors[800108].message }}
  • Profile picture of the author IM Ace
    I visited simplecdn and tried their link which stated "seeing is believing". The link led me to a page with 2 video displays, which never played after waiting for over 2 minutes. (Of course I cliked the play button!)
    I am on 2 mbps broadband. Hence I found them pretty dispappointing. But will not write them off yet as Josh has recommended; will try again tomorrow before deciding on their performance.
    Signature
    I hear and I forget. I see and I remember. I do and I understand.
    {{ DiscussionBoard.errors[1073626].message }}
    • Profile picture of the author Josh Anderson
      Originally Posted by Ashish Moon View Post

      I visited simplecdn and tried their link which stated "seeing is believing". The link led me to a page with 2 video displays, which never played after waiting for over 2 minutes. (Of course I cliked the play button!)
      I am on 2 mbps broadband. Hence I found them pretty dispappointing. But will not write them off yet as Josh has recommended; will try again tomorrow before deciding on their performance.
      What you need to consider is that lower bit rate video set at a short buffer time before play is the biggest factor in getting video to play faster.

      I can make any video play in as little as 1 second without problems.

      But that does not mean that they did not have idiots put up their demo files on simple cdn...

      Watching a video on a website really does not tell you that much because there are so many other things a person can do to screw up that have nothing to do with the hosting itself.

      Honestly...

      I don't even see the point in obsessing about these things since I can deliver video just as fast using most economy hosts with decent uplinks and good data center locations. The only time these huge scalable services matter is when you are doing serious volume.

      Most people publishing video will never need a CDN... but hosting media on a separate host from your primary site host can be a good strategy... again the majority of people reading this would be just fine on an economy account like at www.powweb.com since they will never be generating the volume of views that would necessitate using scalable CDN services.
      Signature
      {{ DiscussionBoard.errors[1075470].message }}
      • Profile picture of the author skydivedad
        I wrote a book about hosting video on Amazon's S3 some 3 1/2 years ago. I've seen it evolve and I've hosted video there continuously since. Josh's has given you some great advice and he's absolutely correct about file size being irrelevant. Like Josh I've built my own players and I use a a custom preloader when I stream. I also have experience with SimpleCDN and I recommend eZs3.com if your not comfortable coding your own players and wrappers.
        Hardware failovers and load balancing are issues possible with cloud based streaming but chances are things on your end aren't performing optimumly or the stream is bottlenecking somewhere on the network. I've used JW Player in the past but not in a few years. If maintaining high quality streaming is your main concern perhaps you should consider a higher quality solution. S3 is great but it wasn't built as a CDN (Content Delievery Network) to stream high quality video. I understand using s3 is a matter of cost for most of us.

        "Flash Video Streaming Service (FVSS) provides the most effective way to deliver High Quality FLV to the largest possible audience without the hassle of setting up and maintaining your own streaming server hardware and network." Adobe

        Here's a link to some of the Top Rated FVSS companies

        Keep us Posted it will be interesting to follow as you find solutions.
        All The Best
        Paul
        Signature

        Making Lemonaide... Skydivedad's Blog

        {{ DiscussionBoard.errors[1075591].message }}
        • Profile picture of the author Kevin Riley
          I'm using CloudFront to distribute Amazon S3 hosted videos and the upload speed is very fast. It's made a huge difference over just distributing directly from S3.
          Signature
          Kevin Riley, long-time Warrior living in Osaka, Japan

          {{ DiscussionBoard.errors[1075635].message }}
          • Profile picture of the author Andy Jenkins
            Brother eHicks, this is an encoding problem.

            Tell me what app you're encoding in, and what your original source file is.

            Is it Live Full Motion Video, or a screen capture?

            BTW, you said "I rendered a video 320x240, frame rate = 25PAL, bit rate = 192k, audio = AAC - 44.1 - 32k (which sucks, btw)."

            192k AAC Audio is SUPER HIGH Fidelity for Web Video class Audio. That's about 25% of your overall file size right there.

            AAC is heroic when it comes to retaining Fidelity. All of the StomperNet videos that I did had multi-track scores and sound effects, and the encoding in AAC was 96k Stereo.

            Lemme know what you're shizzle is and I'll try to help ya out.



            AJ
            Signature
            www.AndyJenkinsBlog.com

            "Shakespeare didn't have a word-processor. When we got word-processors, we didn't get Shakespeare"
            {{ DiscussionBoard.errors[1075685].message }}
            • Profile picture of the author Asher
              Originally Posted by Andy Jenkins View Post

              Brother eHicks, this is an encoding problem.

              Tell me what app you're encoding in, and what your original source file is.

              Is it Live Full Motion Video, or a screen capture?

              BTW, you said "I rendered a video 320x240, frame rate = 25PAL, bit rate = 192k, audio = AAC - 44.1 - 32k (which sucks, btw)."

              192k AAC Audio is SUPER HIGH Fidelity for Web Video class Audio. That's about 25% of your overall file size right there.

              AAC is heroic when it comes to retaining Fidelity. All of the StomperNet videos that I did had multi-track scores and sound effects, and the encoding in AAC was 96k Stereo.

              Lemme know what you're shizzle is and I'll try to help ya out.



              AJ
              Hia Andy,

              Nice to see you helping out other people on the WF.

              Still don't know what happened behind the scenes
              with you and StomperNet but I guess I'll find out in
              due time.

              (Sorry, OP for getting off track a bit here)

              Asher

              EDIT: Guess I found out why after checking out your
              blog =)
              Signature
              {{ DiscussionBoard.errors[1075845].message }}
  • Profile picture of the author IM Ace
    Kidino
    the m3 solution using the link you have given appeals me, but the link gives plans for home movie makers. For professionals, the pricing is much higher.
    Further, I do not see how to approach the page link you have provided from the main domain if someone needs to find your linked page on their own. Kind of mystery!
    Let me know if you have used m3 and your feedback.
    Signature
    I hear and I forget. I see and I remember. I do and I understand.
    {{ DiscussionBoard.errors[1073794].message }}
  • Profile picture of the author Andy Jenkins
    @Asher - Yes Yes, sorry for the long read. Hope it made sense.

    I've always liked this place, but when I was the StomperDude, I didn't have enough time to make a meaningful contribution anywhere else but there.

    Now that I'm unemployed....

    Signature
    www.AndyJenkinsBlog.com

    "Shakespeare didn't have a word-processor. When we got word-processors, we didn't get Shakespeare"
    {{ DiscussionBoard.errors[1075949].message }}
    • Profile picture of the author Asher
      Originally Posted by Andy Jenkins View Post

      @Asher - Yes Yes, sorry for the long read. Hope it made sense.

      I've always liked this place, but when I was the StomperDude, I didn't have enough time to make a meaningful contribution anywhere else but there.

      Now that I'm unemployed....

      Halfway down that post... I thought I was reading a
      salesletter for Andy's Video Marketing Secrets. :p

      Nevertheless, glad to know everything's alright
      (thank God for 2 RN's, huh?) and hope to see you
      around more often =)

      Asher
      Signature
      {{ DiscussionBoard.errors[1075972].message }}

Trending Topics