Qencode + AWS S3

Transcode and deliver video directly to your S3 buckets — one API call.

Overview

What This Integration Does

Qencode integrates directly with Amazon S3 as both a source and destination for video transcoding jobs. Pull source video from any S3 bucket, transcode it with any Qencode feature, and write the output — HLS, DASH, MP4, thumbnails or other — back to S3 automatically. S3’s global availability, lifecycle policies, and direct integration with CloudFront CDN make it the most common storage backend for Qencode customers.

Architecture

How the Integration Works

Source

S3 bucket or URL

Qencode pulls your source video from an S3 bucket (or any URL).

Process

Transcode & package

Qencode transcodes, encrypts, and packages the video per your job configuration.

Deliver

Destination bucket

Encoded files are written directly to your destination S3 bucket.

Serve

Via CloudFront

Serve via CloudFront CDN, or any HTTP endpoint pointing to the S3 bucket.

Getting Started

Setup Steps

  1. Create your storage bucket

    Create an S3 bucket in your preferred region. Enable versioning if you need rollback capability.

    This step is completed in the AWS Console — see AWS S3 documentation

  2. Configure access credentials

    Create an IAM user with s3:PutObject and s3:GetObject permissions scoped to your video bucket. Generate an access key and secret.

    Store your access key and secret as environment variables. Never commit credentials to source control.

  3. Add credentials to Qencode

    In Transcode Media, go to Third-Party Storage and select your AWS provider. Enter your Bucket Name, Region name, Access Key ID, and Secret Access Key. Enable Public permissions or Reduced redundancy only if needed.

  4. Set destination in your transcode job

    In your API request, set the destination parameter to your S3 bucket URL with the desired output path.

  5. Verify the output

    After the job completes, check your S3 bucket for the encoded files. Qencode sends a webhook notification when writing is complete.

Implementation

Code Example

Request Example

MP4 output to S3

{
  "query": {
    "source": "https://s3.[region].amazonaws.com/my-source-bucket/folder/input.mov",
    "format": [
      {
        "output": "mp4",
        "destination": {
          "url": "s3://s3.[region].amazonaws.com/my-bucket/folder/output.mp4",
          "key": "YOUR_ACCESS_KEY",
          "secret": "YOUR_SECRET_KEY",
          "permissions": "public-read",
          "storage_class": "REDUCED_REDUNDANCY"
        }
      }
    ]
  }
}

Replace placeholder credentials with your actual AWS access key and secret. Use environment variables in production.

For a step-by-step walkthrough, see Tutorial: S3 Integration

Pricing

Cost Context

Storage costs at AWS

  • S3 Standard runs approximately $0.023/GB/month
  • For video archives accessed infrequently, S3 Glacier Instant Retrieval drops to $0.004/GB/month
  • Pair with CloudFront CDN for delivery at $0.085/GB for the first 10 TB
For current rates, see AWS S3 pricing

Estimated total cost per hour of 1080p video

Qencode transcoding (HLS, H.264)

~$1.80


S3 storage (1 GB encoded output)

~$0.023/mo


CloudFront delivery (100 viewers × 1 GB)

~$8.50

Estimates based on standard configurations. Actual costs vary with codec, resolution, and encoding features. See Qencode pricing

We love creating powerful solutions that are aligned with the needs of your business.

Please send us a message if you have a question or Schedule a call for a demo to discuss your integration.

Let's talk

First Name
Last Name
Company
Email
Your Message

Contact us with any questions. We'd love to help.

Los Angeles, CA - (HQ)

San Francisco, CA

New York, NY