This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

Supported Video File Formats

What Are Video Files?

For video data, the term "file format" often refers to either the container format or the codec. A container format describes the layout of the file, while a codec describes how to encode/decode the video data. Many container formats can hold data encoded with different codecs.

To read a video file, any application must:

  • Recognize the container format (such as AVI).

  • Have access to the codec that can decode the video data stored in the file. Some codecs are part of standard Windows® and Macintosh system installations, and allow you to play video in Windows Media® Player or QuickTime. In MATLAB®, VideoReader can access most, but not all, of these codecs.

  • Properly use the codec to decode the video data in the file. VideoReader cannot always read files associated with codecs that were not part of your original system installation.

Formats That VideoReader Supports

Use VideoReader to read video files in MATLAB. The file formats that VideoReader supports vary by platform, and have no restrictions on file extensions.


File Formats

All Platforms

AVI, including uncompressed, indexed, grayscale, and Motion JPEG-encoded video (.avi)
Motion JPEG 2000 (.mj2)

All Windows

MPEG-1 (.mpg)
Windows Media Video (.wmv, .asf, .asx)
Any format supported by Microsoft® DirectShow®

Windows 7 or later

MPEG-4, including H.264 encoded video (.mp4, .m4v)
Apple QuickTime Movie (.mov)
Any format supported by Microsoft Media Foundation


Most formats supported by QuickTime Player, including:
MPEG-1 (.mpg)
MPEG-4, including H.264 encoded video (.mp4, .m4v)
Apple QuickTime Movie (.mov)

Note: For OS X Yosemite (Version 10.10) and later, MPEG-4/H.264 files written using VideoWriter, play correctly, but display an inexact frame rate.


Any format supported by your installed plug-ins for GStreamer 0.10, as listed on, including Ogg Theora (.ogg).

Note: Support is provided for GStreamer 0.10 only, not later versions.

View Codec Associated with Video File

This example shows how to view the codec associated with a video file, using the mmfileinfo function.

Store information about the sample video file, shuttle.avi, in a structure array named info. The info structure contains the following fields: Filename, Path, Duration, Audio and Video.

info = mmfileinfo('shuttle.avi');

Show the properties in the command window by displaying the fields of the info structure. For example, to view information under the Video field, type info.Video

ans = 

  struct with fields:

    Format: 'Motion JPEG'
    Height: 288
     Width: 512

The file, shuttle.avi, uses the Motion JPEG codec.

Troubleshooting: Errors Reading Video File

You might be unable to read a video file if MATLAB cannot access the appropriate codec. 64-bit applications use 64-bit codec libraries, while 32-bit applications use 32-bit codec libraries. For example, when working with 64-bit MATLAB, you cannot read video files that require access to a 32-bit codec installed on your system. To read these files, try one of the following:

  • Install a 64-bit codec that supports this file format. Then, try reading the file using 64-bit MATLAB.

  • Re-encode the file into a different format with a 64-bit codec that is installed on your computer.

Sometimes, VideoReader cannot open a video file for reading on Windows platforms. This might occur if you have installed a third-party codec that overrides your system settings. Uninstall the codec and try opening the video file in MATLAB again.

Was this topic helpful?