krzemienski/awesome-video

A curated list of awesome streaming video tools, frameworks, libraries, and learning resources.

HTML

1,926

299 commits

updated Jul 20, 2026

See the code

README

Awesome Video Awesome

A curated list of awesome streaming video tools, frameworks, libraries, and learning resources.

View on Website - Submit new resources and browse the curated collection with advanced filtering.

Contents

Encoding & Codecs

  • Adobe Media Encoder - A professional video encoding software that integrates seamlessly with Adobe's suite of creative tools. It supports a wide range of formats and offers features like batch processing, GPU acceleration, and preset templates, making it ideal for high-quality video encoding tasks.
  • Alliance for Open Media (AOMedia) - An industry consortium that develops open, royalty-free media formats. AOMedia created the AV1 video codec and works on related audio/image formats and tools.
  • AMD Advanced Media Acceleration (AMA) SDK - A comprehensive SDK from AMD that provides source codes for various elements of media acceleration, including sample codes, third-party integrations, and utilities. It is particularly useful for developers looking to leverage AMD hardware for efficient video encoding and decoding.
  • AMD Advanced Media Framework (AMF SDK) - AMD's GPUOpen Video SDK that provides developers access to GPU-accelerated encoding and decoding (H.264, HEVC, etc.) on AMD hardware.
  • AMF Encoder Developer Guide (Wiki) - Official AMF wiki guide for developers building video codec encoder applications with AMD's Advanced Media Framework SDK - covers encoder component setup, property configuration, and submission/polling workflow. Companion documentation to the AMF SDK repository entry.
  • Android-Video-Trimmer - An Android project that implements video trimming functionality using MediaMetadataRetriever to obtain video frames and FFmpeg for video cropping and compression.
  • Ateme TITAN - A software suite designed for video origination, acquisition, and compression. It offers high-quality encoding solutions suitable for various applications, including broadcasting and OTT services.
  • AV1 vs HEVC – Bitmovin Compression Efficiency Results - A Bitmovin blog post that discusses internal testing results comparing AV1 and HEVC encoders. It provides charts and analysis of bitrate savings, encoding speed, and visual quality, contributing practical data to the conversation about next-gen codec adoption.
  • Beamr Content-Adaptive Bitrate Encoding - Beamr's Content-Adaptive Bitrate (CABR) technology is integrated into Encoding.com's platform, allowing for streaming video with the highest possible picture quality while reducing bitrate by up to 50%. This technology is valuable for efficient video delivery and storage.
  • Bento - An open-source, high-speed serverless video transcoding pipeline designed for deployment on Amazon Web Services (AWS). It offers a fast and simple solution for individuals and small businesses needing efficient video transcoding capabilities.
  • Bitrate Viewer - A free Windows application that allows users to analyze the bitrate of H.264 encoded video files. It provides a graphical representation of bitrate distribution, aiding in the assessment of video quality and encoding efficiency.
  • CineForm SDK - GoPro's CineForm codec SDK, open-sourced, providing tools and libraries for the CineForm HD wavelet-based video codec used for high-fidelity video compression.
  • Cisco Thor Video Codec - Thor was an experimental video codec developed by Cisco as a candidate for the NETVC (Next-Gen Video) initiative. While Thor itself is not used as-is, some of its technology contributed to the development of AV1. It's a piece of codec research history with source available for study.
  • CompressAI - A PyTorch library and evaluation platform for end-to-end compression research. It provides custom operations, layers, models, and tools to research, develop, and evaluate image and video compression codecs. CompressAI includes pre-trained models and evaluation tools to compare learned methods with traditional codecs, facilitating advancements in compression technology.
  • CrafyVideoJS - A lightweight, hardware-accelerated JavaScript library that enables in-browser manipulation, decoding, and encoding of MP4 H.264 (AVC) videos. It leverages the browser's VideoEncoder and VideoDecoder APIs along with mp4box.js to provide efficient video processing without server-side support. Features include video trimming, bitrate adjustment, resolution changes, and metadata extraction.
  • dav1d - An open-source AV1 decoder developed by the VideoLAN and FFmpeg communities. It is designed for speed and efficiency, making it suitable for a wide range of devices and applications.
  • DivX Converter - A video encoding software that allows users to compress and convert video files into the DivX digital format, known for its high-quality output and efficient compression.
  • Dolby Vision Professional Decoder Plugin - DolbyLaboratories/dolby_vision_professional_decoder_plugin - A GitHub repository for video/multimedia development.
  • FastPix Cloud Transcoding - FastPix provides a cloud-based transcoding solution that converts video files into multiple resolutions, bitrates, and formats optimized for playback across devices and networks. Key benefits include scalability to handle peak traffic, cost-efficiency with pay-as-you-go models, and accessibility through powerful APIs for automation and dynamic workflows. FastPix supports modern codecs like AV1 and legacy ones like H.264, ensuring compatibility across various platforms.
  • FFmpeg - A free and open-source software project consisting of a suite of libraries and programs for handling video, audio, and other multimedia files and streams. It is widely used for format transcoding, basic editing, and standards compliance.
  • FFmpeg Docker Container - This project provides a Docker container for FFmpeg, facilitating the use of FFmpeg in isolated environments. It simplifies the deployment and execution of FFmpeg commands, ensuring consistency across different systems and easing the setup process for developers.
  • FFmpeg iOS - Precompiled FFmpeg libraries tailored for iOS development. These libraries enable developers to incorporate robust video processing capabilities into iOS applications, supporting a wide range of codecs and formats essential for video streaming and encoding tasks.
  • FFmpeg-apple-arm64-build - A build script for FFmpeg targeting the latest open-source video codecs running on macOS using Apple's M1 processor.
  • Gmmlib - Intel/gmmlib - A GitHub repository for video/multimedia development.
  • H.264 Profiles and Levels - Explains H.264 encoding profiles and levels, helping developers choose appropriate settings for compatibility and quality.
  • HandBrake Web - A self-hosted platform to use HandBrake on headless devices via a bespoke web interface. It allows users to harness the processing power of multiple devices to work on a single queue, facilitating efficient video transcoding workflows.
  • IHMC Video Codecs - A Java library providing support for H.264 and MJPEG encoding and decoding, as well as MP4 support. It utilizes native code for efficient video processing and includes automatic downloading of the OpenH264 library, ensuring compliance with licensing requirements.
  • Improving Our Video Encodes for Legacy Devices - A Netflix Tech Blog post describing techniques to ensure Netflix content remains compatible and efficient on older or less powerful devices, through specialized encoding profiles and optimizations.
  • Intel® Video Processing Library (Intel® VPL) - A library offering advanced access to specialized media hardware, including encode, decode, and video processing features on Intel GPUs. It supports hardware-accelerated codecs and programmable graphics, improving frame rates and reducing power usage compared to traditional CPUs.
  • JCodec - A pure Java library for video and audio codecs, including support for H.264 and AAC decoding, aimed at processing media without native dependencies.
  • JPEG XL Reference Implementation - The official reference implementation of the JPEG XL image format, offering both lossy and lossless compression. This project is valuable for developers working on image and video processing applications that require efficient compression techniques.
  • Lagarith Lossless Codec - A lossless video codec for Windows that offers high compression ratios. Useful for archival and intermediate video editing workflows where quality must be preserved (open source).
  • libaom - The reference implementation for the AV1 video coding format developed by the Alliance for Open Media. It provides tools for encoding and decoding AV1 video streams, offering improved compression efficiency over previous formats.
  • libaom: AV1 Codec Library - Libaom is the official AOMedia video codec library for AV1. It provides the tools necessary for encoding and decoding AV1 video streams, offering a royalty-free alternative to other codecs with improved compression efficiency.
  • Libavcodec - A free and open-source library of codecs for encoding and decoding video and audio data. It is an integral part of many open-source multimedia applications and frameworks, providing implementations for a wide range of codecs. Libavcodec is known for its portability and performance, offering optimized implementations of common multimedia processing tasks.
  • libmpeg2 - A free library for decoding MPEG-1 and MPEG-2 video streams. It's lightweight and portable, used in several open source media players for MPEG-2 playback.
  • libVLC - The core engine and interface of the VLC media player, providing a modular framework for multimedia applications. It supports a wide range of media formats and streaming protocols, enabling developers to integrate powerful video playback and streaming capabilities into their applications.
  • libvpx - An open-source project that provides libraries for encoding and decoding VP8 and VP9 video codecs. Developed by Google, it is widely used for web video applications and offers high-quality compression.
  • libvpx: VP8/VP9 Codec SDK - Libvpx is the official WebM project library for VP8 and VP9 video codec implementations. It provides developers with the tools to encode and decode VP8 and VP9 video streams, facilitating high-quality video compression and playback.
  • libwebm: WebM File Parser - Libwebm is a library for parsing WebM files, enabling developers to read and write WebM container files. It supports the WebM multimedia format, which is designed for web video streaming.
  • Lossless H.264 Codec - An open-source H.264 codec implementation focusing on lossless compression. This project is beneficial for developers requiring high-quality video encoding without loss of data, suitable for applications where preserving the original video quality is paramount.
  • Low-complexity Deep Video Compression with A Distributed Coding Architecture - This project introduces a deep video compression framework with a distributed coding architecture, aiming to reduce encoding complexity while maintaining competitive performance. It offers significant encoding speed improvements, making it suitable for deployment on resource-constrained devices.
  • MainConcept Codec SDK - MainConcept offers a comprehensive Codec SDK that provides developers with a suite of high-quality codecs for integrating into their applications. The SDK supports a wide range of formats, including H.264/AVC, H.265/HEVC, and MPEG-2, facilitating efficient video encoding and decoding.
  • Media Driver - Intel/media-driver - A GitHub repository for video/multimedia development.
  • MediaConversions - A project aimed at learning PowerShell 7+, HandBrakeCLI, and FFmpeg by creating scripts for media conversion. It focuses on optimizing media libraries for a wide range of mid-to-low bandwidth Roku devices by creating multi-stream videos.
  • mediaEngine by nablet GmbH - MediaEngine is a professional video transcoding software that unites multiple components into a single solution, reducing integration time and accelerating time-to-market. It offers high-speed encoding and superior video quality, making it suitable for developers seeking efficient transcoding solutions.
  • MediaInfo - A free, cross-platform tool that provides detailed technical and tag information about video and audio files. It supports a wide range of formats and is essential for video engineers who need to analyze media files.
  • More Efficient Mobile Encodes for Netflix Downloads - Netflix Tech Blog post summarizing improvements in Netflix's encoding for mobile downloads, targeting low-bandwidth scenarios. It discusses techniques like per-title optimizations for mobile.
  • Moscow State University Video Quality Measurement Tool (VQMT) - VQMT is a tool that computes VMAF, SSIM, and PSNR, displaying the scores in a graph. It allows users to view the frames in the video, making it useful for measuring video quality metrics.
  • NextLevelSessionExporter - A Swift library that facilitates media export and transcoding on iOS. It provides a simple API for exporting and transcoding media sessions, making it a valuable tool for developers working on video applications for Apple devices.
  • NVIDIA Video Codec SDK - NVIDIA's official SDK for hardware-accelerated video encoding and decoding (NVENC/NVDEC). Provides APIs to leverage GPU acceleration for H.264, HEVC, and AV1 codecs.
  • oneVPL (oneAPI Video Processing Library) - Intel's oneAPI Video Processing Library, providing a unified API to utilize hardware accelerators (CPU/GPU) for video encoding, decoding, and processing.
  • Open Source Media Framework - Intel's Open Source Media Framework provides tools and libraries to increase the speed and performance of video decoding, encoding, processing, and transcoding on compressed digital video and imaging. It supports workload offloading from the CPU to the GPU.
  • Open Transcoder - A media transcoding tool that integrates FFmpeg and OpenH264. It offers a command-line interface for converting media files between various formats, providing a flexible solution for developers needing to transcode media efficiently.
  • OpenEncoder - A free audio and video transcoder based on FFmpeg. It offers an easy-to-use interface with features like drag-and-drop file addition, multi-file conversion queues, and support for professional formats such as DNxHD, ProRes, and CineForm. This tool is valuable for developers seeking a user-friendly transcoding solution with robust format support.
  • OpenH264 - An open-source H.264 codec library developed by Cisco. It supports H.264 encoding and decoding and is suitable for real-time applications such as WebRTC. Cisco provides this library under a BSD license, making it freely available for use in various applications.
  • Optimized Shot-Based Encodes for 4K: Now Streaming! - Netflix Tech Blog article on Netflix's rollout of shot-based encoding for 4K titles. It explains how splitting content by scene (shot) and encoding with per-shot parameters improved quality.
  • Per-Title Encode Optimization – Netflix TechBlog - Netflix's seminal whitepaper on Per-Title Encoding Optimization, describing how they determine optimal encoding settings for each content title to maximize quality and minimize bitrate.
  • PLVC - (Perceptual Learned Video Compression) is a deep learning-based video compression approach that employs a recurrent conditional GAN. It focuses on achieving high perceptual quality at low bitrates, outperforming traditional codecs like HEVC in user studies and perceptual quality metrics.
  • QADRA - (Quality-Aware Dynamic Resolution Adaptation) is an open-source Python-based framework designed for adaptive video streaming applications. It determines encoding resolutions and quantization parameters to maximize perceptual quality while adhering to encoding and decoding time constraints, enhancing streaming efficiency.
  • QCTools (Quality Control Tools for Video Preservation) - QCTools is a free, open-source software developed by BAVC Media in collaboration with Dave Rice and the Dance Heritage Coalition. It enables conservators and archivists to inspect video signal characteristics for batches of digital media, facilitating quality control, error detection, and increased trust in video digitization efforts.
  • Rasbora - A distributed, scalable open-source video transcoding solution with hardware acceleration, providing an alternative to mainstream cloud video transcoding services. It offers components for video transcoding, task management, system monitoring, and more.
  • rffmpeg - A remote SSH FFmpeg wrapper tool that allows users to execute FFmpeg commands on remote servers via SSH. This is particularly useful for offloading transcoding tasks to more powerful machines, enabling efficient media processing and load balancing.
  • RIFE (AI Frame Interpolation) - An AI-based method (Real-Time Intermediate Flow Estimation) for frame interpolation to create slow-motion videos by generating intermediate frames between existing ones.
  • Simple Binary Encoding (SBE) - SBE is a high-performance message codec designed for low-latency applications. It provides efficient encoding and decoding of messages, making it suitable for real-time video streaming and encoding scenarios.
  • Telestream Vantage - Telestream's Vantage is a comprehensive video transcoding and workflow automation solution that integrates with various digital asset management systems. It provides multiformat digital video and audio ingest, metadata extraction, keyframe extraction for storyboarding, automated proxy generation, transcoding between formats, and content repurposing for web, mobile, and more. Vantage is designed to streamline media workflows, ensuring efficient and high-quality video processing.
  • Theora - A free and open video compression format developed by the Xiph.Org Foundation. Derived from the VP3 codec, Theora offers a royalty-free alternative for video compression, making it suitable for developers seeking open standards for video streaming and encoding.
  • Transcoder - A hardware-accelerated video transcoding library for Android, utilizing the MediaCodec APIs. It supports features such as cropping, concatenation, clipping, audio processing, and video speed adjustments. Designed for fast and efficient video processing on Android devices, Transcoder offers a fluent API and is suitable for applications requiring on-device video manipulation.
  • UT Video Codec Suite - An open source lossless video codec from Umezawa that provides fast encoding/decoding and is often used for lossless video compression on Windows (supports RGB and YUV formats).
  • Vantage Gateway - Formerly known as Encoding.com, is a cloud-based media processing platform that offers comprehensive transcoding, packaging, quality control, and content protection services. It supports a wide range of video formats and provides an API for seamless integration into existing workflows, making it a robust solution for video streaming and encoding needs.
  • Vantage Transcode - By Telestream provides deep and broad support for all major professional video and audio formats, containers, and packages. It offers faster-than-real-time support, automation of conversion workflows, support for the latest UHD+ and HDR standards, and the ability to work in Vantage Cloud. Vantage Transcode simplifies media processing with dynamic workflows, making it a reliable solution for video streaming and encoding.
  • Vantage Transcode by Telestream - Vantage Transcode is a powerful transcoding solution that automates the conversion of media files into various formats. It supports a broad array of codecs and containers, including MPEG-2, H.264, HEVC, and more, making it suitable for professional media workflows.
  • VCodec Interface C++ Library - VCodec is a C++ library that provides a standardized interface for various video codecs, facilitating video encoding and decoding processes. It defines data structures and rules for different video codec classes, supporting multiple raw pixel formats and compressed formats like JPEG, H264, and HEVC. This library is valuable for developers seeking a consistent and extensible framework for integrating video codec functionalities into their applications.
  • Vcodes - High-performance media processing solutions, supporting major formats and standards used by TV, OTT, and post-production houses. It enables automated media processing workflows, eliminating the need for expensive in-house video expertise. Vcodes provides features like content-aware encoding, automated quality checks, and easily scalable resources, making it a valuable tool for video streaming and encoding developers.
  • VCT (Video Converter & Transcoder) - VCT is a frontend for FFmpeg that allows users to set options, drag multiple files, transcode between formats (e.g., MKV to MP4), manually edit FFmpeg commands, record network streams, and manage batch processing. It's particularly useful for developers needing a versatile tool for video conversion and transcoding tasks.
  • Video Processing Project - A collection of C++ source code for various video processing algorithms and tools used in software media pipelines. It includes DirectShow Filters such as H.264 encoder/decoder, RTSP sink/source filters, and more, providing essential components for developers working on video streaming and encoding solutions.
  • Video Transcoding Scripts - A collection of Bash scripts designed to transcode, inspect, and convert videos using tools like HandBrake, MKVToolNix, MPlayer, FFmpeg, and MP4v2. These scripts serve as intelligent wrappers around these tools, facilitating efficient video processing.
  • video-transcoding-API - An HTTP API for transcoding media files into different formats using pluggable providers. It supports multiple transcoding services, offering flexibility and scalability for developers integrating video transcoding into their applications.
  • videojs-record FFmpeg.WebAssembly Plugin - The FFmpeg.WebAssembly plugin for videojs-record allows developers to run FFmpeg directly in the browser using WebAssembly. This enables on-the-fly transcoding of recorded media without the need for server-side processing. It's particularly useful for applications requiring real-time video manipulation and supports various FFmpeg options for customized encoding.
  • VLC Live Transcoding Guide - A comprehensive guide detailing various methods for live transcoding using VLC and FFmpeg. It includes examples for creating TCP video streaming connections, streaming recorded video files, and sending VLC output to stdout.
  • VLC Media Player - VLC is a free and open-source multimedia player that also offers video conversion tools. It supports a wide range of formats and provides basic video encoding functionalities, making it a versatile tool for both media playback and simple encoding tasks.
  • VVenC (Fraunhofer Versatile Video Encoder) - An open source H.266/VVC encoder implementation by Fraunhofer HHI, designed to be fast and efficient while supporting all features of the VVC standard.
  • VVenC and VVdeC - VVenC is a fast and efficient VVC encoder developed by Fraunhofer HHI, while VVdeC is a live decoder for VVC. Together, they provide an open-source end-to-end toolchain for the Versatile Video Coding (VVC) standard, enabling significant bit-rate reductions for the same subjective video quality compared to previous standards.
  • webm-tools: WebM Utilities - Webm-tools is a collection of utilities for working with WebM files, including tools for handling alpha channels, encryption, and streaming-related tasks. These tools assist developers in managing and processing WebM video content.
  • webmdshow: DirectShow Filters for WebM - Webmdshow provides DirectShow filters for WebM, allowing developers to integrate WebM playback and encoding capabilities into Windows applications using the DirectShow framework.
  • webmquicktime: QuickTime Components for WebM - Webmquicktime offers QuickTime components for WebM, enabling QuickTime-based applications to support WebM video playback and encoding, thus expanding compatibility with the WebM format.
  • Wirecast - A professional live video streaming production software that enables users to create high-quality live-streamed events. It supports multiple cameras, graphics, and media sources, making it suitable for broadcasting and live event production.
  • x264 (H.264/AVC Encoder) - The most widely used open source H.264/AVC video encoder, known for its high quality and efficiency across many profiles and presets.
  • x264: H.264 Video Encoder - X264 is a free software library for encoding video streams into the H.264/MPEG-4 AVC format. It is widely used due to its high performance and quality, making it a staple in video encoding applications.
  • x265 (H.265/HEVC Encoder) - A high-performance open source H.265/HEVC encoder. x265 is used to create HEVC video streams and is known for being very configurable to balance quality/speed.
  • Xiph.Org Foundation Projects - The Xiph.Org Foundation develops free and open protocols and software for multimedia, including well-known projects like the Vorbis audio codec and the Theora video codec. Their work focuses on providing open-source alternatives for multimedia processing, making them valuable resources for developers seeking royalty-free codecs.
  • xvc - A modern and flexible open-source video codec that offers high compression performance at reasonable encoding and decoding complexity. It is based on technologies from standards like AVC/H.264 and HEVC, and includes additional advancements to enhance video compression efficiency.

Next-Generation Codecs AV1 VVC

  • avm (AOM Video Model) — AV2 reference codec - AOMedia's reference encoder/decoder for the next-gen AV2 codec (successor to AV1); experimental research codebase with first 1.0.0 tag.
  • GstH266Enc - InterDigital GStreamer plugin wrapping a VVC/H.266 encoder (vvenc or uvg266) for pipeline-based encoding, Meson build.
  • JVET VVC Test Model (VTM) Reference Software - Official overview site for Versatile Video Coding (VVC) and the VVC Test Model (VTM) reference software from the Joint Video Experts Team. Hosts VTM encoder/decoder, experimental JEM software, and Benchmark Set (BMS) tools.
  • SVT-AV1-Essential - Streamlined SVT-AV1 encoder fork with sensible defaults and quality-of-life improvements tuned for non-low-latency high-resolution encoding.
  • svt-av1-hdr - SVT-AV1 fork with perceptual, HDR, and film-grain optimizations from ex-PSY team members, tuned for high-fidelity AV1 encoding.
  • Tencent O266player - CPU-efficient H.266/VVC decoder (O266dec) integrated into a modified VLC player for real-time VVC playback.
  • uvg266 - Open-source VVC/H.266 Encoder - Open-source VVC/H.266 encoder licensed under 3-clause BSD, developed by University of Helsinki's Ultra Video Group. Still under active development with ongoing RD-quality and speed improvements.
  • VVC/H.266 in GStreamer 1.26 (Igalia) - Technical writeup on VVC/H.266 support landing in GStreamer 1.26, covering avdec_h266, vvdec, and Intel hardware vah266dec decode elements.
  • VVCEasy - Ready-to-use prebuilt VVC (H.266) binaries and players for Windows, macOS, Linux, FreeBSD, Haiku, Android, and WebAssembly. Includes vvdec, vvenc, uvg266 encoders/decoders, and FFmpeg builds with VVC support.
  • x266 - Next Generation VVC/H.266 Encoder by MulticoreWare - Open-source VVC/H.266 compliant encoder built on top of x265, featuring HDR/WCG support, 360° video encoding, and SDR video. Developed for achieving twice the coding efficiency of HEVC.

Encoding Tools

  • Adobe Media Encoder (AME) Guide - User guide for Adobe Media Encoder, a tool that automates batch transcoding and export from Adobe's video apps. Useful resource for understanding batch encoding settings for various formats and how to optimize output for different platforms.
  • Android FFmpeg Transcoder - An Android library for performing video transcoding on-device, leveraging FFmpeg (or MediaCodec) to extract frames or encode videos on Android.
  • Arch FFmpeg GPAC - A ready-prepared video transcoding pipeline to create DASH/ HLS compatible video files & playlists.
  • Auto-Editor - An automatic video editor written in Python that can remove silence, jump cuts, and more without manual editing. It processes video/audio to create a faster-paced output automatically.
  • Avidemux - A simple, free video editor for cutting, filtering, and encoding tasks, supporting many file types and codecs.
  • AviSynth+ - An improved version of the classic AviSynth frameserver. AviSynth+ allows video processing and filtering through scripting, enabling complex edits and conversions on Windows with high performance.
  • Avtk - A Python library for audio and video processing that provides tools for encoding and manipulating media files.
  • avTranscoder - C++ wrapper providing a high-level API around FFmpeg and LibAV for video transcoding tasks.
  • ButtleOFX - An open source nodal video compositing software built on top of OpenFX. It provides a user-friendly interface to apply and connect video effects (an experimental alternative to commercial compositors).
  • Cinelerra GG Infinity - A robust open source non-linear editor for Linux, derived from the long-running Cinelerra project. Cinelerra GG Infinity offers professional-grade editing, compositing, and audio features for advanced users on Linux.
  • CloudTranscode - Distributed videos and images encoding/transcoding using Amazon SFN, FFmpeg and ImageMagic.
  • DaVinci Resolve (Free Edition) - A professional cross-platform video editing, color grading, and post-production suite with a free version available.
  • Django Video Encoding - Django-video-encoding helps to convert your videos into different formats and resolutions.
  • Docker Java Media - JRE 10 (Java 10) and media tools (FFmpeg).
  • Fflock - Distributed video transcoding.
  • Ffmediaelement - FFME: The Advanced WPF MediaElement (based on FFmpeg).
  • FFmpeg Android Java - Android java library for FFmpeg binary compiled using HTTPS://GitHub.com/writingminds/FFmpeg-android.
  • FFmpeg.WebAssembly - A pure WebAssembly port of FFmpeg that enables video and audio processing directly in the browser. It provides an API to run FFmpeg commands for transcoding or editing media on the web.
  • FfmpegGUI (ffWorks) - A macOS graphical front-end to FFmpeg (commercially known as ffWorks). It simplifies complex FFmpeg operations with a drag-and-drop interface and preset configurations, while harnessing FFmpeg's full power under the hood.
  • FFmpegKit - A complete, cross-platform wrapper for FFmpeg, providing ready-to-use binaries and libraries for Android, iOS, Linux, Windows, and more.
  • Flowblade - A free, open-source video editor for cutting, compositing, and editing video with a timeline-based interface.
  • go-astiav - A comprehensive Go binding for FFmpeg's libav* libraries, facilitating the building of media applications in Go with FFmpeg's capabilities.
  • goav - Go bindings for FFmpeg's libav* libraries. It allows developers to leverage FFmpeg's powerful audio and video processing features in Go applications.
  • gstreamer-rs - Rust language bindings for the GStreamer multimedia framework, allowing developers to create GStreamer pipelines and plugins in Rust.
  • HandBrake - A popular open source video transcoder that converts video from nearly any format to a selection of modern, widely supported codecs.
  • Intel oneAPI Video Processing Library (oneVPL) - Intel's oneAPI Video Processing Library, the successor to Intel Media SDK. It offers a unified API for GPU-accelerated video encode/decode and processing (Quick Sync Video and other accelerators).
  • Internet Friendly Media Encoder (IFME) - A cross-platform GUI front-end for x265, x264, and VP9 encoders. IFME makes it easy to batch encode videos with advanced compression (HEVC) settings, including support for plugins and multiple audio streams.
  • Kdenlive - A free and open source non-linear video editor for GNU/Linux, Windows, and macOS. It offers multi-track video editing, a wide range of effects, and GPU acceleration.
  • LAV Filters - An open source set of DirectShow filters based on FFmpeg that allow the playback of virtually any audio/video format on Windows (often used within media players like MPC-HC).
  • Lightworks - A professional NLE (non-linear editor) with a free edition. Lightworks has been used in Hollywood and offers multi-track editing, effects, and support for various formats on Windows, Mac, and Linux.
  • Liquid Dl - Liquid-dl is a simple tool for utlities such as FFmpeg, YouTube-dl, and scdl.
  • Lossless Cut - A tool for trimming and cutting video files without re-encoding, preserving the original quality and codec data.
  • Manifesto - An HLS tool for creating multiple variants, a master.m3u8 file, and converting 608 captions to segmented webvtt subtitles via FFmpeg.
  • Mlt - Cross-platform multimedia framework for video editing, processing, and playback applications.
  • MLT Framework - An open source multimedia framework for video editing applications. MLT provides a toolkit for developers to build editors (used by Kdenlive, Shotcut) with support for a range of effects and transitions.
  • Moviepy (GitHub) - A Python library for video editing and composition that uses FFmpeg backend to create, edit, and manipulate video files programmatically.
  • MP4Box JS - JavaScript version of GPAC's MP4Box tool.
  • Mp4Composer-android - An Android library to compose and edit MP4 videos using MediaCodec, supporting filters, scaling, trimming, transcoding, cropping, time scaling, and rotation.
  • mp4ff - A Golang library and set of tools for parsing and writing MP4 (ISO BMFF) files, including support for fragmented MP4 and progressive MP4.
  • MP4Joiner & MP4Splitter - Free open-source tools to losslessly join and split MP4 files without re-encoding. Useful for simple video file merging and cutting tasks.
  • MystiQ Video Converter - A cross-platform FFmpeg GUI for converting audio and video. MystiQ offers an intuitive interface, preset profiles for common formats (MP4, WEBM, MP3, etc.), and options for advanced users to tweak encoding parameters.
  • Olive Video Editor - A next-generation open source non-linear video editor under development aiming for professional features and performance (currently in alpha).
  • OpenCV - An open source computer vision and machine learning library with extensive support for image and video analysis. Often used for video processing tasks like object detection, tracking, and filtering.
  • OpenShot Library (libopenshot) - The C++ library behind OpenShot Video Editor that provides core video editing functionalities (timeline, effects, keyframes). libopenshot can be used independently to build custom video editing applications.
  • OpenShot Video Editor - An easy-to-use, cross-platform open source video editor. It supports timeline editing, effects, and keyframes for creating videos on Linux, Mac, and Windows.
  • Pitivi - A free, open source video editor for Linux built on the GStreamer framework, focusing on an intuitive user interface and integration with GNOME.
  • PyAV - A Pythonic binding for FFmpeg's libraries (Libav). PyAV allows Python programs to read, write, and manipulate video and audio data by leveraging the powerful FFmpeg backend.
  • QWinFF - A simple cross-platform FFmpeg GUI (using Qt) for converting audio and video, providing preset profiles and the ability to batch process files.
  • Restreamer - A user-friendly solution to re-stream video sources (like local RTSP webcams) to streaming platforms. It wraps FFmpeg to publish streams to YouTube, Twitch, or custom servers with a simple UI.
  • RxFFmpeg - 是基于 ( FFmpeg 4.0 + X264 + mp3lame + fdk-aac ).
  • scikit-video - A set of video processing routines for use with SciPy, providing basic video reading and writing capabilities for scientific computing workflows in Python.
  • Selene Media Encoder - A minimalistic audio/video converter for Linux. Selene provides a simple GUI to convert media files to formats like MP4, MKV, OGG, with support for latest codecs (H.264, H.265, VP9) and basic editing (trim, crop).
  • Shotcut - A free, open source, cross-platform video editor. It offers a wide format support via FFmpeg, a customizable UI, and a range of video and audio filters.
  • Shutter Encoder - A free, cross-platform video and audio converter that uses FFmpeg behind the scenes. Shutter Encoder offers a user-friendly GUI with presets and advanced options.
  • slowmoVideo - An open source tool that creates slow-motion videos from existing footage by interpolating intermediate frames, allowing extreme slow motion effects. Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • StaxRip - A versatile video encoding GUI for Windows, utilizing a variety of open source tools (AviSynth/VapourSynth, x264/x265, etc.) for advanced encoding workflows.
  • Swift Video Generator - Dev-labs-bg/swift-video-generator - A GitHub repository for video/multimedia development.
  • Transcode - Bbxnet/transcode - A GitHub repository for video/multimedia development.
  • vid.stab - An open source video stabilization library, used with FFmpeg to stabilize shaky footage by analyzing and smoothing camera motion.
  • VidCoder - An open source Windows application for converting and ripping video files and DVDs/Blu-rays, built on the HandBrake engine with an enhanced user interface.
  • VidCutter - An open source cross-platform tool for fast video trimming and joining. VidCutter focuses on doing simple cuts without re-encoding, using intelligent scene detection and supporting many formats via FFmpeg.
  • video4j - A Java video processing library providing a set of tools and APIs to handle video operations in Java applications.
  • VirtualDub - A classic open source video capture and processing utility for Windows, useful for quick linear operations, filtering, and format conversions on AVI files.
  • VLMC (VideoLAN Movie Creator) - An experimental non-linear video editing software from the VideoLAN project. Aims to offer basic editing (cutting, transitions, etc.) with a simple interface, built on libVLC.
  • Voctomix - Full-HD Software Live-Video-Mixer in Python.
  • Vrecord - An open source tool for capturing analog video (VHS, Beta, etc.) to digital formats using Blackmagic or AJA capture cards. Vrecord provides a scriptable FFmpeg-based workflow for archivists with features like live histogram and QA metrics.
  • WinFF - A graphical user interface for FFmpeg that runs on Windows and Linux. WinFF makes it easy to convert multiple media files by providing presets and a batch-processing interface.
  • XMedia Recode - A free Windows tool for converting media files to various formats. It supports a broad array of codecs (built on FFmpeg) and provides fine control over encoding settings.
  • Xuggler - An open source Java library (now discontinued) that wrapped FFmpeg functionality, enabling Java developers to decode, encode, and stream video.
  • Yamdi (Yet Another Metadata Injector) - A simple, fast tool to inject metadata (onMetaData) into FLV files. Yamdi can also insert an onLastSecond event and is often used to prepare live-recorded FLV files for on-demand playback by adding missing metadata for durations and keyframes.

FFmpeg

  • ab-av1 - CLI tool for AV1 (and x264/x265) re-encoding using fast VMAF sampling plus automatic CRF binary search to hit a target quality. Wraps FFmpeg/svt-av1/vmaf.
  • Alpine Bento FFmpeg - Alpine Linux with FFmpeg, Bento, and PM2.
  • Awesome FFmpeg - A curated list of awesome FFmpeg resources.
  • AWS Lambda FFmpeg - An S3-triggered Amazon Web Services Lambda function that runs your choice of FFmpeg 🎬 commands on a file 🎥 and uploads the outputs to a bucket.
  • Can FFmpeg extract closed caption data - I am currently using FFmpeg to convert videos in various formats to flv files. One request has also come up and that is to get closed caption info out o the file as well.
  • compile and install latest FFmpeg source as pkg - GitHub Gist: instantly share code, notes, and snippets.
  • Docker FFmpeg - Linuxserver/docker-FFmpeg - A GitHub repository for video/multimedia development.
  • Encode HDR with VP9 - Hands on tutorial of using FFmpeg to do hdr encoding.
  • FFCommand Engine - Create and execute FFmpeg commands.
  • FFmbc - FFmpeg customized for broadcast and professional usage.
  • FFmpeg (FFmpeg) - Mirror of git://source.FFmpeg.org/FFmpeg.git.
  • FFmpeg (GitHub) - Docker build for FFmpeg on Ubuntu / Alpine / CentOS 7 / Scratch.
  • FFmpeg and how to use it wrong - I've been in the streaming media industry since 2008 and have seen a lot of misinformation regarding both FFmpeg and libx264.
  • FFmpeg AutoGen (C#) - A set of auto-generated P/Invoke bindings for FFmpeg libraries. FFmpeg.AutoGen allows.NET developers to directly use FFmpeg's C API in C# for advanced media processing tasks.
  • FFmpeg AWS Lambda Layer - FFmpeg/FFprobe AWS Lambda layer.
  • FFmpeg Batch Converter (Windows) - A Windows front-end that allows batch processing with FFmpeg. Users can queue up multiple files with presets for conversion or processing, automating repetitive FFmpeg tasks without writing a script.
  • FFmpeg Bitrate Stats - Calculate bitrate statistics using FFmpeg.
  • FFmpeg Build Script - An easy way to build a static FFmpeg on macOS and Linux with non-free codecs included.
  • FFmpeg CLI Wrapper - Java wrapper around the FFmpeg command line tool.
  • FFmpeg Debug Qp - FFmpeg Debug Script for QP Values.
  • FFmpeg iOS Build Script - Shell scripts to build FFmpeg for iOS and tvOS.
  • FFmpeg JS - Port of FFmpeg with Emscripten.
  • FFmpeg Libvpx HDR Static - A script to build a static binary of FFmpeg optimised for libvpx (HDR 10bit) encoding.
  • FFmpeg Nvidia Adaptive VOD Transcoder - Bash script which will detect video new file in folder and transcode it to adaprive bitrate.
  • FFmpeg Patch - A collection of FFmpeg patches and samples that enable CNN model-based video analytics capabilities (such as object detection, classification, and recognition) within the FFmpeg framework.
  • FFmpeg Python (kkroening) - A Python wrapper for FFmpeg that simplifies interaction with the FFmpeg command-line tool for encoding, decoding, and processing video and audio.
  • FFmpeg Scale Benchmark - Saurabh702/FFmpeg-scale-benchmark - A GitHub repository for video/multimedia development.
  • FFmpeg Threads Command: How it Affects Quality and Performance - So, I received an email from an acquaintance that read, "I was curious if there is actually any benefit to a "threads= type custom command in x264.
  • FFmpeg Transcoder - Video transcode based on FFmpeg, support H264/HEVC and more.
  • FFmpeg Verbose Logging - Guide to FFmpeg's -loglevel and debug options for troubleshooting encoding and decoding issues, covering the log levels from quiet to debug and flags like -report that write detailed logs to a file.
  • FFmpeg Wiki: Filtering Guide - Documentation on using FFmpeg's filtering system, demonstrating how to chain video filters (scale, crop, overlay, etc.) and audio filters for processing media with examples.
  • FFmpeg Wiki: H.264 Encoding Guide - A comprehensive guide on the FFmpeg Wiki detailing how to encode video to H.264 using FFmpeg. It covers recommended settings, presets, CRF usage, and quality considerations.
  • FFmpeg Wiki: H.265 (HEVC) Encoding Guide - An FFmpeg Wiki guide for encoding video to H.265/HEVC. It describes how to use x265 via FFmpeg, including tuning parameters, bitrate vs quality (CRF), and preset trade-offs.
  • FFmpeg Windows Build Helpers - Helper script for cross compiling some media tools for windows, like customizable FFmpeg.exe (with or without non-free components, etc), and some other bonuses like mplayer, mp4box, mxf, etc.
  • FFmpeg-go - A Golang binding for FFmpeg that enables developers to generate and run FFmpeg commands programmatically in Go.
  • FFmpeg-REST — FFmpeg REST API with job queue - FFmpeg REST API (Node/Hono/BullMQ) with async jobs, stateless and S3-compatible storage modes.
  • FFmpeg-suite-rs - Async builder-pattern Rust wrapper over the FFmpeg CLI with crates for transcoding/filtering, ffprobe inspection, and ffplay playback, plus VAAPI/NVENC/QSV hardware acceleration.
  • FFmpeg.WebAssembly-st — single-thread FFmpeg.WebAssembly - Single-thread FFmpeg.WebAssembly variant for browser and node, avoiding SharedArrayBuffer/COOP-COEP requirements.
  • Ffmpeg4java - A JNI wrapper of FFmpeg library.
  • ffmprovisr - Cookbook of commonly used FFmpeg recipes with descriptions of how each command works and how to modify it to fit your needs.
  • Ffmpy - A lightweight Python wrapper for FFmpeg that enables simple encoding and transcoding of video and audio files.
  • Generate MPEG-TS from file with FFmpeg - In this post I will describe how an MPEG-TS multicast stream can be generated with FFmpeg by looping an MP4 file and a Docker container.
  • GMF (Go Media Framework) - A Go binding for FFmpeg that simplifies working with multimedia in Go, providing high-level access to FFmpeg's decoding and encoding functionality.
  • H265ize - A node utility utilizing FFmpeg to encode videos with the hevc codec.
  • Imageio FFmpeg - Python wrapper around FFmpeg for video processing. Simplifies FFmpeg integration in Python applications.
  • Intel QSV-Enabled FFmpeg Build Guide - This gist will generate an Intel QSV-enabled FFmpeg build using the open source Intel Media SDK. Testbed used: Ubuntu 18.04LTS.
  • jrottenberg/FFmpeg Docker Images - A popular Docker image repository for FFmpeg maintained by the community. These images package FFmpeg (with various codecs enabled) for easy use in CI pipelines or cloud deployments, simplifying environment setup for video processing tasks.
  • Loop file and generate multiple video bitrates muxed in MPEG-TS with FFmpeg - In a previous post I described how an MPEG-TS multicast stream can be generated with FFmpeg by looping an MP4 file. In this post I will.
  • Node FFmpeg Stream - Node.js bindings to FFmpeg command, exposing stream based API.
  • Node Fluent FFmpeg - A fluent API to FFmpeg (HTTP://www.FFmpeg.org).
  • NVIDIA FFmpeg GPU Dockerfile Sample - Sample Dockerfiles for Docker Hub images.
  • PyFFmpeg - A Python wrapper for FFmpeg, allowing the composition and execution of FFmpeg commands through a fluent Python interface.
  • Python FFmpeg - A Python interface for FFmpeg using asyncio.
  • rsmpeg - Rust crate exposing the FFmpeg libav C API safely; actively maintained with FFmpeg 6/7 support for building multimedia apps.
  • serverless-FFmpeg — AWS Lambda transcoding - AWS Lambda function for event-driven FFmpeg transcoding, configurable per-input/output CLI options.
  • Sffmpeg - Full-featured static FFmpeg build helper.
  • spireav — graph-based Go transcoding library - Go transcoding library to build FFmpeg filter graphs programmatically and monitor progress.
  • Swift Encoder - A fire-and-forget shell script that encodes multiple video and audio files with FFmpeg.
  • Transcoding - FFmpeg transcoders benchmark. Contribute to AlvianPrasetya/transcoding development by creating an account on GitHub.
  • Transcoding FFmpeg - Transcoding video usando FFmpeg.
  • Use of Look-Up Tables (LUTs) in FFmpeg - How to use luts with FFmpeg for converting between differnt hdr encodes.
  • Useful FFmpeg Commands - A collection of FFmpeg commands taken from practice.
  • VP9 Dash - FFmpeg wrapper script to create VP9 MPEG-DASH packages.
  • x264 FFmpeg Options Guide - Linux Encoding - Reference guide mapping x264 encoder options to FFmpeg parameters for video encoding on Linux systems.
  • Xabe.FFmpeg - A.NET Standard wrapper for FFmpeg, enabling developers to compose and execute FFmpeg commands in C# with a fluent interface.

Hardware Accelerated Transcoding

Multi-format Packaging Tools

Codecs

  • Cisco OpenH264 - An open source H.264 (AVC) encoder and decoder library by Cisco, provided under a license that allows free use (Cisco covers MPEG LA licensing for binaries).
  • Daala Codec (Xiph) - An experimental video codec from the Xiph.Org Foundation that aimed to achieve next-generation compression (the effort preceded and influenced AV1). Daala introduced novel techniques like lapped transforms and per-pixel entropy coding. Its codebase is open and served as a sandbox for ideas that made it into AV1.
  • FFV1 Codec - FFmpeg's FFV1 is a lossless intra-frame video codec. It's open, extremely efficient for archiving video, and is defined in an ongoing standardization (supported by archival institutions).
  • libde265 - An open source H.265/HEVC video decoder written in C. libde265 can be used to decode HEVC bitstreams in software and is often integrated into players or frameworks needing HEVC support.
  • libvpx (VP8/VP9 Codec Library) - The reference implementation of VP8 and VP9 video codecs (WebM Project). libvpx provides encoding and decoding for VP8/VP9, which are open and royalty-free codecs.
  • VVdeC (Fraunhofer VVC Decoder) - An open source Versatile Video Coding (H.266/VVC) software decoder by Fraunhofer HHI. VVdeC supports Main10 profile and can decode 4K/8K content in real-time with optimizations.
  • XVC Codec (Divideon) - XVC is a proprietary but openly documented video codec by Divideon that claims high compression efficiency. An open source evaluation implementation was released for research purposes. XVC serves as a modern codec design to compare against standards like HEVC and AV1 in compression efficiency research.

AV1

VP9

  • ASWF Encoding Guidelines: Encode VP9 - Academy Software Foundation's community encoding guide for VP9, including 10-bit/HDR workflow guidance.
  • Google: VP9 Settings for VOD - Google's per-resolution bitrate/CRF/tile-columns recommendation table for VP9 VOD encoding.
  • SVT-VP9 - Intel's Scalable Video Technology implementation of the VP9 codec. SVT-VP9 is an open source VP9 encoder/decoder designed to leverage multi-core processors for faster encoding of VP9 videos.
  • WebM Project: VP9 Encoding Guide (FFmpeg) - Official WebM project wiki guide to encoding VP9 via FFmpeg, covering CQ/CBR modes, tiling, and row-mt options.

HEVC

  • Guide to HEVC/H.265 Encoding and Playback - HEVC'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 encoded with HEVC can occupy half the space of its H.264 equivalent with no noticeable change in quality, or the same amount of space with improved quality.
  • HEVC DRM Market Update - Since time eternal, the streaming industry has toiled with and extolled the virtues of CODECs and their key enablement of the entire digital video experience. Now comes the latest candy in the increasingly large bowl, H.265 (MPEG-H Part 2) or as it's more commonly known. HEVC.
  • HEVC/H.265 Video Coding Standard: Part 1 - Part one of the HEVC/H.265 video coding standard lecture series by Dr. Dan Grois, Benjamin Bross, Dr. Detlev Marpe and Karsten Sühring, introducing the standard's core coding tools and structure.
  • HEVC/H.265 Video Coding Standard: Part 2 - Part two of the HEVC/H.265 video coding standard lecture series by Dr. Dan Grois, Benjamin Bross, Dr. Detlev Marpe and Karsten Sühring, covering the Range Extensions and the Scalable Extension.
  • HEVC/h265 Video Coding Standard - ISO/IEC 23008-2 - Defines the compressed video format HEVC/h265.
  • Kvazaar HEVC Encoder - An open source HEVC encoder developed by Tampere University. Kvazaar is aimed at academic research and ultra HD content encoding, offering a modular codebase for experimentation with HEVC encoding algorithms while achieving competitive performance.
  • OpenHEVC Decoder - An open source high-performance HEVC decoder. OpenHEVC was developed to provide a fast HEVC/H.265 software decoding solution and has been integrated into projects like VLC. It supports real-time decoding of 1080p and higher resolutions on typical PC hardware.
  • Standardization of High Efficiency Video Coding (HEVC) - Jens-Rainer Ohm, Institute of Communication Engineering, RWTH Aachen University, DE.
  • SVT-HEVC - An open source high-performance HEVC encoder from Intel (Scalable Video Technology for HEVC). SVT-HEVC is optimized for speed and latency, allowing real-time encoding of HD/UHD content on multi-core CPUs.
  • The Market Significance of Apple's Adopting HEVC: Here's What I Think - At the recent World Wide Developer's Conference (WWDC), Apple announced that the next versions of Safari, iOS, and tvOS will support HLS with HEVC encoded video. This puts Apple firmly in the HEVC camp, with the Alliance for Open Media camp (Amazon, Cisco, Intel, Google, Microsoft, Mozilla, Netflix,.

Comparative Analysis of Codecs

Benchmarking & Performance Tools for Codecs

Real-Time Encoding Solutions

  • ABR Broadcaster - A real time encoder for Adaptive Bitrate Broadcast.
  • go-transcode - On-demand HTTP transcoding origin for live inputs and static files with NVIDIA GPU acceleration via Docker.
  • Gstreamill - Encoder with hls output based on gstreamer.
  • hls_transcoder (Rust) - Rust library building GStreamer pipelines to transcode to HLS with hardware (NVENC) and software (x264) support.
  • Live Video Transmuxing/Transcoding: FFmpeg vs TwitchTranscoder, Part 2 - Technical comparison examining FFmpeg and Twitch's proprietary transcoder for live video transmuxing and transcoding in production environments, Part 2.
  • Live Video Transmuxing/Transcoding: FFmpeg vs TwitchTranscoder, Part I - Technical comparison examining FFmpeg and Twitch's proprietary transcoder for live video transmuxing and transcoding in production environments, Part 1.
  • LiveForge - Go single-binary multi-protocol live media server supporting RTMP/RTSP/SRT/WHIP/WHEP/HLS/LL-HLS/DASH ingest and delivery.
  • open-streamer - Go live streaming server with in-process libavcodec ABR transcoding and full-GPU pipeline (NVDEC→scale_cuda→NVENC), 1×decode + N×encode fan-out to HLS/DASH.
  • RTSP Stream - Out of box solution for RTSP - HLS live stream transcoding. Makes RTSP easy to play in browsers.
  • StreamPack - Multiprotocol live streaming broadcaster libraries for Android - StreamPack is a lightweight, high-performance toolkit for building streaming video processing pipelines on Android. It provides reusable components for frame sources, transformations, encoding, and output, making it easy to develop efficient real-time video applications with a modular and composable architecture.

Scripting & Automation Tools

  • Av1an - Cross-platform command-line AV1 encode toolkit. Contribute to master-of-zen/Av1an development by creating an account on GitHub.
  • Av1an (GitHub) - Cross-platform CLI chunked-encoding framework enabling parallel per-scene encoding for AV1, VP9, HEVC, and H.264 with per-scene quality targeting.
  • Batch Py Remux - Convert mkv video to hevc (h.265).
  • Batch Python FFmpeg Tutorial - A Python application that uses Batch to process media files in parallel with the FFmpeg open-source tool.
  • Distributed FFmpeg Transcoding Cluster - 分布式FFmpeg转码集群。A FFmpeg transcoding cluster runs in variable CPUs, including ARM, x86, and others which can run linux. You can use it to run a RaspberryPi cluster.
  • Other Video Transcoding - Other tools to transcode videos.
  • Pyup Transcoder - A Python-based software to transcode videos and upload files to a remote server or S3-bucket.
  • Scalable, Parallel Video Transcoding on Ubuntu - Transcoding video is a very resource intensive process.
  • Transcode (cwinging) - Python-based transcoding server by cwinging for handling video conversion tasks.
  • TranscodeVideo - A Swift wrapper around the transcode-video command.
  • Video Utils - Python package containing many tools useful for converting video files to h264/h265 encoded MP4 or MKV files.

Software Codecs

  • Dav1d (videolan) - Dav1d is the fastest AV1 decoder on all platforms.
  • descriptinc/prores-software-decoder — Real-Time Software ProRes Decoder - Real-time software decoder/demo for Apple ProRes, enabling ProRes playback without hardware VideoToolbox support.
  • exhale - Open-source USAC / xHE-AAC (Extended HE-AAC) encoder converting WAVE to MPEG-4 ISO/IEC 23003-3, mono/stereo/multichannel at medium-high bitrates.
  • libxaac - Ittiam Extended HE-AAC full encoder and decoder supporting AAC-LC, HE-AACv1/v2 object types.
  • OpenVVC - Open-source (LGPLv2.1) real-time software VVC/H.266 decoder library with frame and tile parallelism, RPR support.
  • uavs3e — AVS3-P2 Video Encoder - Open-source baseline encoder for the Chinese AVS3-P2 video standard; SSE4/AVX2 optimized, 10-bit, competitive with AV1/VVC on fidelity.
  • V-Nova LCEVCdec — MPEG-5 LCEVC Decoder SDK - V-Nova's official open-source MPEG-5 LCEVC (Low Complexity Enhancement Video Coding) decoder SDK, with CPU and experimental Vulkan GPU decode pipelines.
  • V-Nova LCEVCdecJS — LCEVC Web Decoder - JavaScript/WebGL MPEG-5 LCEVC decoder for browser video playback, enabling LCEVC enhancement layer rendering on the web.

Hardware Codecs & Acceleration

Containerization & Packaging Tools

  • Alpine Node Video Multitool - Contribute to realeyes-media/alpine-node-video-multitool development by creating an account on GitHub.
  • Bento4 - A comprehensive toolkit and C++ library providing command-line tools and APIs for MP4 and DASH media format creation, manipulation, and packaging.
  • CDN Transcode Sample (GitHub) - Media transcoding is a key function for live video broadcasting, streaming, and video on demand use cases in a CDN network.
  • Dlb Mp4base - The Dolby MP4 streaming muxer (dlb_mp4base) is a software implementation of a muxer of fragmented or unfragmented ISO base media file format (mp4).
  • Dlb Mp4demux - Dolby Laboratories' official MP4 streaming demuxer (dlb_mp4demux) - a reference implementation for demuxing fragmented or unfragmented ISO base media files.
  • Dlb Mp4demux (ShaoWeiguo) - Community mirror of dlb_mp4demux, the Dolby MP4 streaming demuxer for fragmented and unfragmented ISO base media files.
  • Docker HEVC - Docker container to create HEVC streaming packages.
  • Gots - MPEG Transport Stream handling in Go.
  • GPAC MP4Box - MP4Box is a multimedia packager from the GPAC framework, used for encoding and packaging media files.
  • Imf Conversion - NF IMF media conversion utility allows to handle flat file creation from a specified CPL within the IMF package.
  • lieff/minimp4 — Single-Header C MP4 Mux/Demux - Minimalistic single-header C library for MP4 mux/demux with fragmented-MP4 mode.
  • Mixwave - Self hostable platform that aims to simplify the complexities of video delivery. Transcode and package your media for online streaming with simple API calls and sane defaults, or craft dynamic HLS playlists on the fly with bumpers, ads and filters.
  • Mp4parser - A Java API to read, write and create MP4 files. Contribute to sannies/mp4parser development by creating an account on GitHub.
  • muxide — Pure-Rust MP4 Muxer - Pure-Rust zero-dependency MP4 muxer (no FFmpeg) supporting H.264/H.265/AV1/AAC/Opus with fragment mode.
  • Openfaas Transcode - Serverless video transcoding pipeline built on OpenFaaS for function-as-a-service deployments.
  • Shaka Packager – opensource.google - Google's open-source media packaging tool for creating DASH and HLS content with encryption support.
  • shiguredo/mp4-rs — Sans-I/O Rust MP4 Mux/Demux - Zero-dependency, sans-I/O Rust MP4 mux/demux with Fmp4SegmentMuxer and Demuxer, no_std capable; actively maintained.
  • The Netflix IMF Workflow - Interesting architectural implications.
  • Transcoder (GitHub) - Docker container to transcode videos in mounted volume to H265 using FFmpeg.
  • Ts2mpa - A simple tool to extract MPEG Audio from a MPEG-2 Transport Stream.
  • tsMuxer - A transport stream muxer for remuxing/muxing elementary streams, EVO/VOB/MPG, MKV/MKA, MP4/MOV, TS, M2TS to TS to M2TS. Supported video codecs H.264/AVC, H.265/HEVC, VC-1, MPEG2.

Origin Servers

Software Transcoding Tools

  • Av1transcoder - Transcode video files to the AV1 format using FFmpeg and libaom-av1.
  • Codem Transcode - Offline video transcoder written in Node.js.
  • Django Video Transcoding - Simple video transcoding application for Django Framework.
  • Dolby Encoding Engine Plugins - Contribute to DolbyLaboratories/dolby-encoding-engine development by creating an account on GitHub.
  • Fantastic Transcoder - A video transcoder which utilizes massively parallel compute to achieve ludicrous conversion speeds.
  • MediaMolder - FFmpeg for the AI era - A rewrite of the interface and orchestration layers of FFmpeg: a graphical interface to visualize, edit, validate and run processing graphs, jobs defined in JSON files, import of any FFmpeg command line, and a real-time encoding control system.
  • Node Transcoding - Node.js video transcoding library.
  • NotEnoughAV1Encodes - GUI Handler for AV1 Encoders (aomenc, rav1e & svt-av1).
  • Rate Control Tests - Tests for different rate control modes in x264. Contribute to slhck/rate-control-tests development by creating an account on GitHub.
  • React Native Transcode - Video Transcoder for React Native.
  • Transcode (kees) - Collection of command-line tools for video format conversion and transcoding operations.
  • transcode2H265 - Unattended video transcoder to H265 and ACC codecs, in MKV containers.
  • Video Transcoding - Tools to transcode, inspect and convert videos.
  • Vireo - A lightweight and versatile video processing library written in C++11.

Open Source Encoder Projects

Cloud-Based Encoding Solutions

FFmpeg-Based Tools

Media Tools

  • 3DLUT Creator - A stand-alone software to create and edit 3D LUTs (Look Up Tables) for color grading. It provides a unique interface for manipulating the color response of images and videos, which can then be applied via LUT in other grading software or on monitors.
  • 4K Media - Uncompressed 4K demos, samples, and trailers, to show off your new ultra-HD (2160p) HDR/HLG/Dolby Vision television or monitor.
  • Ad Insertion Sample - A server-side ad insertion system featuring on-demand video transcoding and streaming, with ad insertion based on video content analysis, powered by Open Visual Cloud software stacks.
  • Aeneas - A Python library and command-line tool for automating the synchronization of audio and text (forced alignment). It can be used to align subtitles with audio tracks, making it useful for developers working on video streaming and encoding projects that require precise subtitle timing.
  • Amara - A web-based platform that enables users to create, edit, and translate subtitles collaboratively. It supports a wide range of video formats and integrates with platforms like YouTube and Vimeo, making it a versatile tool for developers working on video streaming and encoding projects.
  • API.video In-stream Ads - Documentation on implementing in-stream ads in videos and live streams using API.video's platform, supporting VAST and VPAID tags for ad integration.
  • Applicaster Video Ads Integration - Documentation and tools for integrating video ads into applications using Applicaster's platform, supporting VAST and VMAP tags with the IMA SDK.
  • AudioTools Server by Telos Alliance - AudioTools Server is a collection of enterprise-ready audio solutions designed to add file-based expertise to automated environments. It automates sophisticated audio tasks and offers a wide variety of processing options, specifically created for use in cable, satellite, OTT, terrestrial and IPTV, radio, and post-production facilities.
  • AudioTrack - An Android class that streams PCM audio buffers to audio hardware for playback. It provides low-level access to audio hardware, allowing developers to implement custom audio playback solutions in their applications.
  • Auto-Subs - A tool designed to automatically transcribe editing timelines using OpenAI Whisper and Stable-TS for extreme accuracy. It generates subtitles in a custom style, is completely free, and runs locally within DaVinci Resolve. It works on Mac, Linux, and Windows, supporting both Free and Studio versions of Resolve. Users can jump to positions on the timeline using the Subtitle Navigator and translate from any language to English. The tool provides a user-friendly interface for creating and customizing subtitles for video content.
  • Avatarify - A real-time photorealistic avatar substitution tool. Avatarify uses neural networks to map your facial movements onto a target portrait (e.g., on Zoom or Skype) for fun impersonation or puppeteering.
  • BackgroundRemover - An AI-powered command-line tool to remove the background from images and videos. It uses deep learning to perform background removal with a simple interface.
  • Bitmovin Advertising - Bitmovin's player supports client-side and server-side ad insertion, integrating with major ad servers and networks. It offers support for VAST, VMAP, and VPAID standards, providing a flexible solution for video ad integration.
  • Blackmagic Fusion - A node-based compositing and visual effects software (with a free version integrated into DaVinci Resolve, and a Studio version). Fusion is used for 2D/3D compositing, motion graphics, and effects in films and TV.
  • Blender (Video Sequence Editor) - The video sequence editor within Blender, an open source 3D creation suite. It provides basic cutting, transitions, color grading, and masking on top of Blender's powerful compositing nodes.
  • Brave - Basic Real-time AV Editor - allowing you to preview, mix, and route live audio and video streams on the cloud.
  • Brightcove Player Advertising Integration - Brightcove Player offers comprehensive support for integrating video advertisements using plugins for Google's IMA3 and FreeWheel. It provides detailed documentation and quick-start guides to help developers implement client-side ad insertion seamlessly.
  • Building In-Video Search at Netflix - Netflix Tech Blog article about developing an internal system for searching within video content (e.g., finding scenes across the catalog). It covers the indexing of visual and audio data to enable search.
  • CALM Act (FCC Audio Loudness Rules) - The FCC's Commercial Advertisement Loudness Mitigation (CALM) Act requires broadcasters and streaming providers to ensure ads are not louder than the surrounding programming. This industry guide explains compliance for audio loudness, which influences how audio is processed in video streams.
  • Captions App - An AI tool that simplifies adding subtitles and captions to videos with auto-generation, translation, and customization options. It also offers AI dubbing in over 100 languages, enabling creators to reach a global audience. The app provides a user-friendly interface for enhancing video content with accurate and customizable subtitles.
  • Cobalt - A simple and efficient multi-platform media downloader. Cobalt provides an easy way to download videos and audio from sites like YouTube, Instagram, and TikTok with a clean GUI.
  • create-subtitles - The 'create-subtitles' tool is designed to generate subtitles from a video and transcript using Python and the YouTube Data API. It assists in turning verbatim transcripts for video recordings into subtitle files, facilitating the integration of subtitles into videos. The tool can also be used for concatenating standalone subtitle files, making it versatile for various subtitle integration tasks.
  • Deepgram Captioning Packages - Deepgram has released two open-source captioning packages: deepgram-captions for Python and @deepgram/captions for JavaScript. These packages empower developers to effortlessly generate SRT and WebVTT captions, providing a flexible solution for various speech-to-text APIs, including Deepgram. Key features include SRT and WebVTT caption generation, API-agnostic design, speaker labeling and diarization compatibility, no Deepgram dependency, Whisper compatibility, and user-friendly caption creation.
  • DeepMedia Camera SDK - DeepMedia's Camera SDK is a state-of-the-art toolkit designed to enhance mobile applications with rich media experiences and augmented reality, powered by AI. It supports features like AVC/HEVC video recording, high-quality image capture, AI portrait mode, concurrent cameras, and more. The SDK is available for both Android and iOS platforms.
  • Def Video Ads - An asset for the Defold game engine that enables the integration of UnityAds, facilitating the display of video advertisements within Defold projects.
  • DisplayCAL - An open source display calibration and profiling tool. While not directly a video editing tool, calibrating your monitor using DisplayCAL ensures accurate color representation, which is critical for color correction and grading tasks in video production.
  • DivFix++ - An open source utility to repair and preview partially downloaded AVI files by rebuilding the index chunk, allowing playback of corrupted or incomplete AVIs.
  • Docker Serve - A simple Python based HTTP server that sets CORS allow headers. Useful for streaming from files on local computer.
  • DVBSnoop - An analyzer and debugging tool for MPEG transport streams and DVB broadcasts. It allows inspection of packet structure, tables (PAT, PMT, etc.), and payload of digital video streams.
  • EU AVMSD Accessibility Requirements - The European Union's Audiovisual Media Services Directive (AVMSD) includes requirements for accessibility (subtitles, audio description, sign language) on TV and on-demand services. Resources here outline how video service providers must comply to ensure content is accessible to people with disabilities.
  • First Order Motion Model - A famous deep learning model for image animation (e.g., making a single portrait image speak or move) by modeling motion as a first order approximation. Often used in one-shot talking head video generation.
  • flvmeta - An open source tool to manipulate Adobe FLV files. flvmeta can inject onMetaData tags, fix timestamps, and generally prepare FLV files for optimal playback (seeking). Useful for legacy content or repackaging streams from RTMP to file.
  • FreeWheel Ad Management Platform - FreeWheel provides a comprehensive ad management platform that enables publishers to manage and monetize their video content across various devices and platforms. It offers tools for ad decisioning, serving, and analytics, making it a valuable resource for integrating video ads into streaming services.
  • Frei0r Plugins - A collection of free and simple video effect plugins. Frei0r plugins provide dozens of filters, mixers, and generators that can be used in compatible video editors (like LiVES, Flowblade, Kdenlive).
  • Gnome Subtitles - An open-source subtitle editor for the GNOME desktop environment. It supports popular subtitle formats and offers features like video previewing, timing synchronization, and subtitle translation, providing a comprehensive solution for developers focused on video streaming and encoding.
  • GNU MediaGoblin - A decentralized, federated media hosting platform supporting video, images, and audio. MediaGoblin allows users to run their own instances for sharing media content.
  • Google IMA SDK - The Interactive Media Ads (IMA) SDK by Google enables developers to integrate video ads into their applications seamlessly. It supports various ad formats, including linear, non-linear, and companion ads, and is compatible with multiple platforms such as HTML5, Android, and iOS. This SDK is valuable for developers looking to monetize their video content effectively.
  • Harmonic VOS360 Ad - Harmonic's VOS360 Ad is a cloud-based platform that leverages server-side ad insertion (SSAI) technology to seamlessly stitch personalized ads into video streams. This solution enhances the viewing experience by ensuring consistency and frame accuracy in streaming, while also supporting targeted advertising strategies.
  • Hippo Video SDK - A complete video infrastructure that can be integrated into platforms with minimal code. It supports rapid deployment of video experiences, enabling developers to enhance their applications with video capabilities efficiently.
  • HyBid SDK - An open-source and modular SDK designed for app developers to integrate ads, offering modules for various ad formats such as banners, interstitials, native ads, and rewarded video.
  • InfraRecorder - An open source DVD burning tool that, among other features, can be used to author basic video DVDs (it includes support for creating video DVD file systems from video files). Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • Interactive Video Ads Integration Techniques - This resource discusses various techniques for integrating interactive video ads across multiple platforms, enhancing user engagement and providing seamless ad experiences. It includes case studies and best practices for implementing interactive ad formats.
  • ironSource Mobile Ad SDK - IronSource provides a comprehensive mobile ad SDK for Android and iOS, enabling developers to integrate various ad formats, including rewarded videos, interstitials, and banners. The SDK focuses on maximizing user engagement and revenue through effective ad monetization strategies.
  • Jubler - A cross-platform open source subtitle editor written in Java. It supports multiple subtitle formats, style editing, timing synchronization, and real-time preview of subtitles on video.
  • Kaltura Video Player - Kaltura's Video Player is an open-source, customizable player that supports advanced video advertising features. It integrates with various ad servers and networks, supporting standards like VAST and VPAID, and offers both client-side and server-side ad insertion.
  • Kapwing - A user-friendly AI tool that allows users to easily add subtitles, captions, and annotations to videos. It's ideal for non-profit video production, where making video content accessible to a diverse audience is essential. Kapwing offers automatic captioning, helping to increase the accessibility of videos. The platform supports various video formats and provides options for optimizing video titles and adding metadata, which helps improve search rankings on video platforms.
  • LEADTOOLS Audio and Video Processing Filters - LEADTOOLS offers a comprehensive collection of DirectShow filters and Media Foundation transforms for processing and enhancing audio and video content within.NET and C/C++ applications. These filters can be applied in real-time during playback or live capture, or during conversion for post-processing and editing.
  • LEADTOOLS Multimedia SDK - A comprehensive set of DirectShow and Media Foundation filters for audio and video processing. It offers developers tools to implement features such as playback, capture, conversion, and processing of multimedia content within.NET and C/C++ applications.
  • LEXI AI-Powered Captioning Toolkit - Leverages AI advancements to provide a comprehensive suite covering live and recorded captioning, translation, display, archiving, and search. It includes LEXI Automatic Captioning, delivering AI-powered automatic captions with quality rivalling human captions at a fraction of the cost. LEXI Recorded makes captioning recorded content quick and easy with fully automated, fast turnaround times. LEXI Translate offers efficient and cost-effective solutions for global reach through automatic translation. LEXI Local provides on-premises solutions for live, automatic captions, ensuring elevated security and greater control. LEXI Library offers a caption archive and search tool for easy viewing, searching, editing, and archiving of live captions.
  • Librosa - A Python library for analyzing and processing audio signals. It provides functionalities such as feature extraction, visualization, and audio effects, which are essential for audio analysis in video applications.
  • LiVES Video Editing System - LiVES is an open-source video editing system designed for both professional and amateur video editors. It supports real-time and non-linear editing, a wide range of video formats, and includes features like frame accurate cutting, real-time effects, and support for various audio and video codecs. Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • Livestreamer - The precursor to Streamlink, a command-line utility that extracted streams from various services to feed into a media player. (No longer maintained, replaced by Streamlink.).
  • Lux (Media Downloader) - A command-line media downloader (formerly known as "annie") that supports downloading videos and audio from various websites in high quality, similar to YouTube-dl but in Go.
  • madman-android - Madman (Media Ads Manager) is a high-performance alternative to Google's standard IMA Android SDK, allowing developers to render video ads with full control over the UI using their own VAST server.
  • MediaArea Tools (MediaInfo, etc.) - MediaArea produces open source software for media analysis, including MediaInfo (displays technical and tag data for files), MediaConch (policy compliance for archival video), and BWF MetaEdit (for WAV metadata).
  • MediaConch - An open source policy compliance checker for video files (especially in archival). MediaConch can batch-scan a collection of files to ensure they meet format specifications or institutional policies (like checking if files conform to MKV/FFV1 or MOV/ProRes standards).
  • Meteorite - The first (experimental) open source MKV/Matroska repair tool. Meteorite can attempt to fix corrupted.mkv files or those still downloading, by reconstructing missing or damaged segments.
  • Minyami - A lovely video downloader for HLS videos.
  • MKVToolNix - A set of tools to create, alter, and inspect Matroska (MKV) files. Includes mkvmerge for muxing streams into MKV and mkvinfo/mkvextract for inspecting and extracting content.
  • MMAction2 - An open source toolkit for video understanding by OpenMMLab. It supports state-of-the-art models for action recognition, temporal action detection, and spatio-temporal detection in videos.
  • Natron - A free and open source node-based compositing software, similar to After Effects or Nuke, for visual effects and motion graphics.
  • Oboe - A C++ library that wraps OpenSL ES and AAudio, offering high-performance audio operations for Android applications. It simplifies the development of real-time audio apps by providing a consistent API across different Android versions.
  • OOONA Tools - Professional online tools for subtitling and captioning, accessible from any computer at any time. The platform provides a simple and intuitive web interface for creating and editing captions and subtitles in any language. Features include frame-accurate text timing with an advanced timeline, video grid for precise caption positioning, audio waveform, and scene-change detection for accurate subtitle spotting. It supports import and export in various caption and subtitle formats, including TTML/DFXP, VTT, SCC, CAP, EBU-STL, SRT, IMSC1, PAC, 890, and more. Additionally, it supports generating image-based subtitles for DVD/Blu-ray/DCP authoring. Powerful Pro apps allow users to run automated QA scripts to check and fix files, as well as customize hotkeys and project settings.
  • Open Video Downloader (YouTube-dl GUI) - A cross-platform GUI for YouTube-dl/yt-dlp that makes it easy to download videos from YouTube and other platforms without using the command line.
  • Opencast - An open source lecture capture and video management system. Opencast allows universities and organizations to schedule recordings of lectures, process the videos (including multi-source), and distribute them to students.
  • OpenColorIO - An open source color management solution geared towards motion picture production. Developed by the Academy Software Foundation, OpenColorIO handles color space conversions and is a core part of VFX/animation workflows.
  • OpenFX (OFX) - An open standard for visual effects plugins, widely supported in compositing software. It defines a C API for writing plugins (e.g., for Nuke, Natron) that perform image and video processing tasks.
  • OpenIMAJ Audio Processing Libraries - OpenIMAJ provides a suite of audio processing and analysis tools, including implementations of various audio processors such as multichannel conversion and volume change. It is designed for developers working on audio-related functionalities.
  • OpenPose - A real-time multi-person keypoint detection library (for body, face, and hands) by CMU. Often used on video to extract pose information frame-by-frame for animation or analysis.
  • Otter.ai - An AI-powered transcription service that automatically generates subtitles for videos. It integrates with platforms like YouTube and Vimeo, offering features like real-time transcription and collaboration tools, streamlining the subtitle integration process.
  • Plex - A popular media server and client platform for organizing and streaming personal video (and other media) collections across devices.
  • Processing Video Library - Enables playback of movie files and capture of video data from cameras. It supports a wide range of media formats and is based on the GStreamer multimedia framework, facilitating video processing tasks in Java.
  • product_video_ads - A solution developed by Google to build video ads at scale, enabling the creation of product video ads efficiently.
  • PySceneDetect - An open source Python tool for automatic scene cut detection in videos. It can split video content into scenes by detecting fades, cuts, and other transitions.
  • pysrt - A Python library for parsing, modifying, and composing SubRip (SRT) files. It provides developers with tools to handle subtitle files programmatically, enabling tasks such as reading, writing, and editing subtitles within Python applications.
  • pysubs2 - A Python library for editing subtitle files, supporting various formats including SubRip (SRT), SubStation Alpha (SSA), and Advanced SubStation Alpha (ASS). It allows for reading, writing, and modifying subtitle files, making it a versatile tool for developers working with subtitles in Python.
  • QCTools - Quality Control Tools for Video Preservation - an open source toolset (by BAVC) to analyze digitized video files, with visualizations for signal quality issues.
  • Radiant Media Player - A comprehensive media player that offers built-in support for video ads using the Google IMA HTML5 SDK, facilitating seamless ad integration.
  • RawCooked - A tool that wraps video, audio, and data files (like DPX sequences or WAV) into a Matroska container without loss. Often used in digital archiving to store large raw content more efficiently while preserving all data for exact restoration.
  • Remotion - A framework for creating videos programmatically using React. Developers can use web technologies to render dynamic video content (with animations, data, etc.) and export it as MP4 videos.
  • Renee Video Editor Pro - A comprehensive video editing software that allows users to add subtitles and text to videos effortlessly. It supports various video formats and provides multiple editing tools, including cutting, merging, cropping, rotating, and transforming videos. Users can change and add background music, subtitles, and remove watermarks from videos. The software also supports format conversion, enabling users to convert videos and audios into different formats. Additionally, it offers screen recording capabilities, allowing users to record screen and webcam activities on Windows computers. The intuitive interface and diverse functionalities make it suitable for both beginners and professionals.
  • Rev.com - Professional captioning services that combine AI and human editing to provide accurate subtitles. It supports various video formats and platforms, making it a reliable tool for integrating high-quality subtitles into video content.
  • ScreenToGif - An open source tool to record a selected screen area, webcam, or whiteboard and export it as an animated GIF or video. It includes basic editing like frame-by-frame editing and text/brush overlays.
  • Seafile - High performance file syncing and sharing, with also Markdown WYSIWYG editing, Wiki, file label and other knowledge management features.
  • Server-Side Ad Insertion Techniques - An in-depth look at server-side ad insertion (SSAI) methods, discussing their advantages and challenges. This resource is valuable for developers seeking to implement SSAI for a more consistent viewing experience across devices.
  • Shaka Packager - An open source tool by Google for packaging media content (e.g., creating MPD/manifest and segments) with support for encryption (Widevine, PlayReady, FairPlay). It's often used to prepare content for DASH and HLS with CMAF and DRM, complementing encoding pipelines.
  • ShortGPT - An experimental AI framework to automate the creation of YouTube Shorts or TikTok videos. ShortGPT can generate video content (scenes, subtitles, etc.) using generative AI models.
  • SIMID - Secure Interactive Media Interface Definition (SIMID) is a project by the Interactive Advertising Bureau (IAB) that defines a standard for interactive video ads. It aims to provide a secure and consistent framework for interactive media ads across different platforms, enhancing user engagement and ad performance.
  • SimpleVideoCutter - A straightforward Windows tool for browsing and cutting segments from video files without re-encoding. It provides a preview and easy selection of in/out points to extract clips quickly.
  • Snowmix - The Swiss Army Knife of Open Source Live Video Mixing. - Open source live video mixing software for combining multiple video sources and creating real-time composites.
  • SoX (Sound eXchange) - SoX is a command-line utility for audio manipulation and processing. It supports various audio formats and provides a range of effects, making it useful for developers needing to process audio within video projects.
  • SponsorBlock - An open source browser extension to skip sponsor segments in YouTube videos.
  • SpotLink - An open-source software for dynamic ad insertion in VOD, IPTV, broadband video, and network DVRs, connecting SCTE 130-compliant dynamic ad insertion systems to broadband ad servers using the IAB's VAST standard.
  • SpotX Video Ad Serving Platform - SpotX is a video ad serving platform that offers solutions for publishers and advertisers to manage and optimize their video ad inventory. It provides tools for programmatic ad buying, real-time bidding, and analytics, facilitating efficient video ad integration and monetization.
  • srt - A simple library and set of tools for parsing, modifying, and composing SRT files. It offers a straightforward approach to handling subtitle files, making it suitable for developers who need to work with subtitles in their applications.
  • SubEasy - An AI-driven subtitles and transcriptions generator supporting over 100 languages. It provides high accuracy with subtitle reflow technology and offers seamless video creation with high-precision video AI transcription and translation. SubEasy simplifies the process of adding subtitles to videos, enhancing accessibility and engagement for a global audience.
  • SubRip - A free software program for Windows that extracts subtitles and their timings from various video formats to a text file. Its subtitle format,.srt, is widely supported, making it a valuable tool for developers needing to extract and integrate subtitles into video streaming and encoding projects. Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • Subsync - Automagically synchronize subtitles with video.
  • Subtitld - An open-source software designed to edit, transcribe, and create subtitles. It supports various formats like SRT, SSA, TTML, and more. Features include timeline adjustments, playback speed control, and the ability to export videos with burned-in subtitles, enhancing the workflow for video developers.
  • Subtitle Horse - A browser-based captions editor for subtitling videos. This free online editor features real-time validation, an interactive timeline, shortcuts, and more. It can be used within or from a CMS, or on-premise with a paid version, making it versatile for various development needs.
  • Subtitle Workshop - A free subtitle editor with a user-friendly interface and support for multiple subtitle formats. It offers features like spell checking, translation mode, and subtitle synchronization tools, making it suitable for both beginners and experienced users.
  • swiftsubtitles - A Swift package for reading and writing various subtitle formats, including SRT, SBV, SUB, VTT, CSV, LRC, and Podcast Index. It enables iOS and macOS developers to integrate subtitle functionalities into their applications.
  • Syncplay - A tool that synchronizes media playback across multiple computers over the internet. Syncplay allows friends to watch the same video file or stream in lockstep with a shared experience (works with MPC-HC, mpv, VLC).
  • Tartube - A GUI front-end for YouTube-dl/yt-dlp on Linux and Windows that helps manage video downloads, subscriptions to channels/playlists, and metadata for offline viewing.
  • Tero Subtitler - An open-source, cross-platform, and free subtitle editing software with a user-friendly interface. It offers fully-fledged editing with SMPTE and MEDIA modes, support for various subtitle formats, multi-level undo/redo, search and replace, auto-backup, source and transcription modes, translation memory, audiovisual preview, timeline with waveform visualizer, manipulation tools, formatting options, quality control features, translation and transcription capabilities, validation tools, automation for correcting errors, and more. The tool utilizes powerful multimedia playback engines like mpv, advanced audio/video manipulation tools like FFmpeg, tools for automatic transcription like whisper.cpp/Faster-Whisper, auto-translation API like Google Translate, and ElevenLabs TTS for video dubbing.
  • Text2Video-Zero - An AI model (ICCV 2023) for zero-shot text-to-video generation using image diffusion models. It allows generating short video clips from text prompts without training on video data.
  • threefive - A Python library for parsing SCTE-35 in various formats, including MPEGTS, HLS, and DASH, facilitating ad insertion and management in video streams.
  • TimeSide - A Python framework for scalable audio processing, analysis, imaging, transcoding, streaming, and labeling. It provides a high-level API designed to enable complex processing on large datasets of audio or video assets with a plug-in architecture and an extensible web frontend.
  • TorchAudio - A set of tools and building blocks for audio and speech processing, designed to accelerate the development and deployment of machine learning applications in these domains. It offers GPU-compatible, differentiable, and production-ready components, making it valuable for integrating audio processing into video streaming and encoding workflows.
  • truex-ad-renderer-web-integration - Documentation and resources for integrating true(X)'s CTV web ad renderer, providing guidelines for implementing interactive ad experiences in connected TV environments.
  • Tube Archivist - A self-hosted YouTube archival and library management application. It lets you subscribe to channels, automatically download videos, and index them with search and tags for offline access.
  • Type Studio - An online video text converter and editor tool that can transcribe video text automatically, support multiple languages, and export in various formats. It simplifies the process of adding subtitles to videos by providing automatic transcription and editing features, making it valuable for content creators aiming to enhance accessibility and engagement.
  • Unison - File synchronization tool useful for keeping video assets and media files in sync across multiple servers or locations.
  • Untrunc - A tool to recover and repair corrupted video files (e.g., missing headers) by reconstructing them using a reference file of the same format.
  • v4l (Go Video4Linux) - A Go library providing bindings to Video4Linux2 (V4L2) APIs, enabling video capture and camera control in Linux from Go applications.
  • VAST 4.0 Sample Tags - The Interactive Advertising Bureau (IAB) provides sample VAST 4.0 tags to help developers understand and implement the latest standards in video ad serving. These samples are valuable resources for testing and ensuring compliance with VAST 4.0 specifications.
  • VAST 4.0 Specification - The Video Ad Serving Template (VAST) 4.0 is a standard developed by the Interactive Advertising Bureau (IAB) that provides a common protocol for serving in-stream video ads. It defines the structure for ad responses and supports various ad formats, including linear and non-linear ads. Implementing VAST 4.0 ensures compatibility with a wide range of video players and ad servers.
  • VAST Inspector - A tool provided by Google to validate VAST (Video Ad Serving Template) ad tags. It helps developers ensure that their VAST tags are correctly formatted and functioning as intended, which is crucial for delivering video ads without errors. This tool is essential for developers working with VAST-compliant ad servers.
  • VHS (Terminal Recorder) - A tool for turning terminal sessions into animated GIFs or videos. VHS lets you script terminal interactions and outputs them as recordings, useful for demos and documentation.
  • Video Hub App - An electron-based video library organizer that scans folders for video files and presents an interface with thumbnails and search for browsing a video collection.
  • Video.js Ads Plugin - A plugin for Video.js that provides common functionality needed by video ad integrations, simplifying the process of incorporating ads into video content.
  • Video.js IMA Plugin - Integrates the Video.js player with Google's IMA SDK, enabling seamless ad integration in HTML5 video players. It supports various ad formats and provides a consistent ad experience across different platforms.
  • VideoCaptioner - A video subtitle processing assistant based on large language models (LLM). It supports speech recognition, subtitle segmentation, optimization, and translation, providing a comprehensive solution for subtitle generation and integration. The tool offers features such as accurate subtitle generation without GPU, intelligent segmentation and sentence splitting based on LLM, AI subtitle optimization and translation, and batch video subtitle synthesis.
  • videojs-contrib-ads - A Video.js plugin that provides a framework for creating ad integrations, offering a set of events and methods to manage ad playback and content video interactions.
  • VideoLingo - An all-in-one video translation, localization, and dubbing tool designed to generate Netflix-quality subtitles. It automates processes such as subtitle cutting, translation, alignment, and dubbing, enabling seamless video localization across language barriers. Key features include YouTube video download via yt-dlp, word-level subtitle recognition with WhisperX, NLP and GPT-based subtitle segmentation, and dubbing alignment with GPT-SoVITS.
  • VideoReTalking - A research project (SIGGRAPH Asia 2022) providing code for audio-driven lip synchronization in talking head videos. It enables realistic re-sync of lip movements to new audio on existing footage.
  • vigenair - Recrafting Video Ads with Generative AI, this project leverages machine learning to enhance video advertisements, utilizing technologies like Google Cloud Vision and Vertex AI.
  • VOCAL Technologies Video Software Library - VOCAL Technologies provides a comprehensive video software library that includes industry-standard video codecs, multi-channel video frameworks, voice and video over IP solutions, VoIP vocoders, and voice enhancement tools. These resources support a range of video communications applications from surveillance to teleconferencing.
  • Wav2Lip - An AI model that achieves accurate lip-syncing in videos. Given an input video of a person and a target speech audio, Wav2Lip generates a video where the person's lip movements match the audio perfectly.
  • web-monetisation-video-ads - A utility that enables developers to monetize videos by utilizing web monetization when available and loading ads as a fallback through the IMA SDK.
  • x9k3 - An HLS segmenter with SCTE-35 support, enabling live streaming from non-live sources and looping, useful for dynamic ad insertion scenarios.
  • YouTube-DL - The classic command-line program for downloading videos from YouTube and hundreds of other sites. YouTube-dl is open source and supports extracting audio, selecting formats, and many customization options.
  • yt-dlp - A command-line program to download videos from YouTube and many other video platforms. It's a fork of YouTube-dl with additional features and fixes, widely used for video retrieval.
  • Zubtitle - Automates the subtitling process, making it easy for beginners to add accurate captions. This AI-powered tool is designed to create professional subtitles quickly.
  • zveloDB - A URL database that enhances brand safety in digital video advertising platforms. By integrating zveloDB, platforms can ensure that video ads are served in appropriate contexts, protecting brand reputation and providing greater transparency in ad placements.

Ads & QoE

  • etf1/IAB VAST/VMAP Parser - TypeScript Node.js library with separate VAST3Parser and VMAPParser classes exposing a promise-based API.
  • Eyevinn SGAI Ad Proxy - Experimental HTTP proxy implementing Server Guided Ad Insertion (SGAI), compatible with AVPlayer and HLS.js 1.6+.
  • Eyevinn test-adserver - Test ad-server generating predictable VAST responses/mock creatives for validating SSAI stitching and CSAI impression tracking.
  • HLS-SCTE35-monitoring - Script that polls HLS renditions and parses SCTE-35 ad markers across manifest variants for consistency checking.
  • OpenQoE (GitHub) - Self-hosted, Apache 2.0 QoE monitoring stack with JS SDKs for major players, tracking startup time, rebuffering, and errors with Grafana dashboards.
  • VideoPerformanceAnalysis - Python/Selenium scripts extracting QoE metrics (time-to-start-playing, rebuffer count, buffering time fraction) from YouTube playback.
  • vmap-js - Pure JavaScript VMAP 1.0.1 parser with Node and browser builds, from Dailymotion.

Advertising

Quality & Testing

  • Akamai Stream Validator - Akamai's Stream Validator is a tool designed to verify the integrity and compliance of streaming media, ensuring optimal playback across devices.
  • Artillery Plugin HLS - Load test HTTP Live Streaming (HLS) servers with Artillery 🎥.
  • Automated Channel Testing - Roku Automated Channel Testing: Selenium-based WebDriver + Robot Framework + Samples.
  • Automated Testing on Devices - Key concepts and infrastructure.
  • AVRate - An open source modular Audio/Visual subjective evaluation test interface.
  • bdr-ssimu2 - Python/matplotlib tool computing SSIMULACRA2 BD-rate curves with average and harmonic-mean plots and temporal subsampling.
  • Big Buck Bunny (4K UHD Demo) - A short animated film by the Blender Foundation (2008). It's open content and commonly used as demo video footage for testing 4K, HDR, and high-bitrate video setups.
  • butteraugli (Rust port) - Pure Rust port of Butteraugli from libjxl with XYB color, visual masking, and multi-scale bands, validated to within 0.001% of the reference.
  • CAMBI: A Banding Artifact Detector - Netflix Tech Blog article introducing CAMBI (Contrast-Aware Multi-scale Banding Index), a metric Netflix developed to automatically detect banding artifacts in video content.
  • CMCD Spec, Validator & Analyzer (CTA-WAVE) - Official CTA-5004 Common Media Client Data spec repo including a CMCDv1 validator library and analyzer tool underlying QoE synthetic-test tooling.
  • CMCD-DASH — CMCD-aware dash.js PoC - Proof-of-concept CMCD-aware dash.js player + HTTP server performing bandwidth allocation via CMCD data (NUS).
  • cmcd-toolkit — CMCD v2 collector & analysis - CMCD v2 collector for ingesting/analyzing Common Media Client Data beacons locally or on cloud, with a dash.js beacon module.
  • Content Delivery Video Library (CDVL) - An online library of test video content and sequences provided for researchers and developers to evaluate video processing and streaming techniques (various resolutions, formats, and scenarios).
  • Conviva Streaming Performance Index (Report) - Conviva regularly publishes 'State of Streaming' reports which provide analytics on streaming quality (startup times, rebuffer rates, bitrate) across the industry. These reports are valuable to understand trends and the importance of monitoring QoE at scale.
  • Dolby Stream Validator - Dolby's Stream Validator assesses streaming content for Dolby audio and video standards, ensuring high-quality media delivery.
  • Eyevinn hls-monitor - Service monitoring one or more HLS streams for errors and inconsistencies (media-sequence issues, discontinuities, stale manifests) with a Prometheus /metrics endpoint and Grafana dashboards.
  • Eyevinn Stream Corruptor - Eyevinn's Stream Corruptor is a tool designed to intentionally corrupt streaming media, useful for testing error resilience in players.
  • fast-ssim2 — SIMD Rust SSIMULACRA2 - Fast SIMD Rust implementation of the SSIMULACRA2 perceptual image/video quality metric.
  • Fluster - Testing framework for decoders conformance.
  • HLS Stream Health Monitoring Tool - HLS stream health monitoring utility tool provides an report of live HLS stream. This utility tool checks the all available bitrate streams and generates the report in HTML file format.
  • ITU-T P.1203 reference implementation - Official Python reference implementation of the ITU-T P.1203 HTTP adaptive streaming QoE model (modes 0-3), outputting per-second and integrated MOS scores.
  • montevideo-tech/cmcd-validator - Node library validating player CMCD (CTA-5004) in real time across queries/headers/JSON, tested against Video.js/Dash.js/Hls.js/Shaka.
  • psy-ex/metrics - Perceptual video metrics toolkit computing SSIMULACRA2, Butteraugli, CVVDP, weighted XPSNR, VMAF NEG, SSIM, and PSNR via helper scripts.
  • Qctools (GitHub) - A quality control tool for analyzing video files, detecting defects, and evaluating technical quality metrics for archival and broadcast purposes.
  • R4WG20 QoE Metrics - Issue tracking repository for the R4-Wg20 QoE Initiative.
  • Sintel (Open Movie) - A 15-minute open source animated film (2010) by Blender Institute. It's frequently used for benchmarking video encoders and playback devices (available in 4K and various formats).
  • ssimu2xpsnr_plotter - Bash tool that encodes x264/x265/SVT-AV1/VVenC across CRF values, measures XPSNR and SSIMULACRA2, and plots rate-distortion curves.
  • Stb-tester - An automation tool for testing set-top boxes and video devices. stb-tester uses a Raspberry Pi with a capture card to run automated tests (via video analysis and remote control input) on HDMI outputs.
  • Streaming Video Experimentation at Netflix - Netflix Tech Blog article explaining how Netflix conducts A/B testing and experimentation on streaming video quality and features to optimize QoE for its users at scale.
  • Streamsim - VQEG/streamsim - A GitHub repository for video/multimedia development.
  • Test Engine Live Tools - Small tools and scripts for the EBU test engine platform.
  • Test Engine Ondemand - EBU's on-demand test engine for validating broadcast and streaming workflows against technical specifications.
  • Toward a Better Quality Metric for the Video Community - Netflix Tech Blog article discussing the need for improved video quality metrics beyond existing ones like PSNR or SSIM, and how metrics like VMAF were developed to better reflect human perception.
  • Toward A Practical Perceptual Video Quality Metric - Measuring video quality accurately at scale.
  • Unified Streaming Validator - Unified Streaming's Validator checks the compliance and quality of streaming content, supporting various streaming protocols.
  • Vaapi Fits - Intel/vaapi-fits - A GitHub repository for video/multimedia development.
  • Video Bench — How measure your video quality easily - Guide to using automated tools for measuring and benchmarking video quality metrics in encoding workflows.
  • Video Quality Assessment - Eyevinn's knowledge-sharing series continues with video quality assessment, covering both subjective and objective approaches to measuring perceived video quality.
  • Videobench - Command-line tool for analyzing video quality using VMAF, PSNR, and bitrate measurements.
  • VMAF - Perceptual video quality assessment based on multi-method fusion.
  • VMAF: The Journey Continues - By Zhi Li, Christos Bampis, Julie Novak, Anne Aaron, Kyle Swanson, Anush Moorthy and Jan De Cock.
  • VQEG P.1203 Software Tools Page - Video Quality Experts Group's index of ITU-T P.1203/.1/.2 QoE model implementations (video and audio quality modules).
  • VQEG Tools and Subjective Labs Setup - Providing the video quality research community with a wide variety of software tools and guidance in order to facilitate research.
  • VQMT - Video Quality Measurement Tool. Fast implementations of the following objective image quality metrics: PSNR, SSIM, MS-SSIM, VIFp, PSNR-HVS and PSNR-HVS-M.
  • Wisual - Web for Visual Quality Assessment.

Audio & Subtitles

  • ffsubsync - A tool to automatically synchronize subtitles with video by analyzing audio tracks. It uses speech detection to align subtitle timing via FFmpeg and machine learning.
  • Gaupol - An open source subtitle editor for text-based subtitle files, featuring timing adjustment, translation support, and built-in video preview (Linux).

Subtitles & Captions

  • Aegisub - A free, cross-platform open source tool for creating and modifying subtitles (advanced subtitle editor supporting ASS/SSA formats).
  • AutoSubtitle — Whisper subtitle GUI with burn-in - PyQt5 GUI that generates bilingual subtitles using faster-whisper and Silero VAD with LLM translation and FFmpeg burn-in/hardcode.
  • Caption Inspector - A reference decoder for Closed Captions (CEA-608 and CEA-708).
  • CCExtractor - De-facto standard open-source tool for extracting CEA-608/708 closed captions and subtitles from media files and streams.
  • Ccextractor (GitHub) - CCExtractor - Official version maintained by the core team.
  • CEA-608/708 Closed Captioning Standards - The EIA-608 and EIA-708 standards define how closed captions are encoded in analog and digital television signals in the US. They are crucial for broadcast TV and cable, and understanding these can help when dealing with caption extraction or embedding in video files (e.g., in MPEG-2 or ATSC streams).
  • Cea608 JS - A JavaScript project designed to extract CEA-608 captions.
  • Closed Captioning and Subtitling Products - MacCaption and CaptionMaker Overview - Telestream - Telestream Closed Captioning: MacCaption and CaptionMaker allow you to easily author, edit, create subtitles, and encode and repurpose video captions for television, web and mobile delivery.
  • DVB captions in media convert - ** If your output captions are DVB-Sub, set them up in your outputs according to the following information.
  • EBU-TT Live Interoperability Toolkit - Toolkit for implementing and testing EBU-TT Live, a subtitle standard used for live broadcast streaming across multiple platforms.
  • Extract Subtitle - Tool to extract embedded subtitle tracks from video files for separate processing or storage.
  • go-astisub - A Golang library for manipulating subtitles (supports formats like SRT, WebVTT, SSA/ASS, etc.), useful for automated subtitle processing.
  • IMSC 1.0.1 Text test content - GitHub repository containing test content files for validating IMSC 1.0.1 text-based subtitle implementations.
  • IMSC 1.1 Image test content - GitHub repository containing test content files for validating IMSC 1.1 image-based subtitle implementations.
  • IMSC 1.1 Text test content - GitHub repository containing test content files for validating IMSC 1.1 text-based subtitle implementations.
  • IMSC HRM validator - Validator for the IMSC Hypothetical Render Model (HRM), which constrains TTML document complexity.
  • IMSC Specification - W3C technical specification defining the IMSC 1.1 standard for timed text markup language used in subtitle and caption formatting.
  • IMSC validator - Online validation tool for checking compliance of subtitle files with the IMSC (International Movie Standardization Committee) specification.
  • imscED — IMSC subtitle/caption editor - IMSC (TTML) subtitle/caption editor built on imscJS, with a Video Image Burner REST service for IMSC burn-in.
  • imscJS: IMSC/TTML/SMPTE-TT/EBU-TT-D renderer - Renders IMSC/TTML/SMPTE-TT/EBU-TT-D subtitles and captions to HTML.
  • Libcaption - Free open-source CEA608 / CEA708 closed-caption encoder/decoder.
  • Libgosubs - A library for parsing and manipulating subtitle files in various formats for processing and conversion.
  • Live Streaming with Automated Multi-Language Subtitling (AWS Labs) - Reference architecture chaining MediaLive → Lambda@Edge (WebVTT injection) → MediaPackage with Transcribe Streaming + Translate for live multi-language captions.
  • Netflix Timed Text Style Guide (English) - Netflix's style guide for subtitles and captions outlines the editorial and formatting standards for timed text on their platform. It's a comprehensive resource for best practices in captioning (e.g., line length, timing, speaker labels) that is often referenced industry-wide.
  • Node Webvtt - Parse WebVTT files, segments and generates HLS playlists for them.
  • Pycaption - Python module to read/write popular video caption formats.
  • Pycaption CLI - A command line interface for the pycaption module.
  • Pysub Parser - Utility to extract the text and timestamps of a subtitle file (.srt,.ssa,.sub,.txt).
  • pyvideotrans — video translation/dubbing pipeline - End-to-end pipeline: ASR → subtitle translation → multi-role dubbing → audio-video re-sync, offline or via API models.
  • SCF — Subtitling Conversion Framework (EBU) - IRT's Subtitling Conversion Framework converting between EBU STL, EBU-TT Part 1 (Tech 3350/3360) and EBU-TT-D (Tech 3380) with strict conformance via XSLT and Python.
  • stable-ts - Whisper-based transcription with forced alignment and audio indexing, including a mode that loads audio in 30s chunks for near-streaming subtitle generation.
  • STL2TTML — EBU STL to TTML/WebVTT converter - Java tool converting EBU STL (Tech 3264) binary subtitle files to TTML and WebVTT for streaming delivery.
  • STRCleaner - Script that extracts all the text from a subtitles file ignoring time indications, HTML tags and other alien info.
  • subconv — SCC (CEA-608) to WebVTT converter - Ruby library converting SCC (EIA-608/CEA-608) caption files to WebVTT; niche 608 conversion path.
  • Subtitle Composer - A Qt-based subtitle editor for KDE/Linux that supports multiple subtitle formats and provides tools for timing, text editing, and translation.
  • Subtitle Edit - A free, open source subtitle editor that supports over 200 subtitle formats, with tools for sync, translation, and conversion.
  • Subtitle Workshop XE - One of the oldest and popular freeware tools for subtitle editing. Subtitle Workshop XE is a modern update that supports a variety of subtitle formats, offering spell check, timing adjustment, and format conversion in a user-friendly environment.
  • Subtitles - AV Platform MPEG DASH subtitles.
  • The ultimate guide to CCs - Comprehensive guide covering closed captioning practices, standards, and implementation methods for video accessibility.
  • ttconv: subtitle/caption format converter - Converts EBU STL, IMSC/TTML/SMPTE-TT/EBU-TT-D and 608/SCC into IMSC, WebVTT and SRT.
  • TTML/WebVTT Coding of audio-visual objects - ISO/IEC 14496-30 - Defines formatting for text tracks webvtt or ttml.
  • Vtt JS - A JavaScript implementation of the WebVTT specification.
  • Web Video Text Tracks Format (WebVTT) - A format for displaying timed text tracks (such as subtitles or captions) using the track element.
  • Web Video Text Tracks Format (WebVTT) (W3C) - The W3C recommendation for WebVTT, a text format for captioning and subtitling web video. It defines the syntax for caption files used in HTML5 video.
  • Webvtt Py - Read, write and segment WebVTT caption files in Python.
  • Webvtt Ruby - Parser and segmenter.
  • whisper-vtt2srt — AI transcript WebVTT→SRT cleaner - Zero-dependency CLI/Python tool converting Whisper WebVTT to clean SRT, fixing karaoke-accumulation and filtering glitches.
  • Whisper-WebUI — subtitle generation UI - Gradio UI generating subtitles from files/YouTube/mic using faster-whisper; outputs SRT/WebVTT, translation (NLLB/DeepL), Silero VAD, diarization.
  • WhisperX - ASR pipeline producing word-level timestamps via wav2vec2 forced alignment plus speaker diarization, useful for accurate subtitle cue timing.

Audio

  • AAC Audio Coding Standard - ISO/IEC 14496-3 - Defines the compressed audio format AAC.
  • aubio - C library with Python bindings for audio/music analysis: onset detection, pitch tracking, tempo/beat detection, and MIDI-from-audio conversion.
  • Audio Loudness (Google Conversational Actions) - Google developer tool for analyzing and measuring audio loudness levels in media content to meet broadcast and platform-specific audio standards.
  • Audio normalization with FFmpeg using loudnorm (ebur128) filter - Tutorial on using FFmpeg's loudnorm filter based on EBU R128 standards to normalize and adjust audio levels in media files.
  • AudioSeal — localized audio watermarking - Meta's localized sample-level audio watermarking with fast detector, robust to compression/re-encoding; MIT with weights.
  • audiowmark — robust audio watermarking - Robust blind audio watermarking that survives mp3/ogg re-encoding at ≥128kbit/s, with tunable strength.
  • Cavern — object-based audio engine (Atmos render) - Object-based audio engine and codec pack: Dolby Atmos rendering, HRTF, room correction, unlimited objects (C#).
  • EBU ADM Renderer (EAR) - EBU's reference implementation of ADM rendering (Tech 3388) in Python, shipping ear-utils CLI tools including dump_axml, dump_chna, ambix_to_bwf, and make_test_bwf.
  • Essentia - C++ audio/music analysis library with a large algorithm set for spectral/tonal/rhythm descriptors, Python bindings, and an essentia.js WebAssembly port.
  • fdk-aac - Standalone Fraunhofer FDK AAC codec library (from Android AOSP) supporting AAC-LC/HE-AAC/HE-AACv2/LD/ELD encode and decode, commonly paired with FFmpeg's --enable-libfdk-aac.
  • How to Set Audio Levels for Video - Bad sound can easily ruin good footage. Use these tips when it comes time to set audio levels for video and film projects.
  • iamf-tools (AOM) - Alliance for Open Media's Immersive Audio Model and Formats encoder/tools, CLI-encoding WAV or ADM-BWF into the IAMF container - an open alternative to Atmos/MPEG-H object audio.
  • libadm - C++11 library to parse, create, and write ITU-R BS.2076 Audio Definition Model (ADM) XML, pairing with libbw64 for BW64/BWF file I/O - a building block for object-based/Atmos-adjacent audio packaging.
  • libebur128 - An open source C library implementing the EBU R128 loudness standard. It can be used to measure and normalize audio loudness (LUFS) for broadcast compliance.
  • libspatialaudio — VideoLAN spatial audio renderer - Spatial audio renderer supporting ADM objects, Higher-Order Ambisonics and IAMF; from VideoLAN, actively maintained.
  • loudgain - CLI ReplayGain/R128Gain-style loudness tagger built on libebur128.
  • loudgain — ReplayGain 2.0 / EBU R128 CLI normalizer - CLI loudness normalizer implementing ReplayGain 2.0 on EBU R128/BS.1770 with non-destructive tagging for FLAC/Opus/AAC and more.
  • Low Latency Android iOS Linux Windows tvOS macOS Interactive Audio Platform - Superpowered Audio, Networking and Cryptographics SDKs. High performance and cross platform on Android, iOS, macOS, tvOS, Linux, Windows and modern web browsers.
  • normalizing Audio - Educational resource explaining audio normalization techniques for adjusting audio levels to consistent volumes across digital media.
  • opus-tools - Xiph's official CLI tools for encoding, inspecting, and decoding Opus audio (opusenc, opusdec, opusinfo).
  • pyAudioAnalysis — Python Audio Analysis Library - Python library for audio segmentation, silence removal via dynamic thresholding, spectral features, and classification.
  • pyloudnorm - Pure-Python loudness measurement and normalization library with no FFmpeg dependency.
  • RNNoise - Xiph's RNN-based real-time noise suppression library for speech, operating on 16-bit 48kHz PCM with a CLI example included.
  • sdroege/ebur128 — Rust EBU R128 Loudness Library - Rust port of libebur128 for loudness measurement, passing EBU-TECH 3341/3342, C-ABI compatible.

Metadata Extraction & Management

Batch Processing & Automation

Subtitle & Caption Tools

  • AutoSub - A CLI application to generate subtitle file (.srt) for any video file using Mozilla DeepSpeech.
  • Autosub (BingLingGroup) - Command-line utility to transcribe/translate from video/audio/subtitles to subtitles.
  • AutoSubSync - Subtitle auto-sync GUI wrapping ffsubsync/autosubsync/alass; can sync against a reference subtitle instead of the video.
  • Cea Extractor - Parsing and display logic for CEA-608 caption data in fragmented MP4 files.
  • Extract Subtitles - Utility to extract subtitle streams from video containers into separate text-based subtitle files.
  • Node Thumbnails Webvtt - Video thumbnail generator generating WebVTT spec file.
  • Serverless Subtitles - Can handle a video input, extract the sound, transcript it and generate different subtitle files for your video.
  • subgen — Whisper Auto-Subtitles for Media Servers - Auto-subtitle generator using Whisper (stable-ts + faster-whisper) for Jellyfin/Plex/Emby/Bazarr, CPU or CUDA.
  • Subs Extract - Extracts per-sentence subtitles + audio from a subtitle file + video file.
  • subsai - Subtitle generation tool with WebUI, CLI, and Python API using faster-whisper; exports srt/ass/ssa/sub/JSON/txt/vtt with translation support.
  • subtp - Rust parser for SRT and WebVTT with round-trip parse/render of cues, comments, styles, and regions.
  • TV Subtitle Extraction - System for extraction of subtitles from TV broadcasts.
  • vidstack/captions — Lightweight JS Caption Parser/Renderer - Modern ~5kB JS library parsing and rendering VTT/SRT/SSA captions, with server-side support, VTT-region rollup captions, and CSS styling.
  • whisper-subtitle-generator - Cross-platform GUI for batch subtitle generation with SRT/VTT/JSON export, translation, and GPU acceleration. MIT.
  • WhisperTimeSync — Transcript-to-Whisper Subtitle Aligner - Aligns an existing accurate transcript over Whisper timestamps to produce SRT with both good text and good timing.

VMAF PSNR SSIM Tools

  • Collection of VMAF Resources - A colleague asked for some resources relating to VMAF. Rather than answer in an email I thought I would create a post around it. Some of these are from Netflix, most from me (Jan Ozer). I've broken the items into three groups; Computing VMAF, Using VMAF, and About VMAF.
  • dynamic-crf - Go CLI performing target-VMAF CRF search via bisection/interpolation for per-scene variable-CRF encoding.
  • easyVmaf - Python script to easily compute VMAF using FFmpeg. It allows to deinterlace, scale and sync Ref and Distorted video automatically.
  • FFMetrics - Windows GUI that visualizes PSNR, SSIM, XPSNR, and VMAF computed via FFmpeg with interactive graphs and batch processing.
  • FFmpeg Quality Metrics - Calculate quality metrics with FFmpeg (SSIM, PSNR, VMAF).
  • ssimulacra2_rs - Rust implementation of the SSIMULACRA2 perceptual quality metric, among the first with video input support.
  • sxpsnr - Standalone XPSNR CLI computing the perceptually-weighted PSNR metric between two YUV/Y4M sources.
  • turbo-metrics - CUDA GPU-accelerated video quality metrics: XPSNR, Butteraugli, VMAF, and CAMBI banding detection.
  • Vship — GPU visual fidelity metrics - GPU-accelerated (HIP/CUDA) implementation of visual quality metrics SSIMULACRA2, Butteraugli and ColorVideoVDP for fast perceptual video comparison.

Color Science & Histogram Analysis

  • dovi_meta - CLI that creates Dolby Vision XML metadata from an encoded deliverable's binary RPU.
  • hdr-analyze - Reads raw 10-bit pixels frame-by-frame, computes per-frame luminance, and generates HDR dynamic metadata.bin files with a verifier.
  • HDR-Multi-Tool — HDR10+/Dolby Vision Metadata GUI - GUI for parsing HDR10+ and Dolby Vision dynamic metadata from MKV/TS/MP4/HEVC inputs.
  • libplacebo - GPU-based video rendering library (from mpv's algorithms) with dynamic HDR tone mapping, scene-change detection, gamut mapping, and native Dolby Vision Profile 5; powers FFmpeg's vf_libplacebo and VLC.
  • obs-color-monitor - Vectorscope, waveform, and histogram monitoring plugin for OBS Studio.
  • OpenColorIO (GitHub) - Academy Software Foundation's industry-standard color management framework for color space transforms and display transforms, used by Nuke, Blender, Krita, and major VFX pipelines.
  • quietvoid/dovi_tool — Dolby Vision RPU Metadata Tool - Rust CLI to extract, edit, and generate Dolby Vision RPU metadata (profiles 4/5/7/8) and plot L1/L2/L8 levels.
  • quietvoid/hdr10plus_tool — HDR10+ Metadata Extractor - Rust CLI to extract HDR10+ dynamic metadata from HEVC to JSON, plot brightness graphs, and compute Samsung scene info.
  • scopes_plusplus - C++23 realtime video waveform/vectorscope/analyzer using ImGui, OpenGL, and OpenCL.
  • YUView - A QT based, cross-platform YUV player with an advanced analytic toolset.

Scene Detection & Segmentation

AI & Machine Learning Tools

  • Ad Insertion Sample (GitHub) - The ad-insertion reference pipeline shows how to integrate various media building blocks, with analytics powered by the OpenVINO™ Toolkit, for intelligent server-side ad insertion.
  • Audio Transcriber - Transcodes audio & video files to text, supports MP3, M4A, WAV, MP4, MKV, AVI, MPG & MPEG. No Online API's. Python 3.
  • FGVC - (ECCV 2020) Flow-edge Guided Video Completion.
  • FlashVSR - CVPR 2026 real-time diffusion-based streaming video super-resolution using one-step, locality-constrained sparse attention with a tiny conditional decoder.
  • Jukebox - Code for the paper "Jukebox: A Generative Model for Music".
  • SimpleVQA - Deep-learning no-reference video quality assessment for user-generated content, in PyTorch with SlowFast feature extraction.
  • Smart City Sample - The smart city reference pipeline shows how to integrate various media building blocks, with analytics powered by the OpenVINO™ Toolkit, for traffic or stadium sensing, analytics and management tas..
  • Upscale-A-Video - CVPR 2024 temporal-consistent diffusion model for real-world video super-resolution.
  • Video TensorFlow - Using TensorFlow For Audience Measurement Kevin Staunton-Lambert Solutions Architect R&D @kevleyski www.switch.tv.
  • Videocr - Extract hardcoded subtitles from videos using machine learning.

Color Grading & Correction Tools

  • aras-p/smol-cube — Compact LUT Binary Format - C++17 compact binary format for Adobe/Resolve.cube LUTs using half-precision floats, aimed at game engines.
  • DoVi_Scripts - Drag-and-drop scripts wrapping dovi_tool for Dolby Vision: extract/parse/inject/edit RPU, P8 hybrid creation, RPU resync, and profile conversion to Profile 8.
  • HDR2SDR LUT Generator - Generates a 3D cube LUT for HDR-to-SDR conversion by comparing paired HDR/SDR video samples.
  • hdrfix - CLI tool for tone-mapping HDR screenshots/video to SDR using multiple algorithms (Hable, Uncharted2, ACES filmic, Reinhard) with exposure/levels control.
  • Qtff Parameter Editor - QuickTime file parameter editor for modifying transfer function, colour primary and matrix characteristics.
  • vapoursynth-tonemap — HDR-to-SDR Tone-Mapping Plugin - C VapourSynth plugin tone-mapping HDR video to SDR with Hable/Reinhard/Mobius operators ported from mpv and FFmpeg.

Effects & Compositing Tools

Non-linear Editing Suites

  • FFmpeg-webCLI — In-Browser Video Editor on FFmpeg.WebAssembly - Fully local browser video editor built on FFmpeg.WebAssembly with timeline trim, transcode, and GIF export.
  • FreeCut - Professional-grade browser-based video editor with multi-track editing, WebGPU/WebCodecs support, keyframe animations, AI tools, real-time preview, and export capabilities. Runs entirely in the browser with no installation required.
  • Motion Canvas — TypeScript Animation Framework - TypeScript generator-function animation framework with Canvas2D renderer and a real-time editor for programmatic video/animation.
  • OpenTimelineIO raven — OTIO Timeline Viewer - C++ OTIO timeline viewer for inspecting OpenTimelineIO editorial timelines.
  • OpenTimelineIO Swift Bindings - Swift language bindings for OpenTimelineIO, enabling OTIO timeline read/write from Swift apps.
  • Revideo — Programmatic Video via Motion Canvas - Open-source fork of Motion Canvas adding server-side rendering API and templates for automated/batch programmatic video pipelines.
  • VoidCut - Free, open-source browser-based non-linear video editor with drag-and-drop timeline, local-only processing (privacy-focused), FFmpeg integration, and simple export. All processing happens locally in the browser.

Conversion & Format Tools

  • FF Multi Converter - GUI File Format Converter. Contribute to ilstam/FF-Multi-Converter development by creating an account on GitHub.
  • media-converter (M1XZG) - Self-hosted web-UI media converter with GPU acceleration (NVENC/AMF/QSV), Docker-ready, supports batch resolution upscaling and audio extraction.
  • unifi-protect-remux - Niche true-remux tool converting proprietary Ubiquiti UniFi Protect.ubv camera format to MP4 without re-encoding.
  • wo-video-converter - Offline browser-based video converter powered by FFmpeg-WebAssembly, no server upload required.

Audio Analysis & Processing

Quality Analysis & Metrics

  • QCTools Documentation - QCTools (Quality Control Tools for Video Preservation) is a free and open source software tool that helps users analyze and understand their digitized video files through use of audiovisual analytics and filtering. QCTools is funded by the National Endowment for the Humanities and the Knight Foundation, and is developed by the Bay Area Video Coalition.
  • Quality of Experience in Streaming - In Eyevinn Technology's ambition to broader our sharing of knowledge we now expand this with addressing quality.
  • Software Tools - VQEG's Software and Tools Website.
  • The Challenge to Maintain and Translate Creative Visual Ideas to Everyone’s Viewing Devices - Discussion of what went wrong with the visual quality of a very popular TV show episode, and the challenge of maintaining creative intent when encoding and distributing dark, high-contrast content at scale.

Video Analytics & Benchmarking

  • DVB Inspector - Download DVB Inspector for free. DVB transport stream analyzer written in java. DVB Inspector is a java program to analyze captured DVB-streams. It is not a real time tool that can interact with PC-TV DVB hardware directly.
  • Elecard Stream Analyzer - Professional Video Analysis Tool For Syntax Analysis Of Encoded Media Streams. Operates With MPEG-2 PS/TS, VES and MP4 Files. Automation, batch execution via Command Line Interface. Check your multiplexer.
  • Promising Initial Results with AV1 Testing - Streaming Learning Center - I began testing AV1 early this week. Briefly, my tests involve 16 ten-second clips in four genres (movies, sports, animations, gaming) and an "other" category (music video, nature video).

Protocols & Transport

  • 100ms: RTMP vs WebRTC vs HLS - Live Video Streaming Protocols Compared - A detailed comparison of RTMP, WebRTC, and HLS protocols, highlighting their differences in latency, scalability, quality, and reach. This resource assists developers in choosing the appropriate protocol based on their specific live video streaming requirements.
  • Ad Creative Signaling in DASH and HLS - This project by the Streaming Video Technology Alliance defines a data scheme for signaling advertisement creative assets within DASH manifests and HLS playlists, facilitating better ad integration in streaming workflows.
  • Adaptive Streaming - A comprehensive overview and experimental project focusing on adaptive streaming technologies, specifically HLS and DASH. It covers content generation, playback across various browsers, and includes a Node.js module for creating multi-bitrate DASH and HLS content.
  • Adaptive Streaming with MPEG-DASH and HLS using AWS - A comprehensive guide detailing the process of setting up adaptive streaming using MPEG-DASH and HLS with AWS services. It covers S3 bucket configuration, Elastic Transcoder usage, and integration with Video.js for playback.
  • aiortc (Python WebRTC) - A Python library for Web Real-Time Communication that implements WebRTC and ORTC, enabling real-time audio/video and data streaming in Python applications.
  • Awesome DASH - A curated list of resources, tools, and information related to MPEG-DASH. This repository serves as a comprehensive guide for developers interested in DASH technology, offering insights into its implementation, best practices, and related research.
  • Bitmovin Player - A comprehensive adaptive streaming player supporting HLS and MPEG-DASH, offering features like low latency, DRM integration, and customizable UI. It is designed for high-quality video playback across various devices and platforms.
  • BlendVision: Top 6 Live Streaming Protocols Comparison - A comprehensive comparison of six common live streaming protocols: RTP, SRT, RTMP, RIST, ZiXi, and WebRTC. The article explores their technical characteristics, application scenarios, and differences, aiding developers in selecting the most suitable protocol for their live streaming services.
  • Comparison of Streaming Media Software - This resource provides a comprehensive comparison of various streaming media software, detailing the protocols they support, i

Truncated — view the full README on GitHub.

audio
awesome
awesome-list
captions
dash
digital-video
drm
encoding
ffmpeg
hevc
hls
mp4
mpeg-dash
ott
player
roku
streaming
video
video-streaming
vmaf

krzemienski/awesome-video

A curated list of awesome streaming video tools, frameworks, libraries, and learning resources.

HTML

1,926

299 commits

updated Jul 20, 2026

See the code

README

Awesome Video Awesome

A curated list of awesome streaming video tools, frameworks, libraries, and learning resources.

View on Website - Submit new resources and browse the curated collection with advanced filtering.

Contents

Encoding & Codecs

  • Adobe Media Encoder - A professional video encoding software that integrates seamlessly with Adobe's suite of creative tools. It supports a wide range of formats and offers features like batch processing, GPU acceleration, and preset templates, making it ideal for high-quality video encoding tasks.
  • Alliance for Open Media (AOMedia) - An industry consortium that develops open, royalty-free media formats. AOMedia created the AV1 video codec and works on related audio/image formats and tools.
  • AMD Advanced Media Acceleration (AMA) SDK - A comprehensive SDK from AMD that provides source codes for various elements of media acceleration, including sample codes, third-party integrations, and utilities. It is particularly useful for developers looking to leverage AMD hardware for efficient video encoding and decoding.
  • AMD Advanced Media Framework (AMF SDK) - AMD's GPUOpen Video SDK that provides developers access to GPU-accelerated encoding and decoding (H.264, HEVC, etc.) on AMD hardware.
  • AMF Encoder Developer Guide (Wiki) - Official AMF wiki guide for developers building video codec encoder applications with AMD's Advanced Media Framework SDK - covers encoder component setup, property configuration, and submission/polling workflow. Companion documentation to the AMF SDK repository entry.
  • Android-Video-Trimmer - An Android project that implements video trimming functionality using MediaMetadataRetriever to obtain video frames and FFmpeg for video cropping and compression.
  • Ateme TITAN - A software suite designed for video origination, acquisition, and compression. It offers high-quality encoding solutions suitable for various applications, including broadcasting and OTT services.
  • AV1 vs HEVC – Bitmovin Compression Efficiency Results - A Bitmovin blog post that discusses internal testing results comparing AV1 and HEVC encoders. It provides charts and analysis of bitrate savings, encoding speed, and visual quality, contributing practical data to the conversation about next-gen codec adoption.
  • Beamr Content-Adaptive Bitrate Encoding - Beamr's Content-Adaptive Bitrate (CABR) technology is integrated into Encoding.com's platform, allowing for streaming video with the highest possible picture quality while reducing bitrate by up to 50%. This technology is valuable for efficient video delivery and storage.
  • Bento - An open-source, high-speed serverless video transcoding pipeline designed for deployment on Amazon Web Services (AWS). It offers a fast and simple solution for individuals and small businesses needing efficient video transcoding capabilities.
  • Bitrate Viewer - A free Windows application that allows users to analyze the bitrate of H.264 encoded video files. It provides a graphical representation of bitrate distribution, aiding in the assessment of video quality and encoding efficiency.
  • CineForm SDK - GoPro's CineForm codec SDK, open-sourced, providing tools and libraries for the CineForm HD wavelet-based video codec used for high-fidelity video compression.
  • Cisco Thor Video Codec - Thor was an experimental video codec developed by Cisco as a candidate for the NETVC (Next-Gen Video) initiative. While Thor itself is not used as-is, some of its technology contributed to the development of AV1. It's a piece of codec research history with source available for study.
  • CompressAI - A PyTorch library and evaluation platform for end-to-end compression research. It provides custom operations, layers, models, and tools to research, develop, and evaluate image and video compression codecs. CompressAI includes pre-trained models and evaluation tools to compare learned methods with traditional codecs, facilitating advancements in compression technology.
  • CrafyVideoJS - A lightweight, hardware-accelerated JavaScript library that enables in-browser manipulation, decoding, and encoding of MP4 H.264 (AVC) videos. It leverages the browser's VideoEncoder and VideoDecoder APIs along with mp4box.js to provide efficient video processing without server-side support. Features include video trimming, bitrate adjustment, resolution changes, and metadata extraction.
  • dav1d - An open-source AV1 decoder developed by the VideoLAN and FFmpeg communities. It is designed for speed and efficiency, making it suitable for a wide range of devices and applications.
  • DivX Converter - A video encoding software that allows users to compress and convert video files into the DivX digital format, known for its high-quality output and efficient compression.
  • Dolby Vision Professional Decoder Plugin - DolbyLaboratories/dolby_vision_professional_decoder_plugin - A GitHub repository for video/multimedia development.
  • FastPix Cloud Transcoding - FastPix provides a cloud-based transcoding solution that converts video files into multiple resolutions, bitrates, and formats optimized for playback across devices and networks. Key benefits include scalability to handle peak traffic, cost-efficiency with pay-as-you-go models, and accessibility through powerful APIs for automation and dynamic workflows. FastPix supports modern codecs like AV1 and legacy ones like H.264, ensuring compatibility across various platforms.
  • FFmpeg - A free and open-source software project consisting of a suite of libraries and programs for handling video, audio, and other multimedia files and streams. It is widely used for format transcoding, basic editing, and standards compliance.
  • FFmpeg Docker Container - This project provides a Docker container for FFmpeg, facilitating the use of FFmpeg in isolated environments. It simplifies the deployment and execution of FFmpeg commands, ensuring consistency across different systems and easing the setup process for developers.
  • FFmpeg iOS - Precompiled FFmpeg libraries tailored for iOS development. These libraries enable developers to incorporate robust video processing capabilities into iOS applications, supporting a wide range of codecs and formats essential for video streaming and encoding tasks.
  • FFmpeg-apple-arm64-build - A build script for FFmpeg targeting the latest open-source video codecs running on macOS using Apple's M1 processor.
  • Gmmlib - Intel/gmmlib - A GitHub repository for video/multimedia development.
  • H.264 Profiles and Levels - Explains H.264 encoding profiles and levels, helping developers choose appropriate settings for compatibility and quality.
  • HandBrake Web - A self-hosted platform to use HandBrake on headless devices via a bespoke web interface. It allows users to harness the processing power of multiple devices to work on a single queue, facilitating efficient video transcoding workflows.
  • IHMC Video Codecs - A Java library providing support for H.264 and MJPEG encoding and decoding, as well as MP4 support. It utilizes native code for efficient video processing and includes automatic downloading of the OpenH264 library, ensuring compliance with licensing requirements.
  • Improving Our Video Encodes for Legacy Devices - A Netflix Tech Blog post describing techniques to ensure Netflix content remains compatible and efficient on older or less powerful devices, through specialized encoding profiles and optimizations.
  • Intel® Video Processing Library (Intel® VPL) - A library offering advanced access to specialized media hardware, including encode, decode, and video processing features on Intel GPUs. It supports hardware-accelerated codecs and programmable graphics, improving frame rates and reducing power usage compared to traditional CPUs.
  • JCodec - A pure Java library for video and audio codecs, including support for H.264 and AAC decoding, aimed at processing media without native dependencies.
  • JPEG XL Reference Implementation - The official reference implementation of the JPEG XL image format, offering both lossy and lossless compression. This project is valuable for developers working on image and video processing applications that require efficient compression techniques.
  • Lagarith Lossless Codec - A lossless video codec for Windows that offers high compression ratios. Useful for archival and intermediate video editing workflows where quality must be preserved (open source).
  • libaom - The reference implementation for the AV1 video coding format developed by the Alliance for Open Media. It provides tools for encoding and decoding AV1 video streams, offering improved compression efficiency over previous formats.
  • libaom: AV1 Codec Library - Libaom is the official AOMedia video codec library for AV1. It provides the tools necessary for encoding and decoding AV1 video streams, offering a royalty-free alternative to other codecs with improved compression efficiency.
  • Libavcodec - A free and open-source library of codecs for encoding and decoding video and audio data. It is an integral part of many open-source multimedia applications and frameworks, providing implementations for a wide range of codecs. Libavcodec is known for its portability and performance, offering optimized implementations of common multimedia processing tasks.
  • libmpeg2 - A free library for decoding MPEG-1 and MPEG-2 video streams. It's lightweight and portable, used in several open source media players for MPEG-2 playback.
  • libVLC - The core engine and interface of the VLC media player, providing a modular framework for multimedia applications. It supports a wide range of media formats and streaming protocols, enabling developers to integrate powerful video playback and streaming capabilities into their applications.
  • libvpx - An open-source project that provides libraries for encoding and decoding VP8 and VP9 video codecs. Developed by Google, it is widely used for web video applications and offers high-quality compression.
  • libvpx: VP8/VP9 Codec SDK - Libvpx is the official WebM project library for VP8 and VP9 video codec implementations. It provides developers with the tools to encode and decode VP8 and VP9 video streams, facilitating high-quality video compression and playback.
  • libwebm: WebM File Parser - Libwebm is a library for parsing WebM files, enabling developers to read and write WebM container files. It supports the WebM multimedia format, which is designed for web video streaming.
  • Lossless H.264 Codec - An open-source H.264 codec implementation focusing on lossless compression. This project is beneficial for developers requiring high-quality video encoding without loss of data, suitable for applications where preserving the original video quality is paramount.
  • Low-complexity Deep Video Compression with A Distributed Coding Architecture - This project introduces a deep video compression framework with a distributed coding architecture, aiming to reduce encoding complexity while maintaining competitive performance. It offers significant encoding speed improvements, making it suitable for deployment on resource-constrained devices.
  • MainConcept Codec SDK - MainConcept offers a comprehensive Codec SDK that provides developers with a suite of high-quality codecs for integrating into their applications. The SDK supports a wide range of formats, including H.264/AVC, H.265/HEVC, and MPEG-2, facilitating efficient video encoding and decoding.
  • Media Driver - Intel/media-driver - A GitHub repository for video/multimedia development.
  • MediaConversions - A project aimed at learning PowerShell 7+, HandBrakeCLI, and FFmpeg by creating scripts for media conversion. It focuses on optimizing media libraries for a wide range of mid-to-low bandwidth Roku devices by creating multi-stream videos.
  • mediaEngine by nablet GmbH - MediaEngine is a professional video transcoding software that unites multiple components into a single solution, reducing integration time and accelerating time-to-market. It offers high-speed encoding and superior video quality, making it suitable for developers seeking efficient transcoding solutions.
  • MediaInfo - A free, cross-platform tool that provides detailed technical and tag information about video and audio files. It supports a wide range of formats and is essential for video engineers who need to analyze media files.
  • More Efficient Mobile Encodes for Netflix Downloads - Netflix Tech Blog post summarizing improvements in Netflix's encoding for mobile downloads, targeting low-bandwidth scenarios. It discusses techniques like per-title optimizations for mobile.
  • Moscow State University Video Quality Measurement Tool (VQMT) - VQMT is a tool that computes VMAF, SSIM, and PSNR, displaying the scores in a graph. It allows users to view the frames in the video, making it useful for measuring video quality metrics.
  • NextLevelSessionExporter - A Swift library that facilitates media export and transcoding on iOS. It provides a simple API for exporting and transcoding media sessions, making it a valuable tool for developers working on video applications for Apple devices.
  • NVIDIA Video Codec SDK - NVIDIA's official SDK for hardware-accelerated video encoding and decoding (NVENC/NVDEC). Provides APIs to leverage GPU acceleration for H.264, HEVC, and AV1 codecs.
  • oneVPL (oneAPI Video Processing Library) - Intel's oneAPI Video Processing Library, providing a unified API to utilize hardware accelerators (CPU/GPU) for video encoding, decoding, and processing.
  • Open Source Media Framework - Intel's Open Source Media Framework provides tools and libraries to increase the speed and performance of video decoding, encoding, processing, and transcoding on compressed digital video and imaging. It supports workload offloading from the CPU to the GPU.
  • Open Transcoder - A media transcoding tool that integrates FFmpeg and OpenH264. It offers a command-line interface for converting media files between various formats, providing a flexible solution for developers needing to transcode media efficiently.
  • OpenEncoder - A free audio and video transcoder based on FFmpeg. It offers an easy-to-use interface with features like drag-and-drop file addition, multi-file conversion queues, and support for professional formats such as DNxHD, ProRes, and CineForm. This tool is valuable for developers seeking a user-friendly transcoding solution with robust format support.
  • OpenH264 - An open-source H.264 codec library developed by Cisco. It supports H.264 encoding and decoding and is suitable for real-time applications such as WebRTC. Cisco provides this library under a BSD license, making it freely available for use in various applications.
  • Optimized Shot-Based Encodes for 4K: Now Streaming! - Netflix Tech Blog article on Netflix's rollout of shot-based encoding for 4K titles. It explains how splitting content by scene (shot) and encoding with per-shot parameters improved quality.
  • Per-Title Encode Optimization – Netflix TechBlog - Netflix's seminal whitepaper on Per-Title Encoding Optimization, describing how they determine optimal encoding settings for each content title to maximize quality and minimize bitrate.
  • PLVC - (Perceptual Learned Video Compression) is a deep learning-based video compression approach that employs a recurrent conditional GAN. It focuses on achieving high perceptual quality at low bitrates, outperforming traditional codecs like HEVC in user studies and perceptual quality metrics.
  • QADRA - (Quality-Aware Dynamic Resolution Adaptation) is an open-source Python-based framework designed for adaptive video streaming applications. It determines encoding resolutions and quantization parameters to maximize perceptual quality while adhering to encoding and decoding time constraints, enhancing streaming efficiency.
  • QCTools (Quality Control Tools for Video Preservation) - QCTools is a free, open-source software developed by BAVC Media in collaboration with Dave Rice and the Dance Heritage Coalition. It enables conservators and archivists to inspect video signal characteristics for batches of digital media, facilitating quality control, error detection, and increased trust in video digitization efforts.
  • Rasbora - A distributed, scalable open-source video transcoding solution with hardware acceleration, providing an alternative to mainstream cloud video transcoding services. It offers components for video transcoding, task management, system monitoring, and more.
  • rffmpeg - A remote SSH FFmpeg wrapper tool that allows users to execute FFmpeg commands on remote servers via SSH. This is particularly useful for offloading transcoding tasks to more powerful machines, enabling efficient media processing and load balancing.
  • RIFE (AI Frame Interpolation) - An AI-based method (Real-Time Intermediate Flow Estimation) for frame interpolation to create slow-motion videos by generating intermediate frames between existing ones.
  • Simple Binary Encoding (SBE) - SBE is a high-performance message codec designed for low-latency applications. It provides efficient encoding and decoding of messages, making it suitable for real-time video streaming and encoding scenarios.
  • Telestream Vantage - Telestream's Vantage is a comprehensive video transcoding and workflow automation solution that integrates with various digital asset management systems. It provides multiformat digital video and audio ingest, metadata extraction, keyframe extraction for storyboarding, automated proxy generation, transcoding between formats, and content repurposing for web, mobile, and more. Vantage is designed to streamline media workflows, ensuring efficient and high-quality video processing.
  • Theora - A free and open video compression format developed by the Xiph.Org Foundation. Derived from the VP3 codec, Theora offers a royalty-free alternative for video compression, making it suitable for developers seeking open standards for video streaming and encoding.
  • Transcoder - A hardware-accelerated video transcoding library for Android, utilizing the MediaCodec APIs. It supports features such as cropping, concatenation, clipping, audio processing, and video speed adjustments. Designed for fast and efficient video processing on Android devices, Transcoder offers a fluent API and is suitable for applications requiring on-device video manipulation.
  • UT Video Codec Suite - An open source lossless video codec from Umezawa that provides fast encoding/decoding and is often used for lossless video compression on Windows (supports RGB and YUV formats).
  • Vantage Gateway - Formerly known as Encoding.com, is a cloud-based media processing platform that offers comprehensive transcoding, packaging, quality control, and content protection services. It supports a wide range of video formats and provides an API for seamless integration into existing workflows, making it a robust solution for video streaming and encoding needs.
  • Vantage Transcode - By Telestream provides deep and broad support for all major professional video and audio formats, containers, and packages. It offers faster-than-real-time support, automation of conversion workflows, support for the latest UHD+ and HDR standards, and the ability to work in Vantage Cloud. Vantage Transcode simplifies media processing with dynamic workflows, making it a reliable solution for video streaming and encoding.
  • Vantage Transcode by Telestream - Vantage Transcode is a powerful transcoding solution that automates the conversion of media files into various formats. It supports a broad array of codecs and containers, including MPEG-2, H.264, HEVC, and more, making it suitable for professional media workflows.
  • VCodec Interface C++ Library - VCodec is a C++ library that provides a standardized interface for various video codecs, facilitating video encoding and decoding processes. It defines data structures and rules for different video codec classes, supporting multiple raw pixel formats and compressed formats like JPEG, H264, and HEVC. This library is valuable for developers seeking a consistent and extensible framework for integrating video codec functionalities into their applications.
  • Vcodes - High-performance media processing solutions, supporting major formats and standards used by TV, OTT, and post-production houses. It enables automated media processing workflows, eliminating the need for expensive in-house video expertise. Vcodes provides features like content-aware encoding, automated quality checks, and easily scalable resources, making it a valuable tool for video streaming and encoding developers.
  • VCT (Video Converter & Transcoder) - VCT is a frontend for FFmpeg that allows users to set options, drag multiple files, transcode between formats (e.g., MKV to MP4), manually edit FFmpeg commands, record network streams, and manage batch processing. It's particularly useful for developers needing a versatile tool for video conversion and transcoding tasks.
  • Video Processing Project - A collection of C++ source code for various video processing algorithms and tools used in software media pipelines. It includes DirectShow Filters such as H.264 encoder/decoder, RTSP sink/source filters, and more, providing essential components for developers working on video streaming and encoding solutions.
  • Video Transcoding Scripts - A collection of Bash scripts designed to transcode, inspect, and convert videos using tools like HandBrake, MKVToolNix, MPlayer, FFmpeg, and MP4v2. These scripts serve as intelligent wrappers around these tools, facilitating efficient video processing.
  • video-transcoding-API - An HTTP API for transcoding media files into different formats using pluggable providers. It supports multiple transcoding services, offering flexibility and scalability for developers integrating video transcoding into their applications.
  • videojs-record FFmpeg.WebAssembly Plugin - The FFmpeg.WebAssembly plugin for videojs-record allows developers to run FFmpeg directly in the browser using WebAssembly. This enables on-the-fly transcoding of recorded media without the need for server-side processing. It's particularly useful for applications requiring real-time video manipulation and supports various FFmpeg options for customized encoding.
  • VLC Live Transcoding Guide - A comprehensive guide detailing various methods for live transcoding using VLC and FFmpeg. It includes examples for creating TCP video streaming connections, streaming recorded video files, and sending VLC output to stdout.
  • VLC Media Player - VLC is a free and open-source multimedia player that also offers video conversion tools. It supports a wide range of formats and provides basic video encoding functionalities, making it a versatile tool for both media playback and simple encoding tasks.
  • VVenC (Fraunhofer Versatile Video Encoder) - An open source H.266/VVC encoder implementation by Fraunhofer HHI, designed to be fast and efficient while supporting all features of the VVC standard.
  • VVenC and VVdeC - VVenC is a fast and efficient VVC encoder developed by Fraunhofer HHI, while VVdeC is a live decoder for VVC. Together, they provide an open-source end-to-end toolchain for the Versatile Video Coding (VVC) standard, enabling significant bit-rate reductions for the same subjective video quality compared to previous standards.
  • webm-tools: WebM Utilities - Webm-tools is a collection of utilities for working with WebM files, including tools for handling alpha channels, encryption, and streaming-related tasks. These tools assist developers in managing and processing WebM video content.
  • webmdshow: DirectShow Filters for WebM - Webmdshow provides DirectShow filters for WebM, allowing developers to integrate WebM playback and encoding capabilities into Windows applications using the DirectShow framework.
  • webmquicktime: QuickTime Components for WebM - Webmquicktime offers QuickTime components for WebM, enabling QuickTime-based applications to support WebM video playback and encoding, thus expanding compatibility with the WebM format.
  • Wirecast - A professional live video streaming production software that enables users to create high-quality live-streamed events. It supports multiple cameras, graphics, and media sources, making it suitable for broadcasting and live event production.
  • x264 (H.264/AVC Encoder) - The most widely used open source H.264/AVC video encoder, known for its high quality and efficiency across many profiles and presets.
  • x264: H.264 Video Encoder - X264 is a free software library for encoding video streams into the H.264/MPEG-4 AVC format. It is widely used due to its high performance and quality, making it a staple in video encoding applications.
  • x265 (H.265/HEVC Encoder) - A high-performance open source H.265/HEVC encoder. x265 is used to create HEVC video streams and is known for being very configurable to balance quality/speed.
  • Xiph.Org Foundation Projects - The Xiph.Org Foundation develops free and open protocols and software for multimedia, including well-known projects like the Vorbis audio codec and the Theora video codec. Their work focuses on providing open-source alternatives for multimedia processing, making them valuable resources for developers seeking royalty-free codecs.
  • xvc - A modern and flexible open-source video codec that offers high compression performance at reasonable encoding and decoding complexity. It is based on technologies from standards like AVC/H.264 and HEVC, and includes additional advancements to enhance video compression efficiency.

Next-Generation Codecs AV1 VVC

  • avm (AOM Video Model) — AV2 reference codec - AOMedia's reference encoder/decoder for the next-gen AV2 codec (successor to AV1); experimental research codebase with first 1.0.0 tag.
  • GstH266Enc - InterDigital GStreamer plugin wrapping a VVC/H.266 encoder (vvenc or uvg266) for pipeline-based encoding, Meson build.
  • JVET VVC Test Model (VTM) Reference Software - Official overview site for Versatile Video Coding (VVC) and the VVC Test Model (VTM) reference software from the Joint Video Experts Team. Hosts VTM encoder/decoder, experimental JEM software, and Benchmark Set (BMS) tools.
  • SVT-AV1-Essential - Streamlined SVT-AV1 encoder fork with sensible defaults and quality-of-life improvements tuned for non-low-latency high-resolution encoding.
  • svt-av1-hdr - SVT-AV1 fork with perceptual, HDR, and film-grain optimizations from ex-PSY team members, tuned for high-fidelity AV1 encoding.
  • Tencent O266player - CPU-efficient H.266/VVC decoder (O266dec) integrated into a modified VLC player for real-time VVC playback.
  • uvg266 - Open-source VVC/H.266 Encoder - Open-source VVC/H.266 encoder licensed under 3-clause BSD, developed by University of Helsinki's Ultra Video Group. Still under active development with ongoing RD-quality and speed improvements.
  • VVC/H.266 in GStreamer 1.26 (Igalia) - Technical writeup on VVC/H.266 support landing in GStreamer 1.26, covering avdec_h266, vvdec, and Intel hardware vah266dec decode elements.
  • VVCEasy - Ready-to-use prebuilt VVC (H.266) binaries and players for Windows, macOS, Linux, FreeBSD, Haiku, Android, and WebAssembly. Includes vvdec, vvenc, uvg266 encoders/decoders, and FFmpeg builds with VVC support.
  • x266 - Next Generation VVC/H.266 Encoder by MulticoreWare - Open-source VVC/H.266 compliant encoder built on top of x265, featuring HDR/WCG support, 360° video encoding, and SDR video. Developed for achieving twice the coding efficiency of HEVC.

Encoding Tools

  • Adobe Media Encoder (AME) Guide - User guide for Adobe Media Encoder, a tool that automates batch transcoding and export from Adobe's video apps. Useful resource for understanding batch encoding settings for various formats and how to optimize output for different platforms.
  • Android FFmpeg Transcoder - An Android library for performing video transcoding on-device, leveraging FFmpeg (or MediaCodec) to extract frames or encode videos on Android.
  • Arch FFmpeg GPAC - A ready-prepared video transcoding pipeline to create DASH/ HLS compatible video files & playlists.
  • Auto-Editor - An automatic video editor written in Python that can remove silence, jump cuts, and more without manual editing. It processes video/audio to create a faster-paced output automatically.
  • Avidemux - A simple, free video editor for cutting, filtering, and encoding tasks, supporting many file types and codecs.
  • AviSynth+ - An improved version of the classic AviSynth frameserver. AviSynth+ allows video processing and filtering through scripting, enabling complex edits and conversions on Windows with high performance.
  • Avtk - A Python library for audio and video processing that provides tools for encoding and manipulating media files.
  • avTranscoder - C++ wrapper providing a high-level API around FFmpeg and LibAV for video transcoding tasks.
  • ButtleOFX - An open source nodal video compositing software built on top of OpenFX. It provides a user-friendly interface to apply and connect video effects (an experimental alternative to commercial compositors).
  • Cinelerra GG Infinity - A robust open source non-linear editor for Linux, derived from the long-running Cinelerra project. Cinelerra GG Infinity offers professional-grade editing, compositing, and audio features for advanced users on Linux.
  • CloudTranscode - Distributed videos and images encoding/transcoding using Amazon SFN, FFmpeg and ImageMagic.
  • DaVinci Resolve (Free Edition) - A professional cross-platform video editing, color grading, and post-production suite with a free version available.
  • Django Video Encoding - Django-video-encoding helps to convert your videos into different formats and resolutions.
  • Docker Java Media - JRE 10 (Java 10) and media tools (FFmpeg).
  • Fflock - Distributed video transcoding.
  • Ffmediaelement - FFME: The Advanced WPF MediaElement (based on FFmpeg).
  • FFmpeg Android Java - Android java library for FFmpeg binary compiled using HTTPS://GitHub.com/writingminds/FFmpeg-android.
  • FFmpeg.WebAssembly - A pure WebAssembly port of FFmpeg that enables video and audio processing directly in the browser. It provides an API to run FFmpeg commands for transcoding or editing media on the web.
  • FfmpegGUI (ffWorks) - A macOS graphical front-end to FFmpeg (commercially known as ffWorks). It simplifies complex FFmpeg operations with a drag-and-drop interface and preset configurations, while harnessing FFmpeg's full power under the hood.
  • FFmpegKit - A complete, cross-platform wrapper for FFmpeg, providing ready-to-use binaries and libraries for Android, iOS, Linux, Windows, and more.
  • Flowblade - A free, open-source video editor for cutting, compositing, and editing video with a timeline-based interface.
  • go-astiav - A comprehensive Go binding for FFmpeg's libav* libraries, facilitating the building of media applications in Go with FFmpeg's capabilities.
  • goav - Go bindings for FFmpeg's libav* libraries. It allows developers to leverage FFmpeg's powerful audio and video processing features in Go applications.
  • gstreamer-rs - Rust language bindings for the GStreamer multimedia framework, allowing developers to create GStreamer pipelines and plugins in Rust.
  • HandBrake - A popular open source video transcoder that converts video from nearly any format to a selection of modern, widely supported codecs.
  • Intel oneAPI Video Processing Library (oneVPL) - Intel's oneAPI Video Processing Library, the successor to Intel Media SDK. It offers a unified API for GPU-accelerated video encode/decode and processing (Quick Sync Video and other accelerators).
  • Internet Friendly Media Encoder (IFME) - A cross-platform GUI front-end for x265, x264, and VP9 encoders. IFME makes it easy to batch encode videos with advanced compression (HEVC) settings, including support for plugins and multiple audio streams.
  • Kdenlive - A free and open source non-linear video editor for GNU/Linux, Windows, and macOS. It offers multi-track video editing, a wide range of effects, and GPU acceleration.
  • LAV Filters - An open source set of DirectShow filters based on FFmpeg that allow the playback of virtually any audio/video format on Windows (often used within media players like MPC-HC).
  • Lightworks - A professional NLE (non-linear editor) with a free edition. Lightworks has been used in Hollywood and offers multi-track editing, effects, and support for various formats on Windows, Mac, and Linux.
  • Liquid Dl - Liquid-dl is a simple tool for utlities such as FFmpeg, YouTube-dl, and scdl.
  • Lossless Cut - A tool for trimming and cutting video files without re-encoding, preserving the original quality and codec data.
  • Manifesto - An HLS tool for creating multiple variants, a master.m3u8 file, and converting 608 captions to segmented webvtt subtitles via FFmpeg.
  • Mlt - Cross-platform multimedia framework for video editing, processing, and playback applications.
  • MLT Framework - An open source multimedia framework for video editing applications. MLT provides a toolkit for developers to build editors (used by Kdenlive, Shotcut) with support for a range of effects and transitions.
  • Moviepy (GitHub) - A Python library for video editing and composition that uses FFmpeg backend to create, edit, and manipulate video files programmatically.
  • MP4Box JS - JavaScript version of GPAC's MP4Box tool.
  • Mp4Composer-android - An Android library to compose and edit MP4 videos using MediaCodec, supporting filters, scaling, trimming, transcoding, cropping, time scaling, and rotation.
  • mp4ff - A Golang library and set of tools for parsing and writing MP4 (ISO BMFF) files, including support for fragmented MP4 and progressive MP4.
  • MP4Joiner & MP4Splitter - Free open-source tools to losslessly join and split MP4 files without re-encoding. Useful for simple video file merging and cutting tasks.
  • MystiQ Video Converter - A cross-platform FFmpeg GUI for converting audio and video. MystiQ offers an intuitive interface, preset profiles for common formats (MP4, WEBM, MP3, etc.), and options for advanced users to tweak encoding parameters.
  • Olive Video Editor - A next-generation open source non-linear video editor under development aiming for professional features and performance (currently in alpha).
  • OpenCV - An open source computer vision and machine learning library with extensive support for image and video analysis. Often used for video processing tasks like object detection, tracking, and filtering.
  • OpenShot Library (libopenshot) - The C++ library behind OpenShot Video Editor that provides core video editing functionalities (timeline, effects, keyframes). libopenshot can be used independently to build custom video editing applications.
  • OpenShot Video Editor - An easy-to-use, cross-platform open source video editor. It supports timeline editing, effects, and keyframes for creating videos on Linux, Mac, and Windows.
  • Pitivi - A free, open source video editor for Linux built on the GStreamer framework, focusing on an intuitive user interface and integration with GNOME.
  • PyAV - A Pythonic binding for FFmpeg's libraries (Libav). PyAV allows Python programs to read, write, and manipulate video and audio data by leveraging the powerful FFmpeg backend.
  • QWinFF - A simple cross-platform FFmpeg GUI (using Qt) for converting audio and video, providing preset profiles and the ability to batch process files.
  • Restreamer - A user-friendly solution to re-stream video sources (like local RTSP webcams) to streaming platforms. It wraps FFmpeg to publish streams to YouTube, Twitch, or custom servers with a simple UI.
  • RxFFmpeg - 是基于 ( FFmpeg 4.0 + X264 + mp3lame + fdk-aac ).
  • scikit-video - A set of video processing routines for use with SciPy, providing basic video reading and writing capabilities for scientific computing workflows in Python.
  • Selene Media Encoder - A minimalistic audio/video converter for Linux. Selene provides a simple GUI to convert media files to formats like MP4, MKV, OGG, with support for latest codecs (H.264, H.265, VP9) and basic editing (trim, crop).
  • Shotcut - A free, open source, cross-platform video editor. It offers a wide format support via FFmpeg, a customizable UI, and a range of video and audio filters.
  • Shutter Encoder - A free, cross-platform video and audio converter that uses FFmpeg behind the scenes. Shutter Encoder offers a user-friendly GUI with presets and advanced options.
  • slowmoVideo - An open source tool that creates slow-motion videos from existing footage by interpolating intermediate frames, allowing extreme slow motion effects. Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • StaxRip - A versatile video encoding GUI for Windows, utilizing a variety of open source tools (AviSynth/VapourSynth, x264/x265, etc.) for advanced encoding workflows.
  • Swift Video Generator - Dev-labs-bg/swift-video-generator - A GitHub repository for video/multimedia development.
  • Transcode - Bbxnet/transcode - A GitHub repository for video/multimedia development.
  • vid.stab - An open source video stabilization library, used with FFmpeg to stabilize shaky footage by analyzing and smoothing camera motion.
  • VidCoder - An open source Windows application for converting and ripping video files and DVDs/Blu-rays, built on the HandBrake engine with an enhanced user interface.
  • VidCutter - An open source cross-platform tool for fast video trimming and joining. VidCutter focuses on doing simple cuts without re-encoding, using intelligent scene detection and supporting many formats via FFmpeg.
  • video4j - A Java video processing library providing a set of tools and APIs to handle video operations in Java applications.
  • VirtualDub - A classic open source video capture and processing utility for Windows, useful for quick linear operations, filtering, and format conversions on AVI files.
  • VLMC (VideoLAN Movie Creator) - An experimental non-linear video editing software from the VideoLAN project. Aims to offer basic editing (cutting, transitions, etc.) with a simple interface, built on libVLC.
  • Voctomix - Full-HD Software Live-Video-Mixer in Python.
  • Vrecord - An open source tool for capturing analog video (VHS, Beta, etc.) to digital formats using Blackmagic or AJA capture cards. Vrecord provides a scriptable FFmpeg-based workflow for archivists with features like live histogram and QA metrics.
  • WinFF - A graphical user interface for FFmpeg that runs on Windows and Linux. WinFF makes it easy to convert multiple media files by providing presets and a batch-processing interface.
  • XMedia Recode - A free Windows tool for converting media files to various formats. It supports a broad array of codecs (built on FFmpeg) and provides fine control over encoding settings.
  • Xuggler - An open source Java library (now discontinued) that wrapped FFmpeg functionality, enabling Java developers to decode, encode, and stream video.
  • Yamdi (Yet Another Metadata Injector) - A simple, fast tool to inject metadata (onMetaData) into FLV files. Yamdi can also insert an onLastSecond event and is often used to prepare live-recorded FLV files for on-demand playback by adding missing metadata for durations and keyframes.

FFmpeg

  • ab-av1 - CLI tool for AV1 (and x264/x265) re-encoding using fast VMAF sampling plus automatic CRF binary search to hit a target quality. Wraps FFmpeg/svt-av1/vmaf.
  • Alpine Bento FFmpeg - Alpine Linux with FFmpeg, Bento, and PM2.
  • Awesome FFmpeg - A curated list of awesome FFmpeg resources.
  • AWS Lambda FFmpeg - An S3-triggered Amazon Web Services Lambda function that runs your choice of FFmpeg 🎬 commands on a file 🎥 and uploads the outputs to a bucket.
  • Can FFmpeg extract closed caption data - I am currently using FFmpeg to convert videos in various formats to flv files. One request has also come up and that is to get closed caption info out o the file as well.
  • compile and install latest FFmpeg source as pkg - GitHub Gist: instantly share code, notes, and snippets.
  • Docker FFmpeg - Linuxserver/docker-FFmpeg - A GitHub repository for video/multimedia development.
  • Encode HDR with VP9 - Hands on tutorial of using FFmpeg to do hdr encoding.
  • FFCommand Engine - Create and execute FFmpeg commands.
  • FFmbc - FFmpeg customized for broadcast and professional usage.
  • FFmpeg (FFmpeg) - Mirror of git://source.FFmpeg.org/FFmpeg.git.
  • FFmpeg (GitHub) - Docker build for FFmpeg on Ubuntu / Alpine / CentOS 7 / Scratch.
  • FFmpeg and how to use it wrong - I've been in the streaming media industry since 2008 and have seen a lot of misinformation regarding both FFmpeg and libx264.
  • FFmpeg AutoGen (C#) - A set of auto-generated P/Invoke bindings for FFmpeg libraries. FFmpeg.AutoGen allows.NET developers to directly use FFmpeg's C API in C# for advanced media processing tasks.
  • FFmpeg AWS Lambda Layer - FFmpeg/FFprobe AWS Lambda layer.
  • FFmpeg Batch Converter (Windows) - A Windows front-end that allows batch processing with FFmpeg. Users can queue up multiple files with presets for conversion or processing, automating repetitive FFmpeg tasks without writing a script.
  • FFmpeg Bitrate Stats - Calculate bitrate statistics using FFmpeg.
  • FFmpeg Build Script - An easy way to build a static FFmpeg on macOS and Linux with non-free codecs included.
  • FFmpeg CLI Wrapper - Java wrapper around the FFmpeg command line tool.
  • FFmpeg Debug Qp - FFmpeg Debug Script for QP Values.
  • FFmpeg iOS Build Script - Shell scripts to build FFmpeg for iOS and tvOS.
  • FFmpeg JS - Port of FFmpeg with Emscripten.
  • FFmpeg Libvpx HDR Static - A script to build a static binary of FFmpeg optimised for libvpx (HDR 10bit) encoding.
  • FFmpeg Nvidia Adaptive VOD Transcoder - Bash script which will detect video new file in folder and transcode it to adaprive bitrate.
  • FFmpeg Patch - A collection of FFmpeg patches and samples that enable CNN model-based video analytics capabilities (such as object detection, classification, and recognition) within the FFmpeg framework.
  • FFmpeg Python (kkroening) - A Python wrapper for FFmpeg that simplifies interaction with the FFmpeg command-line tool for encoding, decoding, and processing video and audio.
  • FFmpeg Scale Benchmark - Saurabh702/FFmpeg-scale-benchmark - A GitHub repository for video/multimedia development.
  • FFmpeg Threads Command: How it Affects Quality and Performance - So, I received an email from an acquaintance that read, "I was curious if there is actually any benefit to a "threads= type custom command in x264.
  • FFmpeg Transcoder - Video transcode based on FFmpeg, support H264/HEVC and more.
  • FFmpeg Verbose Logging - Guide to FFmpeg's -loglevel and debug options for troubleshooting encoding and decoding issues, covering the log levels from quiet to debug and flags like -report that write detailed logs to a file.
  • FFmpeg Wiki: Filtering Guide - Documentation on using FFmpeg's filtering system, demonstrating how to chain video filters (scale, crop, overlay, etc.) and audio filters for processing media with examples.
  • FFmpeg Wiki: H.264 Encoding Guide - A comprehensive guide on the FFmpeg Wiki detailing how to encode video to H.264 using FFmpeg. It covers recommended settings, presets, CRF usage, and quality considerations.
  • FFmpeg Wiki: H.265 (HEVC) Encoding Guide - An FFmpeg Wiki guide for encoding video to H.265/HEVC. It describes how to use x265 via FFmpeg, including tuning parameters, bitrate vs quality (CRF), and preset trade-offs.
  • FFmpeg Windows Build Helpers - Helper script for cross compiling some media tools for windows, like customizable FFmpeg.exe (with or without non-free components, etc), and some other bonuses like mplayer, mp4box, mxf, etc.
  • FFmpeg-go - A Golang binding for FFmpeg that enables developers to generate and run FFmpeg commands programmatically in Go.
  • FFmpeg-REST — FFmpeg REST API with job queue - FFmpeg REST API (Node/Hono/BullMQ) with async jobs, stateless and S3-compatible storage modes.
  • FFmpeg-suite-rs - Async builder-pattern Rust wrapper over the FFmpeg CLI with crates for transcoding/filtering, ffprobe inspection, and ffplay playback, plus VAAPI/NVENC/QSV hardware acceleration.
  • FFmpeg.WebAssembly-st — single-thread FFmpeg.WebAssembly - Single-thread FFmpeg.WebAssembly variant for browser and node, avoiding SharedArrayBuffer/COOP-COEP requirements.
  • Ffmpeg4java - A JNI wrapper of FFmpeg library.
  • ffmprovisr - Cookbook of commonly used FFmpeg recipes with descriptions of how each command works and how to modify it to fit your needs.
  • Ffmpy - A lightweight Python wrapper for FFmpeg that enables simple encoding and transcoding of video and audio files.
  • Generate MPEG-TS from file with FFmpeg - In this post I will describe how an MPEG-TS multicast stream can be generated with FFmpeg by looping an MP4 file and a Docker container.
  • GMF (Go Media Framework) - A Go binding for FFmpeg that simplifies working with multimedia in Go, providing high-level access to FFmpeg's decoding and encoding functionality.
  • H265ize - A node utility utilizing FFmpeg to encode videos with the hevc codec.
  • Imageio FFmpeg - Python wrapper around FFmpeg for video processing. Simplifies FFmpeg integration in Python applications.
  • Intel QSV-Enabled FFmpeg Build Guide - This gist will generate an Intel QSV-enabled FFmpeg build using the open source Intel Media SDK. Testbed used: Ubuntu 18.04LTS.
  • jrottenberg/FFmpeg Docker Images - A popular Docker image repository for FFmpeg maintained by the community. These images package FFmpeg (with various codecs enabled) for easy use in CI pipelines or cloud deployments, simplifying environment setup for video processing tasks.
  • Loop file and generate multiple video bitrates muxed in MPEG-TS with FFmpeg - In a previous post I described how an MPEG-TS multicast stream can be generated with FFmpeg by looping an MP4 file. In this post I will.
  • Node FFmpeg Stream - Node.js bindings to FFmpeg command, exposing stream based API.
  • Node Fluent FFmpeg - A fluent API to FFmpeg (HTTP://www.FFmpeg.org).
  • NVIDIA FFmpeg GPU Dockerfile Sample - Sample Dockerfiles for Docker Hub images.
  • PyFFmpeg - A Python wrapper for FFmpeg, allowing the composition and execution of FFmpeg commands through a fluent Python interface.
  • Python FFmpeg - A Python interface for FFmpeg using asyncio.
  • rsmpeg - Rust crate exposing the FFmpeg libav C API safely; actively maintained with FFmpeg 6/7 support for building multimedia apps.
  • serverless-FFmpeg — AWS Lambda transcoding - AWS Lambda function for event-driven FFmpeg transcoding, configurable per-input/output CLI options.
  • Sffmpeg - Full-featured static FFmpeg build helper.
  • spireav — graph-based Go transcoding library - Go transcoding library to build FFmpeg filter graphs programmatically and monitor progress.
  • Swift Encoder - A fire-and-forget shell script that encodes multiple video and audio files with FFmpeg.
  • Transcoding - FFmpeg transcoders benchmark. Contribute to AlvianPrasetya/transcoding development by creating an account on GitHub.
  • Transcoding FFmpeg - Transcoding video usando FFmpeg.
  • Use of Look-Up Tables (LUTs) in FFmpeg - How to use luts with FFmpeg for converting between differnt hdr encodes.
  • Useful FFmpeg Commands - A collection of FFmpeg commands taken from practice.
  • VP9 Dash - FFmpeg wrapper script to create VP9 MPEG-DASH packages.
  • x264 FFmpeg Options Guide - Linux Encoding - Reference guide mapping x264 encoder options to FFmpeg parameters for video encoding on Linux systems.
  • Xabe.FFmpeg - A.NET Standard wrapper for FFmpeg, enabling developers to compose and execute FFmpeg commands in C# with a fluent interface.

Hardware Accelerated Transcoding

Multi-format Packaging Tools

Codecs

  • Cisco OpenH264 - An open source H.264 (AVC) encoder and decoder library by Cisco, provided under a license that allows free use (Cisco covers MPEG LA licensing for binaries).
  • Daala Codec (Xiph) - An experimental video codec from the Xiph.Org Foundation that aimed to achieve next-generation compression (the effort preceded and influenced AV1). Daala introduced novel techniques like lapped transforms and per-pixel entropy coding. Its codebase is open and served as a sandbox for ideas that made it into AV1.
  • FFV1 Codec - FFmpeg's FFV1 is a lossless intra-frame video codec. It's open, extremely efficient for archiving video, and is defined in an ongoing standardization (supported by archival institutions).
  • libde265 - An open source H.265/HEVC video decoder written in C. libde265 can be used to decode HEVC bitstreams in software and is often integrated into players or frameworks needing HEVC support.
  • libvpx (VP8/VP9 Codec Library) - The reference implementation of VP8 and VP9 video codecs (WebM Project). libvpx provides encoding and decoding for VP8/VP9, which are open and royalty-free codecs.
  • VVdeC (Fraunhofer VVC Decoder) - An open source Versatile Video Coding (H.266/VVC) software decoder by Fraunhofer HHI. VVdeC supports Main10 profile and can decode 4K/8K content in real-time with optimizations.
  • XVC Codec (Divideon) - XVC is a proprietary but openly documented video codec by Divideon that claims high compression efficiency. An open source evaluation implementation was released for research purposes. XVC serves as a modern codec design to compare against standards like HEVC and AV1 in compression efficiency research.

AV1

VP9

  • ASWF Encoding Guidelines: Encode VP9 - Academy Software Foundation's community encoding guide for VP9, including 10-bit/HDR workflow guidance.
  • Google: VP9 Settings for VOD - Google's per-resolution bitrate/CRF/tile-columns recommendation table for VP9 VOD encoding.
  • SVT-VP9 - Intel's Scalable Video Technology implementation of the VP9 codec. SVT-VP9 is an open source VP9 encoder/decoder designed to leverage multi-core processors for faster encoding of VP9 videos.
  • WebM Project: VP9 Encoding Guide (FFmpeg) - Official WebM project wiki guide to encoding VP9 via FFmpeg, covering CQ/CBR modes, tiling, and row-mt options.

HEVC

  • Guide to HEVC/H.265 Encoding and Playback - HEVC'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 encoded with HEVC can occupy half the space of its H.264 equivalent with no noticeable change in quality, or the same amount of space with improved quality.
  • HEVC DRM Market Update - Since time eternal, the streaming industry has toiled with and extolled the virtues of CODECs and their key enablement of the entire digital video experience. Now comes the latest candy in the increasingly large bowl, H.265 (MPEG-H Part 2) or as it's more commonly known. HEVC.
  • HEVC/H.265 Video Coding Standard: Part 1 - Part one of the HEVC/H.265 video coding standard lecture series by Dr. Dan Grois, Benjamin Bross, Dr. Detlev Marpe and Karsten Sühring, introducing the standard's core coding tools and structure.
  • HEVC/H.265 Video Coding Standard: Part 2 - Part two of the HEVC/H.265 video coding standard lecture series by Dr. Dan Grois, Benjamin Bross, Dr. Detlev Marpe and Karsten Sühring, covering the Range Extensions and the Scalable Extension.
  • HEVC/h265 Video Coding Standard - ISO/IEC 23008-2 - Defines the compressed video format HEVC/h265.
  • Kvazaar HEVC Encoder - An open source HEVC encoder developed by Tampere University. Kvazaar is aimed at academic research and ultra HD content encoding, offering a modular codebase for experimentation with HEVC encoding algorithms while achieving competitive performance.
  • OpenHEVC Decoder - An open source high-performance HEVC decoder. OpenHEVC was developed to provide a fast HEVC/H.265 software decoding solution and has been integrated into projects like VLC. It supports real-time decoding of 1080p and higher resolutions on typical PC hardware.
  • Standardization of High Efficiency Video Coding (HEVC) - Jens-Rainer Ohm, Institute of Communication Engineering, RWTH Aachen University, DE.
  • SVT-HEVC - An open source high-performance HEVC encoder from Intel (Scalable Video Technology for HEVC). SVT-HEVC is optimized for speed and latency, allowing real-time encoding of HD/UHD content on multi-core CPUs.
  • The Market Significance of Apple's Adopting HEVC: Here's What I Think - At the recent World Wide Developer's Conference (WWDC), Apple announced that the next versions of Safari, iOS, and tvOS will support HLS with HEVC encoded video. This puts Apple firmly in the HEVC camp, with the Alliance for Open Media camp (Amazon, Cisco, Intel, Google, Microsoft, Mozilla, Netflix,.

Comparative Analysis of Codecs

Benchmarking & Performance Tools for Codecs

Real-Time Encoding Solutions

  • ABR Broadcaster - A real time encoder for Adaptive Bitrate Broadcast.
  • go-transcode - On-demand HTTP transcoding origin for live inputs and static files with NVIDIA GPU acceleration via Docker.
  • Gstreamill - Encoder with hls output based on gstreamer.
  • hls_transcoder (Rust) - Rust library building GStreamer pipelines to transcode to HLS with hardware (NVENC) and software (x264) support.
  • Live Video Transmuxing/Transcoding: FFmpeg vs TwitchTranscoder, Part 2 - Technical comparison examining FFmpeg and Twitch's proprietary transcoder for live video transmuxing and transcoding in production environments, Part 2.
  • Live Video Transmuxing/Transcoding: FFmpeg vs TwitchTranscoder, Part I - Technical comparison examining FFmpeg and Twitch's proprietary transcoder for live video transmuxing and transcoding in production environments, Part 1.
  • LiveForge - Go single-binary multi-protocol live media server supporting RTMP/RTSP/SRT/WHIP/WHEP/HLS/LL-HLS/DASH ingest and delivery.
  • open-streamer - Go live streaming server with in-process libavcodec ABR transcoding and full-GPU pipeline (NVDEC→scale_cuda→NVENC), 1×decode + N×encode fan-out to HLS/DASH.
  • RTSP Stream - Out of box solution for RTSP - HLS live stream transcoding. Makes RTSP easy to play in browsers.
  • StreamPack - Multiprotocol live streaming broadcaster libraries for Android - StreamPack is a lightweight, high-performance toolkit for building streaming video processing pipelines on Android. It provides reusable components for frame sources, transformations, encoding, and output, making it easy to develop efficient real-time video applications with a modular and composable architecture.

Scripting & Automation Tools

  • Av1an - Cross-platform command-line AV1 encode toolkit. Contribute to master-of-zen/Av1an development by creating an account on GitHub.
  • Av1an (GitHub) - Cross-platform CLI chunked-encoding framework enabling parallel per-scene encoding for AV1, VP9, HEVC, and H.264 with per-scene quality targeting.
  • Batch Py Remux - Convert mkv video to hevc (h.265).
  • Batch Python FFmpeg Tutorial - A Python application that uses Batch to process media files in parallel with the FFmpeg open-source tool.
  • Distributed FFmpeg Transcoding Cluster - 分布式FFmpeg转码集群。A FFmpeg transcoding cluster runs in variable CPUs, including ARM, x86, and others which can run linux. You can use it to run a RaspberryPi cluster.
  • Other Video Transcoding - Other tools to transcode videos.
  • Pyup Transcoder - A Python-based software to transcode videos and upload files to a remote server or S3-bucket.
  • Scalable, Parallel Video Transcoding on Ubuntu - Transcoding video is a very resource intensive process.
  • Transcode (cwinging) - Python-based transcoding server by cwinging for handling video conversion tasks.
  • TranscodeVideo - A Swift wrapper around the transcode-video command.
  • Video Utils - Python package containing many tools useful for converting video files to h264/h265 encoded MP4 or MKV files.

Software Codecs

  • Dav1d (videolan) - Dav1d is the fastest AV1 decoder on all platforms.
  • descriptinc/prores-software-decoder — Real-Time Software ProRes Decoder - Real-time software decoder/demo for Apple ProRes, enabling ProRes playback without hardware VideoToolbox support.
  • exhale - Open-source USAC / xHE-AAC (Extended HE-AAC) encoder converting WAVE to MPEG-4 ISO/IEC 23003-3, mono/stereo/multichannel at medium-high bitrates.
  • libxaac - Ittiam Extended HE-AAC full encoder and decoder supporting AAC-LC, HE-AACv1/v2 object types.
  • OpenVVC - Open-source (LGPLv2.1) real-time software VVC/H.266 decoder library with frame and tile parallelism, RPR support.
  • uavs3e — AVS3-P2 Video Encoder - Open-source baseline encoder for the Chinese AVS3-P2 video standard; SSE4/AVX2 optimized, 10-bit, competitive with AV1/VVC on fidelity.
  • V-Nova LCEVCdec — MPEG-5 LCEVC Decoder SDK - V-Nova's official open-source MPEG-5 LCEVC (Low Complexity Enhancement Video Coding) decoder SDK, with CPU and experimental Vulkan GPU decode pipelines.
  • V-Nova LCEVCdecJS — LCEVC Web Decoder - JavaScript/WebGL MPEG-5 LCEVC decoder for browser video playback, enabling LCEVC enhancement layer rendering on the web.

Hardware Codecs & Acceleration

Containerization & Packaging Tools

  • Alpine Node Video Multitool - Contribute to realeyes-media/alpine-node-video-multitool development by creating an account on GitHub.
  • Bento4 - A comprehensive toolkit and C++ library providing command-line tools and APIs for MP4 and DASH media format creation, manipulation, and packaging.
  • CDN Transcode Sample (GitHub) - Media transcoding is a key function for live video broadcasting, streaming, and video on demand use cases in a CDN network.
  • Dlb Mp4base - The Dolby MP4 streaming muxer (dlb_mp4base) is a software implementation of a muxer of fragmented or unfragmented ISO base media file format (mp4).
  • Dlb Mp4demux - Dolby Laboratories' official MP4 streaming demuxer (dlb_mp4demux) - a reference implementation for demuxing fragmented or unfragmented ISO base media files.
  • Dlb Mp4demux (ShaoWeiguo) - Community mirror of dlb_mp4demux, the Dolby MP4 streaming demuxer for fragmented and unfragmented ISO base media files.
  • Docker HEVC - Docker container to create HEVC streaming packages.
  • Gots - MPEG Transport Stream handling in Go.
  • GPAC MP4Box - MP4Box is a multimedia packager from the GPAC framework, used for encoding and packaging media files.
  • Imf Conversion - NF IMF media conversion utility allows to handle flat file creation from a specified CPL within the IMF package.
  • lieff/minimp4 — Single-Header C MP4 Mux/Demux - Minimalistic single-header C library for MP4 mux/demux with fragmented-MP4 mode.
  • Mixwave - Self hostable platform that aims to simplify the complexities of video delivery. Transcode and package your media for online streaming with simple API calls and sane defaults, or craft dynamic HLS playlists on the fly with bumpers, ads and filters.
  • Mp4parser - A Java API to read, write and create MP4 files. Contribute to sannies/mp4parser development by creating an account on GitHub.
  • muxide — Pure-Rust MP4 Muxer - Pure-Rust zero-dependency MP4 muxer (no FFmpeg) supporting H.264/H.265/AV1/AAC/Opus with fragment mode.
  • Openfaas Transcode - Serverless video transcoding pipeline built on OpenFaaS for function-as-a-service deployments.
  • Shaka Packager – opensource.google - Google's open-source media packaging tool for creating DASH and HLS content with encryption support.
  • shiguredo/mp4-rs — Sans-I/O Rust MP4 Mux/Demux - Zero-dependency, sans-I/O Rust MP4 mux/demux with Fmp4SegmentMuxer and Demuxer, no_std capable; actively maintained.
  • The Netflix IMF Workflow - Interesting architectural implications.
  • Transcoder (GitHub) - Docker container to transcode videos in mounted volume to H265 using FFmpeg.
  • Ts2mpa - A simple tool to extract MPEG Audio from a MPEG-2 Transport Stream.
  • tsMuxer - A transport stream muxer for remuxing/muxing elementary streams, EVO/VOB/MPG, MKV/MKA, MP4/MOV, TS, M2TS to TS to M2TS. Supported video codecs H.264/AVC, H.265/HEVC, VC-1, MPEG2.

Origin Servers

Software Transcoding Tools

  • Av1transcoder - Transcode video files to the AV1 format using FFmpeg and libaom-av1.
  • Codem Transcode - Offline video transcoder written in Node.js.
  • Django Video Transcoding - Simple video transcoding application for Django Framework.
  • Dolby Encoding Engine Plugins - Contribute to DolbyLaboratories/dolby-encoding-engine development by creating an account on GitHub.
  • Fantastic Transcoder - A video transcoder which utilizes massively parallel compute to achieve ludicrous conversion speeds.
  • MediaMolder - FFmpeg for the AI era - A rewrite of the interface and orchestration layers of FFmpeg: a graphical interface to visualize, edit, validate and run processing graphs, jobs defined in JSON files, import of any FFmpeg command line, and a real-time encoding control system.
  • Node Transcoding - Node.js video transcoding library.
  • NotEnoughAV1Encodes - GUI Handler for AV1 Encoders (aomenc, rav1e & svt-av1).
  • Rate Control Tests - Tests for different rate control modes in x264. Contribute to slhck/rate-control-tests development by creating an account on GitHub.
  • React Native Transcode - Video Transcoder for React Native.
  • Transcode (kees) - Collection of command-line tools for video format conversion and transcoding operations.
  • transcode2H265 - Unattended video transcoder to H265 and ACC codecs, in MKV containers.
  • Video Transcoding - Tools to transcode, inspect and convert videos.
  • Vireo - A lightweight and versatile video processing library written in C++11.

Open Source Encoder Projects

Cloud-Based Encoding Solutions

FFmpeg-Based Tools

Media Tools

  • 3DLUT Creator - A stand-alone software to create and edit 3D LUTs (Look Up Tables) for color grading. It provides a unique interface for manipulating the color response of images and videos, which can then be applied via LUT in other grading software or on monitors.
  • 4K Media - Uncompressed 4K demos, samples, and trailers, to show off your new ultra-HD (2160p) HDR/HLG/Dolby Vision television or monitor.
  • Ad Insertion Sample - A server-side ad insertion system featuring on-demand video transcoding and streaming, with ad insertion based on video content analysis, powered by Open Visual Cloud software stacks.
  • Aeneas - A Python library and command-line tool for automating the synchronization of audio and text (forced alignment). It can be used to align subtitles with audio tracks, making it useful for developers working on video streaming and encoding projects that require precise subtitle timing.
  • Amara - A web-based platform that enables users to create, edit, and translate subtitles collaboratively. It supports a wide range of video formats and integrates with platforms like YouTube and Vimeo, making it a versatile tool for developers working on video streaming and encoding projects.
  • API.video In-stream Ads - Documentation on implementing in-stream ads in videos and live streams using API.video's platform, supporting VAST and VPAID tags for ad integration.
  • Applicaster Video Ads Integration - Documentation and tools for integrating video ads into applications using Applicaster's platform, supporting VAST and VMAP tags with the IMA SDK.
  • AudioTools Server by Telos Alliance - AudioTools Server is a collection of enterprise-ready audio solutions designed to add file-based expertise to automated environments. It automates sophisticated audio tasks and offers a wide variety of processing options, specifically created for use in cable, satellite, OTT, terrestrial and IPTV, radio, and post-production facilities.
  • AudioTrack - An Android class that streams PCM audio buffers to audio hardware for playback. It provides low-level access to audio hardware, allowing developers to implement custom audio playback solutions in their applications.
  • Auto-Subs - A tool designed to automatically transcribe editing timelines using OpenAI Whisper and Stable-TS for extreme accuracy. It generates subtitles in a custom style, is completely free, and runs locally within DaVinci Resolve. It works on Mac, Linux, and Windows, supporting both Free and Studio versions of Resolve. Users can jump to positions on the timeline using the Subtitle Navigator and translate from any language to English. The tool provides a user-friendly interface for creating and customizing subtitles for video content.
  • Avatarify - A real-time photorealistic avatar substitution tool. Avatarify uses neural networks to map your facial movements onto a target portrait (e.g., on Zoom or Skype) for fun impersonation or puppeteering.
  • BackgroundRemover - An AI-powered command-line tool to remove the background from images and videos. It uses deep learning to perform background removal with a simple interface.
  • Bitmovin Advertising - Bitmovin's player supports client-side and server-side ad insertion, integrating with major ad servers and networks. It offers support for VAST, VMAP, and VPAID standards, providing a flexible solution for video ad integration.
  • Blackmagic Fusion - A node-based compositing and visual effects software (with a free version integrated into DaVinci Resolve, and a Studio version). Fusion is used for 2D/3D compositing, motion graphics, and effects in films and TV.
  • Blender (Video Sequence Editor) - The video sequence editor within Blender, an open source 3D creation suite. It provides basic cutting, transitions, color grading, and masking on top of Blender's powerful compositing nodes.
  • Brave - Basic Real-time AV Editor - allowing you to preview, mix, and route live audio and video streams on the cloud.
  • Brightcove Player Advertising Integration - Brightcove Player offers comprehensive support for integrating video advertisements using plugins for Google's IMA3 and FreeWheel. It provides detailed documentation and quick-start guides to help developers implement client-side ad insertion seamlessly.
  • Building In-Video Search at Netflix - Netflix Tech Blog article about developing an internal system for searching within video content (e.g., finding scenes across the catalog). It covers the indexing of visual and audio data to enable search.
  • CALM Act (FCC Audio Loudness Rules) - The FCC's Commercial Advertisement Loudness Mitigation (CALM) Act requires broadcasters and streaming providers to ensure ads are not louder than the surrounding programming. This industry guide explains compliance for audio loudness, which influences how audio is processed in video streams.
  • Captions App - An AI tool that simplifies adding subtitles and captions to videos with auto-generation, translation, and customization options. It also offers AI dubbing in over 100 languages, enabling creators to reach a global audience. The app provides a user-friendly interface for enhancing video content with accurate and customizable subtitles.
  • Cobalt - A simple and efficient multi-platform media downloader. Cobalt provides an easy way to download videos and audio from sites like YouTube, Instagram, and TikTok with a clean GUI.
  • create-subtitles - The 'create-subtitles' tool is designed to generate subtitles from a video and transcript using Python and the YouTube Data API. It assists in turning verbatim transcripts for video recordings into subtitle files, facilitating the integration of subtitles into videos. The tool can also be used for concatenating standalone subtitle files, making it versatile for various subtitle integration tasks.
  • Deepgram Captioning Packages - Deepgram has released two open-source captioning packages: deepgram-captions for Python and @deepgram/captions for JavaScript. These packages empower developers to effortlessly generate SRT and WebVTT captions, providing a flexible solution for various speech-to-text APIs, including Deepgram. Key features include SRT and WebVTT caption generation, API-agnostic design, speaker labeling and diarization compatibility, no Deepgram dependency, Whisper compatibility, and user-friendly caption creation.
  • DeepMedia Camera SDK - DeepMedia's Camera SDK is a state-of-the-art toolkit designed to enhance mobile applications with rich media experiences and augmented reality, powered by AI. It supports features like AVC/HEVC video recording, high-quality image capture, AI portrait mode, concurrent cameras, and more. The SDK is available for both Android and iOS platforms.
  • Def Video Ads - An asset for the Defold game engine that enables the integration of UnityAds, facilitating the display of video advertisements within Defold projects.
  • DisplayCAL - An open source display calibration and profiling tool. While not directly a video editing tool, calibrating your monitor using DisplayCAL ensures accurate color representation, which is critical for color correction and grading tasks in video production.
  • DivFix++ - An open source utility to repair and preview partially downloaded AVI files by rebuilding the index chunk, allowing playback of corrupted or incomplete AVIs.
  • Docker Serve - A simple Python based HTTP server that sets CORS allow headers. Useful for streaming from files on local computer.
  • DVBSnoop - An analyzer and debugging tool for MPEG transport streams and DVB broadcasts. It allows inspection of packet structure, tables (PAT, PMT, etc.), and payload of digital video streams.
  • EU AVMSD Accessibility Requirements - The European Union's Audiovisual Media Services Directive (AVMSD) includes requirements for accessibility (subtitles, audio description, sign language) on TV and on-demand services. Resources here outline how video service providers must comply to ensure content is accessible to people with disabilities.
  • First Order Motion Model - A famous deep learning model for image animation (e.g., making a single portrait image speak or move) by modeling motion as a first order approximation. Often used in one-shot talking head video generation.
  • flvmeta - An open source tool to manipulate Adobe FLV files. flvmeta can inject onMetaData tags, fix timestamps, and generally prepare FLV files for optimal playback (seeking). Useful for legacy content or repackaging streams from RTMP to file.
  • FreeWheel Ad Management Platform - FreeWheel provides a comprehensive ad management platform that enables publishers to manage and monetize their video content across various devices and platforms. It offers tools for ad decisioning, serving, and analytics, making it a valuable resource for integrating video ads into streaming services.
  • Frei0r Plugins - A collection of free and simple video effect plugins. Frei0r plugins provide dozens of filters, mixers, and generators that can be used in compatible video editors (like LiVES, Flowblade, Kdenlive).
  • Gnome Subtitles - An open-source subtitle editor for the GNOME desktop environment. It supports popular subtitle formats and offers features like video previewing, timing synchronization, and subtitle translation, providing a comprehensive solution for developers focused on video streaming and encoding.
  • GNU MediaGoblin - A decentralized, federated media hosting platform supporting video, images, and audio. MediaGoblin allows users to run their own instances for sharing media content.
  • Google IMA SDK - The Interactive Media Ads (IMA) SDK by Google enables developers to integrate video ads into their applications seamlessly. It supports various ad formats, including linear, non-linear, and companion ads, and is compatible with multiple platforms such as HTML5, Android, and iOS. This SDK is valuable for developers looking to monetize their video content effectively.
  • Harmonic VOS360 Ad - Harmonic's VOS360 Ad is a cloud-based platform that leverages server-side ad insertion (SSAI) technology to seamlessly stitch personalized ads into video streams. This solution enhances the viewing experience by ensuring consistency and frame accuracy in streaming, while also supporting targeted advertising strategies.
  • Hippo Video SDK - A complete video infrastructure that can be integrated into platforms with minimal code. It supports rapid deployment of video experiences, enabling developers to enhance their applications with video capabilities efficiently.
  • HyBid SDK - An open-source and modular SDK designed for app developers to integrate ads, offering modules for various ad formats such as banners, interstitials, native ads, and rewarded video.
  • InfraRecorder - An open source DVD burning tool that, among other features, can be used to author basic video DVDs (it includes support for creating video DVD file systems from video files). Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • Interactive Video Ads Integration Techniques - This resource discusses various techniques for integrating interactive video ads across multiple platforms, enhancing user engagement and providing seamless ad experiences. It includes case studies and best practices for implementing interactive ad formats.
  • ironSource Mobile Ad SDK - IronSource provides a comprehensive mobile ad SDK for Android and iOS, enabling developers to integrate various ad formats, including rewarded videos, interstitials, and banners. The SDK focuses on maximizing user engagement and revenue through effective ad monetization strategies.
  • Jubler - A cross-platform open source subtitle editor written in Java. It supports multiple subtitle formats, style editing, timing synchronization, and real-time preview of subtitles on video.
  • Kaltura Video Player - Kaltura's Video Player is an open-source, customizable player that supports advanced video advertising features. It integrates with various ad servers and networks, supporting standards like VAST and VPAID, and offers both client-side and server-side ad insertion.
  • Kapwing - A user-friendly AI tool that allows users to easily add subtitles, captions, and annotations to videos. It's ideal for non-profit video production, where making video content accessible to a diverse audience is essential. Kapwing offers automatic captioning, helping to increase the accessibility of videos. The platform supports various video formats and provides options for optimizing video titles and adding metadata, which helps improve search rankings on video platforms.
  • LEADTOOLS Audio and Video Processing Filters - LEADTOOLS offers a comprehensive collection of DirectShow filters and Media Foundation transforms for processing and enhancing audio and video content within.NET and C/C++ applications. These filters can be applied in real-time during playback or live capture, or during conversion for post-processing and editing.
  • LEADTOOLS Multimedia SDK - A comprehensive set of DirectShow and Media Foundation filters for audio and video processing. It offers developers tools to implement features such as playback, capture, conversion, and processing of multimedia content within.NET and C/C++ applications.
  • LEXI AI-Powered Captioning Toolkit - Leverages AI advancements to provide a comprehensive suite covering live and recorded captioning, translation, display, archiving, and search. It includes LEXI Automatic Captioning, delivering AI-powered automatic captions with quality rivalling human captions at a fraction of the cost. LEXI Recorded makes captioning recorded content quick and easy with fully automated, fast turnaround times. LEXI Translate offers efficient and cost-effective solutions for global reach through automatic translation. LEXI Local provides on-premises solutions for live, automatic captions, ensuring elevated security and greater control. LEXI Library offers a caption archive and search tool for easy viewing, searching, editing, and archiving of live captions.
  • Librosa - A Python library for analyzing and processing audio signals. It provides functionalities such as feature extraction, visualization, and audio effects, which are essential for audio analysis in video applications.
  • LiVES Video Editing System - LiVES is an open-source video editing system designed for both professional and amateur video editors. It supports real-time and non-linear editing, a wide range of video formats, and includes features like frame accurate cutting, real-time effects, and support for various audio and video codecs. Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • Livestreamer - The precursor to Streamlink, a command-line utility that extracted streams from various services to feed into a media player. (No longer maintained, replaced by Streamlink.).
  • Lux (Media Downloader) - A command-line media downloader (formerly known as "annie") that supports downloading videos and audio from various websites in high quality, similar to YouTube-dl but in Go.
  • madman-android - Madman (Media Ads Manager) is a high-performance alternative to Google's standard IMA Android SDK, allowing developers to render video ads with full control over the UI using their own VAST server.
  • MediaArea Tools (MediaInfo, etc.) - MediaArea produces open source software for media analysis, including MediaInfo (displays technical and tag data for files), MediaConch (policy compliance for archival video), and BWF MetaEdit (for WAV metadata).
  • MediaConch - An open source policy compliance checker for video files (especially in archival). MediaConch can batch-scan a collection of files to ensure they meet format specifications or institutional policies (like checking if files conform to MKV/FFV1 or MOV/ProRes standards).
  • Meteorite - The first (experimental) open source MKV/Matroska repair tool. Meteorite can attempt to fix corrupted.mkv files or those still downloading, by reconstructing missing or damaged segments.
  • Minyami - A lovely video downloader for HLS videos.
  • MKVToolNix - A set of tools to create, alter, and inspect Matroska (MKV) files. Includes mkvmerge for muxing streams into MKV and mkvinfo/mkvextract for inspecting and extracting content.
  • MMAction2 - An open source toolkit for video understanding by OpenMMLab. It supports state-of-the-art models for action recognition, temporal action detection, and spatio-temporal detection in videos.
  • Natron - A free and open source node-based compositing software, similar to After Effects or Nuke, for visual effects and motion graphics.
  • Oboe - A C++ library that wraps OpenSL ES and AAudio, offering high-performance audio operations for Android applications. It simplifies the development of real-time audio apps by providing a consistent API across different Android versions.
  • OOONA Tools - Professional online tools for subtitling and captioning, accessible from any computer at any time. The platform provides a simple and intuitive web interface for creating and editing captions and subtitles in any language. Features include frame-accurate text timing with an advanced timeline, video grid for precise caption positioning, audio waveform, and scene-change detection for accurate subtitle spotting. It supports import and export in various caption and subtitle formats, including TTML/DFXP, VTT, SCC, CAP, EBU-STL, SRT, IMSC1, PAC, 890, and more. Additionally, it supports generating image-based subtitles for DVD/Blu-ray/DCP authoring. Powerful Pro apps allow users to run automated QA scripts to check and fix files, as well as customize hotkeys and project settings.
  • Open Video Downloader (YouTube-dl GUI) - A cross-platform GUI for YouTube-dl/yt-dlp that makes it easy to download videos from YouTube and other platforms without using the command line.
  • Opencast - An open source lecture capture and video management system. Opencast allows universities and organizations to schedule recordings of lectures, process the videos (including multi-source), and distribute them to students.
  • OpenColorIO - An open source color management solution geared towards motion picture production. Developed by the Academy Software Foundation, OpenColorIO handles color space conversions and is a core part of VFX/animation workflows.
  • OpenFX (OFX) - An open standard for visual effects plugins, widely supported in compositing software. It defines a C API for writing plugins (e.g., for Nuke, Natron) that perform image and video processing tasks.
  • OpenIMAJ Audio Processing Libraries - OpenIMAJ provides a suite of audio processing and analysis tools, including implementations of various audio processors such as multichannel conversion and volume change. It is designed for developers working on audio-related functionalities.
  • OpenPose - A real-time multi-person keypoint detection library (for body, face, and hands) by CMU. Often used on video to extract pose information frame-by-frame for animation or analysis.
  • Otter.ai - An AI-powered transcription service that automatically generates subtitles for videos. It integrates with platforms like YouTube and Vimeo, offering features like real-time transcription and collaboration tools, streamlining the subtitle integration process.
  • Plex - A popular media server and client platform for organizing and streaming personal video (and other media) collections across devices.
  • Processing Video Library - Enables playback of movie files and capture of video data from cameras. It supports a wide range of media formats and is based on the GStreamer multimedia framework, facilitating video processing tasks in Java.
  • product_video_ads - A solution developed by Google to build video ads at scale, enabling the creation of product video ads efficiently.
  • PySceneDetect - An open source Python tool for automatic scene cut detection in videos. It can split video content into scenes by detecting fades, cuts, and other transitions.
  • pysrt - A Python library for parsing, modifying, and composing SubRip (SRT) files. It provides developers with tools to handle subtitle files programmatically, enabling tasks such as reading, writing, and editing subtitles within Python applications.
  • pysubs2 - A Python library for editing subtitle files, supporting various formats including SubRip (SRT), SubStation Alpha (SSA), and Advanced SubStation Alpha (ASS). It allows for reading, writing, and modifying subtitle files, making it a versatile tool for developers working with subtitles in Python.
  • QCTools - Quality Control Tools for Video Preservation - an open source toolset (by BAVC) to analyze digitized video files, with visualizations for signal quality issues.
  • Radiant Media Player - A comprehensive media player that offers built-in support for video ads using the Google IMA HTML5 SDK, facilitating seamless ad integration.
  • RawCooked - A tool that wraps video, audio, and data files (like DPX sequences or WAV) into a Matroska container without loss. Often used in digital archiving to store large raw content more efficiently while preserving all data for exact restoration.
  • Remotion - A framework for creating videos programmatically using React. Developers can use web technologies to render dynamic video content (with animations, data, etc.) and export it as MP4 videos.
  • Renee Video Editor Pro - A comprehensive video editing software that allows users to add subtitles and text to videos effortlessly. It supports various video formats and provides multiple editing tools, including cutting, merging, cropping, rotating, and transforming videos. Users can change and add background music, subtitles, and remove watermarks from videos. The software also supports format conversion, enabling users to convert videos and audios into different formats. Additionally, it offers screen recording capabilities, allowing users to record screen and webcam activities on Windows computers. The intuitive interface and diverse functionalities make it suitable for both beginners and professionals.
  • Rev.com - Professional captioning services that combine AI and human editing to provide accurate subtitles. It supports various video formats and platforms, making it a reliable tool for integrating high-quality subtitles into video content.
  • ScreenToGif - An open source tool to record a selected screen area, webcam, or whiteboard and export it as an animated GIF or video. It includes basic editing like frame-by-frame editing and text/brush overlays.
  • Seafile - High performance file syncing and sharing, with also Markdown WYSIWYG editing, Wiki, file label and other knowledge management features.
  • Server-Side Ad Insertion Techniques - An in-depth look at server-side ad insertion (SSAI) methods, discussing their advantages and challenges. This resource is valuable for developers seeking to implement SSAI for a more consistent viewing experience across devices.
  • Shaka Packager - An open source tool by Google for packaging media content (e.g., creating MPD/manifest and segments) with support for encryption (Widevine, PlayReady, FairPlay). It's often used to prepare content for DASH and HLS with CMAF and DRM, complementing encoding pipelines.
  • ShortGPT - An experimental AI framework to automate the creation of YouTube Shorts or TikTok videos. ShortGPT can generate video content (scenes, subtitles, etc.) using generative AI models.
  • SIMID - Secure Interactive Media Interface Definition (SIMID) is a project by the Interactive Advertising Bureau (IAB) that defines a standard for interactive video ads. It aims to provide a secure and consistent framework for interactive media ads across different platforms, enhancing user engagement and ad performance.
  • SimpleVideoCutter - A straightforward Windows tool for browsing and cutting segments from video files without re-encoding. It provides a preview and easy selection of in/out points to extract clips quickly.
  • Snowmix - The Swiss Army Knife of Open Source Live Video Mixing. - Open source live video mixing software for combining multiple video sources and creating real-time composites.
  • SoX (Sound eXchange) - SoX is a command-line utility for audio manipulation and processing. It supports various audio formats and provides a range of effects, making it useful for developers needing to process audio within video projects.
  • SponsorBlock - An open source browser extension to skip sponsor segments in YouTube videos.
  • SpotLink - An open-source software for dynamic ad insertion in VOD, IPTV, broadband video, and network DVRs, connecting SCTE 130-compliant dynamic ad insertion systems to broadband ad servers using the IAB's VAST standard.
  • SpotX Video Ad Serving Platform - SpotX is a video ad serving platform that offers solutions for publishers and advertisers to manage and optimize their video ad inventory. It provides tools for programmatic ad buying, real-time bidding, and analytics, facilitating efficient video ad integration and monetization.
  • srt - A simple library and set of tools for parsing, modifying, and composing SRT files. It offers a straightforward approach to handling subtitle files, making it suitable for developers who need to work with subtitles in their applications.
  • SubEasy - An AI-driven subtitles and transcriptions generator supporting over 100 languages. It provides high accuracy with subtitle reflow technology and offers seamless video creation with high-precision video AI transcription and translation. SubEasy simplifies the process of adding subtitles to videos, enhancing accessibility and engagement for a global audience.
  • SubRip - A free software program for Windows that extracts subtitles and their timings from various video formats to a text file. Its subtitle format,.srt, is widely supported, making it a valuable tool for developers needing to extract and integrate subtitles into video streaming and encoding projects. Note: the official site is served over plain HTTP - the host does not support HTTPS.
  • Subsync - Automagically synchronize subtitles with video.
  • Subtitld - An open-source software designed to edit, transcribe, and create subtitles. It supports various formats like SRT, SSA, TTML, and more. Features include timeline adjustments, playback speed control, and the ability to export videos with burned-in subtitles, enhancing the workflow for video developers.
  • Subtitle Horse - A browser-based captions editor for subtitling videos. This free online editor features real-time validation, an interactive timeline, shortcuts, and more. It can be used within or from a CMS, or on-premise with a paid version, making it versatile for various development needs.
  • Subtitle Workshop - A free subtitle editor with a user-friendly interface and support for multiple subtitle formats. It offers features like spell checking, translation mode, and subtitle synchronization tools, making it suitable for both beginners and experienced users.
  • swiftsubtitles - A Swift package for reading and writing various subtitle formats, including SRT, SBV, SUB, VTT, CSV, LRC, and Podcast Index. It enables iOS and macOS developers to integrate subtitle functionalities into their applications.
  • Syncplay - A tool that synchronizes media playback across multiple computers over the internet. Syncplay allows friends to watch the same video file or stream in lockstep with a shared experience (works with MPC-HC, mpv, VLC).
  • Tartube - A GUI front-end for YouTube-dl/yt-dlp on Linux and Windows that helps manage video downloads, subscriptions to channels/playlists, and metadata for offline viewing.
  • Tero Subtitler - An open-source, cross-platform, and free subtitle editing software with a user-friendly interface. It offers fully-fledged editing with SMPTE and MEDIA modes, support for various subtitle formats, multi-level undo/redo, search and replace, auto-backup, source and transcription modes, translation memory, audiovisual preview, timeline with waveform visualizer, manipulation tools, formatting options, quality control features, translation and transcription capabilities, validation tools, automation for correcting errors, and more. The tool utilizes powerful multimedia playback engines like mpv, advanced audio/video manipulation tools like FFmpeg, tools for automatic transcription like whisper.cpp/Faster-Whisper, auto-translation API like Google Translate, and ElevenLabs TTS for video dubbing.
  • Text2Video-Zero - An AI model (ICCV 2023) for zero-shot text-to-video generation using image diffusion models. It allows generating short video clips from text prompts without training on video data.
  • threefive - A Python library for parsing SCTE-35 in various formats, including MPEGTS, HLS, and DASH, facilitating ad insertion and management in video streams.
  • TimeSide - A Python framework for scalable audio processing, analysis, imaging, transcoding, streaming, and labeling. It provides a high-level API designed to enable complex processing on large datasets of audio or video assets with a plug-in architecture and an extensible web frontend.
  • TorchAudio - A set of tools and building blocks for audio and speech processing, designed to accelerate the development and deployment of machine learning applications in these domains. It offers GPU-compatible, differentiable, and production-ready components, making it valuable for integrating audio processing into video streaming and encoding workflows.
  • truex-ad-renderer-web-integration - Documentation and resources for integrating true(X)'s CTV web ad renderer, providing guidelines for implementing interactive ad experiences in connected TV environments.
  • Tube Archivist - A self-hosted YouTube archival and library management application. It lets you subscribe to channels, automatically download videos, and index them with search and tags for offline access.
  • Type Studio - An online video text converter and editor tool that can transcribe video text automatically, support multiple languages, and export in various formats. It simplifies the process of adding subtitles to videos by providing automatic transcription and editing features, making it valuable for content creators aiming to enhance accessibility and engagement.
  • Unison - File synchronization tool useful for keeping video assets and media files in sync across multiple servers or locations.
  • Untrunc - A tool to recover and repair corrupted video files (e.g., missing headers) by reconstructing them using a reference file of the same format.
  • v4l (Go Video4Linux) - A Go library providing bindings to Video4Linux2 (V4L2) APIs, enabling video capture and camera control in Linux from Go applications.
  • VAST 4.0 Sample Tags - The Interactive Advertising Bureau (IAB) provides sample VAST 4.0 tags to help developers understand and implement the latest standards in video ad serving. These samples are valuable resources for testing and ensuring compliance with VAST 4.0 specifications.
  • VAST 4.0 Specification - The Video Ad Serving Template (VAST) 4.0 is a standard developed by the Interactive Advertising Bureau (IAB) that provides a common protocol for serving in-stream video ads. It defines the structure for ad responses and supports various ad formats, including linear and non-linear ads. Implementing VAST 4.0 ensures compatibility with a wide range of video players and ad servers.
  • VAST Inspector - A tool provided by Google to validate VAST (Video Ad Serving Template) ad tags. It helps developers ensure that their VAST tags are correctly formatted and functioning as intended, which is crucial for delivering video ads without errors. This tool is essential for developers working with VAST-compliant ad servers.
  • VHS (Terminal Recorder) - A tool for turning terminal sessions into animated GIFs or videos. VHS lets you script terminal interactions and outputs them as recordings, useful for demos and documentation.
  • Video Hub App - An electron-based video library organizer that scans folders for video files and presents an interface with thumbnails and search for browsing a video collection.
  • Video.js Ads Plugin - A plugin for Video.js that provides common functionality needed by video ad integrations, simplifying the process of incorporating ads into video content.
  • Video.js IMA Plugin - Integrates the Video.js player with Google's IMA SDK, enabling seamless ad integration in HTML5 video players. It supports various ad formats and provides a consistent ad experience across different platforms.
  • VideoCaptioner - A video subtitle processing assistant based on large language models (LLM). It supports speech recognition, subtitle segmentation, optimization, and translation, providing a comprehensive solution for subtitle generation and integration. The tool offers features such as accurate subtitle generation without GPU, intelligent segmentation and sentence splitting based on LLM, AI subtitle optimization and translation, and batch video subtitle synthesis.
  • videojs-contrib-ads - A Video.js plugin that provides a framework for creating ad integrations, offering a set of events and methods to manage ad playback and content video interactions.
  • VideoLingo - An all-in-one video translation, localization, and dubbing tool designed to generate Netflix-quality subtitles. It automates processes such as subtitle cutting, translation, alignment, and dubbing, enabling seamless video localization across language barriers. Key features include YouTube video download via yt-dlp, word-level subtitle recognition with WhisperX, NLP and GPT-based subtitle segmentation, and dubbing alignment with GPT-SoVITS.
  • VideoReTalking - A research project (SIGGRAPH Asia 2022) providing code for audio-driven lip synchronization in talking head videos. It enables realistic re-sync of lip movements to new audio on existing footage.
  • vigenair - Recrafting Video Ads with Generative AI, this project leverages machine learning to enhance video advertisements, utilizing technologies like Google Cloud Vision and Vertex AI.
  • VOCAL Technologies Video Software Library - VOCAL Technologies provides a comprehensive video software library that includes industry-standard video codecs, multi-channel video frameworks, voice and video over IP solutions, VoIP vocoders, and voice enhancement tools. These resources support a range of video communications applications from surveillance to teleconferencing.
  • Wav2Lip - An AI model that achieves accurate lip-syncing in videos. Given an input video of a person and a target speech audio, Wav2Lip generates a video where the person's lip movements match the audio perfectly.
  • web-monetisation-video-ads - A utility that enables developers to monetize videos by utilizing web monetization when available and loading ads as a fallback through the IMA SDK.
  • x9k3 - An HLS segmenter with SCTE-35 support, enabling live streaming from non-live sources and looping, useful for dynamic ad insertion scenarios.
  • YouTube-DL - The classic command-line program for downloading videos from YouTube and hundreds of other sites. YouTube-dl is open source and supports extracting audio, selecting formats, and many customization options.
  • yt-dlp - A command-line program to download videos from YouTube and many other video platforms. It's a fork of YouTube-dl with additional features and fixes, widely used for video retrieval.
  • Zubtitle - Automates the subtitling process, making it easy for beginners to add accurate captions. This AI-powered tool is designed to create professional subtitles quickly.
  • zveloDB - A URL database that enhances brand safety in digital video advertising platforms. By integrating zveloDB, platforms can ensure that video ads are served in appropriate contexts, protecting brand reputation and providing greater transparency in ad placements.

Ads & QoE

  • etf1/IAB VAST/VMAP Parser - TypeScript Node.js library with separate VAST3Parser and VMAPParser classes exposing a promise-based API.
  • Eyevinn SGAI Ad Proxy - Experimental HTTP proxy implementing Server Guided Ad Insertion (SGAI), compatible with AVPlayer and HLS.js 1.6+.
  • Eyevinn test-adserver - Test ad-server generating predictable VAST responses/mock creatives for validating SSAI stitching and CSAI impression tracking.
  • HLS-SCTE35-monitoring - Script that polls HLS renditions and parses SCTE-35 ad markers across manifest variants for consistency checking.
  • OpenQoE (GitHub) - Self-hosted, Apache 2.0 QoE monitoring stack with JS SDKs for major players, tracking startup time, rebuffering, and errors with Grafana dashboards.
  • VideoPerformanceAnalysis - Python/Selenium scripts extracting QoE metrics (time-to-start-playing, rebuffer count, buffering time fraction) from YouTube playback.
  • vmap-js - Pure JavaScript VMAP 1.0.1 parser with Node and browser builds, from Dailymotion.

Advertising

Quality & Testing

  • Akamai Stream Validator - Akamai's Stream Validator is a tool designed to verify the integrity and compliance of streaming media, ensuring optimal playback across devices.
  • Artillery Plugin HLS - Load test HTTP Live Streaming (HLS) servers with Artillery 🎥.
  • Automated Channel Testing - Roku Automated Channel Testing: Selenium-based WebDriver + Robot Framework + Samples.
  • Automated Testing on Devices - Key concepts and infrastructure.
  • AVRate - An open source modular Audio/Visual subjective evaluation test interface.
  • bdr-ssimu2 - Python/matplotlib tool computing SSIMULACRA2 BD-rate curves with average and harmonic-mean plots and temporal subsampling.
  • Big Buck Bunny (4K UHD Demo) - A short animated film by the Blender Foundation (2008). It's open content and commonly used as demo video footage for testing 4K, HDR, and high-bitrate video setups.
  • butteraugli (Rust port) - Pure Rust port of Butteraugli from libjxl with XYB color, visual masking, and multi-scale bands, validated to within 0.001% of the reference.
  • CAMBI: A Banding Artifact Detector - Netflix Tech Blog article introducing CAMBI (Contrast-Aware Multi-scale Banding Index), a metric Netflix developed to automatically detect banding artifacts in video content.
  • CMCD Spec, Validator & Analyzer (CTA-WAVE) - Official CTA-5004 Common Media Client Data spec repo including a CMCDv1 validator library and analyzer tool underlying QoE synthetic-test tooling.
  • CMCD-DASH — CMCD-aware dash.js PoC - Proof-of-concept CMCD-aware dash.js player + HTTP server performing bandwidth allocation via CMCD data (NUS).
  • cmcd-toolkit — CMCD v2 collector & analysis - CMCD v2 collector for ingesting/analyzing Common Media Client Data beacons locally or on cloud, with a dash.js beacon module.
  • Content Delivery Video Library (CDVL) - An online library of test video content and sequences provided for researchers and developers to evaluate video processing and streaming techniques (various resolutions, formats, and scenarios).
  • Conviva Streaming Performance Index (Report) - Conviva regularly publishes 'State of Streaming' reports which provide analytics on streaming quality (startup times, rebuffer rates, bitrate) across the industry. These reports are valuable to understand trends and the importance of monitoring QoE at scale.
  • Dolby Stream Validator - Dolby's Stream Validator assesses streaming content for Dolby audio and video standards, ensuring high-quality media delivery.
  • Eyevinn hls-monitor - Service monitoring one or more HLS streams for errors and inconsistencies (media-sequence issues, discontinuities, stale manifests) with a Prometheus /metrics endpoint and Grafana dashboards.
  • Eyevinn Stream Corruptor - Eyevinn's Stream Corruptor is a tool designed to intentionally corrupt streaming media, useful for testing error resilience in players.
  • fast-ssim2 — SIMD Rust SSIMULACRA2 - Fast SIMD Rust implementation of the SSIMULACRA2 perceptual image/video quality metric.
  • Fluster - Testing framework for decoders conformance.
  • HLS Stream Health Monitoring Tool - HLS stream health monitoring utility tool provides an report of live HLS stream. This utility tool checks the all available bitrate streams and generates the report in HTML file format.
  • ITU-T P.1203 reference implementation - Official Python reference implementation of the ITU-T P.1203 HTTP adaptive streaming QoE model (modes 0-3), outputting per-second and integrated MOS scores.
  • montevideo-tech/cmcd-validator - Node library validating player CMCD (CTA-5004) in real time across queries/headers/JSON, tested against Video.js/Dash.js/Hls.js/Shaka.
  • psy-ex/metrics - Perceptual video metrics toolkit computing SSIMULACRA2, Butteraugli, CVVDP, weighted XPSNR, VMAF NEG, SSIM, and PSNR via helper scripts.
  • Qctools (GitHub) - A quality control tool for analyzing video files, detecting defects, and evaluating technical quality metrics for archival and broadcast purposes.
  • R4WG20 QoE Metrics - Issue tracking repository for the R4-Wg20 QoE Initiative.
  • Sintel (Open Movie) - A 15-minute open source animated film (2010) by Blender Institute. It's frequently used for benchmarking video encoders and playback devices (available in 4K and various formats).
  • ssimu2xpsnr_plotter - Bash tool that encodes x264/x265/SVT-AV1/VVenC across CRF values, measures XPSNR and SSIMULACRA2, and plots rate-distortion curves.
  • Stb-tester - An automation tool for testing set-top boxes and video devices. stb-tester uses a Raspberry Pi with a capture card to run automated tests (via video analysis and remote control input) on HDMI outputs.
  • Streaming Video Experimentation at Netflix - Netflix Tech Blog article explaining how Netflix conducts A/B testing and experimentation on streaming video quality and features to optimize QoE for its users at scale.
  • Streamsim - VQEG/streamsim - A GitHub repository for video/multimedia development.
  • Test Engine Live Tools - Small tools and scripts for the EBU test engine platform.
  • Test Engine Ondemand - EBU's on-demand test engine for validating broadcast and streaming workflows against technical specifications.
  • Toward a Better Quality Metric for the Video Community - Netflix Tech Blog article discussing the need for improved video quality metrics beyond existing ones like PSNR or SSIM, and how metrics like VMAF were developed to better reflect human perception.
  • Toward A Practical Perceptual Video Quality Metric - Measuring video quality accurately at scale.
  • Unified Streaming Validator - Unified Streaming's Validator checks the compliance and quality of streaming content, supporting various streaming protocols.
  • Vaapi Fits - Intel/vaapi-fits - A GitHub repository for video/multimedia development.
  • Video Bench — How measure your video quality easily - Guide to using automated tools for measuring and benchmarking video quality metrics in encoding workflows.
  • Video Quality Assessment - Eyevinn's knowledge-sharing series continues with video quality assessment, covering both subjective and objective approaches to measuring perceived video quality.
  • Videobench - Command-line tool for analyzing video quality using VMAF, PSNR, and bitrate measurements.
  • VMAF - Perceptual video quality assessment based on multi-method fusion.
  • VMAF: The Journey Continues - By Zhi Li, Christos Bampis, Julie Novak, Anne Aaron, Kyle Swanson, Anush Moorthy and Jan De Cock.
  • VQEG P.1203 Software Tools Page - Video Quality Experts Group's index of ITU-T P.1203/.1/.2 QoE model implementations (video and audio quality modules).
  • VQEG Tools and Subjective Labs Setup - Providing the video quality research community with a wide variety of software tools and guidance in order to facilitate research.
  • VQMT - Video Quality Measurement Tool. Fast implementations of the following objective image quality metrics: PSNR, SSIM, MS-SSIM, VIFp, PSNR-HVS and PSNR-HVS-M.
  • Wisual - Web for Visual Quality Assessment.

Audio & Subtitles

  • ffsubsync - A tool to automatically synchronize subtitles with video by analyzing audio tracks. It uses speech detection to align subtitle timing via FFmpeg and machine learning.
  • Gaupol - An open source subtitle editor for text-based subtitle files, featuring timing adjustment, translation support, and built-in video preview (Linux).

Subtitles & Captions

  • Aegisub - A free, cross-platform open source tool for creating and modifying subtitles (advanced subtitle editor supporting ASS/SSA formats).
  • AutoSubtitle — Whisper subtitle GUI with burn-in - PyQt5 GUI that generates bilingual subtitles using faster-whisper and Silero VAD with LLM translation and FFmpeg burn-in/hardcode.
  • Caption Inspector - A reference decoder for Closed Captions (CEA-608 and CEA-708).
  • CCExtractor - De-facto standard open-source tool for extracting CEA-608/708 closed captions and subtitles from media files and streams.
  • Ccextractor (GitHub) - CCExtractor - Official version maintained by the core team.
  • CEA-608/708 Closed Captioning Standards - The EIA-608 and EIA-708 standards define how closed captions are encoded in analog and digital television signals in the US. They are crucial for broadcast TV and cable, and understanding these can help when dealing with caption extraction or embedding in video files (e.g., in MPEG-2 or ATSC streams).
  • Cea608 JS - A JavaScript project designed to extract CEA-608 captions.
  • Closed Captioning and Subtitling Products - MacCaption and CaptionMaker Overview - Telestream - Telestream Closed Captioning: MacCaption and CaptionMaker allow you to easily author, edit, create subtitles, and encode and repurpose video captions for television, web and mobile delivery.
  • DVB captions in media convert - ** If your output captions are DVB-Sub, set them up in your outputs according to the following information.
  • EBU-TT Live Interoperability Toolkit - Toolkit for implementing and testing EBU-TT Live, a subtitle standard used for live broadcast streaming across multiple platforms.
  • Extract Subtitle - Tool to extract embedded subtitle tracks from video files for separate processing or storage.
  • go-astisub - A Golang library for manipulating subtitles (supports formats like SRT, WebVTT, SSA/ASS, etc.), useful for automated subtitle processing.
  • IMSC 1.0.1 Text test content - GitHub repository containing test content files for validating IMSC 1.0.1 text-based subtitle implementations.
  • IMSC 1.1 Image test content - GitHub repository containing test content files for validating IMSC 1.1 image-based subtitle implementations.
  • IMSC 1.1 Text test content - GitHub repository containing test content files for validating IMSC 1.1 text-based subtitle implementations.
  • IMSC HRM validator - Validator for the IMSC Hypothetical Render Model (HRM), which constrains TTML document complexity.
  • IMSC Specification - W3C technical specification defining the IMSC 1.1 standard for timed text markup language used in subtitle and caption formatting.
  • IMSC validator - Online validation tool for checking compliance of subtitle files with the IMSC (International Movie Standardization Committee) specification.
  • imscED — IMSC subtitle/caption editor - IMSC (TTML) subtitle/caption editor built on imscJS, with a Video Image Burner REST service for IMSC burn-in.
  • imscJS: IMSC/TTML/SMPTE-TT/EBU-TT-D renderer - Renders IMSC/TTML/SMPTE-TT/EBU-TT-D subtitles and captions to HTML.
  • Libcaption - Free open-source CEA608 / CEA708 closed-caption encoder/decoder.
  • Libgosubs - A library for parsing and manipulating subtitle files in various formats for processing and conversion.
  • Live Streaming with Automated Multi-Language Subtitling (AWS Labs) - Reference architecture chaining MediaLive → Lambda@Edge (WebVTT injection) → MediaPackage with Transcribe Streaming + Translate for live multi-language captions.
  • Netflix Timed Text Style Guide (English) - Netflix's style guide for subtitles and captions outlines the editorial and formatting standards for timed text on their platform. It's a comprehensive resource for best practices in captioning (e.g., line length, timing, speaker labels) that is often referenced industry-wide.
  • Node Webvtt - Parse WebVTT files, segments and generates HLS playlists for them.
  • Pycaption - Python module to read/write popular video caption formats.
  • Pycaption CLI - A command line interface for the pycaption module.
  • Pysub Parser - Utility to extract the text and timestamps of a subtitle file (.srt,.ssa,.sub,.txt).
  • pyvideotrans — video translation/dubbing pipeline - End-to-end pipeline: ASR → subtitle translation → multi-role dubbing → audio-video re-sync, offline or via API models.
  • SCF — Subtitling Conversion Framework (EBU) - IRT's Subtitling Conversion Framework converting between EBU STL, EBU-TT Part 1 (Tech 3350/3360) and EBU-TT-D (Tech 3380) with strict conformance via XSLT and Python.
  • stable-ts - Whisper-based transcription with forced alignment and audio indexing, including a mode that loads audio in 30s chunks for near-streaming subtitle generation.
  • STL2TTML — EBU STL to TTML/WebVTT converter - Java tool converting EBU STL (Tech 3264) binary subtitle files to TTML and WebVTT for streaming delivery.
  • STRCleaner - Script that extracts all the text from a subtitles file ignoring time indications, HTML tags and other alien info.
  • subconv — SCC (CEA-608) to WebVTT converter - Ruby library converting SCC (EIA-608/CEA-608) caption files to WebVTT; niche 608 conversion path.
  • Subtitle Composer - A Qt-based subtitle editor for KDE/Linux that supports multiple subtitle formats and provides tools for timing, text editing, and translation.
  • Subtitle Edit - A free, open source subtitle editor that supports over 200 subtitle formats, with tools for sync, translation, and conversion.
  • Subtitle Workshop XE - One of the oldest and popular freeware tools for subtitle editing. Subtitle Workshop XE is a modern update that supports a variety of subtitle formats, offering spell check, timing adjustment, and format conversion in a user-friendly environment.
  • Subtitles - AV Platform MPEG DASH subtitles.
  • The ultimate guide to CCs - Comprehensive guide covering closed captioning practices, standards, and implementation methods for video accessibility.
  • ttconv: subtitle/caption format converter - Converts EBU STL, IMSC/TTML/SMPTE-TT/EBU-TT-D and 608/SCC into IMSC, WebVTT and SRT.
  • TTML/WebVTT Coding of audio-visual objects - ISO/IEC 14496-30 - Defines formatting for text tracks webvtt or ttml.
  • Vtt JS - A JavaScript implementation of the WebVTT specification.
  • Web Video Text Tracks Format (WebVTT) - A format for displaying timed text tracks (such as subtitles or captions) using the track element.
  • Web Video Text Tracks Format (WebVTT) (W3C) - The W3C recommendation for WebVTT, a text format for captioning and subtitling web video. It defines the syntax for caption files used in HTML5 video.
  • Webvtt Py - Read, write and segment WebVTT caption files in Python.
  • Webvtt Ruby - Parser and segmenter.
  • whisper-vtt2srt — AI transcript WebVTT→SRT cleaner - Zero-dependency CLI/Python tool converting Whisper WebVTT to clean SRT, fixing karaoke-accumulation and filtering glitches.
  • Whisper-WebUI — subtitle generation UI - Gradio UI generating subtitles from files/YouTube/mic using faster-whisper; outputs SRT/WebVTT, translation (NLLB/DeepL), Silero VAD, diarization.
  • WhisperX - ASR pipeline producing word-level timestamps via wav2vec2 forced alignment plus speaker diarization, useful for accurate subtitle cue timing.

Audio

  • AAC Audio Coding Standard - ISO/IEC 14496-3 - Defines the compressed audio format AAC.
  • aubio - C library with Python bindings for audio/music analysis: onset detection, pitch tracking, tempo/beat detection, and MIDI-from-audio conversion.
  • Audio Loudness (Google Conversational Actions) - Google developer tool for analyzing and measuring audio loudness levels in media content to meet broadcast and platform-specific audio standards.
  • Audio normalization with FFmpeg using loudnorm (ebur128) filter - Tutorial on using FFmpeg's loudnorm filter based on EBU R128 standards to normalize and adjust audio levels in media files.
  • AudioSeal — localized audio watermarking - Meta's localized sample-level audio watermarking with fast detector, robust to compression/re-encoding; MIT with weights.
  • audiowmark — robust audio watermarking - Robust blind audio watermarking that survives mp3/ogg re-encoding at ≥128kbit/s, with tunable strength.
  • Cavern — object-based audio engine (Atmos render) - Object-based audio engine and codec pack: Dolby Atmos rendering, HRTF, room correction, unlimited objects (C#).
  • EBU ADM Renderer (EAR) - EBU's reference implementation of ADM rendering (Tech 3388) in Python, shipping ear-utils CLI tools including dump_axml, dump_chna, ambix_to_bwf, and make_test_bwf.
  • Essentia - C++ audio/music analysis library with a large algorithm set for spectral/tonal/rhythm descriptors, Python bindings, and an essentia.js WebAssembly port.
  • fdk-aac - Standalone Fraunhofer FDK AAC codec library (from Android AOSP) supporting AAC-LC/HE-AAC/HE-AACv2/LD/ELD encode and decode, commonly paired with FFmpeg's --enable-libfdk-aac.
  • How to Set Audio Levels for Video - Bad sound can easily ruin good footage. Use these tips when it comes time to set audio levels for video and film projects.
  • iamf-tools (AOM) - Alliance for Open Media's Immersive Audio Model and Formats encoder/tools, CLI-encoding WAV or ADM-BWF into the IAMF container - an open alternative to Atmos/MPEG-H object audio.
  • libadm - C++11 library to parse, create, and write ITU-R BS.2076 Audio Definition Model (ADM) XML, pairing with libbw64 for BW64/BWF file I/O - a building block for object-based/Atmos-adjacent audio packaging.
  • libebur128 - An open source C library implementing the EBU R128 loudness standard. It can be used to measure and normalize audio loudness (LUFS) for broadcast compliance.
  • libspatialaudio — VideoLAN spatial audio renderer - Spatial audio renderer supporting ADM objects, Higher-Order Ambisonics and IAMF; from VideoLAN, actively maintained.
  • loudgain - CLI ReplayGain/R128Gain-style loudness tagger built on libebur128.
  • loudgain — ReplayGain 2.0 / EBU R128 CLI normalizer - CLI loudness normalizer implementing ReplayGain 2.0 on EBU R128/BS.1770 with non-destructive tagging for FLAC/Opus/AAC and more.
  • Low Latency Android iOS Linux Windows tvOS macOS Interactive Audio Platform - Superpowered Audio, Networking and Cryptographics SDKs. High performance and cross platform on Android, iOS, macOS, tvOS, Linux, Windows and modern web browsers.
  • normalizing Audio - Educational resource explaining audio normalization techniques for adjusting audio levels to consistent volumes across digital media.
  • opus-tools - Xiph's official CLI tools for encoding, inspecting, and decoding Opus audio (opusenc, opusdec, opusinfo).
  • pyAudioAnalysis — Python Audio Analysis Library - Python library for audio segmentation, silence removal via dynamic thresholding, spectral features, and classification.
  • pyloudnorm - Pure-Python loudness measurement and normalization library with no FFmpeg dependency.
  • RNNoise - Xiph's RNN-based real-time noise suppression library for speech, operating on 16-bit 48kHz PCM with a CLI example included.
  • sdroege/ebur128 — Rust EBU R128 Loudness Library - Rust port of libebur128 for loudness measurement, passing EBU-TECH 3341/3342, C-ABI compatible.

Metadata Extraction & Management

Batch Processing & Automation

Subtitle & Caption Tools

  • AutoSub - A CLI application to generate subtitle file (.srt) for any video file using Mozilla DeepSpeech.
  • Autosub (BingLingGroup) - Command-line utility to transcribe/translate from video/audio/subtitles to subtitles.
  • AutoSubSync - Subtitle auto-sync GUI wrapping ffsubsync/autosubsync/alass; can sync against a reference subtitle instead of the video.
  • Cea Extractor - Parsing and display logic for CEA-608 caption data in fragmented MP4 files.
  • Extract Subtitles - Utility to extract subtitle streams from video containers into separate text-based subtitle files.
  • Node Thumbnails Webvtt - Video thumbnail generator generating WebVTT spec file.
  • Serverless Subtitles - Can handle a video input, extract the sound, transcript it and generate different subtitle files for your video.
  • subgen — Whisper Auto-Subtitles for Media Servers - Auto-subtitle generator using Whisper (stable-ts + faster-whisper) for Jellyfin/Plex/Emby/Bazarr, CPU or CUDA.
  • Subs Extract - Extracts per-sentence subtitles + audio from a subtitle file + video file.
  • subsai - Subtitle generation tool with WebUI, CLI, and Python API using faster-whisper; exports srt/ass/ssa/sub/JSON/txt/vtt with translation support.
  • subtp - Rust parser for SRT and WebVTT with round-trip parse/render of cues, comments, styles, and regions.
  • TV Subtitle Extraction - System for extraction of subtitles from TV broadcasts.
  • vidstack/captions — Lightweight JS Caption Parser/Renderer - Modern ~5kB JS library parsing and rendering VTT/SRT/SSA captions, with server-side support, VTT-region rollup captions, and CSS styling.
  • whisper-subtitle-generator - Cross-platform GUI for batch subtitle generation with SRT/VTT/JSON export, translation, and GPU acceleration. MIT.
  • WhisperTimeSync — Transcript-to-Whisper Subtitle Aligner - Aligns an existing accurate transcript over Whisper timestamps to produce SRT with both good text and good timing.

VMAF PSNR SSIM Tools

  • Collection of VMAF Resources - A colleague asked for some resources relating to VMAF. Rather than answer in an email I thought I would create a post around it. Some of these are from Netflix, most from me (Jan Ozer). I've broken the items into three groups; Computing VMAF, Using VMAF, and About VMAF.
  • dynamic-crf - Go CLI performing target-VMAF CRF search via bisection/interpolation for per-scene variable-CRF encoding.
  • easyVmaf - Python script to easily compute VMAF using FFmpeg. It allows to deinterlace, scale and sync Ref and Distorted video automatically.
  • FFMetrics - Windows GUI that visualizes PSNR, SSIM, XPSNR, and VMAF computed via FFmpeg with interactive graphs and batch processing.
  • FFmpeg Quality Metrics - Calculate quality metrics with FFmpeg (SSIM, PSNR, VMAF).
  • ssimulacra2_rs - Rust implementation of the SSIMULACRA2 perceptual quality metric, among the first with video input support.
  • sxpsnr - Standalone XPSNR CLI computing the perceptually-weighted PSNR metric between two YUV/Y4M sources.
  • turbo-metrics - CUDA GPU-accelerated video quality metrics: XPSNR, Butteraugli, VMAF, and CAMBI banding detection.
  • Vship — GPU visual fidelity metrics - GPU-accelerated (HIP/CUDA) implementation of visual quality metrics SSIMULACRA2, Butteraugli and ColorVideoVDP for fast perceptual video comparison.

Color Science & Histogram Analysis

  • dovi_meta - CLI that creates Dolby Vision XML metadata from an encoded deliverable's binary RPU.
  • hdr-analyze - Reads raw 10-bit pixels frame-by-frame, computes per-frame luminance, and generates HDR dynamic metadata.bin files with a verifier.
  • HDR-Multi-Tool — HDR10+/Dolby Vision Metadata GUI - GUI for parsing HDR10+ and Dolby Vision dynamic metadata from MKV/TS/MP4/HEVC inputs.
  • libplacebo - GPU-based video rendering library (from mpv's algorithms) with dynamic HDR tone mapping, scene-change detection, gamut mapping, and native Dolby Vision Profile 5; powers FFmpeg's vf_libplacebo and VLC.
  • obs-color-monitor - Vectorscope, waveform, and histogram monitoring plugin for OBS Studio.
  • OpenColorIO (GitHub) - Academy Software Foundation's industry-standard color management framework for color space transforms and display transforms, used by Nuke, Blender, Krita, and major VFX pipelines.
  • quietvoid/dovi_tool — Dolby Vision RPU Metadata Tool - Rust CLI to extract, edit, and generate Dolby Vision RPU metadata (profiles 4/5/7/8) and plot L1/L2/L8 levels.
  • quietvoid/hdr10plus_tool — HDR10+ Metadata Extractor - Rust CLI to extract HDR10+ dynamic metadata from HEVC to JSON, plot brightness graphs, and compute Samsung scene info.
  • scopes_plusplus - C++23 realtime video waveform/vectorscope/analyzer using ImGui, OpenGL, and OpenCL.
  • YUView - A QT based, cross-platform YUV player with an advanced analytic toolset.

Scene Detection & Segmentation

AI & Machine Learning Tools

  • Ad Insertion Sample (GitHub) - The ad-insertion reference pipeline shows how to integrate various media building blocks, with analytics powered by the OpenVINO™ Toolkit, for intelligent server-side ad insertion.
  • Audio Transcriber - Transcodes audio & video files to text, supports MP3, M4A, WAV, MP4, MKV, AVI, MPG & MPEG. No Online API's. Python 3.
  • FGVC - (ECCV 2020) Flow-edge Guided Video Completion.
  • FlashVSR - CVPR 2026 real-time diffusion-based streaming video super-resolution using one-step, locality-constrained sparse attention with a tiny conditional decoder.
  • Jukebox - Code for the paper "Jukebox: A Generative Model for Music".
  • SimpleVQA - Deep-learning no-reference video quality assessment for user-generated content, in PyTorch with SlowFast feature extraction.
  • Smart City Sample - The smart city reference pipeline shows how to integrate various media building blocks, with analytics powered by the OpenVINO™ Toolkit, for traffic or stadium sensing, analytics and management tas..
  • Upscale-A-Video - CVPR 2024 temporal-consistent diffusion model for real-world video super-resolution.
  • Video TensorFlow - Using TensorFlow For Audience Measurement Kevin Staunton-Lambert Solutions Architect R&D @kevleyski www.switch.tv.
  • Videocr - Extract hardcoded subtitles from videos using machine learning.

Color Grading & Correction Tools

  • aras-p/smol-cube — Compact LUT Binary Format - C++17 compact binary format for Adobe/Resolve.cube LUTs using half-precision floats, aimed at game engines.
  • DoVi_Scripts - Drag-and-drop scripts wrapping dovi_tool for Dolby Vision: extract/parse/inject/edit RPU, P8 hybrid creation, RPU resync, and profile conversion to Profile 8.
  • HDR2SDR LUT Generator - Generates a 3D cube LUT for HDR-to-SDR conversion by comparing paired HDR/SDR video samples.
  • hdrfix - CLI tool for tone-mapping HDR screenshots/video to SDR using multiple algorithms (Hable, Uncharted2, ACES filmic, Reinhard) with exposure/levels control.
  • Qtff Parameter Editor - QuickTime file parameter editor for modifying transfer function, colour primary and matrix characteristics.
  • vapoursynth-tonemap — HDR-to-SDR Tone-Mapping Plugin - C VapourSynth plugin tone-mapping HDR video to SDR with Hable/Reinhard/Mobius operators ported from mpv and FFmpeg.

Effects & Compositing Tools

Non-linear Editing Suites

  • FFmpeg-webCLI — In-Browser Video Editor on FFmpeg.WebAssembly - Fully local browser video editor built on FFmpeg.WebAssembly with timeline trim, transcode, and GIF export.
  • FreeCut - Professional-grade browser-based video editor with multi-track editing, WebGPU/WebCodecs support, keyframe animations, AI tools, real-time preview, and export capabilities. Runs entirely in the browser with no installation required.
  • Motion Canvas — TypeScript Animation Framework - TypeScript generator-function animation framework with Canvas2D renderer and a real-time editor for programmatic video/animation.
  • OpenTimelineIO raven — OTIO Timeline Viewer - C++ OTIO timeline viewer for inspecting OpenTimelineIO editorial timelines.
  • OpenTimelineIO Swift Bindings - Swift language bindings for OpenTimelineIO, enabling OTIO timeline read/write from Swift apps.
  • Revideo — Programmatic Video via Motion Canvas - Open-source fork of Motion Canvas adding server-side rendering API and templates for automated/batch programmatic video pipelines.
  • VoidCut - Free, open-source browser-based non-linear video editor with drag-and-drop timeline, local-only processing (privacy-focused), FFmpeg integration, and simple export. All processing happens locally in the browser.

Conversion & Format Tools

  • FF Multi Converter - GUI File Format Converter. Contribute to ilstam/FF-Multi-Converter development by creating an account on GitHub.
  • media-converter (M1XZG) - Self-hosted web-UI media converter with GPU acceleration (NVENC/AMF/QSV), Docker-ready, supports batch resolution upscaling and audio extraction.
  • unifi-protect-remux - Niche true-remux tool converting proprietary Ubiquiti UniFi Protect.ubv camera format to MP4 without re-encoding.
  • wo-video-converter - Offline browser-based video converter powered by FFmpeg-WebAssembly, no server upload required.

Audio Analysis & Processing

Quality Analysis & Metrics

  • QCTools Documentation - QCTools (Quality Control Tools for Video Preservation) is a free and open source software tool that helps users analyze and understand their digitized video files through use of audiovisual analytics and filtering. QCTools is funded by the National Endowment for the Humanities and the Knight Foundation, and is developed by the Bay Area Video Coalition.
  • Quality of Experience in Streaming - In Eyevinn Technology's ambition to broader our sharing of knowledge we now expand this with addressing quality.
  • Software Tools - VQEG's Software and Tools Website.
  • The Challenge to Maintain and Translate Creative Visual Ideas to Everyone’s Viewing Devices - Discussion of what went wrong with the visual quality of a very popular TV show episode, and the challenge of maintaining creative intent when encoding and distributing dark, high-contrast content at scale.

Video Analytics & Benchmarking

  • DVB Inspector - Download DVB Inspector for free. DVB transport stream analyzer written in java. DVB Inspector is a java program to analyze captured DVB-streams. It is not a real time tool that can interact with PC-TV DVB hardware directly.
  • Elecard Stream Analyzer - Professional Video Analysis Tool For Syntax Analysis Of Encoded Media Streams. Operates With MPEG-2 PS/TS, VES and MP4 Files. Automation, batch execution via Command Line Interface. Check your multiplexer.
  • Promising Initial Results with AV1 Testing - Streaming Learning Center - I began testing AV1 early this week. Briefly, my tests involve 16 ten-second clips in four genres (movies, sports, animations, gaming) and an "other" category (music video, nature video).

Protocols & Transport

  • 100ms: RTMP vs WebRTC vs HLS - Live Video Streaming Protocols Compared - A detailed comparison of RTMP, WebRTC, and HLS protocols, highlighting their differences in latency, scalability, quality, and reach. This resource assists developers in choosing the appropriate protocol based on their specific live video streaming requirements.
  • Ad Creative Signaling in DASH and HLS - This project by the Streaming Video Technology Alliance defines a data scheme for signaling advertisement creative assets within DASH manifests and HLS playlists, facilitating better ad integration in streaming workflows.
  • Adaptive Streaming - A comprehensive overview and experimental project focusing on adaptive streaming technologies, specifically HLS and DASH. It covers content generation, playback across various browsers, and includes a Node.js module for creating multi-bitrate DASH and HLS content.
  • Adaptive Streaming with MPEG-DASH and HLS using AWS - A comprehensive guide detailing the process of setting up adaptive streaming using MPEG-DASH and HLS with AWS services. It covers S3 bucket configuration, Elastic Transcoder usage, and integration with Video.js for playback.
  • aiortc (Python WebRTC) - A Python library for Web Real-Time Communication that implements WebRTC and ORTC, enabling real-time audio/video and data streaming in Python applications.
  • Awesome DASH - A curated list of resources, tools, and information related to MPEG-DASH. This repository serves as a comprehensive guide for developers interested in DASH technology, offering insights into its implementation, best practices, and related research.
  • Bitmovin Player - A comprehensive adaptive streaming player supporting HLS and MPEG-DASH, offering features like low latency, DRM integration, and customizable UI. It is designed for high-quality video playback across various devices and platforms.
  • BlendVision: Top 6 Live Streaming Protocols Comparison - A comprehensive comparison of six common live streaming protocols: RTP, SRT, RTMP, RIST, ZiXi, and WebRTC. The article explores their technical characteristics, application scenarios, and differences, aiding developers in selecting the most suitable protocol for their live streaming services.
  • Comparison of Streaming Media Software - This resource provides a comprehensive comparison of various streaming media software, detailing the protocols they support, i

Truncated — view the full README on GitHub.

audio
awesome
awesome-list
captions
dash
digital-video
drm
encoding
ffmpeg
hevc
hls
mp4
mpeg-dash
ott
player
roku
streaming
video
video-streaming
vmaf

Project health

Overall

3.4/10

Maintained

5/10

Code review

1/10
OpenSSF Scorecard

Significant stargazers

Wesley Luyten

320 followers · starred Mar 2023

ikaijua

100 followers · starred Jan 2024

Phan Văn Hoà - 潘文和 - 반문화

19 followers · starred Mar 2021

Karsten Gebbert

62 followers · starred Oct 2020