MPEG-1 Bitrates and Why MP4 is Better     by Kelly Hughes, 2017

For MPEG-1, there isn't a correct bitrate for any given resolution. The required bitrate varies, based on the scene. This is annoying, and the biggest reason I like MP4 better.

MPEG-1 compression works to make areas of high contrast sharp and clear. By high contrast areas, I mean borders between dark and light pixels, and borders between very different colors. These high contrast edges are treated first and foremost because for human vision, clarity in areas of high contrast will make most scenes appear sharper and more detailed. Blur or artifacts in other areas would be less noticeable.

To illustrate this, think about a meadow scene with lots of grass, and a white picket fence running through it. If that fence is sharp and clear, the whole image will seem better quality than if all the blades of grass were sharp but the fence was blurry. With a sharp and clear fence, blurring in the grass will mostly not be noticed. The MPEG consortium understood this, and this is how MPEG-1 compression encodes the scene. MPEG-1 compression applies bitrate where it thinks it's needed most, which is the high contrast edges.

This works great on outdoor scenes with fences and buildings in them, but for depos, it can work against us. Human faces don't have a lot of high contrast stripes in them, whereas the shirt the witness is wearing can be loaded with them. Shirts with lots of high contrast stripes, or intricate patterns will "lure" all the compression away from the other areas, such as the face. You've probably seen this before. The face looks great, but then the witness moves around a little and fogging and pixelation happens all over the face. That means the encoder wasn't given enough bitrate to cover the amount of changing pixels in that scene, and it sacrificed the area of the face to keep those stripes clean as they moved around the screen. Usually people deliver constant bitrate MPEG-1 files, so when you raise the bitrate high enough to keep the face clear during those movements, your file sizes will grow much much larger and lots of bitrate is wasted on the rest of the video that doesn't need that much bitrate.

I typically deliver MPEG-1 files of 720x480 to my attorney clients, and the bitrate will vary depending on how clean the scene is. With a single color shirt on the witness, I've seen videos that work fine at the 1.5 Mbps suggested elsewhere, and even as low as 800 Kbps! On the other end of the spectrum, I've had witnesses with heavily striped shirts on, with lots of squirming around, and I'll need to go as high as 6 or 8 Mbps to keep face fogging away! When I run into those videos, I'll sometimes drop my resolution to 512x384 or 400x300 so that less bitrate can be used to keep file size down, but still get face fogging under control. With MPEG-1, you have to spot test each conversion, seeking out sections with movement to see if the bandwidth is high enough, then re-encode with more bitrate if needed. It's a hit-and-miss process, often requiring you to redo work you already did.

This is the biggest reason I like MP4. MPEG-1 was generally expected to be a constant bitrate within the legal community, due mostly to old and poorly written tools that would crash when faced with variable bitrate (VBR) videos. MP4 was already much too well established as a VBR format by the time the legal community started to take notice of it, so it was too late for them to try to force CBR on the rest of the world. Thus, you can assume MP4 files can be VBR.

This is great, because you can specify a constant QUALITY setting (ie, CRF in FFMPEG for example), as opposed to a constant bitrate, and the encoder will vary the bitrate to keep that quality the same during every second of the video. That lets you pick ONE quality setting you like at every resolution you deliver, and use that same setting on all videos you make at that resolution. Re-encoding with a better quality setting is almost never necessary, unless you desire a particular file size. The file sizes will bobble around a bit if there's lots of complexity, but the file will come out as small as it can be, while still not having any fogging during times of movement. To spot check after encoding, you can simply look at the general detail level anywhere in the video. Movement won't matter, because the constant quality setting took care of that. Just look at the detail of the face -- the eyes, skin, hair, etc.

My long-term archive was MP4 720x480 crf20 for several years. This is native DVD resolution, so it allowed me to archive MP4 files of DVD rips without scaling, and also to create DVDs as needed without scaling either. At CRF 20, 6 hours of DVD quality video will fit on a DVD-R blank, which covers almost every depo I shoot. Later I switched to the newer h.265 codec for my own archives, and with the additional file size reductions (about half compared to h.264 at the same quality), I now archive full size archives of my shoots. Many tools and chipsets don't support h.265 yet, so I don't send h.265 to clients. When I deliver HD masters to overflow clients who do their own production, I usually make 720p HD files and encode h.264 with crf20. Of course, they can request whatever they prefer, if they have a different preference.

MP4 has made my job much simpler. I don't care that it takes longer to encode MP4 compared to MPEG-1, because my automated batches run at night when I'm not at the office. The resulting files are smaller, the quality is better, there's never any face fogging to worry about, and I don't have to do much spot-checking.