Frame-accurate seeking files with long-GOP

Ensures correct seeking and A/V synchronization using packet's PTS values. It decodes all frames of video from keyframe (where file position is after avformat_seek_file) and discard if they are before requested frame number. This, of course, requires additional processing time. All calculations are in FFmpeg's AV_TIME_BASE units.