MIDI Time Code Video Player for Audio Workstations
VidPlayMTC is a simple and efficient application for playing video synchronised to MIDI Time Code (MTC). It uses FFmpeg, which is an Open Source library of tools for working with video and audio data in multiple formats. The application runs in Microsoft Windows and is able to open and play video files in any format supported by FFmpeg.
If you have a video file formatted with any freely licensed codec, then VidPlayMTC will probably be able to open and play it.
- Syncs to MIDI Time Code (MTC) or MIDI Clock input.
- Loop mode may be set with loop points to cycle through a sub-section of the video.
- The viewport window is resizable and, optionally, the video may be viewed in a detached window or full screen.
- Video may be viewed at its original aspect ratio or scaled to fit a chosen window size.
- Plays the soundtrack if present within the video file, or it can be muted.
VidPlayMTC is Free Software
Some knowledge is required of how to route data between MIDI devices. The application has been tested with MTC generated by FL Studio, Bitwig, Tracktion, Cubase, Reaper and Sound Forge. PreSonus Studio One users, please refer to usage notes.
If you like VidPlayMTC and find it useful, please consider buying the VidPlayVST DAW plug-in.
Requires Windows 7, 8 or 10 (64-bit). Will not run in Vista or XP. (Apple Mac version is not yet available)Software Delivery
Installs from a Microsoft Installer (.msi) compressed package.
MTC Frame Rate
Accepts MTC at 24, 25, 29.97 or 30 fps. Automatically detects frame rate from the MIDI input stream.
MIDI Clock may be used if the Master is not able to transmit MTC. A fixed tempo must be specified, matched to the Master tempo.
An audio output device must be specified, even if the video being played has no soundtrack. ASIO and MME devices are supported.
Using MIDI Loop Back
VidPlayMTC is intended for studio setups where two PCs are linked via MIDI cable (or by MIDI over Ethernet ). A 'Server' machine runs VidPlayMTC synchonised to a MIDI stream transmitted by a 'Master'. It is possible, however, to make a setup where the Master and the Server run on the same PC. To achieve this the MTC data is sent out on a MIDI Out device and looped back to a MIDI In.
The 'loop back' can be achieved in software, or with a physical cable. There are a couple of software options that I know of...
It may seem counterintuitive, but the MIDI Out port of an audio interface unit can be looped back to its own MIDI In with a MIDI cable. This works fine with my own Edirol UA-25, and that is how the demo video (at the top of the page) was created.
If all this seems a little complicated, you may find the VidPlayVST plug-in provides a simpler solution. You just drop it into your DAW project and you are ready to go.
Usage Notes and 'Gotchas'
Checking for MIDI Input
The application includes a MIDI Watch window that shows the MTC or MIDI Clock data arriving at the input port. When video is playing MIDI events scroll rapidly through the window, timestamped in milliseconds and showing the current sync position in milliseconds.
Contention between audio devices
If running a 'loop back' setup, then both the Master application and VidPlayMTC will each need to open an audio device on the same PC. If VidPlayMTC is receiving MIDI but the video is not playing, then you should check which audio devices are being opened. It may not be possible for the Master and VidPlayMTC to share the same audio output.
Use MTC in preference to MIDI Clock
Some DAWs will allow simultaneous transmission of both MTC and MIDI Clock. In this case select MTC ONLY, and disable MIDI Clock.
Please be aware that there is no hard and fast rule about how a DAW should calculate MTC when there are tempo changes in the project. For example, at a tempo change in FL Studio MTC is re-calculated as if the new tempo had been applied from time zero. Other DAWs may use a different strategy. It all depends on how the underlying audio engine has been coded.
PreSonus Studio One as Master
Unfortunately VidPlayMTC will not sync reliably with MTC data generated by Studio One. If you try it you will find that playback will usually start successfully but, as you work in your project, synchronisation will be lost at some random point. VidPlayMTC will attempt to re-sync, but the problem will keep recurring.
DRM - Digital Rights Management
VidPlayMTC will not open videos that are encrypted with DRM.