Log in

View Full Version : VirtualDub2


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 [38] 39 40

rgr
28th October 2025, 14:51
What about mediainfo of the both encodes ?

The rest is the same... Are you asking about something specific?

rgr
28th October 2025, 14:52
Change the quality setting from 4 to 2 and the bitrate will increase.


This is at 2. I always do it at 2.

LigH
28th October 2025, 22:33
Is it possible to edit the syntax highlighting in the script editor? (If not in the UI, maybe at least in an INI file?)

v0lt
29th October 2025, 04:03
This is at 2. I always do it at 2.
I can completely remove the "quality" parameter, and it will work like ffmpeg.exe without specifying "qscale." That would be correct, right?

Is it possible to edit the syntax highlighting in the script editor? (If not in the UI, maybe at least in an INI file?)
The script editor doesn't support loading external styles.
Currently, styles are defined as in Notepad++.

rgr
29th October 2025, 10:07
I can completely remove the "quality" parameter, and it will work like ffmpeg.exe without specifying "qscale." That would be correct, right?

For me, yes. But you can also extend the value to start from 0. According to the manual, qscale=0 gives the same effect as the absence of this parameter. And by default you can also set it to 0 (I think it's 4). For Prores_ks encoder, the default value is 0.

LigH
29th October 2025, 10:48
Currently, styles are defined as in Notepad++.

So I hope for style support, may it just be very basic, in a distant future... :o

v0lt
29th October 2025, 16:43
But you can also extend the value to start from 0. According to the manual, qscale=0 gives the same effect as the absence of this parameter. And by default you can also set it to 0 (I think it's 4).
I don't like this idea because qscale=1 gives higher bitrate than if qscale is not set.

rgr
30th October 2025, 11:17
I don't like this idea because qscale=1 gives higher bitrate than if qscale is not set.

1. qscale=0, bitrate 828Mb/s
ffmpeg -i "Davinci Resolve stabilization.mp4" -map 0:v -c:v prores_ks -profile:v 5 -qscale 0 test_qscale0.mov
frame= 3120 fps= 54 q=-0.0 Lsize= 5267353KiB time=00:00:52.05 bitrate=828981.6kbits/s

2. qscale=1, bitrate 843Mb/s
ffmpeg -i "Davinci Resolve stabilization.mp4" -map 0:v -c:v prores_ks -profile:v 5 -qscale 1 test_qscale1.mov
frame= 3120 fps=109 q=-0.0 Lsize= 5359841KiB time=00:00:52.05 bitrate=843537.5kbits/s

3. no qscale, bitrate 828Mb/s
ffmpeg -i "Davinci Resolve stabilization.mp4" -map 0:v -c:v prores_ks -profile:v 5 test_NOqscale.mov
frame= 3120 fps= 58 q=-0.0 Lsize= 5267353KiB time=00:00:52.05 bitrate=828981.6kbits/s

The difference is slight, but you're right. Weird :)

v0lt
30th October 2025, 16:57
Test build VirtualDub2 v2.5.0.984 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Improved Unicode support.
Updated avlib_vdplugin 1.0.4.417
- The qscale parameter for the ProRes video encoder is disabled.

jay123210599
31st October 2025, 05:30
How do I make a video do forward and back exactly 5 seconds, like in a video player?

v0lt
2nd November 2025, 10:56
Test build VirtualDub2 v2.5.0.992 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Improved Unicode support.
API change: The VDXAudioEncDefinition structure has been replaced with VDXAudioEncDefinition2, whose mpDriverTagName field points to a wide string.
Minor optimizations.
Updated avlib_vdplugin 1.1.0.420
- API change: The mpDriverTagName field for audio encoders now contains a wide string.

I plan to make VirtuldubDub2 an app with good Unicode support. If you notice any issues with displaying Unicode characters, please let me know how to reproduce them.

SupermanTV
2nd November 2025, 15:16
Test build VirtualDub2 v2.5.0.984 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Improved Unicode support.
Updated avlib_vdplugin 1.0.4.417
- The qscale parameter for the ProRes video encoder is disabled.

Hi v0lt, I had not commented before because I was waiting for rgr's feedback on his ProRes topic..
But for my purposes, this version (v2.5.0.984+) messes up 'Capturing' in ProRes HQ..
The data stream creates dropped-frames galore, with jittery video.. Very unstable!!

- This version produces -apparently Constant frame rate- default ProRes HQ 233 Mb/s (1920x1080 source), which is not far from the Apple white paper 220 Mb/s (though Variable bit rate)..
(I like the idea of staying closer to the Official Apple numbers, but here the output is just too unstable).
- Before versions v2.5.0.984 & 992, this was OK smooth for Capturing (up to v2.5.0.978 Beta), I would get around 450 Mb/s Capturing ProRes HQ with qscale 2. (around 275 Mps with default qscale 4).

There's also the thing about ProRes flavors being applied here (that I've touched upon before here in the forum).. prores, prores_aw, prores_ks..

Thanks for revising this.

jay123210599
2nd November 2025, 17:52
When rendering subtitles, how do I get VirtualDub2 to only use the fonts attached to them, and NOT the system fonts?

rgr
3rd November 2025, 13:04
Hi v0lt, I had not commented before because I was waiting for rgr's feedback on his ProRes topic..
But for my purposes, this version (v2.5.0.984+) messes up 'Capturing' in ProRes HQ..
The data stream creates dropped-frames galore, with jittery video.. Very unstable!!
[...]
I would get around 450 Mb/s Capturing ProRes HQ with qscale 2. (around 275 Mps with default qscale 4).

Are you capturing to HDD or SSD/NVME? Maybe the HDD is too slow for the new higher bitrate?
During capture, do you see the number of dropped frames displayed? What's the CPU load? And what's the disk load in Task Manager?

By the way, have you considered capturing using a lossless codec like UT-Video?

There's also the thing about ProRes flavors being applied here (that I've touched upon before here in the forum).. prores, prores_aw, prores_ks..

VirtualDub seems to be using prores_ks. Rightfully so.

v0lt
3rd November 2025, 13:37
Test build VirtualDub2 v2.5.0.998 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Now the settings of the "portable" version are saved in UTF-8 encoding.

I also posted modified versions of the plugin for testing.
avlib_vdplugin_prores_qscale_2.zip
avlib_vdplugin_prores_qscale_4.zip

SupermanTV
3rd November 2025, 16:59
Are you capturing to HDD or SSD/NVME? Maybe the HDD is too slow for the new higher bitrate?
During capture, do you see the number of dropped frames displayed? What's the CPU load? And what's the disk load in Task Manager?

By the way, have you considered capturing using a lossless codec like UT-Video?

As I mentioned before, I can Capture at higher Mb/s (even 994 Mb/s)..

I do a lot of capturing.. The point here is that I'm incorporating ProRes in my 'Capture' workflow..
Yes, I've done UTvideo, but mainly good ol' Huffyuv.

But something with this new version is throwing things off in here..
Could you test the Mb/s on ProRes HQ on your end? Thanx.

VirtualDub seems to be using prores_ks. Rightfully so.

Yes, I agree!!

SupermanTV
3rd November 2025, 17:16
Test build VirtualDub2 v2.5.0.998 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Now the settings of the "portable" version are saved in UTF-8 encoding.

I also posted modified versions of the plugin for testing.
avlib_vdplugin_prores_qscale_2.zip
avlib_vdplugin_prores_qscale_4.zip

Could you check/test ProRes HQ on your end?
For me -with the new avlib_vdplugin- it gets capped at 233 Mb/s for some reason.

With those qscale 2 & 4 you provided, I get 465+ & 310+ Mb/s respectively.
They work as expected (as before), but obviously it's not practical to be switching when needed, plus other levels (5, 6, etc) may be needed..

I think we should have access to the qscale settings as before, and adjust the range to have an 'open' or 0 /1 value for max Mb/s..

rgr
3rd November 2025, 20:39
As I mentioned before, I can Capture at higher Mb/s (even 994 Mb/s)..
Could you test the Mb/s on ProRes HQ on your end? Thanx.

I'm not doing any capturing right now.
And I've never done it with ProRes :)
And I also have version 978.

rgr
3rd November 2025, 20:43
MPEG2 decoding

For mpg (MPEG-2) files, I would set the default input driver to MPEG instead of Caching Input Driver. Caching clearly handles such files worse (wrong frame image, sometimes it doesn't read the file all the way to the end, and the frame numbers probably don't match either).

rgr
3rd November 2025, 21:01
I'm not doing any capturing right now.
And I've never done it with ProRes :)
And I also have version 978.

Test version 998.

Video
ID : 1
Format : ProRes
Format version : Version 0
Format profile : 422 HQ
Codec ID : apch
Duration : 59 s 994 ms
Bit rate mode : Variable
Bit rate : 102 Mb/s
Width : 696 pixels
Height : 464 pixels

and

Video
ID : 1
Format : ProRes
Format version : Version 0
Format profile : 422 HQ
Codec ID : apch
Duration : 59 s 994 ms
Bit rate mode : Variable
Bit rate : 338 Mb/s
Width : 1 620 pixels
Height : 1 080 pixels

Video
ID : 1
Format : ProRes
Format version : Version 0
Format profile : 422 HQ
Codec ID : apch
Duration : 59 s 994 ms
Bit rate mode : Variable
Bit rate : 396 Mb/s
Width : 1 920 pixels
Height : 1 080 pixels

SupermanTV
3rd November 2025, 21:38
Test version 998.

Video
ID : 1
Format : ProRes
Format version : Version 0
Format profile : 422 HQ
Codec ID : apch
Duration : 59 s 994 ms
Bit rate mode : Variable
Bit rate : 396 Mb/s
Width : 1 920 pixels
Height : 1 080 pixels

Sure you used version .998?
Those look more like numbers from .978 with qscale 2..

rgr
4th November 2025, 11:25
https://gcdnb.pbrd.co/images/pqa4CD62hqcL.png?o=1

But:

Video
ID : 1
Format : ProRes
Format version : Version 1
Format profile : 4444 XQ
Codec ID : ap4x
Duration : 59 s 994 ms
Bit rate mode : Variable
Bit rate : 430 Mb/s
Width : 1 920 pixels
Height : 1 080 pixels

This needs to be looked into.

v0lt
4th November 2025, 11:27
Test build VirtualDub2_v2.5.0.998+avlib_vdplugin_1.1.0.422 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Updated avlib_vdplugin 1.1.0.422
- Added "Rate control" parameter for ProRes video encoder.
https://i.ibb.co/39MyYqwx/Pro-Res-rate-control.png (https://ibb.co/39MyYqwx)

rgr
4th November 2025, 11:45
Test build VirtualDub2_v2.5.0.998+avlib_vdplugin_1.1.0.422 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Updated avlib_vdplugin 1.1.0.422
- Added "Rate control" parameter for ProRes video encoder.
https://i.ibb.co/39MyYqwx/Pro-Res-rate-control.png (https://ibb.co/39MyYqwx)

What is this "default" mode? How it works?

v0lt
4th November 2025, 12:29
What is this "default" mode? How it works?
Hmm. In "defaut" mode, qscale isn't set, as you requested.

PS: A qscale of zero doesn't make sense. When you write "-qscale 0," you're simply not setting the global quality parameter.

jay123210599
4th November 2025, 13:55
Can someone answer my questions?

How do I make a video do forward and back exactly 5 seconds, like in a video player?

When rendering subtitles, how do I get VirtualDub2 to only use the fonts attached to them, and NOT the system fonts?

LigH
4th November 2025, 15:36
As far as I know, VirtualDub2 does not support configuring the seeking distance to a custom value. You can seek e.g. by one frame, to the next keyframe (Shift), or a "unit" of 50 frames (Alt). But the value 50 seems to be hardcoded. I don't know if this unit can be customized (to "5 times the frame rate" as you prefer).

And I have no clue how you make VirtualDub2 render subtitles. Are you using an AviSynth or VapourSynth plugin to do that? In this case, configure that function to select a different font. Maybe use a different plugin which supports more variety. If it renders image based subtitles (VOBSub, PGS), well, they are images.

jay123210599
4th November 2025, 15:58
And I have no clue how you make VirtualDub2 render subtitles. Are you using an AviSynth or VapourSynth plugin to do that? In this case, configure that function to select a different font. Maybe use a different plugin which supports more variety. If it renders image based subtitles (VOBSub, PGS), well, they are images.

I am not using an AviSynth or VapourSynth plugin in this case. I am using its TextSub filter.

LigH
4th November 2025, 16:00
Then you are probably using the TextSub filter (https://avisynth.org.ru/docs/english/externalfilters/vsfilter.htm) which is part of the ancient VSFilter package by gabest (project guliverkli)... No, wait, for the VirtualDub plugin you may need the VobSub 2.23 installer (https://www.videohelp.com/software/VobSub). I don't even have that installed anymore. It probably exists for 32 bit only?

You will have to edit the SSA / ASS subtitle file and define styles in this case.

SeeMoreDigital
4th November 2025, 16:01
I am not using an AviSynth or VapourSynth plugin in this case. I am using its TextSub filter.What you want to do can't be done!

SupermanTV
4th November 2025, 18:01
Hmm. In "defaut" mode, qscale isn't set, as you requested.

PS: A qscale of zero doesn't make sense. When you write "-qscale 0," you're simply not setting the global quality parameter.

v0lt, I think now I may have a better idea of what's going on..
With prores_ks I think you have to specify parameters/integers.
So if you don't specify qscale at all, it defaults to the profile's default/safe mode..
(and as per my tests, I think qscale=0 also defaults like this..)
I think this explains the 'limited' Mb/s we're getting when NO qscale is set, or set to 0.

Try setting -qscale=1... and -quant_mat=default (should assure highest quality).
We should get quite good Mb/s.. And that can be your Default setting if you want it like that.

** But my recommendation -as I believe it to be wiser- is that the Default can be like it's always been with the slider set at qscale=4 (healthier for apps, closer to Apple Official).
and keep the qscale=1 as an Option if someone needs insane Mb/s..

PS.. Also to note that with your updated plugin, qscale levels 2/4/etc work OK..

v0lt
4th November 2025, 18:21
The question about subtitles obviously relates to the subtitle rendering filter, not to VirtualDub2.
:search:

Then you are probably using the TextSub filter (https://avisynth.org.ru/docs/english/externalfilters/vsfilter.htm) which is part of the ancient VSFilter package by gabest (project guliverkli)... No, wait, for the VirtualDub plugin you may need the VobSub 2.23 installer (https://www.videohelp.com/software/VobSub). I don't even have that installed anymore. It probably exists for 32 bit only?
Original VSFilter 2.37 (https://sourceforge.net/projects/guliverkli/files/VSFilter/VSFilter%202.37/) (only x86)
VSFilter MPC-HC 1.7.13 (https://github.com/mpc-hc/mpc-hc/releases/) (see standalone filters archive)
xy-VSFilter 3.0.0.306 by Cyberbeing (https://github.com/Cyberbeing/xy-VSFilter/releases/tag/3.0.0.306)
xy-VSFilter v3.2.0.810 (20240123) by pinterf (https://github.com/pinterf/xy-VSFilter/releases)

How to install VobSub in x64 Windows ? (https://forum.doom9.org/showthread.php?t=172830)

PS: You can't specify the character set in the subtitle file selection dialog in VirtualDub2 (this only works in the older VirtualDub). However, this doesn't matter as long as your subtitles use UTF-8 encoding.

LigH
4th November 2025, 19:00
@v0lt - once upon a time, long long ago, the VobSub tools v2.23 installer also provided VirtualDub plugins for subtitling (textsub.vdf and vobsub_vd.vdf). But it fails unpacking all files on modern Windows systems, as old as it is.

Unfortunately, our beloved troll insists in using completely obsolete software and methods and enjoys asking questions which have only one answer: It doesn't work that way.

https://watchmejuggle.com/wp-content/uploads/2016/09/giphy.gif

So why do I even reply?

For everyone else who may be seriously interested.

jay123210599
4th November 2025, 21:34
I got it. Does VirtualDub2 there a plugin where you input a directory of fonts to use with the subtitles?

LigH
4th November 2025, 21:37
No. There is no subtitle plugin I know (not even for AviSynth or VapourSynth) which implements a separate TrueType renderer which could render fonts independent of Windows. All subtitle plugins I know rely on the TrueType rendering Windows offers, and that requires installing the fonts in Windows.

rgr
5th November 2025, 02:05
v0lt, I think now I may have a better idea of what's going on..
With prores_ks I think you have to specify parameters/integers.
So if you don't specify qscale at all, it defaults to the profile's default/safe mode..
(and as per my tests, I think qscale=0 also defaults like this..)
I think this explains the 'limited' Mb/s we're getting when NO qscale is set, or set to 0.

Try setting -qscale=1... and -quant_mat=default (should assure highest quality).

No need to set quant_mat.
https://forum.doom9.org/showpost.php?p=2024181&postcount=1858

But my recommendation -as I believe it to be wiser- is that the Default can be like it's always been with the slider set at qscale=4 (healthier for apps, closer to Apple Official).

But it is not the default then. Its "limited" or "official".

jay123210599
5th November 2025, 04:17
No. There is no subtitle plugin I know (not even for AviSynth or VapourSynth) which implements a separate TrueType renderer which could render fonts independent of Windows. All subtitle plugins I know rely on the TrueType rendering Windows offers, and that requires installing the fonts in Windows.

Does VirtualDub2 have any plugins that have to do with adding fonts to videos?

shekh
5th November 2025, 15:51
No. There is no subtitle plugin I know (not even for AviSynth or VapourSynth) which implements a separate TrueType renderer which could render fonts independent of Windows. All subtitle plugins I know rely on the TrueType rendering Windows offers, and that requires installing the fonts in Windows.

A font can be loaded from specified location to be used within the process (AddFontResourceEx).
Any subtitle renderer could potentially support this. Do they? IDK )

rgr
6th November 2025, 13:07
What you write is not a VirtualDub problem. It is an old Windows bug.
https://superuser.com/questions/91655/open-with-dialog-ignores-my-selection

"Using Resource Hacker I was able to add the missing VERSIONINFO metadata to the exe via a built-in Script Template. Once I ran the script and saved the exe (which automatically backs up the original) I could then both see all the new details I'd added in OpenWithView, and shotcut.exe began appearing in the Open With menu without any registry tweaks at all."

I found this solution, although it concerns a different file, but VirtualDub does not have this value set either.

https://i.imgur.com/7XUkADc.png

v0lt
6th November 2025, 19:27
Test build VirtualDub2 v2.5.0.1005 (https://disk.yandex.ru/d/R3Ob8yREy4ChvA)
Set "activeCodePage=UTF-8" in the application manifest. This will add support for AviSynth+ scripts with Unicode character paths.
Added the ability to load processing setting files (.vdscript) using drag-and-drop.
Updated avlib_vdplugin 1.1.0.424.
Updated scripted_vdplugin 0.3.2.130.

Try setting -qscale=1... and -quant_mat=default (should assure highest quality).
I can add the ability to set qscale=1 in the future if needed. But I don't want to make control for quant_mat.

"Using Resource Hacker I was able to add the missing VERSIONINFO metadata to the exe via a built-in Script Template. Once I ran the script and saved the exe (which automatically backs up the original) I could then both see all the new details I'd added in OpenWithView, and shotcut.exe began appearing in the Open With menu without any registry tweaks at all."

I found this solution, although it concerns a different file, but VirtualDub does not have this value set either.
I'll add the "ProductVersion" field, but I doubt this will fix the Windows bug for VirtualDub2. Perhaps the very fact of changing the executable file had an impact.

Washka
7th November 2025, 06:22
I captured 6 VHS tapes with VirtualDub2 v2.5.0.1005 build, got 0 drop frames. Win 11, audio in sync, Lagarith codec.
All OK

edit Vdub was 64bit

jay123210599
8th November 2025, 00:08
When using the TextSub filter, how do I point it to a directory of fonts like this? fontdir="F:/Hybrid/settings/fonts"

LigH
8th November 2025, 00:14
The filter textsub.vdf can only use fonts installed in Windows.

v0lt
8th November 2025, 07:12
Maybe it's finally time to separate the plugins and video filters folders? :)

jay123210599
8th November 2025, 11:07
Maybe it's finally time to separate the plugins and video filters folders? :)

How do I do that?

LigH
8th November 2025, 11:42
I believe v0lt did not mean you should do that, but he may change the structure of the VirtualDub2 installation in future versions...

jpsdr
8th November 2025, 13:13
Meaning having ".\plugins" directory for video filters (*.vdf files) and ".\plugins32" for plugins for x86 version (or ".\plugins64" for x64 version ) (*.vdplugin files) ?
I'm doing this for decades.

v0lt
8th November 2025, 14:52
Meaning having ".\plugins" directory for video filters (*.vdf files) and ".\plugins32" for plugins for x86 version (or ".\plugins64" for x64 version ) (*.vdplugin files) ?
I'm doing this for decades.
In fact, the "plugins32" and "plugins64" folders were never needed. Previously and now, there's no distinction between storing .vdf and .vdplugin files.

I looked at the code for VirtualDub 1.9.11, VirtualDub 1.10.4, and VirtualDub2.
All these versions load plugins the same way. First, they load .vdf and .vdplugin files from the "plugins" folder, and then the same files from the "plugins64" or "plugins32" folder.

See the source code for the location of all plugin loads (https://github.com/shekh/VirtualDub2/blob/0ef5cdc3554e9c8f8129b17539a13f0f0b38c038/src/VirtualDub/source/Init.cpp#L502).


PS: Now I remember. avlib-1.vdplugin simultaneously contains the source plugin, video encoders, audio encoders, and video filters. Eh.

jay123210599
8th November 2025, 15:23
I believe v0lt did not mean you should do that, but he may change the structure of the VirtualDub2 installation in future versions...

How would that help me with my problem?

LigH
8th November 2025, 15:45
Not at all, because you seem to insist in impossible solutions ... instead of the possible, which don't work in VirtualDub2 though.