libdv: Correct timecode after a missing frame, and seek straight to correct frame

The latter mechanism hasn't really been tested. The former seems to work
pretty well, and I've updated the log messages to explain how far ahead/
behind the video the audio is. Apparently this is a common problem with
DV; the original idea was that the manufacturers would sample audio at a
rate that is loosely locked to the video rate, allowed to wander but forced
to eventually return. Manufacturers instead chose a solid audio clock that
ran free, completely unsynced with the video, which means that in a long DV
run there may be too few or (usually) too many samples, resulting in a
small but real audio drift.

Solutions to this usually involve guessing the actual sample rate and
compensating. If I want to address this in the audio codec, I might try to
determine an average sample rate and a target average sample rate and just
throw away/duplicate samples to match. For now, I'm resetting the sync
whenever libdv detects a new recording or when it can't decode the audio in
a frame.