View Full Version : VirtualDub2
TB54
24th September 2020, 10:58
I'm sorry (newbie here), where can i check the "mov +faststart" option?
Another tiny thing concerning ProRes encoding (it's really a detail): the little ProRes window proposes me the profiles I already know (Proxy, LT, Standard, HQ, 444...), but also proposes me to choose a quality (between 2 and 31). This is a little confusing, because usually (in all editing software), you only choose the ProRes Profile you need, and can't choose anything else (it's rather the idea: the HQ profile is the assurance of a almost lossless quality, it's a standard).
Is it an error from VD, or just something (different quality gradient for each profile) the other software never proposed?
LigH
24th September 2020, 13:29
One of the file types when saving in VD2 (F7):
https://frupic.frubar.net/shots/40447.png
I guess the quality (or rather quantization?) selection is for saving without respecting the constraints of a specific profile?
poisondeathray
24th September 2020, 15:28
Another tiny thing concerning ProRes encoding (it's really a detail): the little ProRes window proposes me the profiles I already know (Proxy, LT, Standard, HQ, 444...), but also proposes me to choose a quality (between 2 and 31). This is a little confusing, because usually (in all editing software), you only choose the ProRes Profile you need, and can't choose anything else (it's rather the idea: the HQ profile is the assurance of a almost lossless quality, it's a standard).
Is it an error from VD, or just something (different quality gradient for each profile) the other software never proposed?
This has to do with ffmpeg's prores implementation (which vdub2 uses), and all the ffmpeg variations (prores_ks, prores_aw, prores) . It's not Apple certified. Apple certified prores is bitrate restricted. When you use a lower quantizer for ffmpeg variants can end up with much higher bitrate and higher quality than certified prores. Sometimes there are reported problems in some programs (those reports are more rare now)
TB54
24th September 2020, 15:46
I guess the quality (or rather quantization?) selection is for saving without respecting the constraints of a specific profile?
It's written "quality", but you're probably right!
I just tried the two (Mov / Mov +faststart), it doesn't seem to change anything: the two works below 7mn10 / 1,63 Go, and don't work above.
But i'm afraid i bothered you all for nothing: I just tested another source file, and i don't find this limit (time or size), all is accepted in adobe, at least for now (i'm still trying other durations/files). So something in my original source file i tested first is probably to blame (even if it's weird, as i didn't always choose the same IN and OUT points in it).
Sorry for the trouble... I will continue to test files as soon as i have time, to see if there is a coherence/pattern for those (if there is more than one) that don't work to come back to you only if I'm sure of it.
This has to do with ffmpeg's prores implementation (which vdub2 uses), and all the ffmpeg variations (prores_ks, prores_aw, prores) . It's not Apple certified. Apple certified prores is bitrate restricted. When you use a lower quantizer for ffmpeg variants can end up with much higher bitrate and higher quality than certified prores. Sometimes there are reported problems in some programs (those reports are more rare now)
Ok, thanks for the explanation! Maybe that could translate in a functionality to fit the bitrate restrictions of Apple? (if it helps in anyway the compatibility?)
poisondeathray
24th September 2020, 16:27
Ok, thanks for the explanation! Maybe that could translate in a functionality to fit the bitrate restrictions of Apple? (if it helps in anyway the compatibility?)
Not sure if it would affect compatibility. For the most part, compatibility is a non-issue - it's just a wild guess that the bitrates are part of the reason why in rare situations there are some issues. There are probably other reasons in addition to the bitrate
Eitherway, that would have to be implemented on the ffmpeg side. vdub is just using the ffmpeg libraries to encode prores. It has nothing to do with vdub2 directly
TB54
14th October 2020, 20:38
Another little thing (i don't know if it's possible, or if it's just something from the ffmpeg side): is their the project to add more options to the x265 encoder?
Possibility to encode in two passes, to have a target bitrate (instead of "quality"), to have a advanced option window to add specific code... All that is available in the x264 encoding panel, or in handbrake for x265. It would be helpful!
Dwedit
18th October 2020, 22:06
I just added a new feature (copy frame to Windows Clipboard), how do I get this merged into the mainline version?
poisondeathray
18th October 2020, 22:25
I just added a new feature (copy frame to Windows Clipboard), how do I get this merged into the mainline version?
Is this feature any different than:
video => copy source frame to clipboard (ctrl+1)
or
video => copy output frame to clipboard (ctrl+2)
Dwedit
18th October 2020, 22:30
Didn't see that feature, thanks. Not needed then. Normally, I'd expect something that copies to the clipboard to be on the "Edit" menu, not the "Video" menu, so I missed it completely.
LigH
19th October 2020, 07:35
Possibly because you copy only the video frame, not the related audio; and it was paired with writing it out into a file, already in earlier VirtualDub versions.
jeffk
19th October 2020, 16:52
Hello,
Is there a way to see crash log ?
I use Virtualdub 64bits with a end to end 64 bits pipeline every plugin updated, Avisynth+, It seem that when I set multithreading with :
Import("C:\Program Files (x86)\AviSynth+\plugins64+\MtModes.avsi")
Global set_plugins_threads = 1
...
Prefetch(8)
MTmodes.avsi version
(https://publishwith.me/ep/pad/view/ro.rDkwcdWn4k9/latest)
It crash randomly when I press F2. (I reload a lot)
Thanks
LigH
20th October 2020, 07:25
Just a remark: You may not really need to Import("C:\Program Files (x86)\AviSynth+\plugins64+\MtModes.avsi") because it should be auto-loaded from this directory (default locations assumed, and if you don't clear the auto-load paths in your script).
Using Global set_plugins_threads = 1 I guess that QTGMC is among the frequently used functions?
jeffk
20th October 2020, 15:08
Yes i can remove this import. This can cause crash when I reload the script ?
LigH
20th October 2020, 16:28
Doubtful. Rather one of the many loaded plugins which need the most RAM. But who knows...
jeffk
20th October 2020, 20:20
This is why I wanted to know if there is any way to get a crash log :D
wonkey_monkey
25th November 2020, 20:37
Is GIF export broken? I appreciate it's probably not a high priority, but this was the result I got:
http://horman.net/circles.gif
The left half should look like the right half and it should be at approx 60fps.
LigH
26th November 2020, 08:44
This looks like the GIF transparency animation effects "restore the previous content" and "keep the current content" got mixed up.
BTW, GIF does not support 60 fps, it handles only multiples of 1/100 s. So the closest valid speed would be 2/100 s/f = 50 fps.
_
Apart from that, there are better palette quantizer and optimizer applications for converting full color content to animated GIFs out there. Here you got discrete colors already, that's not your issue.
wonkey_monkey
26th November 2020, 11:17
So the closest valid speed would be 2/100 s/f = 50 fps.
It's come out as 40fps for some reason.
LigH
27th November 2020, 08:52
It may be useful to have a copy of the original video to check the behaviour of the GIF animation encoder. As already mentioned, the main issue will be the visual artifacts, probably caused by wrong bit flags defining the meaning of transparency. Their support may depend on the renderer in different viewers, too; I remember a warning about that in JASC Animation Shop 3.
I remembered one quirk: Animated GIFs support a variable framerate. The duration of every frame may only be integer multiples of 1/100 s, but every frame may have a different one. So one would have to analyze this sequence. Also the playback speed is not guaranteed to be supported by all viewers, some may have their own technical limits. Different webbrowsers or image viewers may be able to play them fast enough, others may fail.
nji
11th December 2020, 20:53
I searched but didn't find a simple answer
if VD2 can read and handle vfr movies.
If I open a vfr (mp4/ avc1) in VD2 it is taken as cfr.
1. So I assume VD2 in principle can't do vfr, right?
And if that should be the case:
2. Then for manipulating a vfr movie in VD
I have to convert it to cfr first?
As I want to avoid unnescessary quality loss,
I would either need an avisynth script,
or would have to save the intermediate movie lossless, correct?
shekh
12th December 2020, 12:00
I searched but didn't find a simple answer
if VD2 can read and handle vfr movies.
If I open a vfr (mp4/ avc1) in VD2 it is taken as cfr.
1. So I assume VD2 in principle can't do vfr, right?
And if that should be the case:
2. Then for manipulating a vfr movie in VD
I have to convert it to cfr first?
As I want to avoid unnescessary quality loss,
I would either need an avisynth script,
or would have to save the intermediate movie lossless, correct?
What do you need to do with vfr? If you must resolve it to cfr by means of frame interpolation or similar: yes there is no method in VD. If you are ok with dropping timestamps (and audio) it may work, then if you need to encode it back with the original timestamps: VD cant do this.
nji
12th December 2020, 15:15
What do you need to do with vfr?...
It's just that I have some movies that have been done as vfr.
I need to manipulate them (in VD2), without encountering audio desnyc,
and with as less quality loss as possible.
VD2 is able to read the vfr source, but as you said timestamp and
audio sync is gone then. OK, I'm assured by that now.
But: How can I do the task to properly work on a vfr movie?
Get all used fps in the movie and determine their smallest common multiple
for the cfr movie.
Would it be a way to do then with AviSynth?
Read the vfr with DirectShowSource and parameter convertfps
or http://avisynth.nl/index.php/VfrToCfr
Or am I completely wrong and there's a far better way
to deal with vfr movies?
poisondeathray
12th December 2020, 17:31
What type of "manipulations" ?
If you are doing edits that change the framecount (cuts/additions), then you must convert to CFR in vdub or use something else that can edit VFR (difficult, most editors have a CFR timeline, but you can do it with vfr.py for timecode edits to keep VFR)
If you are doing filtering, but keeping the same framecount, you can keep it VFR by extracting the timecodes from the source, and adding them back in the export. (Ignore the sync within vdub ,it will be fixed when you add the proper timecodes)
nji
12th December 2020, 17:56
...If you are doing edits that change the framecount (cuts/additions), then you must convert to CFR in vdub ...
What do you mean by that?
How do I convert from VFR to CFR _IN_ VD?
What type of "manipulations" ?
Well, most to improve the quality.
One of it will be DeShaker... and it looks to me as this one
"expects" a linear timeline to assess the movements correctly. Not sure however.
poisondeathray
12th December 2020, 18:32
What do you mean by that?
How do I convert from VFR to CFR _IN_ VD?
I mean edits that change the frame count - cut a section out, add an intro, add a scene, delete a commercial , etc... . ie. planned video edits to the content which also affect the audio
I don't know if there is a reliable or accurate way within vdub alone to convert vfr to cfr
Well, most to improve the quality.
One of it will be DeShaker... and it looks to me as this one
"expects" a linear timeline to assess the movements correctly. Not sure however.
What kind of "movie" is this ? Probably it's not a theatrical "movie" ?
When you convert vfr to cfr , 99.9% of the time, duplicate frames are added to make up the cfr time (during sections where the fps drops from the base frame rate, duplicate frames are added; the frame count changes, but this is not really an edit to the content, the latter is where the audio also changes). Duplicate frames are generally bad for generic stabilizers (you have compensatory overshoots during the duplicate frames), or temporal filters (less effective).
nji
12th December 2020, 18:54
OK, so it's quite sure that converting from VFR to CFR
can't be done by VD or a filter of VD.
Doing the conversion external (for example by the mentioned
avisynth methods) seems to have several drawbacks.
If I want to avoid frame interpolation (due to quality loss)
and do the least common multiple fps I need absurdely high fps.
And even if that would do, than there are your arguments due
to the filters effects on double frames.
So, IF (I'm still not sure about that!) DeShaker will produce
wrong/ bad results on non-linear timeline, then the only way
would be to have DeShaker use the timeline.
???
poisondeathray
12th December 2020, 19:12
Doing the conversion external (for example by the mentioned
avisynth methods) seems to have several drawbacks.
If I want to avoid frame interpolation (due to quality loss)
and do the least common multiple fps I need absurdely high fps.
And even if that would do, than there are your arguments due
to the filters effects on double frames.
First, there are several types of VFR.
What is your video ? You mentioned "MP4", so I'm making the assumption this is timecode VFR, this most common type of VFR. But there are others.
The typical VFR=>CFR frame interpolation uses added clean duplicates frames. It does not used the LCM fps, it uses the base frame rate as if the original source was CFR. Practially all sources have an original CFR framerate before they became VFR.
There are synthesized VFR=>CFR variants, which add blended or optical flow methods, but they are prone to artifacts. It sounds like those are the ones you want to avoid
It partially depends on how variable the frame rate is . If it's minimally variable, sometimes you can treat it as the base frame rate. If there are major changes, drops in the framerate, then you will get long sections with many duplicates - that can be problematic depending on what you do afterwards . (If you do nothing, it's exactly what you see when you play the video - your display refreshes at a CFR Hz anyways. Frames are "held" for a longer display time and those are functionally duplicates)
So, IF (I'm still not sure about that!) DeShaker will produce
wrong/ bad results on non-linear timeline, then the only way
would be to have DeShaker use the timeline.
???
In general, if you feed it a VFR video treated as CFR (with dropped frames, jumps , audio desync but fixed later with timecodes) , there are no duplicate frames, and it treats the motion linearly. So if there are low FPS sections, large jumps in the motion, it will treat it as a large motion
If you feed it a converted VFR => CFR video, the stabilized sections with duplicates can have overshoots. Duplicate images are identical, but they can add extra motion and "move" with the compensatory stabilization. This can be unnerving for many viewers - the image is supposed to be a duplicate and still, but now it "moves"
You can try both ways and see which is better for your specific video
nji
12th December 2020, 19:58
Thank you (once again :-) ) for your valuable thoughts.
If I summarize the results so far.
If I don't do (or use) the timeline in VD
then I just do my manipulations there
and add the vfr timeline afterwards.
But otherwise (as with DeShaker) there is a problem:
Using the non-linear timeline as linear will (probably?)
lead to bad deshaking results.
So no way that way.
Converting the vfr to cfr will lead to duplicates
(which are the real life timeline anyhow).
But Deshaker produces wrong results at still scenarios.
Which is a pure DeShaker problem
that has nothing to do with vfr, but would also occur at cfr.
Am I right with that?
poisondeathray
12th December 2020, 20:28
But otherwise (as with DeShaker) there is a problem:
Using the non-linear timeline as linear will (probably?)
lead to bad deshaking results.
So no way that way.
Converting the vfr to cfr will lead to duplicates
(which are the real life timeline anyhow).
But Deshaker produces wrong results at still scenarios.
Which is a pure DeShaker problem
that has nothing to do with vfr, but would also occur at cfr.
Am I right with that?
It depends on your video, what type of VFR , and the reason for the VFR.
VFR to CFR with duplicates is not the real, real timeline (The original, original CFR data before your video). You have missing data. Inserted duplicates are a method of approximation for the real data
In general, the motion will be smoother if you interpolate the missing frames using optical flow (but predisposed to artifacts) - it sounds like you discarded that.
Deshaking either VFR as is ; or converted to CFR (with inserted duplicates) can both produce bad results . It partially depends on how variable your video is (how bad the drops are, the magnitude of the fps drops).
Some types proper timecode VFR video can be the result of low motion in the first place. E.g. still scene. Or you do a camera pan and slow down to a still shot. It's properly represented by fast motion, to slower motion, then no motion.
Other types of timecode VFR are functional - the recording system can't keep up and frames are dropped. It might not be an actual "still scenario" (there is supposed to be motion) , but inserted duplicates represent it as a "still scenario", even though it is not actually. The compensatory motion introduced by a stabilizer can sometimes look wrong
nji
16th December 2020, 11:39
There arose more questions on vfr and I didn't want to mess up this VirtualDub2 thread, so I build a seperate one (https://forum.doom9.org/showthread.php?p=1931029#post1931029).
StainlessS
21st December 2020, 18:41
@Shekh,
May want to look at this:- https://forum.doom9.org/showthread.php?p=1931586#post1931586
And I discovered a bug in VDub2
If 'Direct stream copy' is selected it pops when you try to start the analysis pass
Define "pops", is that audio ?
EDIT: OK, I see that 'pops' means Access Violation and Crash.
EDIT: Also occurs in VD2 if direct load of clip into VD2, Direct Stream Copy, Video Analysis Pass, Access violation.
EDIT: Also occurs if VD2 fed RGB32 from Avisynth and Direct Stream Copy, Analysis Pass.
shekh
21st December 2020, 20:26
@Shekh,
May want to look at this:- https://forum.doom9.org/showthread.php?p=1931586#post1931586
EDIT: Also occurs in VD2 if direct load of clip into VD2, Direct Stream Copy, Video Analysis Pass, Access violation.
EDIT: Also occurs if VD2 fed RGB32 from Avisynth and Direct Stream Copy, Analysis Pass.
thanks
lansing
30th January 2021, 03:25
I have a shortcut key to switch input/output frame panel so I can see the difference quickly, but for every 2-8 toggles, there's a quick flash on the frames
TB54
3rd April 2021, 22:24
Hello,
Do you know if there is any project to insert a dialog box (extra-command line) in the "ffmpeg / x265" configuration panel in VDB2, like it's the case for the x264 compression panel? The h265 presets are not perfect, and it could be nice to manually adjust the settings.
albino
7th April 2021, 20:20
I tried to find anywhere this had been requested before, but couldn't find anything. Apologies is this is a duplicate feature request :)
I was wondering if it would be possible to add a quick auto-crop button on the crop dialogue that trims the black based on your current frame. Trying to guess all four sides is kind of time consuming if you do it a lot, and eyeballing it is iffy unless you zoom in on each side. Some kind of auto crop would speed it up quite a bit I think.
Thanks!
GAP
26th April 2021, 01:05
Can anyone here tell more about the FFMPEG codecs in Virtualdub2?
LigH
26th April 2021, 07:37
What exactly do you want to know? ... It contains a selection of container splitters and audio/video content decoders so that you will be able to import a variety of formats (unfortunately it is a bit outdated, so no AV1 yet); unfortunately I do not know if a comprehensive list is documented. And a few specific encoders (e.g. FFV1, VP9, x265 for video; Opus, Vorbis, Lame MP3, AAC for audio) are exposed with own dialogs via the "Compression" lists, and a few multiplexers are exposed as file formats in the "Save as..." dialog.
GAP
28th April 2021, 10:28
What exactly do you want to know? ... It contains a selection of container splitters and audio/video content decoders so that you will be able to import a variety of formats (unfortunately it is a bit outdated, so no AV1 yet); unfortunately I do not know if a comprehensive list is documented. And a few specific encoders (e.g. FFV1, VP9, x265 for video; Opus, Vorbis, Lame MP3, AAC for audio) are exposed with own dialogs via the "Compression" lists, and a few multiplexers are exposed as file formats in the "Save as..." dialog.
I want to know if those encoders can serve as good substitutes for some of the codecs I do have. I heard many things about FFMPEG so I thought those codecs might be as good or better than the regular ones. I wanted to know some of the features of the FFMPEG codecs so that I may use for future encodings if possible.
LigH
28th April 2021, 13:31
VirtualDub2 does not expose many encoders. They will be the same as separate encoders or those included in any other ffmpeg (command line or core of a converter) of that time when it was built. But VirtualDub2 may not offer all the options of all the encoders via dialogs and controls. An alternative way to use other encoders more flexibly may be the "External encoder" setup.
Regarding the codecs in ffmpeg, it is hard to say something general without taking a detailed look at specific codecs: e.g. x264, x265, vp9, Opus, Vorbis, Lame are all exactly what they are, the best of OpenSource codecs in their formats; ffmpeg's AAC encoder is quite good, but Fraunhofer FDK or Apple iTunes (CoreAudio) AAC encoders are better in quality, it's just not possible to include them in ffmpeg (either closed source or with restrictive license).
Can you give a detailed guide on the codecs in Virtualdub2? I am more familiar with XVID and Lagarith but not with the others.
That's not really a matter of this topic, I believe ... VirtualDub2 just provides basic access to them. But what they are, what they do, how they work, how you can configure them ... that's documented elsewhere. Primarily in their own documentation, some of that in general Media and Codec Wikis (even the Wikipedia, regarding their underlying standards), or in the documentation of ffmpeg. Writing a new guide just for you would be a full-time job (and I already have a different one).
I see. Thanks for the help anyway. I was just looking into alternative methods of encoding and good encoders.
doctorkhv
5th May 2021, 04:24
https://gist.github.com/shekh/c28db6ed8f826e3dda4e14fbe6c1369b
first you need to modify command line to point to actual ffmpeg.exe
then Options->External encoders->Import...
now you can use File->Export->Using external encoder...
Thank you!
How to export to the EXR format exactly exr zip1 and exr zip16?
https://i.postimg.cc/SxN72GZc/Pot-Player.png (https://postimg.cc/ZC2yX6zq)
poisondeathray
5th May 2021, 05:43
Thank you!
How to export to the EXR format exactly exr zip1 and exr zip16?
I just posted this in your other thread -
You can write EXR sequence with ffmpeg, using your avs input
Instead of sending float through the ffmpeg avisynth demuxer (float not supported), send 8 or 10bit in the avs script and use ffmpeg to do the float conversion and linearization with zscale
https://forum.doom9.org/showthread.php?p=1942303#post1942303
doctorkhv
5th May 2021, 08:41
You can write EXR sequence with ffmpeg, using your avs input
How to insert .vdscript(s) in avs?
They control VirtualDub, not AviSynth. Different purpose.
StainlessS
5th May 2021, 20:55
VDub/VDub2 has some kind of Frame Server mode [I aint used it since bout 2002, dont remember how it works]
VDub2\AviProxy\readme.txt
The AVIFile handler included with VirtualDub is capable
of running in Proxy mode -- that is, you can install it as the
*default* handler for AVI files, and it will work with signposts
that are renamed to the AVI extension. This means that
applications which previously failed with the AVIFile handler
because of the .VDR extension can now be used, provided that
the .VDR files are renamed to the .AVI extension.
This support is very experimental, so try at your own risk.
To try the AVIFile proxy support, first use auxsetup.exe to
install AVIFile frameserver support, then use the REGEDIT tool
to install the proxyon.reg file. Use the proxyoff.reg file
to disable it.
The proxy support will be invisible to most programs, but some
programs do not like the proxy handler and will no longer work
if it is installed; you will have to disable the proxy for
these programs. These applications were tested:
Ligos LSX-MPEG Encoder 3.0: works
Panasonic MPEG Encoder 2.30: works most of the time
XingMPEG Encoder 2.20: fails (must deinstall proxy)
Issues with Windows Vista and newer versions of Windows
=======================================================
Starting with Windows Vista, the registry keys that associate
the .AVI extension to the built-in handler in Windows are
protected by Windows Resource Protection and are not normally
replaceable. As such, the proxy mechanism is not recommended
and not supported under Vista and newer versions of Windows.
If you really need to try it, editing the access control list
(ACL) for the registry entries in the Registry Editor to allow
Administrators full control over the keys and not just
TrustedInstaller has been reported to work.
also in same directory,
Proxyon.reg
Proxyoff.reg
In my VDub2\extra\
folder I got an auxsetup.exe
Dont recall what that is but I think is related in some way.
[also a vdremote.dll]
There is also in VD2 dir VirtualDub.chm, with a FrameServer section.
It is possible that above files are heldover from previous version of VD and I just copied into VD2 directories.
Anyways, I aint read or experimented in any way with above, but maybe they might point in right direction,
or maybe somebody remembers how that stuff works.
EDIT: concerning frameserving from Vdub2 into Avisynth.
SeeMoreDigital
5th May 2021, 21:14
Unlike the 'libx264 core 157' video encoder (built into VirtualDub 2), the FFmpeg (Lavc57.104.100) x265 video encoder does not offer a method of entering 'Sample Aspect Ratio' values.
Are there any FFmpeg x265 video builds that do?
Neither as ffmpeg parameter nor in x265-params?
SeeMoreDigital
6th May 2021, 08:27
I installed x265vfw v3.40 which like libx264 core 157 video encoder does offer a method of entering 'Sample Aspect Ratio' values. But sadly the entered values don't appear to make it into the video stream :(
https://i.ibb.co/vjTs1zf/x265.png
By contrast, the x265 video encoder in MeGUI is able to produce encodes with aspect ratio signalling within the video stream. But I don't know when/where this SAR information is added
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.