VideoClock

From wiki.jriver.com
Revision as of 21:05, 23 January 2012 by Matt (talk | contribs)
Jump to navigation Jump to search

Overview

Using VideoClock, you can achieve ultra smooth video playback. VideoClock makes minor adjustments to the rate of audio playback so that video is played in perfect sync with your display's refresh rate.

You can enable VideoClock in Options > Video. VideoClock, like other audio features, is not available when bitstreaming audio.

Technical Description

When playing a video, many factors combine to produce the synchronized audio and video. To maintain the lip-sync between audio and video, there is a "clock" that is in control of playback.

Normally this clock runs at normal speed (1.0x). If audio or video drift apart because the monitor or soundcard have a slightly different rates, a clock correction is issued. These clock corrections are called clock jitter, and they will cause the video to pause a little or drop frames.

VideoClock changes this approach. It presents a perfectly smooth clock to the video renderer so that frames are never dropped or paused.

Instead, when lip-sync is slightly out of step, the audio is slowed or hastened. Normally this change is a tiny fraction of a percent and so not perceptible.

Target Ratio (PAL Slowdown)

VideoClock also adjusts the clock rate slightly to achieve an "ideal" ratio between the monitor refresh rate and video frame rate. This ensures, for example, that playing a 23.97 fps movie on a 24.0 Hz display will have a perfect 1:1 relationship. This is done by altering the audio clock by the tiny fraction 23.97/24.00. This removes the annoying occasional video stutter that would happen without this adjustment. The tiny audio change is inaudible.

Compared to ReClock

VideoClock has several key advantages compared to ReClock:

  • Integrated with the JRiver audio engine, so all other features (JRSS, Room Correction, internal volume, etc.) are available
  • Works with all output modes (ASIO, WASAPI, etc.)
  • Talks directly to madVR to determine the monitor refresh rate so the target ratio is _perfect_ when using madVR