EnterpriseTube, CIO and IT Leadership

VIDIZMO | Video Hosting on AWS

A woman using her laptop
Video Hosting on AWS: Services, Setup and Streaming
7:54

Amazon Web Services (AWS) is the leading cloud provider and a great option to host your data: including videos. However, hosting video is different than any other form of data, as you would want to make large video files easily playable on any device, through the browser under varying bandwidth conditions.

To do so, you need to perform multiple workflows on your videos such as transcoding, adaptive bitrate streaming and caching, all of which are thankfully provided by various AWS services.

If you are here, you are probably looking to host and create an on-demand (YouTube-like) library with videos stored on an AWS S3 storage. There are two ways you can go about this:

  • Build your own solution by integrating various AWS services at the backend.
  • Or choose to purchase an already developed web application that utilizes various AWS services at the backend, making the process for the user as easy as it is on YouTube.

In this blog, we will discuss the second option. To be more precise, our product VIDIZMO EnterpriseTube, which is a YouTube-like portal that allows you to upload and manage videos on AWS S3, while using various AWS media services to keep videos secure and make them readily playable through the browser on any device.

It allows you to create an on-demand video library where users from your organization can remotely access videos by signing in, and you can also host videos on your website publicly to stream them to anonymous users.

VIDIZMO EnterpriseTube allows you to do more than just hosting your videos on AWS and streaming them.

  • It also allows you to securely stream videos, define access for each video on a user and group level, and the permissions of users within the system that can be synced with your IAM system (through SCIM).
  • You get detailed video sharing capabilities, where you can share videos through multiple tokenized URLs for a single video and expire access when needed. You can share videos with guests or users in your organization with limited views or time duration of availability.
  • You can define policies as to how videos are used; restrict sharing, downloading, embedding etc.
  • You can add interactive elements to videos such as quizzes, surveys, handouts etc.
  • The video portal and player provided by the application is brandable such that you can use your own colors, fonts and layout.
  • You can integrate with existing IT systems to ingest content – from Zoom, MS Teams etc. or embed your videos easily in other systems such as your LMS.
  • You can create multiple portals for multiple departments, and this way access to video content can be segregated. Each portal can have its own billing, integrations and even a different S3 storage can be configured if needed.
  • Lastly, VIDIZMO is available on the AWS marketplace.

See a Live Demo of  What You Can Create Using VIDIZMO

We Offer Much More!  Learn About All Features

The AWS Services Behind Video Hosting

VIDIZMO EnterpriseTube uses a range of services to allow you to securely host videos and stream them to your audiences. An overview of the services used and how they can benefit you is discussed below.

AWS Architecture Diagram for Video Hosting

AWS S3

AWS’ Simple Storage Service (S3) is where your videos and related data are stored. By storing your videos on S3, you get the following:

  • Robust Security: Data stored on S3 is protected at-rest using industry-leading security standards.
  • Scalability: You can easily and quickly scale up or down based on your requirements.
  • Data Replication: Meet your compliance requirements, Recovery Time Objectives (RTO), Recovery Point Objectives (RPO), by utilizing various data replication features.
  • Better Cost Management: You can move non-frequently used video data to low-cost archival storage; Amazon S3 Glacier and S3 Glacier Deep Archive.

AWS Media Services

AWS Media Services enable you to perform all video-related workflows to create rich live and on-demand viewing experiences for your audiences.

  • Video Transcoding: This allows you to host videos with multiple renditions to enable playback on a range of devices and even in low bandwidth conditions.
  • Prepare Video for Delivery: This service packages your videos into modern streaming protocols such as HLS, MPEG-DASH, and Microsoft Smooth Streaming, to enable playback on a range of devices.
  • Video Security In-transit: To protect video from cyberattacks during delivery, this service secures your video using TLS or DRM.

Read More on Transcoding Videos in AWS.

AWS Transcribe

AWS Transcribe service uses AI to convert audio to text. This helps in generating closed captions and transcripts for your videos. It also allows you to improve search by enabling you to go beyond the basic title and description search, and quickly find videos through spoken words. Moreover, AWS Transcribe supports a wide range of languages, which helps you reach global audiences.

AWS Rekognition

AWS Rekognition allows you to analyze your video data using AI. You can use it to detect and index faces, objects, on-screen text, and topics in videos. This technology greatly helps in searching for that one video amongst a library of 1000s.

Amazon CloudFront

Amazon CloudFront is a fast and highly secure CDN, which you can utilize to cache your videos and reduce video load times. It ranks amongst the top CDNs in terms of performance tests by CDN Perf. Moreover, Amazon CloudFront serves content from points of presence (PoPs) around the world to ensure optimized global video delivery.

 

How to Stream Video from Amazon S3

Amazon S3 stores video well, but it is object storage, not a streaming server. A link to an MP4 in a bucket plays as a progressive download of one file at one quality. The browser can skip ahead with HTTP range requests if the file is web-optimized, but it cannot drop to a lower quality when the connection slows. A viewer on a weak connection buffers, and a phone receives the same full-resolution file as a desktop.

A presigned S3 URL can open one object for a limited time. An adaptive stream, though, is a playlist plus many short segment files, so per-object links do not scale to it.

Streaming from S3 adds three layers on top of the storage:

  • Packaging. The source is transcoded into several renditions, cut into short segments and described by an HLS or DASH manifest, so the player can switch quality as bandwidth changes.
  • Delivery. A CDN caches the segments at edge locations near viewers, so playback starts quickly and holds up under load.
  • Access control. Signed, expiring URLs or cookies replace open object links, so a copied address stops working.

Building the Pipeline Yourself

A common build on AWS uses AWS Elemental MediaConvert to transcode each upload into HLS or DASH and write the output back to S3. An AWS Lambda function, triggered when a file lands in the bucket, starts the job. Amazon CloudFront serves the segments, with origin access control keeping the bucket private and signed URLs or signed cookies deciding who can play.

S3 has no built-in video player, so the page also embeds a web player such as Video.js, hls.js or Shaka Player, since not every browser plays HLS natively.

This runs entirely in your AWS account. The tradeoff is operational: each service has to be configured, secured, monitored and maintained, and the result is playback only. Search, permissions, sharing, analytics and a portal for non-technical users are separate builds.

When a Platform Fits Better

A hand-built pipeline suits a contained project with engineers to run it. A platform suits video that has to be secured, searched and governed as well as played, or that several teams will use.

VIDIZMO EnterpriseTube, built on the VIDIZMO Nexus platform, can use an S3 bucket in your own AWS account as its storage and can transcode through AWS Elemental MediaConvert into an adaptive ladder of up to nine renditions. For video already in a bucket, an Amazon S3 connector pulls it into the library on a schedule, then leaves, moves or deletes the source file as you configure. Metadata stored on the S3 objects becomes searchable attributes. Media URLs are signed and expire, and the player renews them during playback.

Benefits of Hosting Video on AWS Cloud

By utilizing AWS technologies, you can benefit from the rapid innovations offered. Here’s an overview of a few benefits of video streaming in AWS.

Built with the Highest Standards for Data Security

Data is encrypted at rest and in-transit using industry standard data encryption and key encryption methods. All AWS customers get DDoS protection (layer 3 and 4 attacks) by default through AWS Shield Standard. Not only that, but AWS has a world-class team of security experts monitoring the systems 24x7 to protect your content. Read more about AWS Security.

AWS Cloud Covers a Range of Compliance Certifications

Host your video data in data centers that cover major compliances including PCI-DSS, HIPAA/HITECH, FedRAMP, GDPR, FIPS 140-3, and NIST 800-171, and more. Read more on compliances offered by AWS.

Available Around the Globe

AWS datacenters and services run in regions and availability zones worldwide, with points of presence for edge caching. You can read more on AWS' global infrastructure here.  

 

 

VIDIZMO – Utilize AWS Services for Video Hosting

Rather than getting into the complexity of developing of your own application, you can opt for VIDIZMO EnterpriseTube to conveniently host and stream videos in AWS. Feel free to contact us, and our team will be happy to guide you. You also get to benefit from our free trial to experience hands-on as to how easy it is to get started on streaming videos.

Contact Us

You can also visit our website to learn more about the different features we offer when it comes to video streaming and management.

 

FAQ

Frequently Asked Questions

Can you stream video directly from an S3 bucket?

You can play a video file from S3, but not stream it adaptively. S3 is object storage, so a link to an MP4 plays as a progressive download of one file at one quality. Adaptive streaming needs the video transcoded into HLS or DASH renditions, usually delivered through a CDN such as Amazon CloudFront, with signed URLs or cookies controlling access.

How do you stream video from AWS S3?

Transcode the source into HLS or DASH renditions with AWS Elemental MediaConvert, store the output in S3, and deliver it through Amazon CloudFront with origin access control and signed URLs or cookies. Play it in a web player such as Video.js, hls.js or Shaka Player. A video platform such as VIDIZMO EnterpriseTube can run these steps for you while using an S3 bucket in your own AWS account for storage.

Is Amazon S3 good for video hosting?

S3 is a durable, scalable place to store video files and their renditions, with lower-cost storage classes for video that is rarely watched. On its own it does not transcode, package adaptive streams, cache at the edge, or provide a player, search or viewer permissions. Those come from other AWS services or from a video platform that uses S3 as its storage.

TopicsEnterpriseTubeCIO and IT Leadership

You may also like

What Is a Real-Time Crime Center? A Guide for Cities and Counties

What Is a Real-Time Crime Center? A Guide for Cities and Counties

Somewhere in the last two years, someone probably asked your department whether it should have a real-time crime ...

Staffing a Real-Time Crime Center When Software Does the Watching

Staffing a Real-Time Crime Center When Software Does the Watching

Most chiefs who hear a pitch for a real-time crime center ask the same question before any other, which is whether they ...

RTCC, EOC or Situational Awareness Center: What Each Room Is For

RTCC, EOC or Situational Awareness Center: What Each Room Is For

Walk into a real-time crime center, then into a city's emergency operations center, and you will see much the same ...

See all posts

See it on your own content

Tell us what you are trying to solve and we will show you how it works on your infrastructure.