DirectShow (DirectX) based Video file reader

read image frames into matlab from Video (rmvb, avi, etc) in Windows Platform

You are now following this Submission

This library contains helper functions to read image frames into matlab from Video file using DirectShow. This library has borrowed codes from Ashwin Thangali's "DirectShow (DirectX) based AVI file reader", and it can read multiple video formats besides avi.

Features:
a) can read frames from rmvb, avi, etc.
b) handles most codecs installed on the system
d) its implementation is only based on the IMediaDet interface

-- Depending on your Matlab version, the .mexw32 files may need to be renamed as .dll

-- The library usage is as follows,

[avi_hdl, avi_inf] = dxVideoOpen(avi_filename);
pixmap = dxVideoReadMex(avi_hdl, frame_num);
img = reshape(pixmap,[avi_inf.Height,avi_inf.Width,3]);
dxVideoCloseMex(avi_hdl);

-- recompile the library
I have compiled the code with the DirectShow lib in Microsoft DirectX 9.0 SDK Update (December 2004)

-- known limitation
a)only works for windows :(
b)may be slow for big image frames and some codecs.

Cite As

Lei Wang (2026). DirectShow (DirectX) based Video file reader (https://www.mathworks.com/matlabcentral/fileexchange/15864-directshow-directx-based-video-file-reader), MATLAB Central File Exchange. Retrieved .

Acknowledgements

Inspired by: DirectShow (DirectX) based AVI file reader

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0.0