calculates crop/scale/window position parameters given a matrix of screens and an input video, then plays it.
- screens are the same size and resolution
- screens are arranged in a 2d matrix
- usb drive has a single video file on it that is playable by mplayer
- mplayer
- rsync
- python3
- ffmpeg/ffprobe
- xdpyinfo
- udev:
- mounts to /mnt
- copy video to /tmp
- umount
- run videowall
- videowall:
- reads config.yaml to determine screen layout and resolution
- rsyncs video to slaves
- generates slave commands and calls them via ssh
- loop video on master
- udev stops mplayer
- videowall:
- remove video on master
- terminate slave processes (to be sure)
- remove video on slaves