ReClock DirectShow Filter


What is it ?
The purpose of ReClock is to definitely get rid of jerky playback of AVI and MPEG material on a PC (or a HTPC driving a TV, a flat panel, or a video-projector). It's a DirectShow filter which is loaded in place of the default directsound audio renderer.
It provides a new reference clock that is locked to the video card hardware clock, in order to ensure that frames are played at the exact speed of what is expected by the video card vertical sync.
It also provides a frame rate adaptator for media files that do not match a multiple of the video card refresh rate (ex: playback of 23,976fps IVTC NTSC on a PAL TV).
The combination of the two will give you the true experience of smooth playback with your PC.
Finally it is an audio renderer with hardware or software rate adaptation in real-time, multi-channel audio, audio timestretching (pal speedup compensation) and dynamic range compression capabilities.
For a full description of ReClock, please read carefully the README file in the distribution. There is also a little FAQ at the bottom of the page that answers common questions.

Known problems and issues:
* Graphedit cannot save a graph with ReClock when ReClock is selected as active reference clock
* Morgan Stream Switcher does not work with ReClock (won't load if ReClock is used)
* Vsync correction will not activate when playback of DVD use DXVA mode

Planned evolutions:

* On the fly AC3 encoding
* Internal audio stream switcher


If you find ReClock useful and would like to make a donation, you would make me very happy !
You can make me happy by using the PayPal secured server with the button below. Thanks again

Changelog and download:

If you are intrepid enough you can try the last beta version available (currently 1.7 beta 4 here). If not, please use one official stable version below.

22/12/2005 - Version 1.6 available here
* you can now allow ReClock to load only with some players/applications. See advanced settings in config app
* the VBS notification script now receive the file name or the DVD mode if playing a DVD
* added a new audio renderer based on "kernel streaming". This renderer access directly your audio card using a WDM interface, and thus completely bypass Windows internal handling of audio that can alter sound quality (directsound resampling, etc...). See config app
* added an indication in "renderers infos" box that indicate if reclock did alter the audio bitstream (for example to resample, timestrech audio or modify dynamic range)
* the old low quality sound resampler has been replaced with a new one that can achieve much better quality. You can now choose between 4 resampling modes (low quality will use little CPU, higher quality will use more CPU). See config app
* audio time stretching support coming from WinDVD have been dropped, since ReClock now have builtin timestretching code that yields better audio quality and is more CPU efficient
* the audio compressor, resampler and timestreching code are now plugins (DLL) that are loaded by ReClock at startup. This is more GPL compliant since ReClock does not need a single line of GPL code to be compiled, and you can now alter those plugins using the source distribution given with ReClock
* you can now bypass the monitor detection in multi-head environnement. It can be automatic as in version 1.4 or you can force ReClock to think it is running on a specified monitor. See config app
* tray icon can be disabled with config app
* built-in framerate estimator is now compatible with Trimension DNM (WinDVD feature)
* improved builtin framerate estimator (less sensitive to cpu load, works better with NTSC DVD)
* added new choices in adaptation menu
* ReClock will no more display a crash dialog when the code responsible of the crash was not in ReClock itself (too many people associated those crashes with problems in ReClock). Crash data will be silently logged anyway, and error will be reported as if ReClock was not loaded
* fixed problem in video card detection at startup in multi-monitor config
* fixed bugs that would lead to a crash when video card detection goes wrong at startup or when resolution change
* fixed a bug in automatic monitor tracking (would not detect that the player window was dragged to another monitor)
* fixed a bug in refresh rate detection that could be false sometimes with some NVidia cards
* fixed a bug in crash situation when the crash dialog that would not always appear leaving the player in some zombie state
* fixed a bug in PCM 32 bits sound handling that would distort sound in some rare cases
* fixed a bug that could cause a crash if event notification was enabled and player was in disabled players list
* reduced dramatically memory footprint of ReClock especially when multichannel audio is played
* compiled with VS2005 and latest SDKs
* other various bugfixes

22/12/2005 - Version 1.5 not available
never released - beta only

25/04/2004 - Version 1.4 available here
* improved multi-head display support. If Windows is configured to make u
se of more than one monitor, reclock will automatically identify on which monitor the playback window is open, and will correct the clock of the video card attached to this monitor. As it is no longer necessary to select an adapter in configuration app this setting have been removed
* experimental support for time stretching (alteration of audio track speed without pitch modification). This support requires WinDVD 5 to be installed, because ReClock will make use of a WinDVD DMO filter to achieve this. Now you can alter playback speed of a movie without hearing a pitch change! There is also an option to correct the pitch of PAL DVD in order to counteract the "PAL speedup" problem. See config app and properties panel for settings
* improved VBS notification with new events (STOP and QUIT) and multi-monitor support. See RunEvent.sample.vbs to modify your script accordingly
* you can now specify by which percentage ReClock is allowed to slowdown or speedup the played media. Defaults are 1% slowdown, 5% speedup
* when ReClock can not find a good media adaptation because refresh rates do not match, it can now be allowed to try other values that will improve playback anyway. The general rule is that if refresh rate x2 or x3 is compatible with the frame rate, then we modify playback speed to better match frame rate (for example play 23,976fps on 60hz at 24 fps which is 60/2.5). Vsync correction will also be enabled and functionnal, but instead of operating on each frame it will operate on each frame out of 2 or 3
* when builtin framerate and DirectShow framerate estimation do not give the same result, ReClock will now use the result of builtin estimation which is always accurate
* you can now prevent ReClock from loading with some players/applications. See advanced settings in config app
* you can now force ReClock to be loaded in PowerDVD 5 (not tested with PowerDVD 4). See config app
* fixed bugs in the event notification that could cause reclock to not take in account settings put by powerstrip, thus corrupting the timings database. See RunEvent.sample.vbs to modify your script accordingly
* improved compatibility with video cards. In case ReClock is not compatible with your card, it will not lock up anymore, but will notify you with an error message inviting you to update drivers or uninstall ReClock
* improved NTSC DVD framerate detection (reclock was hesitating sometimes between 23.976 and 29.970 fps during high CPU load or chapter change)
* improved startup time (faster video hardware calibration)
* improved video hardware clock tracking
* improved option "Give high CPU priority to player" (will improve Vsync stability)
* ReClock will now produce more detailed information in c:\reclock_log.txt in case of a crash. This will help me to investigate problems
* fixed a display corruption problem that could happen when using "Show Vsync"
* fixed issues with WMP9
* fixed flickering tray icon problem when opening Matroska media files
* fixed problems with vsync correction that could get confused by subtitles and closed captions
* fixed a freeze introduced in 1.3 that could occur at startup
* fixed a problem in DirectSound handling
* fixed a rare problem where tray icon would not show and player would not quit properly
* fixed a rare crash on player exit (would show with Media Player Classic sometimes)
* added a workaround for a bug in M-audio soundcards drivers that stopped playback after 2800 seconds
* fixed an error in a formula given in the paragraph "How to optimize SPDIF output" of the readme (thanks to Mars1 !)
* revamped the configuration application to occupy less space on screen (useful when in TV mode)
* updated the NSIS installer for smaller setup size and setup corruption checkup
* DirectX 9 is now required to run ReClock

23/12/2003 - Version 1.3 available here
* depending on how the DirectShow graph was built, ReClock could sometimes no detect that a video stream was present in the file. Thus it could not determine frame rate in this case. Fixed
* fixed a problem with seeking not working with Elecard demuxer and HD MPEG2 files. There is still a problem with sound but this bug is not caused by ReClock
* compatibility with more video chipsets (should work with EPIA based hardware now)

10/10/2003 - Version 1.2 available here
* changed the way media frame rate detection work. It can use DirectShow builtin methods (like before), or internal methods based on frame presentation to the video renderer (as DirectShow is not always accurate). Internal methods being based on the VSync monitor, it is now enabled and can not be disabled. I will not use the term "Vsync monitor" anymore, but "Vsync correction" for the part of it that control the frame presentation to the video renderer. See config app and readme for details
* features that are provided by the former VSync monitor are disabled on Win9x, until i find why they crash on this OS. So you won't have DVD frame rate detection or VSync correction on win9x systems
* VSync correction can now be enabled/disabled separately for VMR9 and other video renderers (as VMR9 has some sort of identical mechanism that can fight against ReClock). See config app

* added support for audio cards (like Vortex2) that don't support new WaveFormatExtensible multichannel audio format. See "accept old multichannel formats" in config app
* ReClock can now be loaded in place of the default DirectSound/WaveOut Microsoft audio renderers, even if the application request to load one of those. This allow more players to use ReClock even if they don't want to (like Windows Media Player for DVD, or Windows Media Center Edition). Be careful with this option because it will tweak the registry, so you'd better use it only on a dedicated PC. See config app to enable this feature. Also i had to remove the Enable/Disable ReClock quick access menus that are incompatible with this modification
* properties panel now give informations about video size and format
* hopefully fixed audio dropouts that could occur when starting playback especially with DVD
* fixed a random and nasty freezing problem that would happen when playing a DVD (especially a NTSC DVD). As a consequence, frame rate detection for PAL & NTSC DVD's is now based on internal methods only, so DXVA will be a problem if you use it
* fixed another even more ugly freezing problem that could randomly happen just after starting playback (especially with a DVD)
* fixed a bug that was causing garbled sound in PCM IEEE float format (especially with .ogm files and also with AC3Filter)
* fixed DVD default frame rate entered in config app that was not working since version 1.1
* fixed unwanted sound skips or pauses that could happen during playback while switching between different frame rates that were compatible with the current refresh rate (for example between 23.976 and 29.970 during NTSC DVD playback at 120hz)
* added more media speed settings
* updated the readme with new informations (worth reading)

20/07/2003 - Version 1.1 available here
* ReClock does now support the full range of PCM audio formats (8/16/24/32 bits PCM, and IEEE float PCM), with dynamic range compression available in all modes (except SPDIF of course)
* you now have the choice to use either DirectDraw (like in pre 0.99k versions) or Direct3D (version 0.99k and later) to gather clock information from the video card. See config app for the settings
* the green tray icon will now flash between green/red when the clock correction is not yet stable (until stability goes under 10 ppm). This warns you that playback is not yet smooth
* modified ReClock to help HTPC users to obtain better results in SPDIF mode. The FAQ on my website will be updated soon on how to do this (using Powerstrip)
- the properties panel now display the real video refresh rate detected by ReClock (which should be very close to the refresh rate displayed by Powerstrip)
- changed automatic media speed adaptation, which is now based on this real video refresh rate
- in SPDIF mode, ReClock will now display how many AC3 frames were dropped or repeated
* automatic frame rate detection for NTSC DVDs (should detect 23.976 and 29.970 material), and more media files types (MPEG2 for example). You need to activate the Vsync monitor for this detection to work
* ReClock will now give you an estimation of a media frame rate when it can not determine it exactly (this will help you to choose frame rate manually)
* ReClock can now notify events to external applications using a Windows script provided in the distribution (for example to change the monitor refresh rate with Powerstrip). See RunEvent.sample.vbs in the ReClock install directory for more explanations and a sample. To use it, rename it to RunEvent.vbs, modify it for your needs, and don't forget to enable notifications in the config app
* solved a video refresh rate detection problem with GeForce2 Go chipset
* changed the video mode change detection method (when you change resolution and/or refresh rate). This suppress the delay
* fixed a bug with properties not displaying properly in ZoomPlayer with multiple audio stream
* added some sanity checks (some users report division by zero errors)
* updated the NSIS installer (old one was having trouble with big hard disks)

06/07/2003 - Version 1.00 available here
* you can now choose if ReClock will be used as default audio renderer or not with the config app. If you do not choose to use it as default renderer you will have to specifically choose ReClock in your player (ZoomPlayer and Media Player Classic can do that)
* improved sound handling in PCM mode
* tweaked again pre-buffering time and latencies to be compatible with most sound cards. Values are now 500ms, 20% latency for PCM and 5% for SPDIF
* better automatic media adaptation. ReClock will now try to make a speed match for more "exotic" refresh rates
* improved system clock correction algorithm especially when a huge correction is needed (for example when you create resolutions with a non round refresh rate with Powerstrip)
* vsync monitor should now be compatible with win98/me
* vsync correction is now desactivated when "slave reference clock to audio clock" is used, since it is useless in this case
* added new buttons in the config app to clean-up manually entered refresh rates database and video timings database
* other minor improvements

01/05/2003 - Version 0.99k available here
* this version contains major changes and numerous bug fixes related with crashing/freezing. To solve those problems, i had to switch to the Direct3D API instead of DirectDraw to gather clock informations from the video card. It helped solving those specific bugs :
- TheaterTek Player freezing with ReClock as SPDIF renderer
- crash with Overlay Mixer renderer and a DVD played with Cinemaster decoder filter
- crash/lockup using the vsync monitor on Radeon videocards (instant lockup with all players, all files)
- lockup sometimes during DVD playback (leaving menus or going back to menus)
* fixed memory leaks (thanks Gabest !)
* fix for sound muted in SPDIF mode with Cinemaster audio decoder
* fix for crashing when changing resolution/refresh rate while reclock was playing
* fix for garbled display with vsync monitor and NTSC DVD playback
* vsync monitor is now disabled when using BSPlayer which is incompatible with it (BSPlayer use a specific renderer filter)
* improvements to the vsync monitor. As it's no more considered experimental, it is now enabled by default :)
* restricted media subtypes registered by the renderer (should speed up opening files)
* logging is now disabled by default
* changed default audio pre-buffering time from 500 to 250mS
* many other things i don't remember

27/04/2003 - Version 0.99j available here
* finally fixed the problem with C-Media based soundcards and SPDIF ! To make SPDIF work, check "Use waveOut for SPDIF" in config app, and in the C-Media mixer app, remember to enable SPDIF output and choose 2 channels mode (just as you would do to enable SPDIF in WinDVD). I also suggest you to use the latest reference drivers (6.43) available here
* The VSYNC monitor can now be controled directly from keyboard :
- SHIFT+CTRL+ALT+F9 will show/hide the monitor
- SHIFT+CTRL+ALT+F10 will enable/disable the tearing test mode

- SHIFT+CTRL+ALT+F11 and F12 will allow you to control the whished VSYNC position window
* you can now lock "media adaptation" in the properties panel with a checkbox. This prevent ReClock to choose a media speed if you don't want to
* as a workaround for the "no sound at all during playback" issue i have removed some code introduced in version 0.99h that handled sound desync problems. I'll put it back when i'll found a solution without side effects
* tray icon colors could be confusing sometimes. Now "green" truly means "all is fine", "yellow" means "check you refresh rate", and "red" means "i didn't found framerate"
* fixed a bug that could cause automatic media speed adaptation to be wrong in some rare cases
* other small adjustements on reference clock implementation

30/03/2003 - Version 0.99i available here
* fixed no sound problem with ac3filter 0.66b, and sound cutting problems with some media files
* completely rewrote the Vsync monitor. It is improved and now compatible with DVD playback but still experimental. See configuration app and readme for more informations

* added a switch to give high priority to the media player. It gives good result on my system when i want to play a video with some background tasks
* fixed the properties panel truncation problem with large fonts enabled
* the renderer information is now correct in all cases (was wrong for example in ZoomPlayer)
* fixed some problems when audio format was dynamically changed during playback
* more accurate informations in "media adaptation" group box
* other things i don't remember

15/03/2003 - Version 0.99h available here
* experimental and limited support for the correction of vertical sync and frame arrival synchronisation issues that would give jerky playback sometimes. Please see README for instructions
* more clever media speed auto adaptation (not milited to PAL/CINEMA/NTSC). Any media with a refresh rate of X +/- 2% will be reclocked if X is a multiple of the monitor refresh rate.
* you can now specify a default frame rate in configuration app for files on which ReClock does not find frame rate.
* rewrote the sound sample drop/repeat algorithm. Hope it's better than previous version
* fixed sound pitch or desync issues with some funny audio streams
* fixed sound volume knob not working in BSPlayer (and surely other players as well)
* fixed a problem with input pin search by name (related to graph problems with ZoomPlayer)
* fixed another problem with graph load/save in graphedit (you may need to remake your ZoomPlayer graphs)
* experimental compatibility with Radeon interlaced modes used to drive directly a PAL TV through SCART using VGA output (please see here)
* fixed a crash that could occur while reading a NTSC DVD
* no more creation of empty logfile when logging is disabled

14/02/2003 - Version 0.99g available here
* mostly fixed sound skipping problems when CPU is occupied with other tasks
* made sound pre-buffer size a setting in the configuration app. Default value is 500ms (was 250ms in version 0.99f). Using a lower value will make seeking faster but will make sound more prone to skipping. Also, latencies values are now expressed in percentage of pre-buff time instead of ms. Installer of this version will put default values of 20% (100ms)
* smoother clock correction code (hope nothing is broken ...)
* added a "mute sound" checkbox in properties to help handle multiple audio streams (Morgan Stream Switcher does not work with ReClock)
* fixed a crash when seeking with PowerDVD audio decoder build 2417
* changed video card refresh rate detection code to better accomodate exotic refresh rates created with PowerStrip
* fixed some sound skipping problems with SPDIF when using DirectSound only
* changed debug logging. Was causing CPU hog in some cases thus perturbing sound (maybe because of some virus scanners that were scanning all the log each time a line was added)

25/01/2003 - Version 0.99f available here
* fixed incompatibility in SPDIF mode with latest PowerDVD audio decoder (build 2417) and TheaterTek audio Decoder (Cinemaster)
* fixed the graphedit load/save problem (loading was not possible). However the fix make ReClock incompatible with Media Player Classic when you use the built-in audio switcher (ReClock won't load). If you use such a configuration, please update MPC to version or later which correct this
* fixed muted sound problem when streaming with DX9 and DirectSound
* added a configuration app which add many new features:
- you now have the choice to use either WaveOut or DirectSound for PCM or SPDIF audio. For users with problems with SPDIF this may be a solution. For WaveOut "hardware resampling" is not available
- you can choose what audio device is used for both WaveOut and DirectSound
- you can tune the maximum latencies for PCM and SPDIF output
- you can choose what video device is used for the video clock
- you can specify what default frame rate to use when reading NTSC DVD for which the frame rate has not been entered
- you can enable/disable logging
* added a group box with video (overlay, VMR, etc...) and audio (WaveOut, DirectSound) renderer informations
* small other fixes

16/01/2003 - Version 0.99e available here
* fixed problems with sound in AC3 SPDIF mode (playback stopping, garbled sound when seeking media, sound desync)
* fixed a possible crash condition with DVD playback
* small other fixes

14/01/2003 - Version 0.99d available
* now compiled using Direct 9.0 SDK but still compatible with DX8. By the way i *HIGHLY* suggest you to upgrade your system to DirectX 9.0. I spent many hours trying to figure out a bug using DirectX 8.1 which indeed was a DX bug fixed by DirectX 9.0.
* the setting "disable clocks correction" has been renamed to "slave reference clock to audio" and the code for this has been rewritten both for PCM and SPDIF. Using this setting, ReClock will act much like the default audio renderer (ie it will make its clock run in sync with audio), but with a much smoother clock adjustement technique. It should allow a better playback of media files in AC3 SPDIF mode. But remember that using this setting will remove the anti-jerk capability of ReClock (because the reference clock is no more synced to video hardware).
* the latency or fullness indicator of the properties panel has been replaced by a sync indicator (0ms means audio is in sync, <0ms means audio is late, etc...) for both AC3 and PCM output
* added video stream detection. Now, when no video is detected, reference clock is slaved to audio, no speed adaptation is performed, and no sound resampling is made. This ensure audio files are played properly without any artifacts.
* rewritten most of the sound buffering stuff. The SPDIFLatencyMin/Max registry settings are gone. They are replaced by MaxLatencyPCM (for PCM) and MaxLatencySPDIF (for AC3 SPDIF). Those latency settings are the maximum desync allowed for the sound (in units of mS)
* pitch problem with sound wasn't completely gone with previous version. Should be better now (but still not perfect)
* at last fixed the looping sounds problem with DVD playback (with ZoomPlayer for example)
* added a frame rate cache in registry. ReClock will now retain manually entered frame rates. Does also work for NTSC DVD
* added support for multiprocessor systems
* fixed a minor problem with the DRC when playing a new file
* changed tray icon colors behaviour (see readme)
* fixed a possible crash when hardware support was not sufficient to run ReClock
* fixed a crash with BSPlayer

09/01/2003 - Version 0.99c available here
* added a tray icon to display properties and change settings. Useful on media players that do not give access to filters properties (like Windows Media Player)
* fixed the pitch problem with sound when starting playback of a file (especially DVD), or when seeking, or when changing speed. Also, sound clock correction is now much smoother
* fixed refresh problems in property page
* changed the way frame rate automatic speed adaptation is made when AC3 SPDIF is used. No media near 24 fps will be speeded up to 25 fps if refresh rate is a multiple of 25 hz, because this was causing too much audio skips on SPDIF output. The new rules for AC3 SPDIF are: near 24fps go to 24fps, near 25fps go to 25fps, near 30fps go to 30fps
* fixed a registry load/save problem when multiple user accounts where using ReClock on win2k/XP
* should be compatible with more soundcards in AC3 SPDIF mode
* added menu entries to enable/disable ReClock as a DirectShow filter
* added menu entries to enable/disable ReClock logging in c:\reclock_log.txt
* added "nearest integer frame rate" adaptation (ex: playing 23,976fps file at 24fps or 25,002fps at 25fps)
* added registry tweaks to change the min/max latency in AC3 SPDIF mode. See SPDIFLatencyMin and SPDIFLatencyMax in HKEY_CURRENT_USER/Software/ReClock/Config. You can set values between 1 and 9 (one unit is 32ms). Default values are 1/4
* in AC3 SPDIF mode, "fullness" is now replaced by a latency indicator in the properties page
* added a Donate button via Paypal :)

02/01/2003 - Version 0.99b available here
* corrected a huge memory leak in AC3 rendering mode
* made a workaround for a bug in the latest XViD decoder filter ("invalid floating point operation")
* removed automatic frame rate detection for NTSC DVD, because i found no way to distinguish 23,976fps and 29,97fps content. So it's better to let the user choose
* other minor corrections

31/12/2002 - Version 0.99 available here
* added automatic frame rate detection for PAL & NTSC DVD discs. Not tested for NTSC (i don't have any NTSC disc)
* experimental support for AC3 pass trough (using waveout interface). As AC3 cannot be resampled, i had to find another way to resync audio with video. This version repeats or drop AC3 frames sometimes in order to stay in sync.
* once again changed registry format and clock estimation code to allow more videocards to work (ATI Rage Fury)
* divided sound latency by 2 (allow faster seeking)
* startup of media files should be faster
* no more waiting when opening a new file when the media player is already open. Very apparent when dragging a list of mp3 on WMP
* less reference clock jitter when clock correction is disabled
* successfully tested on win98
* fixed a lockup that occurred on slower PCs during clock estimation (<=800mhz)
* fixed another threading/deadlock issue that was occuring while opening a media (DirectShow is a real nightmare you know)
* fixed a serious bug with DVD media that could cause the clock to stay uncorrected
* fixed a bug introduced in 0.98c that was cutting sound in some cases

28/12/2002 - Version 0.98c available here
* fixed another threading/deadlock issue. It should solve some of the problems reported

22/12/2002 - Version 0.98b available here
* fixed a bug with Radeon videocards, when ReClock confused NTSC and PAL in TV mode giving bad clock correction (this could happen with other videocards too)
* updated the manual about tips on how to use ReClock with dual head videocards (Radeon for example)
* fixed potential registry load/save problems

18/12/2002 - Version 0.98 available
* tweaked the DRC and added some settings (light -same as 0.97-, normal, and strong)
* fix for bug "playing an AC3 file without video in graphedit with AC3filter give bad sound"
* fix for noises, clicks, or pops while seeking a media file
* fixed another threading/deadlock issue
* less cpu overhead in sound processing with hardware resampling
* the looping sound when accessing root menu on DVDs with Intervideo DVD Decoder was not a ReClock issue. It has been fixed at least with Media Player Classic (thanks Gabest) starting with version BTW Media Player Classic is my prefered player with ReClock, because it's simple, efficient, reliable, full featured, and allow to use ReClock to resync DVD's
* other small bugfixes
* as ReClock use some modified GPL'ed source code, i now release them in the package, and mention them in the about box

15/12/2002 - Version 0.97 available here
* added a checkbox to disable clocks correction. This disable all clock adaptation capabilities of reclock. This way you see what are the effects of reclock on video
* again rewritten completely the video clock frequency estimation code to work around badly implemented video drivers (i815, Matrox) or drivers confused by other software that touch videocards internals (TVTool with GeForce2/3/4). This code has been tested successfully on GeForce and Matrox cards (thanks Jasmin !)
* more accurate system clock correction
* fix for looping sound when accessing root menu on DVDs with CyberLink DVD Decoder (for example in Media Player Classic)
  However problem still exist with Intervideo DVD Decoder
* fix for freeze when changing resolution and/or refresh rate
* logging: this version will log in c:\reclock_log.txt. If you found a bug please send me this log with your bug report. I'll remove logging in 1.0

11/12/2002 - Version 0.96c available
* fix for non playable audio files (11025hz, 16 bits, mono), or audio files that could have channels swapped
* fix for inaccurate video clock frequency estimation on slow computers, or video cards with bugs in drivers (i815)
* should have less DirectSound overhead
* drc/hardware resampling are now save/retrieved in registry as global settings. They no longer depends on each resolution/refresh rate
* comestic fixes

10/12/2002 - Version 0.96b available
* fix for AC3Filter this time in 2 channels mode
* fix for incorrect volume/pan restore when switching between hardware and software resample

09/12/2002  - Version 0.96 available
* added a combo box to enter manually framerate when it cannot be detected
* added an option to do sound resampling with hardware insted of software
* really fixed (cross fingers) multi channel sound with Intervideo DVD Audio Decoder 

08/12/2002  - Version 0.95c available
* fixed multi channel sound with Intervideo DVD Audio Decoder 

07/12/2002  - Version 0.95b available
* fixed a deadlock bug that occured when playing with sounds options within Media Player Classic
* fixed another bug when rate change based on frame rate was permitted when frame rate was unknown 

07/12/2002 - Version 0.95 available
* added support for more than 2 channels (multi-channel). ReClock can now render sound with 4 speakers, or 5.1 channels, or whatever combination you want with more than 2 channels 

06/12/2002  - Version 0.94 available
* added dynamic range compression for sound! You can enable or disable it with the properties panel. There is some tweaking to do but it work quite nicely right now. DRC is not available on 8 bits sound (who cares ?)
* you can now change resolution or refresh rate while ReClock is running (for tvtool users). It will then adapt to the new video clock rate properly
* revamped completely the sound correction code. This fix many problems (garbled sound sometimes with some 1 channel 8 or 16 bits media, sound becoming crazy when using manual override, etc...)
* fixed bug when rate change based on frame rate was permitted when frame rate was unknown
* disabled ReClock on PC on which system clock is based on a processor counter (ie multiprocessor systems) 

03/12/2002 - Version 0.93
* more precise clock, and better ppm indicator
* added a workaround for microsoft bug Q274323 (;en-us;q274323)
* fixed a bug in clock compensation (only shows with some video cards)
* added more manual overrides
* combobox for manual overrides now retains its settings when you reopen properties panel 

02/12/2002 - Version 0.92 (first release)

* implemented missing volume/balance controls on filter (IBasicAudio interface)
* 8 bits sound support
* better range for resampler (support playing from 0.1x to 10x)
* added a combobox for manual override in 'media adaptation' group box
* better system clock sync after reload from registry
* small bug fixes

Little FAQ:

Q: How can i use ReClock with a dual head videocard ?
A: First of all, if you have a dual head video card (a card capable to display different images on your monitor and on your TV at the same time like a Radeon for example), setup your TV as the primary display. Donít use cloning, or theater mode. Then activate TV-out.
If your card needs a utility (like TV Tool), launch it and activate TV-out.
Then, launch your media player and open a media file, and check that the hardware video refresh rate detected by ReClock is:
- 50 Hz if your TV is in PAL
- 60 Hz if your TV is in NTSC
If the refresh rate detected by ReClock is not equal to the refresh rate of your TV, then either your TV is not your primary display, or ReClock is not compatible with your video card.
Important notice: if you need to adjust the size or the position of the TV image with the control panel of your video card (or TV Tool), remember to quit and restart your media player after you have made your adjustments, because ReClock will need to estimate how the hardware video clock has been affected. If you donít do that, you will experience jerky playback.
As of now ReClock is known to work fine with the following cards:
- GeForce 2/3 cards with TV Tool, or with built-in drivers
- Radeon cards with built-in TV-out

Q: Why is hardware resampling not recommended ?
A: Because some sound cards have limited support for frequency ranges in hardware resampling (the Hercules Fortissimo II for example). But if your sound card can handle it properly, it will give you optimum quality sound.

Q: Is Reclock compatible with Win 98 ?
A: It has been reported that versions 0.98b and higher do work correctly on Win Me. They should work on Win 98. However VSync correction is not yet possible on Win 98.

Q: How can i use ReClock with my DVDs ?
A: Either use Media Player Classic or ZoomPlayer. Media Player Classic will automatically use ReClock. In Zoom Player 3, go to options->DVD, then choose "Customized", and select "Reclock Audio Renderer" in the audio renderers list.

Q: Which DVD filters are compatible with ReClock ?
A: Most of them should be. I have tested AC3Filter, WinDVD, PowerDVD, NVDVD, Elecard, and Cinemaster filters successfully

Q: ReClock does not load with BSPlayer ?
A: Maybe it's desactivated. Go to Options->Preferences->Audio. In Output device, either select "default" or "Reclock audio renderer".

Q: ReClock does not load with ZoomPlayer 3 when i play a DVD ?
A: Go to options->DVD, then choose "Customized", and select "Reclock Audio Renderer" in the audio renderers list

Q: How can I optimize playback with SPDIF output ?
A: A method is given in the readme.

Q: ReClock does not load with ZoomPlayer 3 when i play a DIVX ?
A: Go to Player options->Manual filters, then highlight "ReClock Audio Renderer" in the "Custom Audio Devices list", and don't forget to check "Custom Media Audio".

Q: My DIVX has more than one audio track, and reclock play all the tracks at the same time giving multiple icons in the system tray. What can i do ?
A: You will need to use either Zoom Player 3 or Media Player Classic. In Media Player Classic, go to Options->Audio and check "Enable built-in audio switcher filter". Zoom Player will automatically select only one stream (you can then switch audio tracks with the right-click menu).

Q: Which video cards are compatible with ReClock ?
A: Help me to construct the list! ReClock is at least known to work on Matrox G200, GeForce2/3/4, Intel i815, ATI Radeon, Xabre, Voodoo 5500, and ATI Rage 128

Q: Which video cards are incompatible with ReClock ?
A: The Voodoo 3 is known to have problems

Q: I get the following error : "Load library (C:Program File/ failed >> GetLastError returns 0x0000001f"
A: You must install DirectX 8.1 or later to run ReClock

(c) OGO 2002/2006 Contact : see the readme in the distribution to get my e-mail adress or contact me in the forums of or