decord2
Decord2 is a high-performance, efficient video decoding and loading library for deep learning research, featuring smart shuffling, random frame access, GPU acceleration, and seamless integration with popular frameworks.
What it is and what it does
Decord2 is a video and audio decoding library optimized for deep learning pipelines. It wraps hardware-accelerated decoders (FFMPEG, NVIDIA NVDEC, Intel codecs) to provide efficient random frame access and batch loading—operations that are typically slow in standard video libraries. The library handles the awkward seeking patterns common during neural network training by using smart shuffling and caching strategies to minimize redundant decoding.
The package provides three main interfaces: VideoReader for direct frame access from files, VideoLoader for training-scale batch loading across many video files, and AudioReader for audio extraction. It also offers AVReader to decode video and audio simultaneously with frame-level synchronization. Runtime dependency is numpy; GPU acceleration requires building from source with CUDA.
Use it for:
- Load random frames from videos during deep learning training without expensive seeks or redundant decoding.
- Batch-load frames from multiple video files with configurable shuffling strategies for efficient data pipeline.
- Extract synchronized audio and video samples from media files for multimodal model training.
- Decode audio from video files at custom sample rates and channel layouts for audio processing tasks.
- Stream video frames in-memory from file-like objects for cloud or streaming scenarios.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Decord2 decodes video and audio files with hardware acceleration, providing efficient random frame access and batch loading for deep learning workflows.
Yes, with conditions. Install if you need efficient random video frame access for deep learning and can tolerate medium setup friction. Prebuilt wheels work out-of-the-box for CPU use on recent Python versions, but GPU acceleration requires source compilation. Active maintenance, no known vulnerabilities, and permissive licensing make it safe to adopt. Skip if your workload is sequential video playback or if building from source is not feasible.
Install
decord2 on PyPI
pip
pip install decord2uv
uv add decord2poetry
poetry add decord2Installing decord2
Before you install
Medium install friction: prebuilt wheels available for recent Python versions (3.10–3.14) on Linux, macOS, and Windows, but GPU acceleration requires building from source with CUDA/compiler toolchain. Active maintenance with recent commits.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; attribution required.
Quickstart
pip install decord2
from decord import VideoReader, cpu
vr = VideoReader('video.mp4', ctx=cpu(0))
frames = vr.get_batch([0, 5, 10])
print(frames.shape)
PYPI wheels are CPU-only; GPU acceleration (NVIDIA NVDEC, Intel codecs) requires building from source with appropriate compiler and CUDA toolkit. Requires Python >=3.9.0.
Verify before relying
- Whether Intel codec support is production-ready or still in development
- Performance benchmarks against other video loaders for typical deep learning workloads
- Audio-video synchronization accuracy and latency characteristics
- Memory overhead of batch loading and internal frame caching strategies
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.9.0) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 1 — numpy |
| Maintenance | actively maintained — 76 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 613,076/month — #5,753 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: decord2-3.4.0-cp310-cp310-macosx_14_0_arm64.whl; decord2-3.4.0-cp310-cp310-manylinux_2_28_aarch64.whl; decord2-3.4.0-cp310-cp310-manylinux_2_28_x86_64.whl; decord2-3.4.0-cp310-cp310-win_amd64.whl; decord2-3.4.0-cp311-cp311-macosx_14_0_arm64.whl; decord2-3.4.0-cp311-cp311-manylinux_2_28_aarch64.whl; decord2-3.4.0-cp311-cp311-manylinux_2_28_x86_64.whl; decord2-3.4.0-cp311-cp311-win_amd64.whl; decord2-3.4.0-cp312-cp312-macosx_14_0_arm64.whl; decord2-3.4.0-cp312-cp312-manylinux_2_28_aarch64.whl; decord2-3.4.0-cp312-cp312-manylinux_2_28_x86_64.whl; decord2-3.4.0-cp312-cp312-win_amd64.whl; decord2-3.4.0-cp313-cp313-macosx_14_0_arm64.whl; decord2-3.4.0-cp313-cp313-manylinux_2_28_aarch64.whl; decord2-3.4.0-cp313-cp313-manylinux_2_28_x86_64.whl; decord2-3.4.0-cp313-cp313-win_amd64.whl; decord2-3.4.0-cp314-cp314-macosx_14_0_arm64.whl; decord2-3.4.0-cp314-cp314-manylinux_2_28_aarch64.whl; decord2-3.4.0-cp314-cp314-manylinux_2_28_x86_64.whl; decord2-3.4.0-cp314-cp314t-macosx_14_0_arm64.whl
Keywords: python, video, loader, deep learning
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
decordDecord decodes video and audio files with…
permissive · top 5,000 on PyPI
torchcodecTorchCodec decodes and encodes videos, audio,…
unclear · top 5,000 on PyPI
nvidia-nvimgcodec-cu12nvImageCodec provides GPU-accelerated codec…
permissive · top 15,000 on PyPI
imageio-ffmpegProvides a simple Python wrapper around ffmpeg…
permissive · top 5,000 on PyPI
pynvvideocodecPyNvVideoCodec provides hardware-accelerated…
permissive · top 15,000 on PyPI
audioreadDecode audio files using whichever backend is…
permissive · top 5,000 on PyPI
moviepyMoviePy is a Python library for video editing…
permissive · top 5,000 on PyPI
scikit-videoscikit-video reads, writes, and analyzes video…
permissive · top 5,000 on PyPI
torchPyTorch provides GPU-accelerated tensor…
permissive · top 1,000 on PyPI
nvidia-libnvcomp-cu12Provides GPU-accelerated lossless data…
unclear · top 15,000 on PyPI