Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > VirtualDub, VDubMod & AviDemux

Reply
 
Thread Tools Search this Thread Display Modes
Old 20th June 2019, 17:11   #861  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by wonkey_monkey View Post
Edit: confusion abounds because converttoyv12/y8 don't actually change the bit depth, so the problem is just that VirtualDub2 doesn't display (or throw an error for) float data.
Yes, something bad with error handling.
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 20th June 2019, 21:17   #862  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Hi Shekh,

Simple script
Code:
Colorbars
Try Export single image fails to show file selector dialog box when Menu/View/Enable_Output_Pane/ is disabled, OK when enabled.
[not sure if intentional, if so then maybe could alert to failure reason]
Build 43602
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 21st June 2019 at 10:29.
StainlessS is offline   Reply With Quote
Old 21st June 2019, 21:30   #863  |  Link
Soulvomit
Registered User
 
Join Date: May 2012
Posts: 28
What are the chances of 32-bit ever being supported, if only for gamma-aware rescaling?
Soulvomit is offline   Reply With Quote
Old 21st June 2019, 23:23   #864  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by Soulvomit View Post
What are the chances of 32-bit ever being supported, if only for gamma-aware rescaling?
Not bad - there is internal FP32 format (rgb/rgba). There is no input support and I at least need to update "gamma" and "resize" filters.
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 29th June 2019, 02:44   #865  |  Link
Soulvomit
Registered User
 
Join Date: May 2012
Posts: 28
Quote:
Originally Posted by shekh View Post
Not bad - there is internal FP32 format (rgb/rgba). There is no input support and I at least need to update "gamma" and "resize" filters.
Looking forward to it if you do decide to. Many thanks.
Soulvomit is offline   Reply With Quote
Old 1st July 2019, 12:49   #866  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
Hi shekh, what are my choices when I'd like to display an RGB48 format from Avisynth+? Does VDub2 have any support for it on the VfW interface?
Right now I report BGR[48] (BGR0) but it is not recognized.
Or I'm doing something wrong.
Thanks.
pinterf is offline   Reply With Quote
Old 1st July 2019, 13:27   #867  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by pinterf View Post
Hi shekh, what are my choices when I'd like to display an RGB48 format from Avisynth+? Does VDub2 have any support for it on the VfW interface?
Right now I report BGR[48] (BGR0) but it is not recognized.
Or I'm doing something wrong.
Thanks.
Hi, such format is not supported. I think I should add decoding support for BGR[48] and b48r.
What's wrong if you add ConvertToRGB64 in script?
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 1st July 2019, 13:38   #868  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
Quote:
Originally Posted by shekh View Post
Hi, such format is not supported. I think I should add decoding support for BGR[48] and b48r.
What's wrong if you add ConvertToRGB64 in script?
Nothing wrong. But if a user would like to display such a format in VDub2,
- user applies ConvertToRGB64 at the end of the script (inconvenience, conversion overhead)
- Avisynth+ silently converts it to RGB64 and reports one of the RGB64 fourCCs. (conversion overhead)
- VirtualDub2 handles FourCC BGR[48] (I don't know if there is any extra conversion overhead on your side)
pinterf is offline   Reply With Quote
Old 1st July 2019, 15:59   #869  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by pinterf View Post
Nothing wrong. But if a user would like to display such a format in VDub2,
- user applies ConvertToRGB64 at the end of the script (inconvenience, conversion overhead)
- Avisynth+ silently converts it to RGB64 and reports one of the RGB64 fourCCs. (conversion overhead)
- VirtualDub2 handles FourCC BGR[48] (I don't know if there is any extra conversion overhead on your side)
Ok. If I implement packed BGR the conversion will expand it to internal planar format. To minimize overhead the best option is planar RGB (G3[0][16]), so current workaround should be 'just remove ConvertToRGB48 at the end of script'.
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 1st July 2019, 16:09   #870  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
Quote:
Originally Posted by shekh View Post
Ok. If I implement packed BGR the conversion will expand it to internal planar format. To minimize overhead the best option is planar RGB (G3[0][16]), so current workaround should be 'just remove ConvertToRGB48 at the end of script'.
I see. So it's better to convert it losslessly to planar rgb in Avisynth and report it as G3[0][16] then everybody is happy.

Now a similar workaround is working for the opposite direction: if planar rgb would not be supported, there is an optional rgb64 conversion if user wants to do so:
http://avisynth.nl/index.php/Interna...narToPackedRGB

thanks
pinterf is offline   Reply With Quote
Old 2nd July 2019, 23:02   #871  |  Link
Keiyakusha
契約者
 
Keiyakusha's Avatar
 
Join Date: Jun 2008
Posts: 1,576
shekh
is there any chance you could add something like %(selectionstart) and %(selectionend) options to these variables (external encoder) that would return frame numbers of the current selection (same values as in statusbar)?
Currently I am trying to use VirtualDub to cut some footage while saving to the intermediate format and these would help to form the filename to know where I made the cut from.
Keiyakusha is offline   Reply With Quote
Old 2nd July 2019, 23:33   #872  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Keiyakusha
This is easy, no problem.
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 1st August 2019, 00:22   #873  |  Link
albino
Registered User
 
Join Date: Jul 2019
Posts: 9
As a long long time user of Virtualdub, I thought it was high time I make the switch to Virtualdub2. Right off the bat though I noticed that my export speeds are much slower than in Virtualdub, so I'm wondering if I'm doing something obviously wrong.

I tested with Virtualdub 1.10.4 using DShowInputDriver against Virtualdub2 43702. I also tested with an old version of ffinputdriver I had available. I noticed it right away with every file I tried, but as a control for the results below I decided to use big_buck_bunny_1080p_h264.mov, saving only the first 1:00 in order to keep the testing time easy to manage. All of the files and programs are on my NVMe drive with an i7-7700K and Windows 10 Pro. Here's my quick test results in seconds:

Virtualdub1 (DShowInputDriver)
Uncompressed: 17
MagicYUV: 14

Virtualdub1 (ffinputdriver)
Uncompressed: 23
MagicYUV: 13

Virtualdub2 (default)
Uncompressed: 25
MagicYUV: 23

I also tested with Lagarith, and all three were about the same time (though over 50 seconds each). I tried opening the file with the cache on by default, and disabling it, but the times were identical either way.

At the end of the day, the time differences aren't that much unless you're doing something significant, but I just thought I'd ask here in case there's a plugin I'm supposed to be using, or if I should be disabling/enabling some option.

Thanks!

Last edited by albino; 1st August 2019 at 00:30.
albino is offline   Reply With Quote
Old 2nd August 2019, 12:24   #874  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by albino View Post
As a long long time user of Virtualdub, I thought it was high time I make the switch to Virtualdub2. Right off the bat though I noticed that my export speeds are much slower than in Virtualdub, so I'm wondering if I'm doing something obviously wrong.

I tested with Virtualdub 1.10.4 using DShowInputDriver against Virtualdub2 43702. I also tested with an old version of ffinputdriver I had available. I noticed it right away with every file I tried, but as a control for the results below I decided to use big_buck_bunny_1080p_h264.mov, saving only the first 1:00 in order to keep the testing time easy to manage. All of the files and programs are on my NVMe drive with an i7-7700K and Windows 10 Pro. Here's my quick test results in seconds:

Virtualdub1 (DShowInputDriver)
Uncompressed: 17
MagicYUV: 14

Virtualdub1 (ffinputdriver)
Uncompressed: 23
MagicYUV: 13

Virtualdub2 (default)
Uncompressed: 25
MagicYUV: 23

I also tested with Lagarith, and all three were about the same time (though over 50 seconds each). I tried opening the file with the cache on by default, and disabling it, but the times were identical either way.

At the end of the day, the time differences aren't that much unless you're doing something significant, but I just thought I'd ask here in case there's a plugin I'm supposed to be using, or if I should be disabling/enabling some option.

Thanks!
This looks like terrible and unexpected difference.
Cache cannot help with sequential read - this is ok.
Some common ideas: are you comparing same architecture (x64 executables)?
Make sure the decode format is "autodetect", and there is no unwanted format conversion in the middle.
Run benchmark analyze pass or open Real-time profiler, it shows some performance details.
You can test all 3 input drivers in VD2
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 3rd August 2019, 03:49   #875  |  Link
albino
Registered User
 
Join Date: Jul 2019
Posts: 9
Quote:
Originally Posted by shekh View Post
This looks like terrible and unexpected difference.
Cache cannot help with sequential read - this is ok.
Some common ideas: are you comparing same architecture (x64 executables)?
Make sure the decode format is "autodetect", and there is no unwanted format conversion in the middle.
Run benchmark analyze pass or open Real-time profiler, it shows some performance details.
You can test all 3 input drivers in VD2
Hey shekh!

* Decode format is set to Autoselect, I've never changed that option before. Virtualdub1 doesn't appear to have that option.

* I'm not sure what the benchmark is, but if it's Tools -> Benchmark Resampler then here is the outputs:

Quote:
Virtualdub1 32 bit:

Point: 0.13 ms, 5896.9Mpixels/sec
Linear: 1.80 ms, 437.8Mpixels/sec
Cubic: 1.55 ms, 507.9Mpixels/sec
Lanczos3: 2.07 ms, 379.9Mpixels/sec

Virtualdub2 32 bit:

Point: 0.15 ms, 5314.0Mpixels/sec
Linear: 1.80 ms, 437.0Mpixels/sec
Cubic: 1.55 ms, 507.8Mpixels/sec
Lanczos3: 2.07 ms, 380.1Mpixels/sec

Virtualdub2 64 bit:

Point: 0.24 ms, 3219.2Mpixels/sec
Linear: 1.46 ms, 540.5Mpixels/sec
Cubic: 1.26 ms, 622.5Mpixels/sec
Lanczos3: 1.68 ms, 468.2Mpixels/sec
If it's some other benchmark, then just point me in the right direction.

* As a side note, benchmark-wise, just checking pure FPS, using MagicYUV the peak for Virtualdub1 32 bit was 113 fps, and the peak for Virtualdub2 64 bit was 64 fps.

* I'm not sure what I'm looking for with Real Time Profiler. If you want me to screenshot something specific while I'm running it, or after it finishes, let me know.

* My Virtualdub1 is 32 bit, and that was a good question, so I tried comparing it against both the 32 bit and 64 bit versions of Virtualdub2. I put DShowInputDriver in the plugins32 folder of Virtualdub2 because that's where it is in my Virtualdub1, and I closed and re-opened Virtualdub2 when switching between DShowInputDriver and the default decoder. Also, I re-ran Virtualdub1 again just to have a baseline. Here's my results:

Quote:
Virtualdub1 (32 bit, default with no DShowInputDriver) - Error, can't load the mov file.

Virtualdub1 (32 bit, DShowInputDriver)
Uncompressed: 15
Magic: 13

----------

Virtualdub2 (32 bit, default)
Uncompressed: 25
Magic: 23

Virtualdub2 (32 bit, DShowInputDriver)
Uncompressed: 27
Magic: 24

----------

Virtualdub2 (64 bit, default)
Uncompressed: 26
Magic: 23

Virtualdub2 (64 bit, DShowInputDriver)
Uncompressed: 27
Magic: 23
I'm sure you already have it, but here's my copy of DShowInputDriver.vdplugin in case you want to test on your end:

https://we.tl/t-eJ0aNxyu5W

Let me know if you want me to test anything else, I'm happy to do so. Thanks!

Last edited by albino; 3rd August 2019 at 03:56. Reason: Trying to make it more clear
albino is offline   Reply With Quote
Old 5th August 2019, 11:44   #876  |  Link
wonkey_monkey
Formerly davidh*****
 
wonkey_monkey's Avatar
 
Join Date: Jan 2004
Posts: 2,493
shekh,

Drag any YUV video onto VirtualDub2, add a levels filter (input 0-64, output 0-255) and it comes out all messed up:

https://i.imgur.com/YXOrHaT.png

It seems to be skipping every fourth pixel, or possibly repeating pixels.

The problem goes away if I untick "Operate in luma instead of RGB", or if the input is RGB itself.
__________________
My AviSynth filters / I'm the Doctor

Last edited by wonkey_monkey; 5th August 2019 at 11:48.
wonkey_monkey is offline   Reply With Quote
Old 6th August 2019, 19:56   #877  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by wonkey_monkey View Post
shekh,

Drag any YUV video onto VirtualDub2, add a levels filter (input 0-64, output 0-255) and it comes out all messed up:

https://i.imgur.com/YXOrHaT.png

It seems to be skipping every fourth pixel, or possibly repeating pixels.

The problem goes away if I untick "Operate in luma instead of RGB", or if the input is RGB itself.
Amazing, this is bug in x64 version, straight from the original VD.
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 22nd August 2019, 12:14   #878  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by wonkey_monkey View Post
VirtualDub2 behaves strangely with this AviSynth+ script:

Code:
blankclip(pixel_type="rgbaps")
invert
converttoyv12
It seems to paint nothing in the panes (redrawing problems are evident if you drag the panes around, plus they darken when the window loses focus).

If you change converttoyv12 to converttoy8, you get colourful garbage, which may indicate an AviSynth+ problem but I'm not sure (since I can't read the output of "info" to determine what colourspace I've ended up with), but the redrawing issue with converttoyv12 indicates some kind of trouble with VirtualDub2 not sensibly handling unexpected data.

----------------------------------------------

Edit: confusion abounds because converttoyv12/y8 don't actually change the bit depth, so the problem is just that VirtualDub2 doesn't display (or throw an error for) float data.
I'm not sure if this is correct bitmap format from avisynth here (looks like 64-bit rgb), but VD doesn't know it *and* microsoft RLE decoder thinks it is their format but fails to works. I stopped digging with this mess and simply prohibited searching for decoder (in case fourcc=0).
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 22nd August 2019, 12:17   #879  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by Soulvomit View Post
What are the chances of 32-bit ever being supported, if only for gamma-aware rescaling?
Added fp32 mode in filters (not much optimized):
Convert to floating point (begin with this)
Gamma correct
Levels
Resize
Fill
6-axis color correction
__________________
VirtualDub2
shekh is offline   Reply With Quote
Old 22nd August 2019, 12:21   #880  |  Link
shekh
Registered User
 
Join Date: Mar 2015
Posts: 775
Quote:
Originally Posted by Keiyakusha View Post
shekh
is there any chance you could add something like %(selectionstart) and %(selectionend) options to these variables (external encoder) that would return frame numbers of the current selection (same values as in statusbar)?
Currently I am trying to use VirtualDub to cut some footage while saving to the intermediate format and these would help to form the filename to know where I made the cut from.
This was long, but well, added. Using these macros is quite weird actually (you have to avoid file extension in file dialog).
__________________
VirtualDub2
shekh is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 21:30.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.