View Full Version : AVISynth and VDub Templates / Code
lordtangent
2007 October 23rd, 01:33
I'm starting a new thread for AVISynth and vDub Templates and code snippets. These templates are used in the "Farnsworth" 3:2 pulldown system and can also be used with SSzudziks excellent "HV20Pulldown.exe" tool. (They can also of course be used stand-alone in many cases as well)
I politely request everyone to keep the chatter down and try to save the thread for posting functional code only.
I'll start with a few of my personal favorites:
My basic IVTC script, adapted from the stock script that comes with HV20pulldown.exe My version fixes a subtle bug in the original (interlaced 4:2:0 treated as a progressive frame before IVTC) This script promotes the 4:2:0 to 4:2:2 on decode to solve the problem. All of my scripts have this fix, since the 4:2:0 vs "interlace in a progressive frame" is a well documented bug that can seriously screw up many filters in AVISynth. It's safest to just promote the video to 4:2:2 right at the decoder to avoid the problem. (Slight hit in speed but it is VERY slight. Well worth the extra safety.) It also does a bit of chroma post processing to smooth the chroma.
### Lordtangents HV20 Uber Inverse Telecine Template
### v0.1 June 16 2007
###
### Requires: DGDecode.dll, TIVTC.dll
### http://neuron2.net/dgmpgdec/dgmpgdec.html
### http://web.missouri.edu/~kes25c/
##### MAIN -- Do not edit unless you really know what you are doing!
v=MPEG2Source("__vid__", upConv=1, idct=3, iCC=true, iPP=true, cpu2="ooxxox")
a=MPASource("__aud__")
audiodub(v,a)
tfm(d2v="__vid__")
tdecimate()
Here is what I call my "UberScript" It slices! It DICES! It's got everything but the kitchen sink! ... But seriously, what it CAN do is: Noise Reduction, Image Scaling (to several handy preset sizes) and full range YCbCr to RGB conversion. You can disable the YCbCr to RGB conversion, but for best result with the scaling it's better to leave it in. You need a couple of extra plug-ins for the noise reduction. They are named at the op of the script. It's disabled by default so if you don't use the noise reduction you don't need the plug-ins.
In case it isn't painfully obvious enough, the options of the script are configured in the section under the block labled "### Configuration section"
### Lordtangents HV20 Uber Inverse Telecine Template + Full_Range_YCbCr2RGB
### v0.3 October 10 2007
###
### Requires: DGDecode.dll, TIVTC.dll
### Optional: TTempSmooth.dll and/or TNLMeans.dll for noise reduction
### http://neuron2.net/dgmpgdec/dgmpgdec.html
### http://web.missouri.edu/~kes25c/
### Configuration section
# Scale final output? ( 1 for true 0 for false )
Resize = 0
# # Uncomment your desired final resolution
# pixel aspect 1, 16:9 sizes ...
#================================================= =
#final_xres = 1920 final_yres = 1080 # "1080p"
final_xres = 1280 final_yres = 720 # "720p"
#final_xres = 1024 final_yres = 576 # "1k"
#final_xres = 960 final_yres = 540 # "half res"
#final_xres = 864 final_yres = 486 # "486 high"
#final_xres = 720 final_yres = 406 # "720 wide"
#final_xres = 640 final_yres = 360 # "medium"
#final_xres = 320 final_yres = 180 # "Small"
#final_xres = 160 final_yres = 90 # Micro
# Set optional Noise/Grain Reduction level (requires TTempSmooth.dll & TNLMeans.dll )
# int 0-4 "0" means no noise reduction. Runs BEFORE resize for maximum effect.
# 1 is fast temporal smoothing only. Not too blury. Pretty fast.
# 2 is temporal smoothing plus some light 3D (spacial&temporal) means based smoothing. Still not to blury. Not too slow.
# 3 is heavier temporal smoothing plus heavier 3D means based smoothing. Softer. More grain killing power. Slow.
# 4 is even heavier temporal smoothing plus even heavier 3D means based smoothing. Soft. Huge grain killing power. Really Slow.
# 11-13 are special neat visualize modes
ReduceNoise = 0
##### MAIN -- Do not edit unless you really know what you are doing!
v=MPEG2Source("__vid__", upConv=1, idct=3, iCC=true, iPP=true, cpu2="ooxxox")
a=MPASource("__aud__")
audiodub(v,a)
tfm(d2v="__vid__")
tdecimate()
# Apply Noise reductioin...or not. Poormans switch function
(ReduceNoise==0) ? nop() : nop()
(ReduceNoise==1) ? TTempSmoothF(maxr=4, vis_blur=0) : nop()
(ReduceNoise==2) ? TTempSmoothF(maxr=4, vis_blur=0).TNLMeans(Ax=1, Ay=1, Az=1, sse=true) : nop()
(ReduceNoise==3) ? TTempSmoothF(maxr=5, vis_blur=0).TNLMeans(Ax=2, Ay=2, Az=2, sse=true) : nop()
(ReduceNoise==4) ? TTempSmoothF(maxr=6, vis_blur=0).TNLMeans(Ax=2, Ay=2, Az=3, sse=true) : nop()
(ReduceNoise==11) ? TTempSmoothF(maxr=4, vis_blur=1).invert() : nop()
(ReduceNoise==12) ? TTempSmoothF(maxr=4, vis_blur=2).invert() : nop()
(ReduceNoise==13) ? TTempSmoothF(maxr=4, vis_blur=3).invert() : nop()
clip=AssumeFPS(24000,1001)
# Full scale YCbCr --> RGB conversion before resize
ConvertToRGB(clip, matrix="PC.709")
# Resize ... or not ... not really anyway
(Resize==1) ? LanczosResize(final_xres,final_yres) : PointResize(Width(),Height())
This next one is kind of cool, IMHO. Slow-Mo from 60i to 24p. What it does is smart delace 60i to 60p then make the frame rate 24p (well, 23.976 to be precise). You need a plug-in for AVISynth called Yadif, but it's easy to find. You can also make "slow mo" from 30p to 24p with this by commenting out the line "Yadif(VID, mode=1 )" and uncommenting Yadif(VID, mode=0 ). That will give you a more mild effect. Kind of a "dreamy" slow mo rather than a real obvious slow-mo. And... if you additionally comment out "AssumeFPS(24000,1001)" after that, you'll get 30p (actually 29.97). Good for making progressive movies at 30p for the web. You can see how with these three little blocks of code you can make 60p. 30p, and "slow mo" from 30p or 60p. Very handy.
### Lordtangents HV20 New Slow-Mo Template
### v0.1 October 1 2007
###
### Requires: yadif.dll
LoadCplugin("C:\Program Files (x86)\AviSynth 2.5\plugins\yadif.dll")
v=MPEG2Source("__vid__", upConv=1, idct=3, iCC=true, iPP=true, cpu2="ooxxox")
a=MPASource("__aud__")
VID=audiodub(v,a)
# Delace to 60p with yadif
Yadif(VID, mode=1 )
# Delace to 30p with yadif
# Yadif(VID, mode=0 )
# Now make frame rate 23.976
AssumeFPS(24000,1001)
Very special scripts:
I developed a set of scripts for "fake under-crank effect" specifically for use with the HV20s "long shutter speeds" of 1/6th and 1/12th sec. (In 24p mode) One of the cool things about the long shutter is since it's open so long even with frames basically deleted (what this script does) the motion blur looks natural for the supposed frame rate. It's as if the shots were actually done as "time laps" (or rather, "under-cranked", since we are still talking about frames-per-second and not seconds per frame... )
### Lordtangents HV20 "1/6th undercrank" Template
### v0.3 October 22 2007
###
### Requires: DGDecode.dll, TIVTC.dll, FDecimate.dll
### http://neuron2.net/dgmpgdec/dgmpgdec.html
### http://neuron2.net/fdecimate/fdecimate.html
### http://web.missouri.edu/~kes25c/
##### MAIN -- Do not edit unless you really know what you are doing!
v=MPEG2Source("__vid__", upConv=1, idct=3, iCC=true, iPP=true, cpu2="ooxxox")
a=MPASource("__aud__")
audiodub(v,a)
# For "6fps from 1/6th sec shutter" Like 360deg shutter at 6fps
FDecimate(rate=5.994)
# For "3fps from 1/6th sec shutter" Like 180deg shutter at 3fps
# FDecimate(rate=2.997)
AssumeFPS(24000,1001)
And the 1/12th sec version:
### Lordtangents HV20 "1/12th undercrank" Template
### v0.3 October 22 2007
###
### Requires: DGDecode.dll, TIVTC.dll, FDecimate.dll
### http://neuron2.net/dgmpgdec/dgmpgdec.html
### http://neuron2.net/fdecimate/fdecimate.html
### http://web.missouri.edu/~kes25c/
##### MAIN -- Do not edit unless you really know what you are doing!
v=MPEG2Source("__vid__", upConv=1, idct=3, iCC=true, iPP=true, cpu2="ooxxox")
a=MPASource("__aud__")
audiodub(v,a)
# For "12fps from 1/12th sec shutter" Like 360deg shutter at 12 fps
FDecimate(rate=11.988)
# For "6fps from 1/12th sec shutter" Like 180deg shutter at 6fps
# FDecimate(rate=5.994)
AssumeFPS(24000,1001)
Here are a couple of little snippets you might find handy:
You can force "full range" YCbCr to RGB conversion by putting this at the end of any of your scripts.
# Full scale YCbCr --> RGB conversion before resize
ConvertToRGB(clip, matrix="PC.709")
There you have it everyone: Most of my bag of tricks. I'm interested to see any tricks others have come up with.
lordtangent
2007 October 23rd, 01:33
This snippet fixes a bug in the default VDMCompressors.xml of HV20Pulldown.exe that forces conversion to RGB (Using the codec) The problem with this is, you get larger Lagarith files (RGB) but they are still not full-range. If you are going to work with the 4:2:0 data, it's better to just stay in 4:2:0 (aka YV12) and save the disk space. It also makes compression much faster. replace your Lagarith preset in your VDMCompressors.xml with this and you will get "Fast Recompress" rather than "Full Processing Mode" in vDub. (Full Processing Mode forces conversion to RGB since that's all vDub can handle internally) With "Fast Recompress" it will just recompress anything AVISynth hands to it. i.e., if you pass it 4:2:0, it will compress to 4:2:0. If you pass it 4:4:4 RGB, it will compress to RGB.
<Compressor>
<Name>Lagarith Lossless</Name>
<Script>
VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(1);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetCompression(0x7367616c,0,10000 ,0);
VirtualDub.video.filters.Clear();
</Script>
</Compressor>
Farnsworth
2007 October 23rd, 16:47
Lordtangent, you are the AVISynth MASTER. I bow at your feet. :)
SSzudzik
2007 October 28th, 03:10
Here is a "compressor" for the HV20Pulldown that uses the Morgan MJPEG2000 that's been talked about in the other thread. I haven't been able to verify it it yet since the demo trial period is elapsed. But I was at least able to obtain this for anyone who wants to give it a try.
VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetRange(0,0);
VirtualDub.video.SetCompression(0x63326a6d,0,10000 ,0);
VirtualDub.video.SetCompData(96,"TUoyQ1wAAAAAAAEAEAAAAAgAAAABAAAAAQAAAAYAAAAGAPMAAA AAAAAANAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAA");
VirtualDub.video.filters.Clear();
Steve
lordtangent
2007 October 31st, 02:30
n this quick how-to we will learn how to make vDub templates that will allow us to customize compression settings and do all manor of post processing in vDub as we save our video out from the "HV20Pulldown.exe kit" in this example we will focus on MJPEG2000, since it has been a recent topic of conversation. But this approach works with any codec and combination of vDub filters.
1. In vDub Open up an avi or .avs file to get some video to work on. ( File > Open video file... )
2. Now go to Video > Compression... to set the compression
http://hv20.info/yopu/compression.png
3. In the Select video compression dialog box, select your desired compressor. (In this example we are using Morgan Multimedia M-JPEG2000). Once the desired codec is selected, you may click on the "Configure" box to set up the codec specific configuration details.
http://hv20.info/yopu/set_compression.png
4. When you are done configuring everything click "OK" in the Configure dialog and "OK" on the Select video compression dialog box
5. Now we will save out the overall configuration of vDub using File > Save processing settings...
http://hv20.info/yopu/save_settings.png
6. The Save Configuration dialog will pop up be sure to select "Sylia script for VirtualDub" as your Save as type. Give your setting a name and save them to disk.
http://hv20.info/yopu/save_settings_SyliaScript.png
7. Now you need to create a new entry in your HV20Pulldown.exe Virtual Dub Job Script Menu. It's easy. Run HV20Pulldown.exe and click the manage button in the Virtual Dub Job Script box. The VirtualDub Script Editor will pop up.
http://hv20.info/yopu/Manage_vDub_Job_Script.png
8. Open the Sylia script you just saved to disk in Notepad, Select All and Copy the Sylia Script code.
http://hv20.info/yopu/copy_SyliaScript.png
9. Now select all the code in the HV20Pulldown.exe VirtualDub Script Editor window and paste in the code you just copied. (Don't worry about the preset that was there. We are making new preset and will be saving it out under a new name)
http://hv20.info/yopu/paste_SyliaScript2.png
10. Give your new preset a unique and descriptive name, so you don't forget what it does later.
http://hv20.info/yopu/NameTemplate.png
11. Click the disk icon to save the new preset with the new name.
http://hv20.info/yopu/SaveTemplate.png
You are done making your first output template.
But let's not stop there! Since the Sylia Script can control ANYTHING that can be configured in vDub, we have full access to all of vDubs functionality though HV20Pulldown.exe and its Sylia Script template! You can use vDubs basic built-in filters, or even plug-in filters. (There are all kinds of great plug-ins like White Balance, smart de-noisers, smart sharpen, image stabilize, etc. And you though good software always cost a bundle of money?) List of many available filters: http://neuron2.net
As an example, let's add a simple resize filter:
1. First we need to make sure "Full processing" is enabled. Select Video > Full processing mode
2. Now we can add the filter. Select Video > Filters... Which will bring up the Filters dialog. An unlimited number of filters can be added to the list. They are processed top to bottom.
http://hv20.info/yopu/Filters.png
3. Click the Add... button
4. Select Resize
http://hv20.info/yopu/Add_Resize.png
5. There are many choices of filter kernel for the resize filter. For shrinking images, Lanczos3 is a good choice. Set the resolution you would like to resize to as well. You can preview your results with the preview button or hit OK when you are done.
http://hv20.info/yopu/Lanczos.png
You can now add more filters if you like or follow the instructions in section one of this tutorial to save out a Sylia Script that can be copied into the HV20Pulldown.exe vDub templates.
lordtangent
2007 October 31st, 03:26
I tested my vDub MJPEG2000 templates enough to feel content they'll work for others.
The great thing about these ouput templates is that if need be, you can process full res and proxie res files from the same batch list in HV20Pulldown.exe. You only need select a new output template and "Working Directory" (so you don't clobber the last set of output media you made)
I'm simply attaching a ZIP file with all the templates I created for my testing. I did it mostly with find and replace, so it didn't take me long. Hopefully this will save anyone else whose interested some time. You can take the templates you want and add them to your template list.
Let me explain the naming convention so you understand what each script does. First thing to know is that unless otherwise noted, these templates are all using 4:4:4 RGB with 6 "Layers" 10 "Levels" Constant Quality and "Force Quality" enabled. They are specifically meant to be used in conjunction with my "full range" YCbCr to RGB pipeline. (They can be used with YCbCr material, but it will get converted to RGB when it is encoded anyway and you wont necessarily get full range conversion unless you use the correct corresponding AVISynth template) Beyond that, the name of each file documents additional variations of how that template is set up.
example: 5-1_MJPEG2000.syl -- means "5:1" lossy
R2_lossless_MJPEG2000.syl means 1/2 resolution (scaled down in vDub) with Lossless enabled (mathematically lossless)
The "R" concept is something I picked up from work. R2 is 1/2 res. R3 is 1/3rd (not half again, but rather 1/3rd), and so on. Those templates are meant to be used if you want to make proxies with the same pixel aspect as the original. I've included settings with very high compression levels as well (up to 40:1) that could be useful for proxies. (No need to make the proxies any larger than required to get a good idea of whats going on!)
720p_8-1_MJPEG2000.syl, as it's name implies, is 1280x720 (resized in vDub) at 8:1 compression. The 720p settings might be useful if you just want to work in 720p full raster 16:9.
After doing my tests I've decided that 8:1 is the best compromise of quality vs. Size. In fact, there is no visible loss in this mode. Moving from there, with HV20 HDV acquired media at least, Lossless is also a good choice is you want PERFECT quality. It's not particularly large (no larger than Lagarith), but you still get the Waveletty goodness.
Here are the Sylia Script files all in one ZIP
378
Contents:
lossless_MJPEG2000.syl
5-1_MJPEG2000.syl
8-1_MJPEG2000.syl
12-1_MJPEG2000.syl
20-1_MJPEG2000.syl
40-1_MJPEG2000.syl
R2_lossless_MJPEG2000.syl
R2_12-1_MJPEG2000.syl
R2_20-1_MJPEG2000.syl
R2_40-1_MJPEG2000.syl
R2_5-1_MJPEG2000.syl
R2_8-1_MJPEG2000.syl
R3_lossless_MJPEG2000.syl
R3_5-1_MJPEG2000.syl
R3_8-1_MJPEG2000.syl
R3_12-1_MJPEG2000.syl
R3_20-1_MJPEG2000.syl
R3_40-1_MJPEG2000.syl
720p_lossless_MJPEG2000.syl
720p_5-1_MJPEG2000.syl
720p_8-1_MJPEG2000.syl
720p_12-1_MJPEG2000.syl
720p_20-1_MJPEG2000.syl
720p_40-1_MJPEG2000.syl
Guilhas
2007 November 3rd, 06:54
Hello! First I'd like to congrolate you for the massive work you've been doing! I'm learning so much and so fast!
However I have a issue now. I work in PAL and I was trying to use your UberScript.
The thing I did was replace the assumeFPS line by this: clip=AssumeFPS(25, 1, true)
But I get an error when opening the d2v file..it says that the d2v file is not a d2v file...I use HDVSplit for getting the footage..am I doing anything wrong?
Guilhas
2007 November 3rd, 16:28
Problem solved, I was using wrong version of TIVTC.dll
Could you just explain the changes we (PAL People) should do to your scripts in order to get good results?
lordtangent
2007 November 3rd, 18:55
Problem solved, I was using wrong version of TIVTC.dll
Could you just explain the changes we (PAL People) should do to your scripts in order to get good results?
You have it much easier in PAL land. All you need to do is make both fields think they are one frame. Transcoding your media might not even be required. Many NLEs have an "ignore fields" mode for rendering that makes them effectively treat the frames as progressive.
If you DO need to transcode your media for what ever reason, just leave all the IVTC stuff out. You don't need it. What you need to do is make your "25p in 50i" into true progressive frames. AVISynth has a command called AssumeFrameBased() (http://avisynth.org/AssumeFrameField) that you can throw in a script to force the frames into progressive mode. It probably would not be a bad idea to convert the clip to 4:2:2 first also. (There are some sublte complications when working on interlaced 4:2:0 footage you need to be careful about. My Uber Script does 4:2:2 conversion by default on load) vDub works in progressive only. So having AVISynth do AssumeFrameBased() might not even be required. I haven't tested it so I don't know for sure.
Guilhas
2007 November 4th, 07:46
I just want this to make proxy files in order to edit in low res.
Thank you alot for sharing your research ;)
buster100
2007 November 7th, 04:46
Hi, i'm begginer in the video edit world and it seems to be a very usefull tool for editing, i was wondering if someone could tell me where can i find a tutorial or something like that for learning how to use those scripts ,because, actually ,I dont have any idea about how to use them.
By the way, i've got my hv20 since a few days and i am very happy with it, its image quality is stunning. I have been trying many configurations to getting a nice low light performance but it seems to be dificult. is there any advice to get it work appropriately?
Thank you
lordtangent
2007 November 9th, 13:12
The best places to learn how to use AVISynth are the AVISynth wiki page and the AVISynth forums on Doom9.org
http://avisynth.org
http://www.doom9.org
Guilhas
2007 November 9th, 15:18
just found this site: http://www.compression.ru/index_en.htm
Has pretty useful filters for both virtualdub and avisynth!
buster100
2007 November 10th, 09:44
Thanks for your help, it'll be too helpfull for me.
Pd: Excuse my bad english.
RHKFilm
2007 November 15th, 21:39
Nice scripts. I have one to contribute. Since 1080/60i footage and 1920x540 footage at twice the framerate are essentially the same thing I have made a slo-mo workflow to convert this footage into slow-motion while using all of the vertical data and half of the horizontal data. This workflow separates the fields 540/30p at 50% speed, or even 540/24p at 40% speed or standard def (SD) versions as well. This saves disk space and overhead in general by providing only real data as opposed to doubling each field.
Note: These scripts are not meant to be used with 24p source footage. If you shot with your camera set to 24p, this method won't work well for you. Shoot in 60i for slo-mo.
Here are my avs templates for slow-mo:
http://www.hv20.info/yopu/slomo23976p.avs <-- takes 1080/60i to 960x540/23.976p 60% slower
http://www.hv20.info/yopu/slomo2997p.avs <-- takes 1080/60i to 960x540/29.97p 50% slower
http://www.hv20.info/yopu/slomoSD23976p.avs <-- takes 1080/60i to 720x480/23.976p 60% slower
http://www.hv20.info/yopu/slomoSD2997p.avs <-- takes 1080/60i to 720x480/29.97p 50% slower
Here is the significant code in those templates:
separatefields
BicubicResize(720,480)
### For 540p frame size
### BicubicResize(960,540)
clip=AssumeFPS(24000,1001)
### framerate of 29.97
### clip=AssumeFPS(30000,1001)
ConvertToRGB24(clip, matrix="PC.709")
And this code needs to be added to the VDMCompressors.xml file. The only change from the default template is that VirtualDub.video.SetMode(1); enables fast recompress. I have only provided the templare for Uncompressed RGB:
<Compressor>
<Name>Slow-mo Uncompressed RGB AVI</Name>
<Script>VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(1);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetCompression();
VirtualDub.video.filters.Clear();</Script>
</Compressor>
I point to the .avs script I want using the HV20Pulldown.exe program and it works like a charm. Also note that it won't really hurt to use the existing VDMCompressors.xml template though it will take longer (about 4x in my experience) as it does a full recompress of the footage as opposed to a fast recompress.
Special thanks to the folks here at HV20, especially lordtangent.
Thanks,
Robert
Mrpc9886
2007 November 16th, 08:55
just found this site: http://www.compression.ru/index_en.htm
Has pretty useful filters for both virtualdub and avisynth!
My word! That is some really useful information...then, two weeks later, Google rgb24 yuv yv12 and read some more.
Heck, I'm just pleased as punch I have the workflow down for 1080-24p! (And can downrez to SD anamorphic DVD). FYI, my 2.4 GHz Core2Duo edits Lagarith YV12 files alright but I wonder if anyone (with too much cash) has tried this with a quad-core and if so how was it?
Now I can worry about colorspaces...ringing...chroma artifacting....
Frank
2007 November 17th, 17:50
I want to thank lordtangent, SSzudzik, Eugenia, Farnsworth, and everyone else who contributed to developing and explaining these tools. I finally tried this and I love it.
Initially, my one concern as I tested it was the chroma thing; I wasn't quite getting the "smoothness" that DVFilm Maker provides. Then I read lordtangent's tute on adding filters. The chroma smoothing filter did the trick; in fact, I think I prefer it to DVFilm's look.
Here are some screen shots of a test I did, in order of increasing chroma quality (to my eye):
Original MPEG-2 file:
http://hv20.info/yopu/Chroma_Test_MPG.bmp
HV20Pulldown.exe without chroma smoother:
http://hv20.info/yopu/Chroma_Test_HV20Pulldown.bmp
DVFilm Maker's Output:
http://hv20.info/yopu/Chroma_Test_DVFilm.bmp
HV20Pulldown.exe with chroma smoothing:
http://hv20.info/yopu/Chroma_Test_HV20Plldwn_Filtered.bmp
Here's the script I used to transcode to MJPEG2K (the chroma smoother's at the end):
VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetCompression(0x63326a6d,0,10000 ,0);
VirtualDub.video.SetCompData(96,"TUoyQ1wAAAAAAAEAEAAAAAgAAAABAAAAAQAAAAYAAAAKAOgDAA AAAAEANAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAA");
VirtualDub.video.filters.Clear();
VirtualDub.video.filters.Add("chroma smoother");
VirtualDub.video.filters.instance[0].Config(2);
P.S. One other thing I notice about using the chroma smoother is that it makes my files ~16% smaller; maybe it's kind of like noise reduction in that regard.
delaney
2007 December 13th, 20:49
This forum has made my life SO MUCH EASIER! I wanted the ability to shot 24p HDV but down convert to Widescreen DV for most non-visual effect editing in Premiere.
Since VirtualDubMod can't use "Microsoft DV" codec I found the free panasonic one http://www.free-codecs.com/download/Panasonic_DV_Codec.htm works great and is what i used with these Setting in HV20Pulldown.exe.
Delaney's HDV 23.976P to Widescreen DV
VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetCompression(0x64737664,0,10000 ,0);
VirtualDub.video.SetCompData(8,"ZHZzZAIAAAA=");
VirtualDub.video.filters.Clear();
VirtualDub.video.filters.Add("chroma smoother");
VirtualDub.video.filters.instance[0].Config(2);
VirtualDub.video.filters.Add("resize");
VirtualDub.video.filters.instance[1].Config(720,480,0);
Now i can work in Premiere with no red line and very fast/beautiful resulting footage.
Hope this helps someone!
mjwmjw
2008 December 29th, 10:02
would you recommend upconversion to 4:2:2 even if there are no filters being applied and the output is just xvid?
Aurora Coast
2009 February 9th, 15:32
"would you recommend upconversion to 4:2:2 even if there are no filters being applied and the output is just xvid?"
I would like to know the answer to this too.
Cheers,
lordtangent
2009 March 20th, 18:24
My template converts to 4:2:2 right at the decode from mpeg2. The reason for it is to help with the chroma problems interlaced 4:2:0 often suffers from. If you are doing inverse telecine, you ARE processing the video, even if you are not doing anything else. Converting to 4:2:2 helps with that processing.
Aurora Coast
2009 April 2nd, 10:30
Thanks. That's what I thought too.
Cheers,
G
john robertson
2009 April 28th, 18:04
just a question, is there a way to output to a jpeg file sequence? using the "HV20Pulldown.exe" tool? (would this be the right place to ask? maybe it could be included in the a script or in the "HV20Pulldown.exe" tool somehow?)
Khaver
2009 April 29th, 08:35
There is an avisynth function called ImageWriter that you could add to the avs script you use in HV20Pulldown. Check out the avisynth documentation for syntax.
colinbrogan
2009 June 21st, 14:05
These codes are great, guys. This forum has been an invaluable source for my camera which I knew so little before. After reading around and getting my own 24p workflow together, I thought I might post some of my own compressor settings for Szudzik's convenient little program. The first is for my proxy files, they are Xvid files which are hacked to work with a Vegas 6.0 Timeline (the FourCC is changed to Divx). It took me a while to find a format that plays realtime and has small file sizes for HD proxies in Vegas, but I finally got this one to work. Obviously, you will need the codec Xvid (http://www.koepi.info/Xvid-1.2.2-07062009.exe) for this to work. These can be added by going to "manage" next to compressor, and then copy and pasting the code into the text window. You then name the compressor ("720p Xvid proxy files for Vegas" or something of the like), and hit save. You can now use it whenever you want by selecting it in the compressor menu.
Here is the 720p version:
VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AddComment(0x00000002,"ISFT","VirtualDubMod 1.5.10.2 (build 2540/release)");
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetCompression(0x64697678,0,10000 ,0);
VirtualDub.video.SetCompData(3532,"AAAAALwCAACQsggALlx2aWRlby5wYXNzAAAuAHAAYQBzAHMAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAkAEAAEhpZ2hkZWYAZABlAGYAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAADQAAAEdlbmVyYWwgcHVycG9zZQBwAH UAcgBwAG8AcwBlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAIERITFRcZGxESExUX GRscFBUWFxgaHB4VFhcYGhweIBYXGBocHiAjFxgaHB4gIyYZGh weICMmKRscHiAjJiktEBESExQVFhcREhMUFRYXGBITFBUWFxgZ ExQVFhcYGhsUFRYXGRobHBUWFxgaGxweFhcYGhscHh8XGBkbHB 4fIQAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAACWAAAAZAAA AAEAAAAAAAAABAAAAAMAAAABAAAAAQAAAAAAAAABAAAAAAAAAA AAAAAAAAAAZAAAAPQBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAABAAAABkAAAAZAAAAAEAAAAKAAAAAQ AAABQAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAAoCgAAAAAAAQAA AAEAAAAeAAAAAAAAAAIAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAA YAAAABAAAAAAAAAAEAAAAAAAAALAEAAAAAAAABAAAAHwAAAAEA AAAfAAAAAQAAAB8AAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAA AAAAAA/wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQA AAA==");
VirtualDub.video.filters.Clear();
VirtualDub.video.filters.Add("resize");
VirtualDub.video.filters.instance[0].Config(1280,720,4);
-Colin
colinbrogan
2009 June 21st, 14:07
Here is the 540p (half resolution) version of the previous compressor:
VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AddComment(0x00000002,"ISFT","VirtualDubMod 1.5.10.2 (build 2540/release)");
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetCompression(0x64697678,0,10000 ,0);
VirtualDub.video.SetCompData(3532,"AAAAALwCAACQsggALlx2aWRlby5wYXNzAAAuAHAAYQBzAHMAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAkAEAAEhpZ2hkZWYAZABlAGYAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAADQAAAEdlbmVyYWwgcHVycG9zZQBwAH UAcgBwAG8AcwBlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAIERITFRcZGxESExUX GRscFBUWFxgaHB4VFhcYGhweIBYXGBocHiAjFxgaHB4gIyYZGh weICMmKRscHiAjJiktEBESExQVFhcREhMUFRYXGBITFBUWFxgZ ExQVFhcYGhsUFRYXGRobHBUWFxgaGxweFhcYGhscHh8XGBkbHB 4fIQAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAACWAAAAZAAA AAEAAAAAAAAABAAAAAMAAAABAAAAAQAAAAAAAAABAAAAAAAAAA AAAAAAAAAAZAAAAPQBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAABAAAABkAAAAZAAAAAEAAAAKAAAAAQ AAABQAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAAoCgAAAAAAAQAA AAEAAAAeAAAAAAAAAAIAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAA YAAAABAAAAAAAAAAEAAAAAAAAALAEAAAAAAAABAAAAHwAAAAEA AAAfAAAAAQAAAB8AAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAA AAAAAA/wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQA AAA==");
VirtualDub.video.filters.Clear();
VirtualDub.video.filters.Add("resize");
VirtualDub.video.filters.instance[0].Config(960,540,4);
-Colin
colinbrogan
2009 June 21st, 14:12
Lastly, here is another script which I have found useful with my 35mm DOF adaptor (which I also learned about on this forum). It uses lagarith as usual to make 24p lossless videos, but it also rotates the image 180 degrees, to correct the screen inversion problem with depth-of-field adapters. This is very convenient if you do not want to deal with the hassle of putting on a rotate filter on every clip on your NLE.
Here it is:
VirtualDub.RemoveInputStreams();
VirtualDub.stream[0].SetSource(0x73647561,0);
VirtualDub.stream[0].DeleteComments(1);
VirtualDub.stream[0].AdjustChapters(1);
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,0);
VirtualDub.stream[0].SetClipMode(1,1);
VirtualDub.stream[0].SetConversion(0,0,0,0,0);
VirtualDub.stream[0].SetVolume();
VirtualDub.stream[0].SetCompression();
VirtualDub.stream[0].EnableFilterGraph(0);
VirtualDub.stream[0].filters.Clear();
VirtualDub.video.DeleteComments(1);
VirtualDub.video.AdjustChapters(1);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetCompression(0x7367616c,0,10000 ,0);
VirtualDub.video.filters.Clear();
VirtualDub.video.filters.Add("rotate");
VirtualDub.video.filters.instance[0].Config(2);
Powered by vBulletin® Version 4.2.0 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.