Streaming Onboarding
New to streaming and don't know where to start? This is the place for you!
We have collected links to good articles to read if you would like to know more about streaming.
Starting point
-
Internet Video Streaming — ABR part 1: Part 1 of a series of educational posts about ABR streaming
-
Internet Video Streaming — ABR part 2: Part 2 of a series of educational posts about ABR streaming
-
Internet Video Streaming — ABR part 3: Part 3 of a series of educational posts about ABR streaming
-
Video Encoding — Compression and Resolutions: This tutorial describes the concepts of encoding techniques used in today’s video streaming
-
Securing OTT Content: The technology behind securing OTT content
-
Securing OTT Content - Watermarking: The technology behind watermarking
-
Securing OTT Content - DRM: The technology behind DRM
-
OTT Content Delivery: OTT content delivery networks and distribution methods
-
OTT Content Delivery– Multi CDN: This is the second CDN article focusing on Multi CDN technologies
-
OTT Content Delivery– CDN Alternatives: In this third and concluding article about OTT content delivery, we explore various types of CDNs, alternatives to CDNs, and aspects when building or buying CDNs
-
Adaptive Streaming, a brief tutorial: A tutorial in Adaptive Streaming. NB: Old article from 2011, but provides interesting and relevant historical perspective on the streaming formats.
-
Back to basics: HTTP video streaming: HTTP streaming. HTTP video streaming is an underlying technology used to bring content to internet-connected devices
General streaming technology
-
Example of Microservices for a Streaming Service: This article go through some examples of performant and scalable microservices that you would find or need in a streaming service
-
Server-less Video Backend: How a completely server-less video backend on AWS would look like
-
Building Serverless Media Functions: How a serverless infrastructure for media functions can be implemented (1/3)
-
Deployment of a Serverless Media Function: How to deploy serverless infrastructure for media functions with Kubernetes as container orchestrator (2/3)
-
Serverless Media Function on Amazon EKS: How to deploy serverless infrastructure for media functions using Amazon Elastic Kubernetes Service (Amazon EKS) (3/3)
-
Cloud-based OTT Only Playout: How could a broadcast solution look like if you designed it for only OTT/Internet distribution?
-
Server-less OTT-Only Playout: A fully “server-less” OTT-only TV channel playout
-
Server-less Just-in-Time Packaging with AWS Fargate and Unified Origin by Unified Streaming: A server-less just-in-time packaging origin, using AWS ECS Fargate tasks running Unified Origin as just-in-time packager and with content stored on an AWS S3 bucket
-
Demystifying HTML5 Video Player: Under the hood of a HTML video player for video streaming
-
How video streaming works on the web: An introduction: An introduction to video streaming in JavaScript
-
Cloud Gaming: Explaining what Cloud Gaming is, what advantages and disadvantages it has compared to normal gaming
Video Quality
-
Quality of Experience in Streaming: Quality of Experience (QoE); its definitions and influence factors.
-
Video Quality Assessment: Video quality assessment; from both a subjective and objective point of view.
-
The Challenge to Maintain and Translate Creative Visual Ideas: The steps in the production and distribution chain where the image quality can be affected
-
Keep an Eye on the Video Quality: A walk through how to use VMAF for measuring the perceptual visual quality of transcoded video
-
Collection of VMAF Resources A collection of resources covering VMAF
-
AutoVMAF docsEyevinn AutoVMAF is a toolkit to automatically encode a video file in multiple bitrates and resolutions, and then perform automated VMAF measurements on all of them
-
Testing your Video Player with Bad Streams The stream corruptor service can be used to apply corruptions and faults to MPEG-DASH manifests and segment requests in a controlled manner and on the fly
Low-latency streaming
-
Achieving low latency video streaming: Overview and example of low-latency streaming
-
Using LL-HLS with byte-range addressing to achieve interoperability in low latency streaming: This article investigate the problems solved with range-based addressing, the requirements it brings to operate effectively, and the benefits we can gain by deploying it at scale
-
Low latency HLS: How to achieve low-latency HLS streaming
-
Ultra Low latency CMAF: Best Practices for Ultra-Low Latency Streaming Using Chunked-Encoded and Chunk-Transferred CMAF
-
Ultra Low Latency Video Streaming: The Current State: A good summary of the technology around low-latency streaming
-
dash.js – Low Latency Streaming with CMAF CMAF, the mechanism it provides to do low latency live streaming, and how this works in combination with dash.js
-
WebRTC for the curious: WebRTC For The Curious is an Open Source book written for those that are always looking for more
-
Standardized WebRTC based broadcast streaming Standardized WebRTC based broadcast streaming with support for WHIP and WHEP
-
WHIP Endpoint Library now supporting an origin and edge SFU topology: In this blog post we will walk you through this SFU-topology setup based on new and existing standards to achieve a standardized WebRTC based one-to-many (broadcast) video distribution
-
Example setup of a combined MPEG-DASH and WebRTC distribution: Available in a feature branch of DASH-IF’s Reference Player there is now experimental support for switching between an HTTP-based stream and a real-time WebRTC based stream. Follow this guide if you want to try it out. All based on open source components.
-
Cloudflare WebRTC/WHIP/WHEP:WebRTC live streaming to unlimited viewers, with sub-second latency
Ad-insertion
-
SCTE-104/35 and Beyond: A Look at Ad Insertion in an OTT World: Overview of how a traditional ad-insertion workflow can be used as a basis for an OTT system
-
Server-side ad insertion with DRM: Server-side ad insertion (SSAI) in comparison with client-side ad insertion
-
Understanding Server-Side Dynamic Ad Insertion: In this post we’re explaining the principles behind Server-Side Dynamic Ad Insertion technology.
-
Challenges with Server-Side Ad Insertion: In this post we’re explaining the challenges that comes with Server-Side Dynamic Ad Insertion.
-
Understanding Real-time Bidding for AVOD Services The technology that makes real-time bidding marketplaces (or programmatic buying) possible
-
The State of Server-Side Ad Insertion 2018: For years, SSAI has promised targeted advertising in a seamless stream that defeats the ad blockers. Has the promise finally been realized?
Virtual Channels / FAST
-
Create your own FAST Channels based on VOD2Live Technology and Open Source Components: VOD2Live is a technology to produce FAST channels of higher video and audio quality to a considerable lower cost than traditional methods. Instead of encoding and transcoding a live channel 24/7 it utilizes already transcoded and available VODs.
-
FAST Channels with Dolby Atmos enabled by VOD2Live Technology: The VOD2Live technology removes the need for redundant transcoding and packaging by reusing already transcoded and available VODs. Not only reduces this the cost to power 24/7 channels, it allows you to offer 24/7 channels of higher video- and audio-quality.
-
AI Generated Anchors with FAST Channels based on VOD2Live: With this blog post we want to demonstrate the idea of using the latest advancements in open AI technology to add AI generated anchors in automatically generated FAST channels.
Codecs and containers
-
Making Video Intuitive: Making Video Intuitive: An Explainer
-
A hands-on introduction to video technology: A gentle introduction to video technology
-
Basic GOP explained: The concept of a Group of Pictures (GOP)
-
H.264 is Magic: H.264 and video compression in general
-
How Codecs Work Tutorial: A Video Codecs Introduction
-
AV1 decoder model: This post can serve as an introduction to the parts of the AV1 specification related to the decoder model and levels
-
Quality based encoding: Introduction to quality based encoding
-
An ffmpeg tutorial: A crash course on how to use FFmpeg
-
Fun with Container Formats – Part 1: Terminology and the handling of containers in players
-
Fun with Container Formats – Part 2: MP4 and CMAF container formats
-
Video Coding Basics: Cover the basic building blocks of encoders and decoders which are common to all popular video coding standards like h.264/AVC, h.265/HEVC, VP8, VP9, AV1 or even h.266/VVC
-
HTTP/3 explained: HTTP/3 and its underlying protocol: QUIC. Why, how they work, protocol details, the implementations and more
How To Guides
-
How to build your own streaming video HTML player: Under the hood of a HTML video player
-
Generate MPEG-TS from file with ffmpeg How an MPEG-TS multicast stream can be generated with ffmpeg by looping an MP4 file
-
Using ffmpeg and SRT to Transport Video Signal to the Cloud: Using SRT (Secure Reliable Transport) and ffmpeg to transport the video signal to the cloud
-
SRT to RTMP container to re-stream to Facebook, Twitch, Youtube and more: In this blog post we will show how you can use OBS to stream to multiple platforms
-
Loop file and generate multiple video bitrates muxed in MPEG-TS with ffmpeg How to generate an MPEG-TS containing multiple video streams each of different resolutions and bitrates
-
Javascript Libraries for HLS Manifest Manipulation: A description of a couple of Javascript (NodeJS) libraries that can be used when doing HLS manifest manipulations
-
Streamline, a reference end to end live streaming system: Streamline, a reference system design for a premium quality, white label, end to end live streaming system.
-
Video Debug Tools: A collection of tools, topics, and code snippets that may help video devs debug browser-based video playback.
UHD and HDR
- HDR in depth: This article consider the difference between SDR and HDR and examine the main HDR standards
- Inside our UHD workflow: This post from BBC introduces the key components of a UHD live stream.
- World Cup 2018 in UHD HDR on BBC iPlayer Experiences from BBC how to develop UHD HDR on BBC iPlayer for World Cup
AI and Machine Learning
-
How to Choose a Video AI Platform and Evaluate its Results: Meet the big four players in the video artificial intelligence space, then learn how they can speed up time-consuming tasks like generating metadata or creating transcriptions.
-
Personalize the Experience: How to build a simple recommendation service.
Hulu Live OTT Service
- The Anatomy of a Live OTT Service The “Anatomy Of” series is a collection of visuals that give a behind the scenes look at the systems that power over-the-top television.
- The Challenges of Live Linear Video Ingest - Part One Live Versus On-Demand System Requirements
- The Challenges of Live Linear Video Ingest — Part Two System Design and Implementation
- The Challenges of Live Linear Video Ingest — Part Three Key Learnings
Videos
-
Streaming Tech TV+: Videos from Streaming Tech Sweden as well as other sources such as Northen Waves TV
-
The Broadcast Knowledge The Broadcast Knowledge links to free educational events, meetings, lectures, webinars and other free resources focused on the Broadcast Industry
-
Demuxed videos: Demuxed is annual convention of engineers talking about video technology
Misc collection of streaming information
- The Netflix Tech Blog: Collection of Netflix Tech Blogs
- Disney Streaming Services Tech Blog: Collection of Disney Tech Blogs
- Eyevinn Video Dev-Team Blog: Video Developer Blog by Eyevinn Video-Dev Team
- Dolby Tech Blog: Tech Blog by Dolby.io
- MUX Tech Blog: Mux Blog - Video technology and more
- Vimeo Engineering Blog: How Vimeo Engineering tinker, build, and dream up all-new things for Vimeo.
- Fox Tech Blog:Fox Tech Blog - from the engineers at Fox
- Tubi engineering: Engineering blog for Tubi TV
- Twitter engineering: Buildning the new twitter.com
- Facebook Video engineering: The Video Engineering team at Facebook is responsible for the end-to-end video experience, including upload, encoding, playback, and distribution across mobile and web
- Edgeware Tech Blog: Edgeware Tech Blog - from the Edgeware engineering team
- Fraunhofer FOKUS Video Development Blog: Technical Articles from the Fraunhofer FOKUS Business Unit Future Applications and Media (FAME)
- SVT Tech Blog: Tech Blog from SVT, Swedens public service broadcaster
- Zattoo Tech Blog: Developing, engineering and designing the future of television.
- Joyn Tech Blog: Engineering blog for Joyn
- Crunchyroll Blog: Chrunchyroll blog
- Caffeine Dev Blog: Caffeine Tech Blog
- The streaming Learning Center: By Jan Ozer
- Leonardo Chiariglione Blog: Leonardo Chiariglione Blog Feed
- Awesome Video An awesome list of learning video streaming resources
- List of streams: Community list of public test streams for HLS and DASH
- HLS.video Home for all video streaming related resources
- OTTBall A platform where content and code related to the OTT industry is created and shared
- Video Streaming Cheatsheet A Cheatsheet of Terms used within the Video Streaming Industry, taking contributions on Github.