How to play multiple videos side-by-side synchronized?

If anyone is still interested in this the current version of VLC is able to do this very well without any kind of scripting or add-on. As far as I know however you can only play two files synchronously, not 3.

  1. To accomplish this simply open VLC and select Media>Open Multiple Files.
  2. Inside the multiple file windows select add to add the first file.
  3. After this click on the, "Show more options," checkbox followed by the, "Play another media synchronously," checkbox at the bottom of the window.
  4. Select browse next to, "Extra media," to add the second file.
  5. Hit play and the two media files will play simultaneously with a single control window.

Bino is a cross-platform media player commonly recommended for stereoscopic file playback. Among other features, it supports synchronized playback of multiple streams.

The interface may seem a bit primitive or confusing at first, but all you need to do is

  1. Drag your two video files into Bino
  2. Select "Separate streams, left first" input option and "Left/right" output option

Voilà, you got synchronized playback. The kind where a single set of playback controls is used for all streams so you wouldn't have to "Invest in some finger weights and train yourself to click very quickly" as @ta.speot.is suggests.

As a bonus, it supports rendering anaglyph 3D.


You can do this with mpv if you don't mind using the command-line:

3 videos side-by-side (stacked horizontally)

enter image description here

mpv --lavfi-complex="[vid1][vid2][vid3]hstack=inputs=3[vo];[aid1][aid2][aid3]amix=inputs=3[ao]" input1.mkv --external-files="input2.mkv;input3.mkv"

2 videos

mpv --lavfi-complex="[vid1][vid2]hstack[vo];[aid1][aid2]amix[ao]" input1.mkv --external-file=input2.mkv

Notes

  • In Windows use ; to separate each file name in --external-files (as shown in the 3 videos example). In Linux and macOS use :. Alternatively, use two instances of --external-file instead such as: --external-file=input2.mkv --external-file=input3.mkv.

  • Files must all be the same height. If they are not then add the scale, pad, and/or crop filters. See the mpv documentation and FFmpeg Filters for more info.