Intro & Learning
Learn video development with 206 curated courses, tutorials, articles, and beginner guides to streaming, encoding, and playback on Awesome Video.
Subcategories
- Books & Courses
- Case Studies & Whitepapers
- Community Blogs & Forums
- Encoding & Transcoding Guides
- Learning Resources
- Player Development Documentation
- Tutorials & Case Studies
- Video Streaming Tutorials
- Webinars & Conference Talks
Resources
- Abhik Sarkar — Interactive H.264 GuideInteractive H.264 compression explainer with live-adjustable parameters and macroblock visualizations, by an independent expert.
- Codec Wiki — AV1 for DummiesIndependent codec-wiki AV1 getting-started guide covering the encoder pipeline and practical encoding tips.
- Fora Soft — Video Encoding courseFree 6-chapter course on video encoding: pixels, HDR, AV1/VVC, encoder internals, rate control, and quality metrics.
- Engineering at Scale — Internals of Video StreamingDeep-dive article on video streaming internals: frames, codecs, transcoding, temporal compression and rate control.
- Shaka Player — Welcome Tutorial (official dev docs)Official Shaka Player developer onboarding tutorial hub (JSDoc-generated), entry point for building with the library.
- Shaka Player — Architecture Tutorial (official dev docs)Official architecture diagrams and explanation of Shaka Player's Networking, Manifest, DRM, and Streaming engine components.
- hls.js API Docs (Hls class reference)Official generated API reference for hls.js's core Hls class, hosted on the project's own docs domain (not GitHub).
- MSEPrimer — Media Source Extensions TutorialCommunity-maintained primer on Media Source Extensions fundamentals: SourceBuffer, appendBuffer, manifest structure basics.
- Video.js — Plugin Development Guide (official)Official Video.js 8+ guide covering basic/advanced plugin architecture and lifecycle events.
- How We Scale Live Streaming for Millions of Viewers Simultaneously (Meta Engineering)Meta engineering case study on coordinated failover, dedicated link capacity, and multi-path geo-distribution for large-scale live broadcas…
- Ingesting Live Video Streams at Global Scale (Twitch Engineering)Twitch engineering case study on replacing static HAProxy routing with "Intelligest," a capacity/network-aware live ingest routing system a…
- Optimising CDN Cost and Enhancing Video Quality: A Zee5 Case StudyNamed-company case study on Zee5's use of AWS MediaConvert QVBR mode and VMAF-driven quality validation to balance CDN cost and video quali…
- Codec WikiCommunity-maintained reference documenting codecs and quality metrics (XPSNR, SSIMULACRA2, etc.), with definitions and practical usage guid…
- WebRTC-ExperimentA repository of WebRTC experimental demos by Muaz Khan, including source code for various real-time communication use cases (screen sharing…
- WebRTC SamplesA collection of WebRTC demos and sample applications illustrating real-time peer-to-peer video, audio, and data streaming in web browsers u…
- Elephants Dream (Open Movie)The first open movie from the Blender Foundation (2006). It's an animated short film widely used in the past as a standard test video for n…
- Tears of Steel (Open Movie)A Blender Foundation live-action/CGI short film (2012) released as open content. Often used as test material for visual effects, 4K streami…
- GalicasterAn open source lecture capture system often used with the Opencast platform. It provides an interface for recording multiple video sources…
- VideoHelpA comprehensive website offering tools, guides, and forums for video conversion, editing, and troubleshooting, popular among video enthusia…
- youtube-uploadA command-line Python script that uploads videos to YouTube using the YouTube Data API, facilitating automated or batch uploads.
- Per-Title Encoding: 5 Implementation Tips – BitmovinA Bitmovin guide that offers practical tips for implementing Per-Title encoding (content adaptive encoding) in a video workflow. It builds…
- Foundry Nuke (Non-commercial)Nuke is an industry-standard compositing tool. The Non-commercial edition provides free access for learning and personal projects, allowing…
- Avid Media Composer | FirstAvid's free tier of Media Composer, offering a subset of the professional editing tools for beginners. It's widely used in the film & TV in…
- YouTube Creator Academy – CaptionsA tutorial from YouTube's Creator Academy about adding captions and subtitles to videos. It explains how to create, upload, and auto-sync c…
- hls.js Low-Latency Playlist SimulatorAn online demo environment for hls.js where one can input a Low-Latency HLS playlist URL to test playback. Useful for testing LL-HLS stream…
- OpenTelemetry Video QoE Metrics (Article)An article on using OpenTelemetry (an open source observability framework) to collect and analyze Quality of Experience (QoE) metrics from…
- Video Annotator: Building Video Classifiers using Vision-LanguageNetflix Tech Blog on a framework for training ML models for video understanding. Describes an internal system to create video classifiers u…
- Netflix Video Quality at Scale with Cosmos MicroservicesA deep dive into Netflix's Cosmos platform and how its microservice architecture enables large-scale video quality improvements (like per-t…
- Rebuilding Netflix Video Processing Pipeline with MicroservicesNetflix Tech Blog post (part of a series) describing how Netflix migrated their video processing pipeline to a microservices architecture t…
- The Making of VES: the Cosmos Microservice for Netflix Video EncodingA Netflix Tech Blog article detailing the design and development of Netflix's Video Encoding Service (VES), a microservice in their Cosmos…
- FFmpeg Wiki: Streaming GuideAn official Wiki guide from FFmpeg explaining how to set up streaming using FFmpeg, including examples for streaming via RTMP to servers or…
- BigBlueButtonAn open source web conferencing system designed for online learning. BigBlueButton supports video, audio, slides, chat, and whiteboard, and…
- Demuxed Conference Talks (YouTube Channel)The YouTube channel for Demuxed, an annual conference for video engineers. Features recorded talks covering streaming protocols, codecs, pl…
- Bitmovin Tech BlogBitmovin’s blog features articles on video streaming, codec comparisons, encoding techniques, and industry trends in OTT delivery (by a pro…
- BBC R&D Blog (Research & Development)The BBC Research & Development blog where broadcast technology advancements are discussed. Includes articles on new video compression techn…
- Netflix TechBlog – Official BlogNetflix's engineering blog often covers innovations in video encoding, quality metrics, and streaming architecture that Netflix has develop…
- Stack Exchange – Video ProductionA Q&A community for video production and post-production. Topics often include editing, codecs, formats, and troubleshooting video workflow…
- CRF Guide (Constant Rate Factor in x264, x265 and libvpx)What is the Constant Rate Factor?
- Saving on Encoding and Streaming: Deploy Capped CRF – Streaming Learning CenterThis is the second in a five-part series on how to cut your encoding and streaming costs. The first article was Saving on Encoding: Adjust…
- Understanding Rate Control Modes (x264, x265, vpx)What is “rate control”? It’s what a video encoder does when it decides how many bits to spend for a given frame. The goal of (lossy) video…
- Can I use... Support tables for HTML5, CSS3, etcCan I use... Support tables for HTML5, CSS3, etc - Resource from caniuse.com
- HowVideo.worksHowVideo.works - Resource from howvideo.works
- About Frame Rates or Why 29.97?I recently remembered this popular post from my old blog. Since that blog no longer exists, I thought I would repost it here. Since I wrote…
- ffmpeg tutorialffmpeg tutorial - Resource from dranger.com
- FFmpeg Threads Command: How it Affects Quality and PerformanceSo, I received an email from an acquaintance that read, “I was curious if there is actually any benefit to a “threads=” type custom command…
- 3 Cases from a Video Expert: Encoding Basics3 Cases from a Video Expert: Encoding Basics — video development resource from medium.com.
- Video: HLS and DASH Multi-Codec Encoding & PackagingFree educational webinars, videos and other resources focused on the Broadcast Industry
- Best Practices for End-to-End Workflow Monitoring | Streaming Video AllianceBest Practices for End-to-End Workflow Monitoring | Streaming Video Alliance - Resource from streamingvideoalliance.org
- Fundamentals of Multimedia2022-02-17 (3rd Edition). Ze-Nian Li (Author), Mark S. Drew (Author), Jiangchuan Liu.
- The Good Parts of LibVLC2022-09-15. Finkel, Martin.
- Circles of Confusion2009-01-01. Roberts, Alan.
- Communicating Pictures2014-06-20 (1st Edition). Bull, David.
- Video Compression Handbook2018-07-03 (2nd Edition). Beach, Andy; Owen, Aaron.
- NetfixLet's build a Netflix.
- Video and containersNALU, Annex B, and Start Codes
- Introduction to H.264: (1) NAL Unit | Yumi Chan's BlogThis article is to introduce H.264 and provide a overview of NAL Unit. It also explains NALU header byte which contains the basic informati…
- Vittorio Giovara - Color Me Intrigued: A Jaunt Through Color Technology in VideoThis talk aims to shed light on colorspaces - what they are, how and why they work, why we should care about handling edge cases properly.…
- WildFiresVOD2Live Kevin Staunton-Lambert Solutions Architect R&D @kevleyski Wild Fire! How video engineers can help save lives www.switch.tv
- WebAssembly (Wasm)WebAssembly (Wasm) On the Edge Kevin Staunton-Lambert Solutions Architect R&D @kevleyski www.switch.tv Wasm)
- Encoding-for-HEVCA tool or resource for encoding-transcoding-guides.
- Guide to HEVC/H.265 Encoding and PlaybackHEVC's main advantage over H.264 is that it offers roughly double the compression ratio for the same quality. This means that a video file…
- OTT Content DeliveryOTT Content Delivery — video development resource from medium.com.
- How video streaming works on the web: An introductionNote: this article is an introduction to video streaming in JavaScript and is mostly targeted to web developers. A large part of the…
- x264 FFmpeg Options Guide - Linux EncodingA tool or resource for encoding-transcoding-guides.
- Video Streaming CheatsheetThe Video Streaming Cheatsheet is a double sided page, suitable for printing, that contains common terminology used in the video streaming…
- Streaming OnboardingNew to streaming and don't know where to start? This is the place for you! - Eyevinn/streaming-onboarding
- How to Set Audio Levels for VideoBad sound can easily ruin good footage. Use these tips when it comes time to set audio levels for video and film projects.
- Digital Video IntroductionA hands-on introduction to video technology: image, video, codec (av1, vp9, h265) and more (ffmpeg encoding). - leandromoreira/digital_vide…
- The Video InsidersVideo Insiders Podcast
- Video Coding Basics - How is this so efficient?An introduction to the basics of video coding
- Introduction to HTTP Live Streaming: HLS on Android and MoreThis article explains how HTTP Live Streaming works and demonstrates how to create an HLS player in Android.
- Guide to Mobile Video Streaming with HLSHTTP Live Streaming, also known as HLS, is the most common format used today for streaming video. If you're building a video streaming appl…
- A short history of video codingVideo coding is an essential component of video streaming, digital TV, video chat and many other technologies. This presentation, an invite…
- From Sys Admin to Netflix SRETalk by Jonah Horowitz, Albert Tobey What does it take to be a Netflix SRE? With tens of thousands of Linux instances in a distributed syst…
- HOW TO: View an HLS Stream in QuickTime or VLC – Softron Support DeskA tool or resource for video-streaming-tutorials.
- Streaming Live From the Battlefield: Military Video in 2019Metadata and low-latency video create a tactical advantage in intelligence-gathering and decision making. Discover why HEVC is gaining mome…
- Video in the War Zone: The Current State of Military StreamingFor the armed forces, streaming is a matter of national security. Here's an exclusive look at how the military, from analysts to ground tro…
- Back to Basics: Encoding Definition and Adaptive BitrateA tool or resource for encoding-transcoding-guides.
- Awesome Live StreamWebrtc && Nginx && DASH && Quic 学习资料收集,持续更新中.
- Quick Tutorial: How to Increase Volume in Audacity [2019 Update]How to increase volume in Audacity? This article will guide you to change volume in Audacity and its alternative tool. You can pick up one…
- FFmpeg and how to use it wrongI’ve been in the streaming media industry since 2008 and have seen a lot of misinformation regarding both FFmpeg and libx264. In this post…
- Video Encoding — Compression and ResolutionsWritten by: Boris Asadanin, Streaming Media Consultant at Eyevinn Technology
- HLS adaptive streaming tutorial with CloudFront & JW Player | Miracle TutorialsA step-by-step HLS adaptive streaming tutorial with CloudFront & JW Player in two parts. It is easier than you think. This tutorial presume…
- Internet Video Streaming — ABR part 2Internet Video Streaming — ABR part 2 — video development resource from medium.com.
- Internet Video Streaming — ABR part 1Internet Video Streaming — ABR part 1 — video development resource from medium.com.
- Advances in HTTP Live Streaming - WWDC 2017 - Videos - Apple DeveloperHTTP Live Streaming allows you to stream live and on-demand content to global audiences. Learn about great new features and enhancements...
- Ffmpeg Encoding CourseAn introduction to FFmpeg and its tools.
- SDK Development GuideContribute to rokudev/SDK-Development-Guide development by creating an account on GitHub.
- Ffmpeg Libav TutorialFFmpeg libav tutorial - learn how media works from basic to transmuxing, transcoding and more - leandromoreira/ffmpeg-libav-tutorial
- Demystifying HTML5 Video PlayerIn this post we will go under the hood of a HTML video player for video streaming. With the exception of Apple and their browser Safari, no…
- Demuxed 20162016 Demuxed talks & presentations
- Demuxed 20202020 Demuxed talks & presentations
- Http Video Streaming TroubleshootingA collection of fixes / problem solutions to HTTP video streaming - leandromoreira/http-video-streaming-troubleshooting
- Quantifying packaging overheadMux makes adding video to your app or website as easy as making a single API call. But behind the scenes is a large multistep process to an…
- GstWASMGstWASM is an open-source project that brings GStreamer development to the web using WebAssembly. It provides features like SDL2 for video…
- Video History Project by the Experimental Television CenterThe Video History Project is a dynamic platform that compiles an inclusive media history, featuring databases on people, tools, groups, and…
- Video CodecThis resource offers an in-depth look at video codecs, explaining their function, history, and the various standards that have been develop…
- Learned Scalable Video Coding For Humans and MachinesAn end-to-end learnable video codec that supports machine vision tasks in its base layer and input reconstruction for human viewing in its…
- ffmpeg.wasm webcam ExampleThis example demonstrates how to use ffmpeg.wasm to record video from a webcam, transcode it to MP4 (x264), and play it back in the browser…
- Introduction to the WebCodec API - Real Time Video Encoding and DisplayA tutorial introducing the WebCodec API, demonstrating how to capture video from a user's camera, encode it in real time using VP8 encoding…