mencgen (formerly lavcGenetic), a genetic algorithm for mencoder encoding options.


Romain Dolbeau,


mencgen is a Java application designed to explore the mencoder options space. Using a genetic algorithm, it tries to find out the options combination that give the best PSNR (Peak Signal to Noise Ratio) for a given file and a given bitrate.

mencgen can eat up a lot of CPU power, as it's possible to explore hundreds of billions of combinations, each taking up to a few hours to check. mencgen is designed to be used on a cluster of systems, through Java Remote Method Invocation. It can also be used on a single system, but then the user should restrict the number of options explored and the size of the sample file.

mencgen supports encoding with libavcodec (part of ffmpeg), XviD or x264. PSNR values for those encoders aren't necessarily comparable. Also, mencgen assume that the encoders respect the target bitrate, if that is not the case, then the results may be meaningless.

mencgen is very experimental, use at your own risk.

This is mentioned as a "non-patent citation" for the patent Dynamic selection of parameter sets for transcoding media data.


version 0.8.1 (Tue Feb 7 17:59:07 CET 2006)

Previous, obsolete stuff:

version 0.8 (Tue Feb 7 17:03:41 CET 2006)

version 0.7 (Fri May 20 17:09:57 CEST 2005)

Romain Dolbeau
Last modified: Thu Oct 23 14:20:59 CEST 2014