File Exchange

image thumbnail


version (7.25 MB) by Stefan Karlsson
Video Player with visualization and interactive reading.

1 Download

Updated 10 Feb 2016

View Version History

View License

To play a video, where you select the file with a pop-up dialog:
Mouse interface:
drag and scrol. Drag seekbar, scroll in video view to zoom, and drag video view to pan.
Keyboard interface:
Q/A - increase/decrease speed of playback
P/space - toggle pause
Arrow Keys (L/R) - move one frame (forward/backward)
To interactively choose a specific frame to load:
[fr, macroDat, im] = FancyFlowPlayer;
"im" is the last image viewed, "fr" is scalar, frame number when quitting, "macroDat" is a structure of information about the video.
The Player can visualize motion data saved with the FlowToolbox:
this displays further information on the saved motion. Example:
FancyFlowPlayer('Test'); % assumes a save folder "Test" in current directory

Cite As

Stefan Karlsson (2021). FancyFlowPlayer (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (4)

Stefan Karlsson

@Grant, Thanks for your interest and feedback.

Slow execution is not an issue i have seen on my computer. I have run files over 1 GB. If the numberOfFrames property is not read, I cant see how the seek-bar can be implemented. Did you hard-code for your specific videos?

accessing the number of frames of a video does not usually require reading anything except some macro data from the file header. I suspect your issue has to do with files with broken indexation and/or bad codecs installed.

If you have a code fix for a potential issue, please share, and happy coding :)


Very handy. When I tried a large video file (2GB) it was very slow to start. This is due to a call to NumberOfFrames which causes the entire video to be read. With a few code mods this is now working well on large video files.

Stefan Karlsson

currently no known bugs...

Stefan Karlsson

currently 2 known bugs that will be fixed shortly:

1. If you shut down the file dialog, then next time you run the function it may crash. Solve this by typing "clear FancyFlowPlayer"

2. The frame-rate is consistently lower than what it is supposed to be. This is not due to limitation in software or hardware, but a bug in timing.

MATLAB Release Compatibility
Created with R2013a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Inspired by: Tutorial and Toolbox on real-time optical flow

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!