Media Tools
Explore 365 curated media processing and video editing tools for transcoding, analysis, and manipulation on Awesome Video.
Subcategories
- AI & Machine Learning Tools
- Ads & QoE
- Audio & Subtitles
- Audio Analysis & Processing
- Batch Processing & Automation
- Color Grading & Correction Tools
- Color Science & Histogram Analysis
- Conversion & Format Tools
- Effects & Compositing Tools
- Metadata Extraction & Management
- Non-linear Editing Suites
- Quality Analysis & Metrics
- Scene Detection & Segmentation
- Subtitle & Caption Tools
- VMAF PSNR SSIM Tools
- Video Analytics & Benchmarking
Resources
- haxqer/vast — Go VAST 4.2 parser/generatorGo library to generate and parse IAB VAST 4.2 ad documents.
- cuei — Go SCTE-35 encoder/decoderGo SCTE-35 encoder/decoder supporting multicast, MPEG-TS, base64 and hex.
- rafaelcaricio/scte35 — Rust SCTE-35 parse/encodeRust library to parse and encode SCTE-35 splice information with a type-safe builder API.
- imscED — IMSC subtitle/caption editorIMSC (TTML) subtitle/caption editor built on imscJS, with a Video Image Burner REST service for IMSC burn-in.
- IMFTool — IMF CPL editor with IMSC subtitlesOpen-source editor for IMF (Interoperable Master Format) Composition Playlists with IMSC1 text-profile subtitle decode/render/preview.
- subconv — SCC (CEA-608) to WebVTT converterRuby library converting SCC (EIA-608/CEA-608) caption files to WebVTT; niche 608 conversion path.
- Whisper-WebUI — subtitle generation UIGradio UI generating subtitles from files/YouTube/mic using faster-whisper; outputs SRT/WebVTT, translation (NLLB/DeepL), Silero VAD, diari…
- fast-ssim2 — SIMD Rust SSIMULACRA2Fast SIMD Rust implementation of the SSIMULACRA2 perceptual image/video quality metric.
- metadata — Rust FFmpeg-backed media metadata parserRust CLI (FFmpeg-backed) parsing and formatting media metadata for human consumption; MediaInfo/ffprobe alternative.
- whisper-vtt2srt — AI transcript WebVTT→SRT cleanerZero-dependency CLI/Python tool converting Whisper WebVTT to clean SRT, fixing karaoke-accumulation and filtering glitches.
- loudgain — ReplayGain 2.0 / EBU R128 CLI normalizerCLI loudness normalizer implementing ReplayGain 2.0 on EBU R128/BS.1770 with non-destructive tagging for FLAC/Opus/AAC and more.
- Cavern — object-based audio engine (Atmos render)Object-based audio engine and codec pack: Dolby Atmos rendering, HRTF, room correction, unlimited objects (C#).
- libspatialaudio — VideoLAN spatial audio rendererSpatial audio renderer supporting ADM objects, Higher-Order Ambisonics and IAMF; from VideoLAN, actively maintained.
- AudioSeal — localized audio watermarkingMeta's localized sample-level audio watermarking with fast detector, robust to compression/re-encoding; MIT with weights.
- audiowmark — robust audio watermarkingRobust blind audio watermarking that survives mp3/ogg re-encoding at ≥128kbit/s, with tunable strength.
- SimpleSSAI — server-side ad insertion serverAPI-driven server-side ad insertion stitching VMAP/VAST ads into HLS at segment boundaries.
- Eyevinn hls-splice — HLS ad/VOD splicing libraryLibrary to insert an HLS VOD (ad/jingle) into another HLS VOD via manifest manipulation.
- IAB Open Measurement JS Clients (OMID)IAB Open Measurement (OMID) JavaScript verification clients for ad viewability/measurement; Apache 2.0.
- FFmpeg Batch AV ConverterDrag-and-drop FFmpeg batch converter GUI running parallel processes up to the CPU thread count.
- AutoSubSyncSubtitle auto-sync GUI wrapping ffsubsync/autosubsync/alass; can sync against a reference subtitle instead of the video.
- subtpRust parser for SRT and WebVTT with round-trip parse/render of cues, comments, styles, and regions.
- ssimulacra2_rsRust implementation of the SSIMULACRA2 perceptual quality metric, among the first with video input support.
- turbo-metricsCUDA GPU-accelerated video quality metrics: XPSNR, Butteraugli, VMAF, and CAMBI banding detection.
- sxpsnrStandalone XPSNR CLI computing the perceptually-weighted PSNR metric between two YUV/Y4M sources.
- dynamic-crfGo CLI performing target-VMAF CRF search via bisection/interpolation for per-scene variable-CRF encoding.
- scte35-go (Comcast)Go library for encoding and decoding SCTE-35 ad markers, spec-complete to ANSI/SCTE 35 2022b.
- hls-id3tagsTool to inject timed metadata into MPEG-TS segments via ID3v2 tags for HLS in-band metadata.
- scopes_plusplusC++23 realtime video waveform/vectorscope/analyzer using ImGui, OpenGL, and OpenCL.
- obs-color-monitorVectorscope, waveform, and histogram monitoring plugin for OBS Studio.
- VASTlint — open-source VAST validator/inspectorOpen-source VAST ad-tag validator and inspector implementing IAB spec/XSD rules, shipped as Rust core with Go/Python/npm/VS Code extension…
- IAB SIMID (Secure Interactive Media Interface Definition)Official IAB Tech Lab spec replacing VPAID for interactive video ads, designed to work cleanly with server-side ad insertion (SSAI).
- 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 t…
- VidChapters-7M (Vid2Seq)NeurIPS 2023 dataset-and-benchmark project plus Vid2Seq model for automatic video chapter generation at scale.
- video-keyframe-detectorLightweight Python CLI extracting keyframes via peak estimation on frame-difference signal, no ML dependencies.
- Scene Detection Policies and Keyframe Extraction Strategies for Large-Scale Video Analysis2025 paper comparing scene-detection policies and keyframe extraction strategies at scale.
- VQEG P.1203 Software Tools PageVideo Quality Experts Group's index of ITU-T P.1203/.1/.2 QoE model implementations (video and audio quality modules).
- subsaiSubtitle generation tool with WebUI, CLI, and Python API using faster-whisper; exports srt/ass/ssa/sub/json/txt/vtt with translation suppor…
- FFMetricsWindows GUI that visualizes PSNR, SSIM, XPSNR, and VMAF computed via FFmpeg with interactive graphs and batch processing.
- Katnapip-installable MIT library for automated keyframe extraction (LUV color-diff), video compression, and smart image cropping.
- SceneSeg (Local-to-Global Scene Segmentation)CVPR 2020 multimodal movie scene segmentation using place and audio features on the MovieNet dataset; reference ML baseline with code.
- LMSKE — Keyframe Extraction for Video SummarizationLarge-model sequential keyframe extraction pipeline combining TransNetV2 shot segmentation, CLIP features, and adaptive clustering.
- aomanalyzer.ioIn-browser AV1 bitstream analyzer for ivf/obu/webm/avif plus mp4/mkv/ts/mov, running locally with no upload.
- mediametaRust native-first media metadata extraction library (creation date, resolution) with optional external-tool fallback via feature flag.
- whisper-subtitle-generatorCross-platform GUI for batch subtitle generation with SRT/VTT/JSON export, translation, and GPU acceleration. MIT.
- psy-ex/metricsPerceptual video metrics toolkit computing SSIMULACRA2, Butteraugli, CVVDP, weighted XPSNR, VMAF NEG, SSIM, and PSNR via helper scripts.
- ssimu2xpsnr_plotterBash tool that encodes x264/x265/SVT-AV1/VVenC across CRF values, measures XPSNR and SSIMULACRA2, and plots rate-distortion curves.
- bdr-ssimu2Python/matplotlib tool computing SSIMULACRA2 BD-rate curves with average and harmonic-mean plots and temporal subsampling.
- 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 referenc…
- SimpleVQADeep-learning no-reference video quality assessment for user-generated content, in PyTorch with SlowFast feature extraction.
- WhisperXASR pipeline producing word-level timestamps via wav2vec2 forced alignment plus speaker diarization, useful for accurate subtitle cue timin…
- stable-tsWhisper-based transcription with forced alignment and audio indexing, including a mode that loads audio in 30s chunks for near-streaming su…
- libplaceboGPU-based video rendering library (from mpv's algorithms) with dynamic HDR tone mapping, scene-change detection, gamut mapping, and native…
- DoVi_ScriptsDrag-and-drop scripts wrapping dovi_tool for Dolby Vision: extract/parse/inject/edit RPU, P8 hybrid creation, RPU resync, and profile conve…
- hdr-analyzeReads raw 10-bit pixels frame-by-frame, computes per-frame luminance, and generates HDR dynamic metadata .bin files with a verifier.
- dovi_metaCLI that creates Dolby Vision XML metadata from an encoded deliverable's binary RPU.
- AutoShotCVPR-NAS 2023 shot boundary detection model with a NAS-optimized architecture and the new SHOT dataset (853 videos, 11,606 annotations).
- PyProbePython library that parses video metadata via ffprobe or MediaInfo into structured output.
- FlashVSRCVPR 2026 real-time diffusion-based streaming video super-resolution using one-step, locality-constrained sparse attention with a tiny cond…
- Upscale-A-VideoCVPR 2024 temporal-consistent diffusion model for real-world video super-resolution.
- Video2X — ML video super-resolution & interpolationMachine-learning video super-resolution and frame-interpolation framework (C/C++ v6) wrapping Real-ESRGAN, Real-CUGAN, RIFE and Anime4K via…
- BasicSR — image/video restoration toolboxOpen-source PyTorch toolbox for image/video super-resolution and restoration implementing EDSR, RCAN, ESRGAN, EDVR, BasicVSR and SwinIR.
- Practical-RIFE — real-time frame interpolationActively maintained, deployment-focused fork of RIFE (real-time intermediate flow estimation) for arbitrary-timestep video frame interpolat…
- rife-ncnn-vulkan — RIFE interpolation via VulkanPyTorch-free, cross-platform RIFE frame-interpolation CLI using ncnn and Vulkan for concurrent CPU+GPU processing.
- vkdt — Vulkan node-graph media processingGLSL/Vulkan node-graph (DAG) processing engine for raw stills and video, running all processing as GPU shaders.
- Vship — GPU visual fidelity metricsGPU-accelerated (HIP/CUDA) implementation of visual quality metrics SSIMULACRA2, Butteraugli and ColorVideoVDP for fast perceptual video co…
- AutoSubtitle — Whisper subtitle GUI with burn-inPyQt5 GUI that generates bilingual subtitles using faster-whisper and Silero VAD with LLM translation and FFmpeg burn-in/hardcode.
- 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 confo…
- STL2TTML — EBU STL to TTML/WebVTT converterJava tool converting EBU STL (Tech 3264) binary subtitle files to TTML and WebVTT for streaming delivery.
- ITU-T P.1203 reference implementationOfficial Python reference implementation of the ITU-T P.1203 HTTP adaptive streaming QoE model (modes 0-3), outputting per-second and integ…
- sprite-vtt-generator — seekbar sprite + WebVTTNode.js tool generating thumbnail sprite sheets and WebVTT files with automatic interval selection for HLS/DASH seekbar previews.
- video-black-frame-detection — black/scene boundary detectorFFmpeg + OpenCV black-frame detector for scene/ad-break/chapter boundaries, with optional LLM analysis and JSON/SRT output via REST API or…
- MKV-Chapter-Maker — auto chapters via black/silence/sceneAutomatically generates MKV chapters using black-frame, silence or scene detection and writes them via mkvpropedit without re-encoding.
- OpenSceneSense — AI video scene taggingPython library combining vision models and audio transcription with dynamic frame selection to auto-tag and describe video scenes.
- video_sprites — Ruby sprite + WebVTT generatorRuby gem generating sprite PNG sheets and WebVTT for HTML5 player seek previews, with optional animated GIF output.
- quietvoid/hdr10plus_tool — HDR10+ Metadata ExtractorRust CLI to extract HDR10+ dynamic metadata from HEVC to JSON, plot brightness graphs, and compute Samsung scene info.
- HDR-Multi-Tool — HDR10+/Dolby Vision Metadata GUIGUI for parsing HDR10+ and Dolby Vision dynamic metadata from MKV/TS/MP4/HEVC inputs.
- vapoursynth-tonemap — HDR-to-SDR Tone-Mapping PluginC VapourSynth plugin tone-mapping HDR video to SDR with Hable/Reinhard/Mobius operators ported from mpv and FFmpeg.
- aras-p/smol-cube — Compact LUT Binary FormatC++17 compact binary format for Adobe/Resolve .cube LUTs using half-precision floats, aimed at game engines.
- vidstack/captions — Lightweight JS Caption Parser/RendererModern ~5kB JS library parsing and rendering VTT/SRT/SSA captions, with server-side support, VTT-region rollup captions, and CSS styling.
- WhisperTimeSync — Transcript-to-Whisper Subtitle AlignerAligns an existing accurate transcript over Whisper timestamps to produce SRT with both good text and good timing.
- subgen — Whisper Auto-Subtitles for Media ServersAuto-subtitle generator using Whisper (stable-ts + faster-whisper) for Jellyfin/Plex/Emby/Bazarr, CPU or CUDA.
- Revideo — Programmatic Video via Motion CanvasOpen-source fork of Motion Canvas adding server-side rendering API and templates for automated/batch programmatic video pipelines.
- Motion Canvas — TypeScript Animation FrameworkTypeScript generator-function animation framework with Canvas2D renderer and a real-time editor for programmatic video/animation.
- OpenTimelineIO raven — OTIO Timeline ViewerC++ OTIO timeline viewer for inspecting OpenTimelineIO editorial timelines.
- OpenTimelineIO Swift BindingsSwift language bindings for OpenTimelineIO, enabling OTIO timeline read/write from Swift apps.
- ffmpeg-webCLI — In-Browser Video Editor on ffmpeg.wasmFully local browser video editor built on ffmpeg.wasm with timeline trim, transcode, and GIF export.
- openfx-misc — OpenFX Plugin SetCollection of OpenFX (OFX) plugins — Merge, Roto, keyers, generators, retiming — compatible with any OFX host.
- TransNetV2 — Deep Shot Boundary DetectorDeep 3D-CNN shot boundary/scene-cut detector, SOTA on ClipShots/BBC/RAI with real-time inference.
- quietvoid/dovi_tool — Dolby Vision RPU Metadata ToolRust CLI to extract, edit, and generate Dolby Vision RPU metadata (profiles 4/5/7/8) and plot L1/L2/L8 levels.
- chemag/h264nal — C++ H.264/H.265 NAL ParserModern C++ NAL-unit parser for H.264 and H.265 (h265nal sister project), with cmake+tests, dumping parsed NALs from Annex B streams.
- slhck/h26x-extractor — H.264/H.265 NAL ExtractorPython tool extracting NAL units from H.264/H.265 bitstreams, decoding type and content with JSON output.
- sdroege/ebur128 — Rust EBU R128 Loudness LibraryRust port of libebur128 for loudness measurement, passing EBU-TECH 3341/3342, C-ABI compatible.
- pyAudioAnalysis — Python Audio Analysis LibraryPython library for audio segmentation, silence removal via dynamic thresholding, spectral features, and classification.
- epiclabs-io/inspector.js — TS Media Container DemuxersTypeScript demuxers/inspectors for MPEG-TS, MP4, and WebM containers.
- codem-isoboxer — Browser ISOBMFF Box ParserLightweight browser ISOBMFF (MP4) box parser for inspecting fragmented and progressive MP4 structure.
- amarghosh/mp4viewer — ISOBMFF Atom AnalyzerPython ISOBMFF atom analyser with shell, GTK, and JSON output for inspecting MP4 structure.
- OpenColorIOAcademy Software Foundation's industry-standard color management framework for color space transforms and display transforms, used by Nuke,…
- NatronOpen-source node-graph video compositor comparable to After Effects/Nuke, GPLv2, cross-platform, supports the OpenFX plugin standard.
- hdrfixCLI tool for tone-mapping HDR screenshots/video to SDR using multiple algorithms (Hable, Uncharted2, ACES filmic, Reinhard) with exposure/l…
- HDR2SDR LUT GeneratorGenerates a 3D cube LUT for HDR-to-SDR conversion by comparing paired HDR/SDR video samples.