# [FFmpeg](https://ffmpeg.org/), ≈ 28105.37 Input is a \$65535\times1\$ [PBM](https://en.wikipedia.org/wiki/Netpbm) image consisting of alternating white and black pixels, which is 10,006 bytes. This image is encoded as an H.264 video using excessive quality settings, yielding a 281,222,348 byte mp4. The following Ruby wrapper was used to generate both files: ```lang-ruby #!/usr/bin/env ruby s = 9995 File.write('raw.pbm', "P4 65535 1 " + 'U'*s) `ffmpeg -i raw.pbm -crf 0 -filter:v fps=10000000 -preset ultrafast -tune film compressed.mp4` puts r = File.size('raw.pbm') puts c = File.size('compressed.mp4') puts c.fdiv(r) ``` The options passed to FFmpeg are: * `-crf 0` (constant rate factor 0). From the [docs](https://trac.ffmpeg.org/wiki/Encode/H.264): 'The range of the CRF scale is 0–51, where 0 is lossless . . . a subjectively sane range is 17–28 . . . The range is exponential'. * `-filter:v fps=10000000` I kept adding zeros to the frame rate until there was no change in output size. * `-preset ultrafast` 'A slower preset will provide better compression', so I chose the fastest one. (The next fastest option, `superfast`, reduces the file size more than fivefold.) * `-tune film` 'use for high quality movie content; lowers deblocking'. Adding this option increased the file size by 2 bytes.