Read YUV Videos and Extract the Frames

Extract Y, U and V components of a YUV 4:2:0 video

https://github.com/mhaghighat/yuvRead

You are now following this Submission

You can find an example on how to use the code in "example.m".

YUVREAD returns the Y, U and V components of a video in separate matrices. Luma channel (Y) contains grayscale images for each frame. Chroma channels (U & V) have a lower sampling rate than the luma channel.

YUVREAD is able to read any common intermediate format with 4:2:0 chroma subsampling. You just need to enter the correct width and height information for the specific format:

Format Video Resolution (width x height)
------------------------------------------------------------
SQCIF 128 × 96
QCIF 176 × 144
SCIF 256 x 192
SIF(525) 352 x 240
CIF/SIF(625) 352 × 288
4SIF(525) 704 x 480
4CIF/4SIF(625) 704 × 576
16CIF 1408 × 1152
DCIF 528 × 384
A notation called the "A:B:C" notation is used to describe how often U
and V are sampled relative to Y:
4:2:0 means 2:1 horizontal downsampling, with 2:1 vertical downsampling.


(C) Mohammad Haghighat, University of Miami
haghighat@ieee.org

Cite As

Mohammad Haghighat (2026). Read YUV Videos and Extract the Frames (https://github.com/mhaghighat/yuvRead), GitHub. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux

Versions that use the GitHub default branch cannot be downloaded

Version Published Release Notes Action
1.0.0.0

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.