skillfed

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.

decord2 v3.4.0 613.1K downloads/30d#5,753 on PyPI64
Permissive license Apache-2.0 Active released

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 decord2

uv

uv add decord2

poetry

poetry add decord2

Installing 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

video decoding for deep learningrandom frame access videoGPU accelerated video loaderefficient video shufflingbatch video frame extractionaudio video synchronized decodingFFMPEG hardware accelerationvideo dataset loading
video-decodingdeep-learning-datagpu-acceleration

More Artificial Intelligence packages