MTCVideoSlave (MIDI Time Code Video Slave) is a video player which syncs the video playback to MIDI time code.

It uses the FFmpeg library for decoding video files and therefore supports numerous file formats. But since not all of these formats are suited equally well for synchronized playback it is sometimes required to transcode the video file into a format suitable for playback with MTCVideoSlave.

By using OpenGL for displaying the video the CPU load is kept low and multiple video windows can be shown simultaneously – so you can have a small window on your DAW desktop and a big window on another screen at a remote location for example. You can also use MTCVideoSlave to offload the video playback onto another PC or keep multiple PCs in sync for video installations.

If supported by your hardware an OpenGL shader is used to improve performance for videos which use the YUV420P, YUV422P, YUV444P or YUV422P10LE format. The shader requires OpenGL Shading Language version 1.3 or better.

Usually it is best if the video file has the same frame rate as the MIDI time code but this is not a requirement. MTCVideoSlave supports videos with any frame rate and tries its best to accurately keep them in sync.

Click for bigger screenshot
Click to enlarge.


  • Sync video with any FPS to MIDI Time Code with arbitrary FPS
  • Support for PhotoJPEG, ProRes and DNxHD codecs (and many more thanks to FFmpeg)
  • Compensate MIDI to display latency
  • On screen display shows MIDI Time Code and video position
  • Audio track playback (supports [1])
  • Open as many video windows as you want, like one for the workstation and one for the projector
  • Use OpenGL shaders for quick color decoding
  • Perspective correction and cropping (useful when using a projector)
  • Subtitle support (SubRip format)
  • Keep multiple instances in sync with custom "Network" MIDI device over UDP
[1]: ASIO is a trademark and software of Steinberg Media Technologies GmbH

Tremens Audio Post Production Studio SRS Labs NewYorkActing Polyhymnia die Graphische | Höhere Graphische Bundes-Lehr- und Versuchsanstalt | 1140 Wien, Leyserstraße 6 Sony Computer Entertainment Europe 1602 Group IAMX

A free 30-day trial version is available for download.

  • 1.0.2-429:
    • Show "recording" indicator (via Mackie Control or Mackie HUI protocol).
    • Allow input of fractions for custom FPS (for example 100/3).
    • Better behaviour of video position and offset editboxes.
    • Fix font background in extra video windows.
    • Optionally hide title bar of extra video windows.
    • Allow to change default settings for new video windows.
    • More feedback messages on splash screen during startup.
    • Add remote command to set offset to current video/mtc delta.
    • Allow remote control of multiple instances.
    • (Fix bug with audio playback introduced in version 1.0.2-416)
  • 1.0.2-389:
    • First OS X release.
    • Update FFmpeg to version 2.3.1.
    • Build seektables for PhotoJPEG, DNxHD and ProRes much faster.
    • Better handling of MIDI input data (fixes Nuendo with OS X version).
    • MIDI Output support (forward incoming MIDI).
    • Forward MIDI over the network to MTCVideoSlave on other machines ("Network" MIDI device).
    • Fit window to video aspect ratio (optional).
    • Add command to let remote control application change the sync state.
    • Fix automatic reloading of subtitles when file changes.
    • Fix loading of last subtitle when it's not terminated by a blank line.
    • Load subtitles file as plain text when it is not in SubRip format.
    • Remember toolbar visibility when toggling fullscreen.
    • Add setting to disable ASIO.
    • Small bugfixes.
  • 1.0.2-335:
    • Update FFmpeg to version 2.1.4.
    • Preliminary support for 5.1 and 7.1 audio.
    • Better support for subtitles (SubRip format).
    • Add Always on top option.
    • Log incoming MIDI (when enabled).
    • Shader for YUV444P color decoding.
    • Bugfix: Fix problem where audio would not playback when running on external MTC signal.
    • Bugfix: Seektable was sometimes not saved when seektable test was disabled.
    • Internal changes.
  • 1.0.2-278:
    • Audio track playback: MTCVS can now play the audio track from videos.
    • Always remember last directory for file open dialog.
    • Add remote control application remote.exe.
    • Perspective correction and cropping (useful if a projector is used).
  • 1.0.2-263:
    • Fix video transcode function.
    • Add option for count-in to count up (1-2-3) instead of down (3-2-1).
  • 1.0.2-261:
    • Supports ProRes encoded videos due to new FFmpeg version.
    • Reduce amount of graphics memory used by about 30-40%.
    • Add settings for count-in interval, audio sample rate and audio/video latency.
    • Allow user to override FPS of videos (just type the new FPS into the FPS field in the controls window).
    • Improve count-in functionality.
    • Set minimum count-in delay/preroll to 1000ms (enough time for playback to become stable, also needed to play the first beep entirerly because of audio latency).
    • Improve performance of additional video windows.
    • Fix bug with Protools (frame number received was wrong).
    • Use OpenGL Shading Language 1.3 shaders for color decoding (YUV420P, YUV422P, YUV422P10LE).
    • Draw count-in below all other text overlays.
    • Remove "Do you really want to quit?" dialog.
    • Windows 7: Fix possible instable behaviour after multiple videos were opened.
    • Windows 7 x64 + NVIDIA 280.26: Fix crash when opening YUV420P videos with shaders enabled (can also affect other OS/driver combinations!)
  • 1.0.0-236:
    • Thanks to Bernhard Maisch from Tremens Audio Post Production Studio for supporting the development.
    • Add Count-In functionality (can be toggled on/off with F6).
    • Save program settings when Apply is clicked in the settings dialog.
    • Windows 7: Fix closing of the MIDI device on program shutdown.
    • Windows 7: Fix storage of program settings (settings are no longer lost).
  • 1.0.0-227:
    • Stop internal play when sync on and timecode is received.
    • Add option to compensate MIDI to display latency.
    • Option to choose whether to show video position and/or timecode in the time overlay.
    • OpenGL VSync option.
    • Save visibility of controls window accross sessions.
    • Add batch-function for building multiple seektables.
    • Simple support for subtitles.
    • Fix bug where no frame (black) was shown instead of the last visible frame while seeking.
    • Fix problem with text overlay when font size was too big.
    • Support DNxHD encoded videos.
    • Add OpenGL shader for YUV422P pixel format.
    • Minor fixes.
  • 1.0.0-209:
    • Allow to force aspect ratio to 4:3 or 16:9.
    • Save some settings (video position, offset, aspect ratio) per-video.
    • Add apply button to settings dialog.
    • Minor fixes.
  • 1.0.0-206:
    • Give incoming MIDI Timecode precedence over the play and seek controls/commands.
    • Always show incoming MIDI Timecode in the controls' MTC display. MTC display is no longer changed by play and seek commands.
    • Fix status icons which show sync and incoming mtc status.
    • Change keyboard shortcuts for single frame stepping from Plus/Minus to Page Up/Page Down.
    • Make icons in the toolbar bigger. Thanks to Pierre-Yves Bessuand for the new icons and a lot of feedback.
    • Some minor changes.
  • 1.0.0-201:
    • Fix MIDI device open/close bug.
    • Fix bug which sometimes caused playback to stop when seeking while palying.
    • Remove MIDI Device from controls and show video duration instead.
    • Show sync and incoming mtc status with one of four icons next to the current time overlay.
    • Fix closing of application when additional video windows are used.
    • Fullscreen of additional video windows can now be toggled by double clicking.
    • Fix drawing of additional video windows when shaders are used (bug was introduced in version 1.0.0-189)
    • Stop playback at end of video.
    • Show FPS next to video/MTC displays in the controls.
    • Fix calculation of frame count when building seektables (fixes progress dialog during seektable build with broken videos)
    • Reset video and offset controls to zero on double click.
    • Add option for bigger status overlay (Sync: on/off messages).
    • Show "Really quit?" question before exiting.
    • A few more minor fixes.
  • 1.0.0-190:
    • Improve seek performance at the cost of slower buffer fill status update ;-)
  • 1.0.0-189:
    • Support non-power-of-two OpenGL textures (saves memory).
    • Use OpenGL shader for YUV->RGB conversion (works only with YUV420P videos at the moment).
    • Better synchronization (handle MMC messages
    • works with Logic and Pro Tools now).
    • More keyboard shortcuts (read manual for more information).
    • Hide menubar and statusbar in fullscreen mode.
    • Optionally show filename on top of video.
    • Fix some bugs/crashes.
  • 1.0.0-180:
    • Fixed wrong colors (red/blue were swapped).
    • Fixed decoding of some videos which resulted in distorted output.
  • 1.0.0-179:
    • First official release.


For support and/or feedback please send an email to the following address:

The following table shows the available pricing options for MTCVideoSlave. Please contact us about discounts for students, educational facilities or artists (for example if you want to use MTCVideoSlave on many machines for a big video setup).

 Windows   Max OS X   Both 
Single license 60€* 80€* 100€*
Three machines 150€* 200€* 250€*
More than three Please contact for discounts.
*: All prices excl. VAT, prices may change without notice, only valid until the website lists new prices.

 Payment method  Bank transfer (EU bank account)

To purchase the full version send your order via email to You will receive an email containing details about the bank transfer. Once the money has been transferred you will get an email containing your serial numbers for MTCVideoSlave.