VirtualDub change log
--------------- start VirtualDub change log ---------------

Build 14303 (Version 1.4.12):          [November 23, 2002]
   [features added]
   * Parts of the MPEG-1 decoder, some color conversion
     functions, and parts of the resize filter have been
     optimized for SSE2 (Pentium 4).
     
   [bug fixes]
   * Fixed intermittent deadlock during playback caused
     by non-atomic thread synchronization. This affects
     SMP systems as well as CPUs with HyperThreading
     Technology.
   * Fixed Save Image Sequence regression in 1.4.11 that
     caused the directory portion of the dialog to be
     ignored.
   * Fixed broken copyProc support.

Build 14279 (Version 1.4.11):          [October 31, 2002]
   [新機能]
   * TARGA(.tga)の連番読み込み・書き出しサポートの追加。
     ( optional RLE compression )
   * シンプルなロゴフィルターの追加。
   * HSVフィルター(not-quite-optimzed)の追加。
   * "保存(Image Sequence)" コマンドのバッチとスクリプトの対応。

   [不具合修正]
   * Videoの全てのフレームサイズが同じでない場合にOpenDMLファイル
     のインデックスのduration値が不正だったのを修正。
   * いくつかの相関ポジションスライダーの不具合を修正。
   * RLE AVI ファイルの伸張を正しく開始できなかった。
     (GDIのRLEとAVIのRLEは異なる).
   * 逆アセンブラがいくつかの命令の属性を逆アセンブルできなかった
     のを修正。
   * TemporalSmootherの出力の最初の3フレームに含まれる不具合を修
     正。 
   * いくつかの MPEG rounding エラーの修正。(arrgh).
   * AVIパーサが0サイズのLIST/moviチャンクを受け付けるようにした。
   * AVIパーサがファイルの再インデックス時に0サンプルのストリーム
     を落とさないようにした。
   * AVIビデオリーダーが反転したRGB DIBを検出して修正するようにし
     た。
   * "blur more"フィルターの左側の1/16番目のラインが暗くなってい
     たのを修正。
   * フィルターのデータ構造を適切に複製するサポートを追加。
   * ポジションコントロールのフォントを画面のdpiに合わせて少し大
     きくするようにした。また、フォントリソースのリークを修正した。
   * コーデックの設定完了時のMIME BASE64 エンコードエラーを修正した。
     これはいくつかのコーデックでクラッシュするか設定がおかしくな
     る現象を引き起こしていた。
   * Videoコーデックを呼び出す際にMMXのエラーを報告していない。こ
     の背景には、MSMPEG4V3コーデックのバグがあるが、おそらく修正さ
     れることはないだろう。
   * 圧縮WAVのWAV出力で'fact'チャンクを出力するようにした。
   * フィルタープレビューダイアログできれいなフォントで正しいエラ
     ーを報告するようにした。

Build 13870 (Version 1.4.10):
   [新機能]
   * キャプチャーモードで I420/IYUV ビデオにフィルターを適用でき
     るようにした。
   * キャプチャー: "Start on click" 追加。
   * キャプチャー: ファイルの autoincrement 追加。
   * クラッシュ時の逆アセンブラを全面的に書き換えた;
     Pentium4 と Athlon の全ての IA-32 インストラクションをサポー
     ト。
   * スペシャルサポートの追加。DivX 5.x B-frame モード。
     注意: 多分インターリーブが少しおかしい。

   [不具合修正]
   * 音量のアジャストが入力プレビュー時に有効になっていたのを修正。
   * dwSampleSizeを、値が不正であっても、ビデオストリーム入力から
     コピーしていたのを修正。
   * ビデオストリーム入力の dwSampleSize!=0 かつ、音声が無い場合、
     AVI2 出力でクラッシュしていたのを修正。
   * "Reset video stream" の確認ダイアログにキャンセルボタンが無
     かったのを修正 ^^;;
   * 何カ所かでフレームレート算出に符号付き割り算を使っていた。
     "can't initialize timer" エラーを修正。

Build 13720 (Version 1.4.9):
   [新機能]
   * キャプチャー: 2^31 us (71m) タイミングの wraparound 
     workaround の追加。2^32 us タイミングのものより良い。
   * エラーメッセージの追加。
   * PentiumIII 命令の追加。

   [不具合修正]
   * 画像読み込みのスキャンライン境界の修正と、不正なフォーマット
     のエラー検出の追加。
   * Ctrl-WでAVIファイルを閉じれなくなっていたのを修正。
   * キャプチャーモードから抜けた後もタイトルバーの表示が書き変わ
     らないのを修正[1.4.8で混入]。
   * Temporal smoother (filter) のウインドウを黒で初期化するように
     修正。
   * 音声がないときに IVTC(3:2プルダウン解除)を行うと最後8フレーム
     を落とすのを修正。
   * LameACM MP3 CODEC がらみのデッドロックを修正。
   * MJPEG デコーダの sfence がらみのクラッシュと復号時のエラーを
     修正[1.4.8で混入]。
   * 再圧縮[高速]がフレームサブセットをキーフレーム境界に合わせて
     いたのを修正。
   * "ストリームのエラーをスキャン" が時々、修正したフレームをマー
     クしていなかったのを修正。
   * シーンスキャンが時々見付けたフレームを表示しないのを修正。
   * 3x3 TV filter 使用時にラインの右端に緑色のピクセルが表示され
     るのを修正。

Build 13719 (Version 1.4.8):
   [新機能]
   * Motion JPEG デコーダのフィールドオーダー決定のヒューリスティ
     ック・アルゴリズムの改良。マーカーのリスタートと4:4:4の対応
     をサポートした。
   * サードパーティ製ドライバがMMXステートを返していたため、これ
     までは浮動小数演算が機能していなかった。このような場合、エラ
     ーを返すようにした。
   * ASUS ASV1 driver が Windows NT プラットフォームでクラッシュ
     する問題に対処した。
   * 小さな MPEG-1 ファイルの先頭部分を認識できるようにした。
   * BMP 画像列をロードできるようにした。
   * フレームレート変更をタイムスタンプパネルに反映するようにした。
   * Hex Editor に AVI データフィールドのハイライト機能を追加した。
     (カーソル位置のフィールドをハイライト表示する)
     これはもはや単なるバイナリビュワーではない。
   * キャプチャー: Luma squish が YUY2 に加えて UYVY をサポート。
   * AVI ハンドラが 不完全なファイルの OpenDML セグメントを回復
     可能にした。また、より積極的な回復方法を導入した。
   * AVI ハンドラが 'bt20' をデルタフレームのないフォーマットとし
     て認識するようにした。
   * VBR MP3 を含む AVI ファイルが引き起こす Audio の同期問題に対
     処するようにした。
   * Video フレームのマスキングと Video ストリーム中の BADフレー
     ムマスク機能をサポートした。

   [不具合修正]
   * Video がロードされていない状態でシークしようとしたときにクラ
     ッシュを引き起こしていた問題の修正。
   * キャプチャー: クロッピング時にノイズリダクションが正しく働く
     ようにした。
   * フレームサーバ使用時の MPEG-1 フレームオーダーのバグを修正。
   * MPEG->AVI変換がストリームヘッダ内の wPriority と wLanguage 
     フィールドがおかしい、と出力していたのを修正。
   * キャプチャー: キャプチャーモード中はモニターとシステムの電源
     断を抑制 (Windows 98/2000)。
   * 生成された script が16K以上の場合に script と job entries が
     おかしくなるバグを修正。
   * script system が codec データから生成された長い文字列を取得
     していないバグを修正。  DivX4 開発チームの報告に感謝する。
   * IVTC が CBR ビデオコーデックのビットレートを 20% 落としてい
     たバグを修正。
   * 元データが type-1 DV ファイルの時、出力ファイルの先頭が 
     'ivas' で生成されていたバグを修正。
   * MMX version のレベルフィルターが奇数幅のBITMAを入力したとき
     にクラッシュしていたバグを修正。
   * AVI ストリームにゴミデータが含まれていた場合に、AVI ストリー
     ムルーチンが停止していたバグを修正。
   * "遅れたらフレームを落とす" 機能使用時にAVIの巻き戻しを行うと、
     時々おかしかったのを修正。
   * IVTC は、4-フレームごとに強制インターリーブを行うようにした。
   * Audio 圧縮ダイアログが audio コーデックの不正確な値を通して
     いたのを修正。また、リアルタイム圧縮時に問い合わせを行うよう
     にした。
   * 無圧縮 Video ストリームが 0 あるいは誤ったサイズフィールドを
     持っているときにクラッシュしたりエラーを起こしたりしていたの
     を修正。
   * キャプチャー: マルチセグメントと info panel 設定を正しく保存
     するようにした。
   * キャプチャー: マルチセグメントキャプチャー時に、互換キャプチャ
     ーモードを制限するようにした。

Build 13130 (Version 1.4.7):
   [bug fixes]
   * Fixed MAJOR bug in MPEG-1 decoder that I introduced
     in V1.4.6 that caused I and P frames to decode
     improperly during a preview/save.
   * Corrected typos and resetting of "rounded" option in
     emboss filter (thanks to Donald Graft).

Build 13110 (Version 1.4.6):
   [features added]
   * Enhanced error concealment in MPEG-1 video decoder
     to reduce picture spew on errors (NOT THE PARSER).
   * "Drop frames when behind" can now drop frames before
     the decoder.  This helps with Huffyuv playback.
   * Capture-mode noise reduction now works with UYVY
     video as well.

   [bug fixes]
   * Fixed that blasted Audio Interleaving bug I introduced
     in V1.4.5.
   * Added sample skip support for audio converter and
     amplifier filters, to prevent long delays when using
     subsets with them.
   * 'Save WAV' now truncates the file if the file you're
     saving over is bigger than the new data it's being
     replaced with.
   * Fixed frame output display not updating when attempting
     to display same frame after changing filters.
   * Fixed audio interleaving dropping out after a preview.
   * Read errors no longer appear interactively, blocking
     batch operations.
   * Attempting to shift in capture mode from 'preview with
     histogram' to overlay mode no longer switches to
     preview mode instead.
   * Fixed problem with hardware accelerated preview in
     capture mode with some ATI video cards.
   * No more of "1057% complete" in Job Control.
   * Changed some of the more embarrassingly bad error
     messages.

Build 12903 (Version 1.4.5):
   [features added]
   * Added DIV5 as yet another MS MPEG-4 V3 hack.
   * Experimental support for hardware UYVY/YUY2 hardware
     overlay when Preview display mode is used in capture.
   * The BT8x8 tweaker is now modeless and periodically
     reasserts your settings as long as it is up.
   * Added workaround for a buffer overflow problem in
     Huffyuv.
   * Fast recompress now works even if no decompressor
     is present (i.e. YUY2 -> MJPG).
   * Added workaround for broken AVI files with negative
     chunk sizes in the AVI header block.
   * New filter: field bob.

   [bug fixes]
   * Fixed menu problems under 95/NT.
   * Recompressed executable with newer version of UPX
     -- should fix NAV problems.
   * Added short-circuit code for AVI parser to avoid
     bombing on crud at end of some files.
   * Fixed broken 16-bit mono to 16-bit stereo
     conversion.
   * Filters are no longer reset when scrolling via
     keyboard shortcuts (Jason Haitsuka).
   * Levels filter now saves Y/RGB setting properly.
   * Fixed capture window vanishing with "stretch to
     window" set and "info panel" unchecked.
   * Fixed some problems with the hex editor.
   * Fixed the cropping dialog from coming up with
     the post-crop size.
   * Changed histogram in Levels filter to use luma
     instead of RGB, and removed bilinear filtering.
   * Video timing is now propagated properly through
     lagged filters (temporal smoother).
   * Script variables may now have numbers in their
     names.
   * No longer crashes if you specify a path without a
     filename on the command line.

Build 12667 (Version 1.4d):
   [features added]
   * Added HFYU (Huffyuv) to list of codecs that do not
     have delta frames.
   * Added code to prevent AngelPotion from improperly
     accepting all formats for which there is no valid
     codec in the system.
   * You can now tweak some choice BT848/878 registers
     (i.e. full luma range!!) if you copy the dTV drivers
     into the VirtualDub program directory.
   * Hex viewer now has limited editing capability.
   * Added option to squish luma range for YUY2 captures
     on the fly to alleviate "white out" problems.
   * Filters can now lag behind, like IVTC.
   * Resize filter now supports interlaced resampling.
   * You can now also select one channel rather than
     mix both channels when converting stereo to mono.
   * Frameserver mode hides the main window now.
   * One word: amplify.
   * Avisynth 1.0b+ errors are detected as errors, so
     VirtualDub won't produce processed errors anymore.
   * Type-1 DV files are supported.  VIDEO ONLY!
   * New "temporal smoother" filter.
   * Some more keyboard shortcuts added, and tooltips
     for the main screen for all you wimps. :)
   * Alt-Left and Alt-Right scan by 50 frames, and the
     default step value for paging in the position
     trackbar is also now 50 frames instead of two
     inches.
   * Additional values and methods are exported to
     scripts.
   * Preview mode can now do interlaced display as well
     as progressive display.  (Requires very fast CPU!)

   [bug fixes]
   * Fixed problem where capture mode wasn't adequately
     correcting for sound card error.
   * Audio section of File Information no longer counts
     up indefinitely on Avisynth scripts.
   * Avisynth scripts shorter than 12 bytes can be
     opened.
   * Spill drive thresholds are properly treated as
     megabytes and not kilobytes.
   * Fixed a couple of issues in the crash handler that
     were causing useless double-crash dumps.
   * Fixed dwSampleSize=0 incompatibility with audio
     streams from Canopus utilities.
   * Hex viewer now works in Windows 95.
   * Rekey warning no longer appears in batch mode.
   * IVTC settings are now saved properly in scripts.
   * Added workaround for codecs that crash on zero byte
     frames (ASV1, VCR2).
   * Filter crop dialog now shows the right size input
     frame (the image is still approximated, however).
   * Added checking for uncompressed frames to avoid
     crashing on short frames.
   * "Rekeying not specified" warning no longer appears
     for video formats known to have no keyframes.
   * Fixed 24-bit MMX YUY2-to-RGB conversion.
   * Subpixel accuracy problems and the occasional line
     of garbage on the right border from the resize filter
     have been fixed.
   * MRU list is no longer case sensitive.
   * Fixed precision issue when doing high upsampling,
     such as 8KHz to 44KHz.
   * Fixed video codec handle leak in video compression
     dialog.
   * Loading an OpenDML segment no longer keeps legacy
     files from appending after it.
   * Fixed crash during multisegment video capture under
     high CPU load.
   * Added workaround for disk drivers that do not support
     unbuffered I/O.
   * MJPEG split was causing some crashes if you sourced
     a multisegment AVI clip.
   * AVI output function wasn't padding frames to quadword
     boundaries properly in capture mode.
   * Hex viewer (editor) no longer locks files.

Build 11759 (Version 1.4c):
   [features added]
   * New filter: box blur.
   * Levels filter can now work in YCC space to avoid
     altering saturation.
   * Interface notifies you when multiple input files have
     been loaded.
   * "Add filename extension" is now on by default (this
     won't change anything for those who already saved
     their settings in Preferences).
   * Added workaround for broken DivX audio hacked codec
     which comes up with no name above the PCM codec in
     the audio codec list.
   * Added check and warning for DivX drivers.
   * VirtualDub now warns and deletes multisegment files
     already on disk on a save, preventing old and new
     saves from mixing.

   [bug fixes]
   * Lengthened some job system buffers to handle long
     filename issues.
   * Levels control now sets the cursor -- no more I-beam
     when trying to change input levels.
   * Fixed a problem which caused multisegment saves with
     video compression to break.
   * MPEG layer III correction is now disabled on multi-
     segment saves to avoid errors on join.
   * Fixed interleaving when saving a file with IVTC
     enabled and audio interleaving in per-ms mode.
   * Job system no longer writes out filenames as all
     C-escapes.
   * Fixed the noise reduction in capture mode, AGAIN,
     since I brought the old code into 1.4b by mistake.
   * Fixed a potential crash with the levels filter.
   * Fixed "copy output frame" command when an in-place
     filter with clipping is last in the filter list.
   * Fixed a nasty frameserver bug that caused crashes on
     certain audio reads.

Build 11636 (Version 1.4b):
   [bug fixes]
   * Fixed a critical problem which caused multisegment
     joins to corrupt data on read, leading to -100 errors
     or corrupted output files.  (Thanks to Alan
     Cuthberson)
   * Reverted to old video capture synchronization system
     (thanks to all of you who moaned and bitched ;-)

Build 11617 (Version 1.4a):
   [features added]
   * Trying an alternate capture audio synchronization
     method.  Let me know how it works.  Hopefully, it'll
     drop fewer frames.
   * Added ATI 'VYUY' as a synonym for YUY2 in capture
     mode.

   [bug fixes]
   * Fixed stupid video rate dialog bug that always forces
     the video frame rate mode to 'correct'.  (Thanks to
     'MsManiac')
   * Fixed internal MJPEG driver not being able to open
     anything.
   * Fixed noise reduction in capture mode (thanks to Eric
     Warnke).

Build 11583 (Version 1.4):
   [features added]
   * Hold down SHIFT when scanning through frames to snap
     to the nearest keyframe.  Necessary for MPEG-4.
   * Avisynth scripts are now detected as AVI files and
     automatically opened using the AVIFile system.
   * Frameserver: AVIFile frameclient now supports proxying
     Avisynth scripts as .AVI, if they begin with
     "#avisynth".
   * Added workaround for 71-minute capture problem that
     affects V2.3 of the Hauppauge capture driver.
   * Added limited read-only support for Matrox MPEG-2
     OpenDML format.
   * "Show Decompressed Output" is now disabled by default
     since it impacts compression speed.
   * VirtualDub now parses and decodes MPEG-1 layer I
     audio.
   * Frameserver now supports frame deletes.
   * Enhanced IVTC algorithm, thanks to Samuel Audet.
   * Special IVTC algorithm to recover progressive frames
     from deinterlaced source.
   * The video format and handler FOURCC codes of a video
     file can now be independently changed.
   * Deinterlace filter now allows field folding and
     unfolding, to allow video filters to operate in quasi-
     interlaced mode.
   * Added detection of additional CPU extensions.
     (Note: They aren't used yet.)

   [optimizations]
   * Optimized MJPEG decoder core... again.
   * Precise bilinear and precise bicubic modes of resize
     filter (MMX) slightly sped up.

   [bug fixes]
   * Capture: NT/2000 timer correction has been removed
     (seemed to be subtly mucking up timing).
   * Frameserver: Aliasing bug causing video stream to
     indicate original codec has been fixed.
   * Fixed clipping in levels filter when input range is
     shrunk from (0-255) (thanks to Matt Heaney).
   * Spilled capture with audio disable no longer crashes.
   * Appending motion-JPEG files with one of the split
     options enabled now works.
   * Fixed some compressors not allowing quality setting
     changes.
   * Fixed capture time limit getting frozen with Internal
     capture.
   * Fixed 16-bit mono-to-stereo conversion (thanks to Jim
     Leonard).
   * VirtualDub now releases the lock on its plugins
     directory once it has finished autoloading.
   * Fixed spill system not switching files with audio
     absent.
   * Spaces now work in command-line loading.
   * Fixed broken capture log display option.
   * Added workaround for DirectDraw acceleration under
     NT/2K for input overlays.
   * Fixed spill drives getting multiply loaded and added
     to list.
   * Dragging a file onto VirtualDub now resets the
     filtering system.
   * The first file is closed as soon as possible during a
     multisegment write.
   * Y41P is now available for capture clipping.
   * TV, levels, fill, field swap, deinterlace, and invert
     filters now crop properly.
   * No longer reports "unexpected end of file" on video-
     only MPEG files.
   * Fixed Access Violation in smoother filter if noise
     prefilter and clipping were used.
   * Multisegment writes work on files with no audio.

   [misc changes]
   * "Temporal softener" has been renamed "motion blur."


Build 10805 (Version 1.3d):
   [thanks to Microsoft]
   * Support for ASF and MPEG-4 V3 has been removed at the
     request of Microsoft.  I can't tell you how disappointed
     I am at this, but Microsoft says they have intellectual
     property rights, and I can't do anything about it.
     This makes me very sad.

   [features added]
   * Added Matrox dmb1 to motion-JPEG detection.

   [optimizations]
   * Removed FlushFileBuffers() call in AVIOutput.cpp --
     this should improve file switching performance in
     capture mode.

   [bug fixes]
   * Capture: Internal mode no longer stomps on BITMAPV4
     gamma information -- fixes Pinnacle DCxx problems.
   * Fixed MPEG-1 P-frame random access decode errors
     (thanks to John Lynch).
   * Writing segmented files in Direct Stream Copy mode
     uses the correct segment size, and not half.
   * Static version of general convolution filter no longer
     inverts filter kernel.
   * Fixed rounding problem in 2:1 bicubic kernel (thanks
     to Ben Rudiak-Gould).
   * API: Fixed problems with aborting in startProc (thanks
     to Donald Graft).
   * API: Fixed FilterStatusInfo not being filled out in
     all circumstances.

Build 10740 (Version 1.3c):
   [bug fixes]
   * WAV replacement audio works again.
   * Frameserver code now supports frame size changes
     properly.
   * Fixed frameserver client proxy mode under Win95/98.
   * No longer crashes if you load a config file without
     a video file loaded.
   * Moved tab stop over on audio compression dialog, so
     that audio codecs with really long format names will
     fit.

Build 10728 (Version 1.3b):
   [features added]
   * Added additional checks to MPEG-1 decoding.
   * Seek to dropped frames, and selection endpoints.
   * Range selection and cut selection are now the same.
   * Added active preview to smoother filter.
   * Added autodetection for some "not quite MPEGs."
   * Added clipping during capture.
   * MJPEG decoder understands PICVideo 4:2:0 encoding now
     (but still not 4:1:1).
   * New experimental inverse telecine algorithm.
   * Input and output frames can be swapped.
   * Filename can be specified on the command line.
   * The Append option now allows auto-adding multiple
     segments by sequential filenames.

   [bug fixes]
   * Capture: Added special case code to exactly hit 29.97
     fps (NTSC).
   * Capture: Windows95/98 timing correction has been killed.
   * Capture: Fixed some overdraw problems with overlay.
   * Smoother filter doesn't smush everything over with 0
     threshold in MMX mode.
   * Filter preview and sampling now obey cuts.
   * Fixed memory leak with filters requesting GDI DCs.
   * Fixed TV I/Q 5x5+t/s filter (stupid, stupid, stupid bug).
   * Fixed short progress bars during some operations.
   * Filter API: Last frame buffer works properly.
   * Capture: Histogram modes have better compatibility.
   * VirtualDub's internal YUY2 driver doesn't show up in
     the compression dialog after capture mode anymore.
   * Fixed corruption & segmenting problems with audio
     sampling rate conversion filter.
   * Fixed MJPEG field swap option.
   * Window sizing now affects dub mode as well.
   * Segments aren't lost if you append after doing cuts.
   * Capture: Preview w/ Histogram is more stable.
   * Video direct stream copy with MPEG-1 input isn't allowed
     anymore.
   * Audio track sources are now saved properly in batch
     entries.
   * Fixed audio offset problem with compressed audio if
     you delete frames and use an output range.

Build 10015 (Version 1.3a):
   [bug fixes]
   * Fixed funny "x" dialogs popping up on crashes.
   * Fixed MPEG-1 crashes caused by errors in audio streams
     (STOP USING COPY /B TO JOIN FILES!!!!)
   * Fixed test capture crashing.
   * Changed average video rate back to fps instead of us.
   * Fixed 2:1 reduction not reducing file size on
     uncompressed captures.
   * Fixed divide-by-zero errors if you aborted a capture
     in less than 1/2 second.
   * Fixed disk space checking/file extension code.
   * Fixed a bug in the MJPEG code that caused crashes for
     frames with extremely high quality macroblocks (all
     64 coefficients).

Build 9924 (Version 1.3):
   [misc changes]
   * Inverse telecine has been disabled.  It's not working
     nearly as well on various sources as I'd hoped, and so
     I've disabled it until I have time to fix it.

   [features added: main program]
   * Direct support for YUY2 in both processing and capture
     modes.
   * VirtualDub can now detect when files are about to
     exceed available disk space and/or the 4Gb FAT32 limit,
     and close the file before the limit.
   * Replaced puny OS audio compression dialog with better,
     BIGGER one.

   [features added: capture]
   * Capture: Implemented video clock adjustment in capture
     mode for better audio/video sync.
   * Capture: Fast field swap (RGB, YUY2, UYVY, YVYU).
   * Capture: Fast noise reduction (RGB8, RGB24, RGB32, YUY2,
     UYVY, YVYU).  (Algorithm courtesy of Steven Don).
   * Capture: Fast 2:1 linear and cubic vertical reduction
     (RGB8, RGB24, RGB32, YUY2, UYVY, YVYU). 
   * Capture: CPU usage detection works in Windows NT/2K.

   [optimizations]
   * Added MMX IDCT routine to MPEG-1 and MJPEG decoding.
   * MJPEG decoding significantly faster.

   [bug fixes: main program]
   * MJPEG mode selections no longer crash if the video
     isn't in MJPEG format.
   * Internal MJPEG decoder now handles output from PICVideo
     and recent Morgan MJPEG codecs.
   * Fixed video filter API causing filters to occasionally
     receive timestamps in us instead of ms.
   * Fixed MPEG-1 packet sync errors caused by improper
     handling of sequence end tags.
   * Fixed slight bias in MPEG-1 motion prediction.
   * Fixed MPEG-1 macroblock skipping at slice start
     [fixes KareKano op].
   * Fixed video compressor confusion when two codecs of the
     same format are installed under different FOURCCs (e.g.
     PICVideo and MainConcept).
   * Fixed intermittent file write corruption on NT/2K SMP
     systems.
   * Filters deinitialized on exit (thanks Joey Liaw).
   * Hitting Cancel on the audio compression dialog no longer
     disables audio compression.
   * Jobs with extended open options work.
   * Smoother filter saves noise prefilter option.
   * Fixed some miscellaneous "Unhandled Microsoft C++
     Exception" crashes that were supposed to be errors.
   * Fixed audio segments getting dropped during preview
     whenever the pipeline stalled temporarily.
   * Fixed the stupid crash requester not saving crashinfo
     files.

   [bug fixes: capture]
   * Fixed capture 'audio relative rate' value going negative.
   * Fixed not being able to disable 'stupid capture driver'
     settings in preferences.
   * Allocate disk space dialog properly shows current
     capture drive.
   * Disk space measurement works with UNC network paths.
   * Segments can now exceed 2Gb.
   * Fixed seek timing errors introduced in capture files
     with compressed audio.
   * No longer crashes when running out of spill drives.
   * Fixed crashing problems when using the 'save compression'
     option with [No compression] or codecs that are
     later removed.

Build 8981 (Version 1.2a):
   [bug fixes]
   * Fixed MPEG-1 quantization matrix loading: corrects
     quality problems with Panasonic MPEG encoded files.
   * MPEG-1 IDCT routine is now IEEE-1180 compliant.
   * Fixed interleaving errors when compressing audio and
     with inverse telecine.
   * Fixed segmented saving stopping at 0.0 fps half the
     time due to rounding error.
   * Changed the interleaving default back to 1:1 per frame.

Build 8892 (Version 1.2):
   [features added]
   * External video filter interface reworked -- video
     filters now have access to bitmap manipulation routines
     and can obtain GDI handles to buffers.
   * Added levels filter - allows brightness, contrast, and
     gamma correction, with preview and histogram.
   * Changed position slider to display frame type
     (keyframe/nonkeyframe for AVI/ASF, IPB for MPEG-1),
     and time in HH:MM:SS.XXX instead of milliseconds.
   * Added field swap filter.
   * Added custom video format dialog to capture.  This
     allows selecting arbitrary frame sizes for cards that
     support them but don't include the option.
   * [EXPERIMENTAL] Added segmented multi-file support.
   * [EXPERIMENTAL] Added 3:2 pulldown removal.
   * Capture mode warns if the capture file is in use.  No
     more mysterious C:\CAPTURE.AVI files. :)

   [optimizations]
   * MMX bilinear resize filter faster, and MMX precise modes
     optimized for 2:1 reduction.
   * Changed interleaving default to 500ms intervals with a
     500ms preload, for smoother Windows Media Player playback.

   [bug fixes]
   * Can now open some AVI 1.0 files between 2 and 4Gb in
     size without "RIFF chunk <4 bytes" error.
   * Segment deletion works with compressed audio.
   * Fixed MPEG layer III 'incomplete frame' decoding bug
     (NekoAmp 1.3).
   * Fixed OpenDML 1.02 (AVI2) output problems with files
     exceeding 4Gb (NTFS only) and video frames exceeding
     512K each.
   * Fixed crashing problems with uncompressed 24-bit
     frames with power of two sizes.
   * Fixed crash when previewing (F5) a file with audio
     compressed at fewer than 5 samples per second.
   * Fixed subpixel offsets between some of the resize
     filter modes.
   * Fixed emboss and general convolution filters (why
     didn't anyone tell me they were broken!?)
   * Test capture mode now activates video compression.
   * Fixed 'wait for OK to capture' option causing weird
     capture settings and crashes.
   * Fixed difficulty switching between compressed and
     uncompressed Internal capture.
   * Fixed crashing on 'Perf' status tab.
   * Now disables display low-power and power-off properly
     during capture, thanks to Berrie Bloem.
   * Microsoft Video 1 compression now works (oops).
   * Fixed audio device getting locked silent when errors
     occur while starting preview.
   * Fixed audio desync effects when using frame rate
     decimation with files having odd speed fractions (10/1).
   * Fixed MPEG-4 codec behavior for builds 3845 and 3918.
   * Fixed minor B-frame accuracy bug in MPEG-1 decoder.


Build 7713 (Version 1.1):
   [features added]
   * Began adding active preview to filter system; only
     resize filter supports it right now.
   * Capture: On-the-fly filtering for uncompressed
     RGB captures.
   * Capture: Running histogram during preview, even
     through dialogs.  (May not work with some MJPEG
     cards.)
   * Capture: Information panel can be toggled.

   [bug fixes]
   * Matrox Rainbow Runner MJPEG codec works now (stupid
     codec).
   * Fixed drag-and-drop redraw issues.
   * Fixed last major MPEG-1 video quality problem!
   * Started reworking MPEG-1 routines to be 64-bit file
     clean (not yet fully tested).
   * External WAV audio splicing driver no longer chokes
     on 'fact' chunks.
   * Fixed crashes caused by audio interleave settings
     that pushed the audio stream start past the end.

Build 7538 (Version 1.0a):
   [optimizations]
   * Sped up MPEG packet search routines (thanks to Stephen
     Botzko for the tip).

   [bug fixes]
   * Fixed some AVIs improperly showing up as Uncompressed
     in the Information dialog.
   * Fixed some small niggling interface drawing issues.
   * Fixed accuracy issues with chrominance motion prediction
     in MPEG-1 decoder that cropped up since 1.0 pre-9.

*** Build 7419 (Version 1.0) ***:
   [features added]
   * Added autoloading for video filters.  Copy external .vdf
     files to PLUGINS\ in the VirtualDub program directory.
   * Added MPEG motion vector checking.  Hopefully this will
     solve crashes with some of those fscked up MPEGs people
     seem to have.
   * Finally implemented Abort button in the load progress
     boxes.
   * Implemented basic DirectDraw acceleration for output
     pane.  Not likely to work on some video cards with
     different pixel formats, though.
   * Added "copy output frame" to augment "copy source frame."
   * Option to accept partial ASF streams on error.
   * Start and end offsets now reset when new file is loaded.

   [bug fixes]
   * Fixed +/-100% brightness adjustment on brightness/
     contrast filter in MMX mode.
   * Error now thrown if a script/job attempts to load
     a filter which is not available.
   * Fixed crash-on-exit caused by external filters being
     unloaded before being deinitialized.
   * Fixed abort-on-right flipping on during Internal capture
     when 'hit Ok' enabled.  Now, only if you have 'abort on
     left' enabled with that option, does it flip to
     abort-on-right.  (Abort-on-left catches the OK click.)
   * Most-recently-used list on menu now updates correctly
     when file loads fail.
   * ASF frame timing algorithm changed again; this one
     should avoid the 800,000 ms audio errors that sometimes
     occurred.
   * Squashed some audio funniness in Preview mode with
     compressed audio in Direct Stream Copy mode.
   * Fixed AVI load/decoding problems with files created by
     VideoMatrix.
   * NekoAmp: Fixed 320+kbps layer 2 and 160+kbps layer 3
     decoding.
   * Fixed menu item descriptions not appearing until after
     exit from capture mode.
   * Input options are now used in batch mode.
   * Resize filter now enforces sanity checks on values.

Build 7268 (Version 1.0 pre-9):
   [bug fixes]
   * Hopefully, fixed problems with MPEG-1 layer 2
     audio decoding that was causing "AudioSource" errors.
   * Fixed video compression not kicking back in from
     saved settings in capture mode.
   * Fixed ASF video decoding problems with build 3845
     of the MPEG-4 V2/V3 codec.
   * Solved crashes that occurred on some dubbing errors.

Build 7219 (Version 1.0 pre-8):
   [bug fixes]
   * Fixed hang-on-abort under NT.
   * Fixed backwards position skidding on preview stops.

Build 7209 (Version 1.0 pre-7):
   [features added]
   * Video overlay support (input playback only).
   * Fast Recompress mode is back!  Now it allows
     recompression through YUV formats for extra speed.
   * Autodetection of "bad" MPEG-4 codec driver.
   * Resize filter supports letterboxing as well.

   [optimizations]
   * Revamped thread synchronization - should be faster
     at stopping previews now.
   * Replaced old MPEG audio decoding core (Amp) with
     new core, NekoAmp.

   [bug fixes]
   * Fixed high-quality downsampling with 8-bit audio.
   * Fixed problems with Windows Media Audio v2 codec.
   * ASF routines now understand audio scrambling.
   * ASF audio sync fixed.

Build 6973 (Version 1.0 pre-6):
   [bug fixes]
   * Fixed intermittent stack overflow crashes on long
     captures (usually >70 minutes).
   * Altered ASF packet read algorithm to eliminate packet
     sync errors.

Build 6904 (Version 1.0 pre-5):
   [features added]
   * Arbitrary angle rotate filter (rotate2).
   * Preliminary ASF file support (it sucks).
   * Input and output pane zooming (right-click on panes).
   * Filtered output displayed when browsing source file.
   * Altered audio rate statistic in capture mode to track
     video capture clock (some audio cards are really,
     really far off in pitch....)
   * New audio rate correction option in AVI input options;
     allows compensation for bad audio clock.
   * Audio conversion dialog now allows arbitrary sampling
     rates (such as 22047).

   [optimizations]
   * MMX version of precise resize filters sped up
     slightly.
   * Tweaked bicubic mode of resize filter from A=-1.0 to
     A=-0.75 to reduce oversharpening effect.

   [bug fixes]
   * Fixed problems with Microsoft Audio Codec.
   * Fixed interface overdraw problems with overly large
     frame dimensions.
   * Fixed inadvertent disables of fast I/O mode during
     dubs.
   * Video compression dialog no longer says "Uncompressed
     RGB" on non-RGB capture devices.
   * Invert filter now works (DUH!!!)
   * Fixed visual problems with a 565 16-bit display, MMX
     enabled, and an odd output frame width.
   * Fixed ACM decompress errors on short, compressed
     audio streams.


Build 6536 (Version 1.0 pre-4):
   [features added]
   * Added some command line batch switches.
   * Load and save processing configuration.

   [optimizations]
   * Altered bitrate control algorithm.

   [bug fixes]
   * Fixed crashing problems with Morgan Multimedia codec
     and with Indeo 5 Quick Compress when keyframes and
     data rate are disabled.

Build 6502 (Version 1.0 pre-3):
   [features added]
   * Added rotate and invert filters.
   * Added tent filter for better audio resampling.

   [bug fixes]
   * Fixed scripting errors and top/bottom noise lines in
     the deinterlace filter.
   * "Normal recompress" mode fixed, including keyframe
     problems and strange moire compression patterns.
   * Improved accuracy and speed of precise resize modes.
   * Save WAV... now confirms overwriting files.
   * Audio conversion disabled in Direct Stream Copy mode.

Build 6375 (Version 1.0 pre-2):
   [bug fixes]
   * A large memory leak in the AVI output routines has
     been plugged.  (DOH!!!)

Build 6344 (Version 1.0 pre-1):
   [Features added]
   * Precise bilinear and precise bicubic resize improves
     quality on reductions >2:1.
   * Automatic detection and support for 16-bit 565 displays.
   * Fast MJPEG field deletion, splitting, and swapping.
   * Better video compression dialog.
   * More codecs identified when codec not present.

   [Optimizations]
   * AVI disk I/O revamped -- dub speeds can now reach 3Mb/s
     and higher.
   * Faster MJPEG decoding.

   [bug fixes]
   * MPEG video decoding quality improved.
   * Bicubic resizes should no longer crash on certain sizes.
   * Now keeps MPEG-4 settings across compression sessions
     (the Microsoft codec resets itself).
   * Fixed MMX-related illegal opcode faults on non-MMX
     CPUs.
   * Fixed configuration save problems under Windows 95.
   * The last image file is closed if an error occurs during
     Save Image Sequence....
   * Auto-correction for improperly sized PCM formats added,
     fixing problems with Ligos' LSX-MPEG Encoder.
   * Bit rate control support added for video codecs that
     support crunching.

Build 5401 (Version 1.0 beta):
   [Features added]
   * Chunks of the input file can be deleted (e.g. remove
     commercials), and frame rate decimation can sometimes
     be done in Direct Stream Copy mode.
   * 2 gigabyte barrier broken!  VirtualDub now supports
     the OpenDML 1.02 (AVI 2.0) extensions, meaning
     capture and processing to >2Gb files is now
     possible.
   * 'Save striped master' greatly speeds up making audio
     master tracks for using frameservers with the VCM
     driver.
   * Built-in MJPEG support -- it's incredibly slow, but
     will kick in for MJPEG files that cannot be processed
     by existing compressors in the system.
   * Capture mode now has a nifty panel on the
     right that delivers more useful information.
   * VirtualDub now catches some formerly fatal exceptions
     during capture and allows for clean shutdown in those
     cases.
   * Volume monitor in capture mode has an oscilloscope and
     spectrum analyzer, and can control Line-In volume.
   * "Big timer" displays running time during a capture.

   [optimizations]
   * Disk write routines adjusted for lower latency writes
     to disk (i.e. faster).

   [bug fixes]
   * MPEG parsing revised to ignore user chunks, fixing
     problems with the Final Fantasy: The Movie trailer.
   * Fixed hanging problems when writing out video frames
     larger than 4Mb.
   * Fixed some problems setting clipping regions with
     striped AVI files.
   * Jobs that are In Progress can no longer be switched
     to Postponed mode.

Build 4150 (Version 1.0 alpha):
   [Features added]
   * Job system.
   * Scripting support.
   * Double-clicking a filter in 'Add Filter' adds it.
   * New 16-bit dithering option dithers 24-bit images down
     to 16-bit 5:5:5 RGB -- the difference is noticeable
     sometimes.
   * Drop Frames During Preview option.
   * Sync to Audio now adjusts the time base rather than
     throttling the output, leading to smoother playback.
   * MPEG requester displays progress in bytes.
   * Audio support for MPEG files using Tomislav Uzelac's
     Amp 0.7.6 engine.

   [optimizations]
   * Bicubic resizes optimized for MMX.
   * MPEG decoding much faster (by about 50%), and MMX
     optimized.
   * 16-bit RGB MPEG decoding.

   [bug fixes]
   * Audio streams are no longer written out with overly
     large wave formats when in Full Processing Mode.  This
     caused RealEncoder G2 beta 2 to reject PCM audio
     streams from VirtualDub.
   * Fixed a really stupid error: the bicubic resizer won't
     crash on integral multiples anymore.
   * The bilinear/bicubic resize filters have been adjusted
     to better filter when enlarging by an integral factor.
   * Scene Thresholds don't reset when the CPU Preferences
     tab is visited.
   * A race condition during dub shutdown has been fixed.
   * Crash/hang problems with certain size MPEG chunks
     solved.
   * MRUList fixed -- VirtualDub runs under NT again!
   * Predicted size and audio size in status box fixed.
   * Closed a lot of memory leaks, including one caused by
     a buggy CreateDIBSection() under NT4.0.

Build 3174 (Public Release 3):
   [Features added]
   * Striped AVI output mode for higher performance and
     evading the 2Gb limit.
   * Scene forward/reverse.
   * Histogram works on cards with hardware decompression.
   * VCM frameclient driver + support; now XingMPEG Encoder
     can use frameservers.
   * MPEGs can have their P/B frames omitted and/or motion
     vectors truncated to full pels for performance.
   * AVI rekeying, to fix AVIs with bad keyframe flags.
   * Task priority and filename extension behavior
     configurable.
   * Resize filter can now do bicubic filtering in addition
     to bilinear (formerly Linear Interpolation).
   * Flip Horizontally filter.
   * Limit preferences saving.
   * Color can be set for the fill filter.
   * MMX and FPU settings have been moved to Preferences,
     where they can be saved.
   * Double-clicking on a filter entry brings up the
     configure dialog box for that filter.

   [bug fixes]
   * Frameserver setup no longer says 'Korin.'
   * AVI output routines fixed - no longer writes odd-byte
     chunks.
   * Potential crash/hang problems with y-values in the
     fill filter fixed.
   * Filter entries now highlighted after an Add.

Build 2769 (Public Release 2):
   [Features added - main program]
   * Preliminary MPEG support (video only).
   * Histogram support. Click on the histograms to cycle
     between R/G/B/I modes.
   * Dubbing and capture windows now show filename.
   * Support for compressed 8-bit AVI files.
   * Audio compression and decompression.
   * Left, right arrow keys fine-step frames.
   * New output mode: individual DIB frames.
   * Context help for all capture and some dub dialogs.
   * Frameserver mode, to serve processed video output to
     other applications in real-time.
   * Vertical flip filter.
   * MRU (Most recently used) list.
   * Interleaving options now work.

   [Features added - capture]
   * Capture mode now has accelerators.
   * Total size during internal capture.
   * Histogram works on capture cards that use hardware
     compression.
   * Capture file, driver, and settings can be saved.

   [optimizations]
   * Larger granularity for index blocks.
   * Resize filter heavily optimized for FPU - linear
     interpolation now runs at full speed on many AVIs,
     without an MMX CPU.
   * Slightly better interface performance under NT.
   * Output buffering works now.
   * Internal capture mode - much better capture
     performance.

   [bug fixes]
   * Output file properly closed upon write failures.
   * Audio offset/clipping parameters fixed for frame rate
     decimation.
   * WAV files now closed when disabled.
   * Time limit for captures fixed; no longer alters the
     audio buffer size.
   * Conversion routines fixed for odd AVI widths; solves
     crash problems on many AVIs, particularly in 16-bit
     decompression mode.
   * ICDecompress() now used with decompressors that do
     not support ICDecompressEx().  This allows the
     miroVideo DRX MJPEG decompressor to work with
     VirtualDub.
   * Titlebars no longer refreshed every 1/2 second
     unless necessary -- speeds up dubs on slow systems.
   * Problems with audio-less files fixed.
   * Fixed range dialog from 'locking' when length(ms)
     field cleared.
   * Dynamic compilation filters work under NT.
   * Fixed corruption/crash problems with convolution
     based filters.
   * Failed captures and dubs are still finalized.
   * Memory leaks with filter system solved.
   * Capture errors forced to foreground.

Build 1482 (Public Release 1):
   * Marking works.
   * Frame reset to 0 upon load.
   * Position control.
   * Rounding/overflow errors in clipping dialog gone.
   * 8-bit AVIs now supported.
   * End-of-file race condition fixed.
   * AVI length write fixed
     (NOTE: If you have files which give errors at the end
            of processing, trim the end back and turn on
        Audio clipping.)
   * Audio interleaving fixed.
   * Preview mode audio playback no longer cut off.
   * Miscellaneous bug fixes.

------------------- end VirtualDub log --------------------
