The MovIm video codec

The MovIm video codec is developed since late 2018 by Reto Kromer, who first presented it publicly in 2019. It is specifically designed for both conservation and restoration purposes, and is actually an enhancement and a replacement of the YCoCg and MSMI video codecs he developed from early 2014 and 2017 on. This work has been directly inspired by a discussion he had with Tommy Aschenbach at the AMIA Conference 2018. However, he wishes to acknowledge also the inspiration given in various occasions by Claudio Weidmann, Jim Lindner, Carl Eugen Hoyos, Peter Bubestinger-Steindl, Jérôme Martinez and Michael Niedermayer.

The openMovIm package consists in the libmovim C library, implementing the MovIm video codec, and its associated movimenc, movimdec and movimplay utilities, as well as the openmovim Bash command-line interface to encode, decode, play and analyse virtually any moving image. The package is released under a 3-Clause BSD License and is provided “as is” without warranty or support of any kind. The source code will become freely available, as soon as a public beta not requiring special user’s skills will be released.

Currently the library is used mainly as a plug-in for the Diamant-Film restoration suite.


The man pages are available as PDF files:

  • libmovim – library implementing the MovIm video codec
  • movimdec – MovIm decoder
  • movimenc – MovIm encoder
  • movimplay – MovIm player
  • openmovim – command-line interface to encode, decode, play and analyse moving images

The Change Log file is available as well on this website.


We are working on the following additional documentation:

  • the MovIm specification
  • the plugin for the Diamant-Film restoration suite

Alpha Release

Our inner circle can already install, test and actually use an alpha of the package, which comes with a few short test files, by running the following command in the Terminal:

brew install avpres/formulae/movim

The MovIm video codec’s library libmovim has been successfully tested on various x86_64 and ARM64 architectures running on the following operating systems:

  • Linux: Debian 10.9 and 9.13; Ubuntu 20.04.2 LTS, 18.04.5 LTS and 16.04.7 LTS; Slackware 15.0 Beta and 14.2; Qubes OS 4.0.4
  • Macintosh: macOS 11.3 (Intel and Apple M1), 10.15.7 and 10.14.6
  • Windows 10: version 20H2, 2004 and 1909