1. A video coding method, comprising, when a coding frame rate drops below a predetermined threshold: buffering a plurality of input video frames generated by a camera, assigning weights to each buffered input frame based on a frame quality metric, coding a highest weighted frame, and discarding a plurality of lower-weighted frames from the buffer without coding.