# [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.