This article shows you how to:

Obtaining the Amazon AWS access credentials

If you don't want to protect your video against unauthorized downloads, you can skip to the next section of this document.

  1. First login into your Amazon AWS at https://console.aws.amazon.com/ and then click "IAM - Secure AWS Access Control" in the menu:
    amazon aws menu iam
    Amazon AWS Menu
  2. Once the IAM screen opens, go to "Users" -> "Create New Users":
    amazon iam menu
    Creating new user in IAM
  3. Enter your IAM user name, make sure "Generate an access key for each User" is on and click "Create":
    amazon iam create user
    Creating new user in IAM
  4. Once the user is created, you will see a confirmation window. Click "Show User Security Credentials" in this window, that will shows you the "Access Key ID" and "Secret Access Key":
    amazon iam show user security credentials
    Be careful to copy the access keys
  5. Copy these keys and paste them into "FV WordPress Flowplayer Settings" -> "Amazon S3 Protected Content" on your website in a new browser tab. You will also need Amazon bucket name and the location of your bucket which we will create in next section of this guide:
  6. amazon s3 1

    And paste them into FV Flowplayer settings right away
  7. Now that you have stored the keys, you can go back to your "Create User" dialog and click "Close Window". There will be one more confirmation window - it warns you that it's very important that you store these credentials, as you won't be able to get them later. You will have to create a new set of access keys for the user if you have lost these.
    amazon iam credentials copied
    You won't get these credentials of Amazon again!
  8. Last step is to make sure this user has read-only access to the files only. Once you close the above window, select your new user from the list, click the "Permissions" tab and "Attach User Policy" button:

    amazon iam permissions
    Attaching User Policy
  9. Next select the desired permissions. Our player only needs to be able to read the video files, so select "Read Only Access":

    amazon iam permissions select
    Select Policy Template
  10. Next windows lets you enter custom settings for the policy, just click "Apply":

    amazon iam permissions apply
    Apply Policy
  11. This is what you will then see in the "Permissions" tab:

    amazon iam permissions in effect
    Amazon IAM User Permissions in effect
  12. That's it. Now the access keys can be used to play private videos from your Amazon S3 account.

Uploading the files and setting their properties

There are tools which allow you to upload these files without using the web browser, but for smaller number of files you can just use the web interface:

  1. First login into your Amazon AWS at https://console.aws.amazon.com/ and then click "S3" in the menu:
    amazon aws menu s3
    S3 in Amazon AWS Menu
  2. Next you have to create your first bucket where you put your videos:

    amazon s3 create bucket
    Create your first bucket
  3. Select your bucket name (it must be unique), select your location and click "Create":

    amazon s3 create bucket dialog
    Enter the bucket name and hit "Create"
  4. Once the bucket is created, you need to open it to upload files:

    amazon s3 bucket ready
    List of your Amazon S3 buckets
  5. If you are interested in the file protection, also enter the bucket name an its location into "FV WordPress Flowplayer Settings" -> "Amazon S3 Protected Content" -> "Amazon Bucket". Obtaining the access keys is described in the Obtaining the Amazon AWS access credentials section of this document.
    1. We check the video length and make sure the link expiration time is big enough for the video to buffer properly.
    2. If you use a WordPress cache plugin, make sure you set the "Default Expire Time" to twice as much as your cache timeout and check "Force the default expiration time" checkbox. Otherwise the video source URLs in the cached HTML will expire and the videos won't be playable. This way the video duration won't be used for calculation of expiry time.
    3. If you only use the protected Amazon S3 videos only for your membership section, make sure the cache plugin is turned off for logged in users :
      • If you use Hyper Cache, it already excludes logged in members from cache (read why we recommend Hyper Cache over other plugins)
      • If you use WP Super Cache, turn on Settings -> WP Super Cache -> Advanced -> "Don’t cache pages for known users."
      • If you use W3 Total Cache, make sure Performance -> Page Cache -> "Don't cache pages for logged in users" is on
    amazon s3 2
  6. Once your bucket opens, you will see there are no files yet. You need to click "Upload":

    amazon s3 bucket opened
    Upload files
  7. You need to pick the files from your computer and click "Start Upload":

    amazon s3 bucket upload
    Start uploading the files
  8. The files starts uploading, you will see a progress bar:

    amazon s3 bucket uploading
    File uploading...
    amazon s3 bucket uploaded
    File successfully uploaded!
  9. Once the file is uploaded, you will see it in the bucket. Click its name and the open its properties:

    amazon s3 bucket file
    Checking file properties
  10. In the "Properties" pane, you can see the video URL ("Link" field) and various file properties:

    amazon s3 file properties
    Amazon S3 File Properties

    Copy this URL, you will put it into the [fvplayer] shortcode.

  11. You need to open the Permissions section and make sure "Everyone" is allowed to download and view the file. If it's not so, you can add "Everyone" by clicking"Add more permissions", then selecting "Everyone" from the drop down menu and checking "Open/Download" and "View Permissions". Don't forget to click "Save".
  12. On contrary, if the file needs to remain private, make sure only your account is present in list of permissions and it has all the access. Obtaining the access keys required for playback of private files s described in the Obtaining the Amazon AWS access credentials section of this document.

    amazon s3 file permissions private
    Private File Permissions
  13. Last step, double check that the file has the proper Mime type selected. Do so it the "Metadata" tab. This ensures maximum video compatibility. Here are the correct Content-Types (mime types) for various file extensions. It should not be application/octet-stream:

    .mp4 video/mp4
    .webm video/webm
    .ogv video/ogg
    .m3u8 application/x-mpegurl
    .m4v video/x-m4v
    amazon s3 file meta
    Changing Meta Type for file

    In case your Mime type is not set up properly, please follow our guide.

  14. Fix the Content-Type if needed, save the changes. Now you can finally copy the file URL (see step 10. above) and just put it into our shortcode. Read out basic FV Flowplayer guide to see how to insert videos.

  15. If the video doesn't play, make sure you check it out when you are logged in as admin. You will notice a message in the top left corner of the video. If it's green and "Video OK", it means our video checker found no issues.

    fv flowplayer video error
    FV Flowplayer - Admin Video Checker
  16. Clicking that error reveals error details.

    • Access to video forbidden (HTTP 403) - typically means that your video file is private and there are no keys for the bucket. Either make the video public or make sure you setup the access keys.
    • The AWS Access Key Id you provided does not exist in our records - means that you provided a bad access key
    fv flowplayer video error details
    FV Flowplayer - Admin Video Checker - Details
  17. That's it, the video is up and plays!  The video URL is visible in the page HTML, but it's only valid for a short time (depending on your preset default expiry time) , so the video can't be hotlinked.