Current version

v1.10.4 (stable)


Main page
Archived news
Plugin SDK
Knowledge base
Contact info
Other projects



01 Dec - 31 Dec 2013
01 Oct - 31 Oct 2013
01 Aug - 31 Aug 2013
01 May - 31 May 2013
01 Mar - 31 Mar 2013
01 Feb - 29 Feb 2013
01 Dec - 31 Dec 2012
01 Nov - 30 Nov 2012
01 Oct - 31 Oct 2012
01 Sep - 30 Sep 2012
01 Aug - 31 Aug 2012
01 June - 30 June 2012
01 May - 31 May 2012
01 Apr - 30 Apr 2012
01 Dec - 31 Dec 2011
01 Nov - 30 Nov 2011
01 Oct - 31 Oct 2011
01 Sep - 30 Sep 2011
01 Aug - 31 Aug 2011
01 Jul - 31 Jul 2011
01 June - 30 June 2011
01 May - 31 May 2011
01 Apr - 30 Apr 2011
01 Mar - 31 Mar 2011
01 Feb - 29 Feb 2011
01 Jan - 31 Jan 2011
01 Dec - 31 Dec 2010
01 Nov - 30 Nov 2010
01 Oct - 31 Oct 2010
01 Sep - 30 Sep 2010
01 Aug - 31 Aug 2010
01 Jul - 31 Jul 2010
01 June - 30 June 2010
01 May - 31 May 2010
01 Apr - 30 Apr 2010
01 Mar - 31 Mar 2010
01 Feb - 29 Feb 2010
01 Jan - 31 Jan 2010
01 Dec - 31 Dec 2009
01 Nov - 30 Nov 2009
01 Oct - 31 Oct 2009
01 Sep - 30 Sep 2009
01 Aug - 31 Aug 2009
01 Jul - 31 Jul 2009
01 June - 30 June 2009
01 May - 31 May 2009
01 Apr - 30 Apr 2009
01 Mar - 31 Mar 2009
01 Feb - 29 Feb 2009
01 Jan - 31 Jan 2009
01 Dec - 31 Dec 2008
01 Nov - 30 Nov 2008
01 Oct - 31 Oct 2008
01 Sep - 30 Sep 2008
01 Aug - 31 Aug 2008
01 Jul - 31 Jul 2008
01 June - 30 June 2008
01 May - 31 May 2008
01 Apr - 30 Apr 2008
01 Mar - 31 Mar 2008
01 Feb - 29 Feb 2008
01 Jan - 31 Jan 2008
01 Dec - 31 Dec 2007
01 Nov - 30 Nov 2007
01 Oct - 31 Oct 2007
01 Sep - 30 Sep 2007
01 Aug - 31 Aug 2007
01 Jul - 31 Jul 2007
01 June - 30 June 2007
01 May - 31 May 2007
01 Apr - 30 Apr 2007
01 Mar - 31 Mar 2007
01 Feb - 29 Feb 2007
01 Jan - 31 Jan 2007
01 Dec - 31 Dec 2006
01 Nov - 30 Nov 2006
01 Oct - 31 Oct 2006
01 Sep - 30 Sep 2006
01 Aug - 31 Aug 2006
01 Jul - 31 Jul 2006
01 June - 30 June 2006
01 May - 31 May 2006
01 Apr - 30 Apr 2006
01 Mar - 31 Mar 2006
01 Feb - 29 Feb 2006
01 Jan - 31 Jan 2006
01 Dec - 31 Dec 2005
01 Nov - 30 Nov 2005
01 Oct - 31 Oct 2005
01 Sep - 30 Sep 2005
01 Aug - 31 Aug 2005
01 Jul - 31 Jul 2005
01 June - 30 June 2005
01 May - 31 May 2005
01 Apr - 30 Apr 2005
01 Mar - 31 Mar 2005
01 Feb - 29 Feb 2005
01 Jan - 31 Jan 2005
01 Dec - 31 Dec 2004
01 Nov - 30 Nov 2004
01 Oct - 31 Oct 2004
01 Sep - 30 Sep 2004
01 Aug - 31 Aug 2004


Powered by Pivot  
XML: RSS feed 
XML: Atom feed 

§ VirtualDub 1.6.9 released

I've released VirtualDub 1.6.9 has a quick hotfix for a few issues that were found since 1.6.8; most are minor except the audio compression error bug. That particular error turned out to be caused by a regression since 1.6.7, which in turn happened when I tried to fix a different bug that was causing a small amount of audio to be lost at the end when using audio compression. So, if you're wondering why I'm reluctant to introduce new features at this point, this would be why. I haven't decided whether or not to do another experimental/stable cycle in the 1.6.x series; I hadn't planned to originally but there are enough huge changes in the 1.7 branch that might take too long otherwise.

I'm debating right now whether to run out and get the new Atelier Iris RPG that recently came out for PS2. My friend and I play a game called "get the other person to buy stuff"; by my count he's winning so far because he got me to recently buy the entire Crest of the Stars trilogy, Star Ocean: To the End of Time, and now that he's showing me Patlabor and Atelier Iris I'm tempted to get those too. We've had a few misses for RPGs lately too, though. Ys 6: The Ark of Nephistim turned out to be quite a slog, and Tales of Symphonia was a lot less fun as a multiplayer game as we'd hoped since the camera often only centers on player 1 and leaves 2-4 offscreen. Atelier Iris looks very promising though since it's a 2.5D sprite-based game that has a lot of funny dialogue and seems to incorporate every crafting system known to man.


Build 23604 (1.6.9, stable): [July 10, 2005]
   [bugs fixed]
   * Extended workaround for Huffyuv joining problems to capture mode
     (pre-zeroing format block).
   * Hex editor would warp to a random location when using the mouse wheel for
     the first time.
   * Currently displayed frame was not updated after a reload (F2).
   * Fixed errors when opening YCbCr (YUV) videos that had nonstandard bit
     depth or image size values in the frame header.
   * YV16 input is now supported; previously it could be written but not

   [regressions fixed]
   * Fixed sporadic audio compression errors at end of render. 


Comments posted:

I'm glad 1.6.9 is out, I think most 1.6.x bugs have gone by now, congratulations!

isidro - 11 07 05 - 02:03

I have a question about the way VirtualDub handles MP3 data when using interleaving. Since an MP3 audio frame is always 1152 samples in size (or 576 in the case of MPEG-2/2.5, but that's hardly used) the point at which a video frame has to be interleaved with the audio data can fall within an MP3 frame. What does VD do when this happens? Does it put the whole MP3 frame before the following video data, or does it split the frame data across chunks? In other words, is it possible for an "incomplete" (data is in next chunk too) MP3 frame to be put into a chunk?

If so, it would be nice if VD could handle MP3 data on a frame-basis, so that all frames are decodable from a chunk (better for playback, since otherwise two chunks need to be read to get all the audio data for one MP3 frame).

Yuri - 12 07 05 - 08:50

I'm sorry I posted the following comment to v1.6.8 release before noticing the release of 1.6.9. :

There is one more observation to (1.6.8, 1.6.9) and not in 1.5.1.

Using ‘Condional’ filter with/without
a clip gives a garbled list of filters among strange combinations of charachters. (several filters disappear.)

John I. - 12 07 05 - 16:11

When interleaving, VirtualDub neither knows nor cares that you are using MP3, only that it is interleaving a chunked audio stream. The granularity of interleaving is governed by the nBlockAlign field of the WAVEFORMATEX structure. Most MP3 codecs set this to 1, which tells VirtualDub that the stream can be handled at byte granularity. If nBlockAlign is set to a larger value then VirtualDub will only copy blocks that are multiples of that size. Unfortunately, for a stream that does not have identically sized blocks this is not possible (44KHz with proper padding), so this is not always feasible.

Note that MP3 frames may read data from previous frames through the bit reservoir, and the IMDCT and polyphase filter banks impose more delay, so being able to read a frame from one chunk doesn't make MP3 decoding from the file any easier.

The conditional filter inspects private structures within VirtualDub that are not covered by the filter SDK, so it broke when I rewrote the system in the middle of the 1.5.x series to resolve filter load failures with too many filters loaded. Unfortunately, I can't really support the way this filter works going forward (it's going to break really badly in 1.7.x). However, I think the author has released a newer version that can recognize and access the 1.6.x structures, so you should check the author's site. I'm thinking about ways I can expose the same kinds of functionality that the conditional filter was used for, but it's a bit premature as the 1.7.x filter system isn't working yet.

Phaeron - 13 07 05 - 00:05

Please consider porting Virtualdub to Linux.

I know you've touched on this in your writings here on your website,
I know Vdub has limited (though still not entirely usable) use in WINE,
I know other projects exist in Linux (avidemux for example),

But Virtualdub is king! And we need it in Linux! Please consider porting it! It works very well in Windows, port it for the OS of the future: Linux!

Thank you and keep up the good work

AVirtualDubLover - 13 07 05 - 05:14

[regressions fixed]
* Fixed sporadic audio compression errors at end of render.

Thanks for this fix !

Cédric B. - 13 07 05 - 18:11

Since VirtualDub is based on the Video For Windows API, porting it to Linux would probably involve rewriting 90% of the application, at which point it wouldn't really be VirtualDub anymore.

TechMage89 - 14 07 05 - 15:19

Uh, no, the percentage that is dependent on VFW is nowhere near 90%. However, the UI is Win32 based and there are some VCisms in the code, so it would still be nontrivial.

Phaeron - 15 07 05 - 00:42

One bug I notice (sorry!) is that the analysis pass mode, which I've grown to love, will always default to normal priority, even when dub and default priority are set to idle. Otherwise, the last few versions have been rock solid stable for me.

foxyshadis (link) - 15 07 05 - 23:26

Hm, I think i found another one, around the same feature. I thought it was a fluke, but every time I run an analysis pass with an avisynth that takes a while, it refuses to reload the file, or any other file, until vdub is closed and reopened. (I disable some filters for first pass.) I'm trying to replicate, but it didn't happen with 10,000 frames uncompressed or 1,000 frames compressed, so I'm running a full first pass now to get the error.

The script is just:
return x

star.grf being a custom file->avi parser->ffdshow decoder graph since the encoding box won't use YUV otherwise.

And it didn't wirk. Sigh. I'll report back when I have a repeatable case.

foxyshadis (link) - 16 07 05 - 22:57

I've fixed the priority bug in the Run Video Analysis Pass command for 1.6.10, but I have no idea on the Avisynth problem. Once you trip DirectShow you're bringing in so much code into VirtualDub's process that it's anyone's guess which part failed. It does sound like some handle or object is being leaked, though, and since DirectShow is heavily COM-based, any refcount leak will result in the whole filter graph sticking around.

Phaeron - 18 07 05 - 03:40

Is it possible to add for Vdub 'internal filters' which have preview, an "Enabled" check box so the users can compare the difference before & after at different settings ?

John I. - 19 07 05 - 12:57

I was wondering - would there be a way to add an Ogg output filter to Virtualdub? I know that projects such as Virtualdubmod have done so, but would you consider it? It would allow people to use Vorbis sound encoding directly...
Still a very nice software. Keep it up!

Mitch 74 - 21 07 05 - 08:31

Can you provide on the site an change log for people who upgrade from the stable v1.5 to the new stable v1.6.8/9?
I don't mean a bug fix list that tells the differences between v1.6.8 and v1.6.9. but a major list that tells what happened since v1.5.

In other words, why should I upgrade from v


Lior - 23 07 05 - 08:36

All versions of VirtualDub have cumulative changelogs from previous versions. Help > Change log... on the menu will allow you to see all changes going back to 1.5.

Phaeron - 23 07 05 - 16:45

Since v1.6.4 I haven't been able to get good audio/video syncronization. I'm using the DirectX driver to capture at 480x480. Things are good under 1.6.4 but after that even the cleanest source results in an out of sync capture.

Will - 24 07 05 - 20:41

OS: Win98SE (with 1 million security patches) H/W: Dell P-III 450MHz Katmai (100MHz Back-Side-Bus)
VDub versions: 1.6.8 thru 1.6.9

Undocumented features:
1. Next/Prev-KeyFrame on an MPEG-1 file displays [B] instead of [I] on the status bar. Wondering if this is just a cosmetic issue or VDub is wrongly adding an extra frame count internally. Also wondering if this is related to a 'regression' issue as stated in change log for "Build 18068 (1.5.8, stable): [November 3, 2003]" under 'bugs fixed'. This one seen since 1.6.8 (sorry for late notification) but works properly in 1.5.10. Did not use versions in between. Add: Looks like it's just cosmetic - Comparing both versions with fccHandler's MPEG-2 versions, I-frames were correctly indicated in fccHandler's (for the same frame no.).

2. Using Audio->Advanced Filtering and saving AVI results in uncompressed audio irregardless of the audio compression codec selected. However, if we set audio->Conversion and audio->Compression params before enabling Advanced filtering, AVI saved will follow the audio compression selected earlier. Seems that 'Compression' looks at results of 'Conversion' instead of results of 'Advanced Filtering'.
Eg. Wanted to do 'quick n dirty' HQ resampling of 22kHz audio to 44kHz (using 'resample' filter with 128-taps). If we immediately select Advanced Filtering and then use the 'resample' filter, the 'Compression' screen will only allow us to select rates for up to 22kHz. Even so, audio will still be uncompressed PCM. But, if we 'pretend' by 1st using 'Conversion' to set proper params for resampling to 44kHz, and then set 'Compression' codec, etc, BEFORE enabling 'Advanced Filtering' to do the actual resampling, resulting AVI will be correctly done. Wondering if the HQ 'resample' filter was actually used or the one in 'Conversion' was used in this case.

Thanx for this superb proggie!!!

XEQtor - 03 08 05 - 00:06

1. Frame types are being reported incorrectly in 1.6.x; it is a regression from 1.5.10 although I don't remember where it started. fccHandler was actually the one that reported the bug and I told him the fix, but it might not apply to his version since the MPEG parser is a bit different in the MPEG-2 version. The fix will officially appear in 1.6.10.

2. I can reproduce the UI glitch, but not the uncompressed audio output. Basically, the problem is indeed that the dialog doesn't notice that the graph is in use, and computes the wrong source format. This only affects what formats are displayed by default, though, and you can override it with the "show all formats" checkbox. I can't see how it would drop to uncompressed audio. In the next major version I plan to reimplement the Conversion options through the filter graph, so the old audio path can go away and there will no longer be parallel modes.

Phaeron - 03 08 05 - 01:00

What version of virtual dub would I use to remove the flicker when using a camcorder to capture film being projected with a movie projector with a frame speed of 16-18 frames per second?

Harry Putman - 04 08 05 - 17:44

Thank you for the prompt reply. Sorry for late come-back.
Can no longer reproduce the 'Uncompressed PCM' with 'Advanced Filtering' turned on. Compression does work, it's just not shown in the UI like when you use 'Conversion' - trivial tho. Sorry to waste yr time. But I may have instead found another 'feature' while trying to reproduce my previous observations. My actual usage was more complicated than my eg above. I wanted to duplicate most of the features available in 'Conversion' but using 'Advanced Filtering' instead. This way, I can use the 'multi-tap' to improve resampling quality (I hope) and do away with using the 'Conversion' screen. Wanted to: double sampling rate and dup mono track to stereo. For eg. 22kHz mono to 44kHz stereo, or 24kHz mono to 48kHz stereo. Used 'Advanced Filtering' with filters: input->resample->split->stereo merge->output. I then joined 2nd output pin of 'split' to 2nd input pin of 'stereo merge'. Result: left channel works, right channel gives clipping noise instead. Turned off 'Use Advanced Filtering', resorted to 'Conversion' instead and set 'stereo'. This works. Am I using the 'mono to stereo' conversion in Advanced Filtering wrong or is there a glitch in the 'split' filter? For that matter, same clipping result even w/o the resample filter (ie direct mono to stereo conversion). Have now checked & rechecked with diff clips - 22kHz & 24kHz - to avoid false reporting... Side-effect of this is that I can now safely confirm that VDub REALLY over-rides 'Conversion' and uses 'Advanced Filtering' if it is turned on.

Thanx again.

XEQtor - 09 08 05 - 03:21

Hi, a linux port would be very appreciated. Super software!!! Thanks!!!

Grzegorz Nowak (link) - 02 04 07 - 05:54

Comment form

Please keep comments on-topic for this entry. If you have unrelated comments about VirtualDub, the forum is a better place to post them.
Remember personal info?

Email (Optional):
Your email address is only revealed to the blog owner and is not shown to the public.
URL (Optional):
Comment: /

An authentication dialog may appear when you click Post Comment. Simply type in "post" as the user and "now" as the password. I have had to do this to stop automated comment spam.

Small print: All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.