Main Content


Determine if video frame is available to read



tf = hasFrame(v) returns logical 1 (true) if there is a video frame available to read from the file. Otherwise, it returns logical 0 (false).


collapse all

Create a VideoReader object for the example movie file xylophone.mp4.

v = VideoReader('xylophone.mp4');

Read all the frames from the video, one frame at a time.

while hasFrame(v)
    frame = readFrame(v);

Display information about the last frame returned by readFrame.

whos frame
  Name         Size                Bytes  Class    Attributes

  frame      240x320x3            230400  uint8              

Read and play back the sample movie file, xylophone.mp4.

Create a VideoReader object to read data from the sample file. Then, determine the width and height of the video.

xyloObj = VideoReader('xylophone.mp4');

vidWidth = xyloObj.Width;
vidHeight = xyloObj.Height;

Create a movie structure array, mov.

mov = struct('cdata',zeros(vidHeight,vidWidth,3,'uint8'),...

Read one frame at a time until the end of the video is reached.

k = 1;
while hasFrame(xyloObj)
    mov(k).cdata = readFrame(xyloObj);
    k = k+1;

Size a figure based on the width and height of the video. Then, play back the movie once at the video frame rate.

hf = figure;
set(hf,'position',[150 150 vidWidth vidHeight]);


Input Arguments

collapse all

Input VideoReader object. Use the VideoReader function to create a VideoReader object from your video file.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced in R2014b