Dash cam is not quite a black box

Recently, I had two encounters with dash camera memory cards. Both were supposed to contain a video recorded immediately prior to a road accident. However, in both cases there were none. I did some extensive data recovery attempts on these, and I'm fairly sure there were no video, neither in normally accessible sense, nor available for recovery. Thinking back, I recall these situations are quite common. I had many cases like this in recovery; quite in a few of these cases, the video was just not there, never recorded.

Dash camera, as most cameras, uses some or other kind of buffering. The data is not being flushed to the card immediately as it is captured by the camera. MP4 format, most commonly used in dash cameras, stores several separate sets of data in each file, called atoms. Actual video frames are stored in one part of file, and various reference tables are stored in another part. This layout implies buffering if it is made to work in real-time. Buffering is fine as long as there is time to flush buffered data to permanent storage (memory card in this case) before shutdown. It does not work if shutdowns are abrupt, because the most recent data is lost. Exactly how much is lost depends on the agressiveness of the buffering. More agressive buffering is more efficient, speed-wise, and allows less capable CPUs to still cope with the task. In the same time, more agressive buffering means more data lost in unexpected shutdown.

In a road accident, as far as dash camera is concerned, things can go wrong in many different ways. Camera may lose power, or the card may get disconnected from the camera by the jolt. While loss of power is typically mitigated by having a battery (even a small battery does the job), other failures still cause loss of data. This is why dash cam is not that reliable in case of the accident. Aircraft black boxes, for comparison, are specifically designed to continue working throughout the accident as it unfolds, and retain the data after that. Dash cameras are typically not designed for that.

Created Friday, November 10, 2017