Hello everyone! I wonder if someone could help me. Iím trying to open an avisynth script in Virtual Dub, but it keeps giving me an error message that reads: Avi import filter error (80040154).
But let me explain myself better. Iím trying to find a way to produce the best quality DVD from footage shot in HD. I used Premiere CS4 to edit it and Encore to author it but the quality was unacceptable. Trying to figure out what to do, I bumped into Jeff Belluneís tutorial which also uses Dan Isaacís presets and workflow. To cut the long story short, I followed their advice and exported my HD file from premiere using MPEG 2 I-preset, (producing an m2v video + a wav audio). I installed Avisynth official build, virtual dub and Lagarith lossless codec. I also added the AviSynth plugins and the fftw3.dll file as instructed. So far so good, but I have stuck here. I wonder whether I have made some mistake writing the script. It reads: hd2sd("school feast 25 March2013.m2v", AutoIndex=true, OutputColorSpace="YUY2", OutputBFF=true). Iíve got this problem on both my laptop and desktop, with windows 10 (i5) and 7 (i7) respectively. Thanks in advance for your help.
+ Reply to Thread
Results 1 to 13 of 13
You must first open your video file, then use hd2sd() to filter it.
# build an index file (d2v) with DgIndex then Mpeg2Source("filename.d2v") hd2sd(...)
Looks like I was wrong. hd2sd does support a filename as an input.
Last edited by jagabo; 9th Feb 2016 at 12:53.
Thanks for your reply, If I understand well, I don't need to create an index file. I tried to make a script reading: Version(), which should normally be opened in virtual Dub, but it gave the same error message. I guess there's something to do with the windows settings
Did you use File -> Open Video File in VirtualDub? That's how you open AviSynth scripts.
Have you installed AviSynth? And the right version? If you are using 32 bit VirtualDub you need to install 32 bit AviSynth. Or 64 bit VirtualDub requires 64 bit AviSynth. You should stick with 32 bit bit since not all filters are available in 64 bit versions.
Hello again. I don’t really know whether my avisynth and virtual dub software are 32 or 64 bit but my computers both run at 64bits. From what I have read 64 bit computers don’t have any problem with 32 bit. When I installed avisynth and virtualdub, I didn’t come across to such a distinction. To be on the safe side though, I’ll uninstall them both and reinstall them having in mind your tip. I’ll let you know what happened.
You can tell which version of VirtualDub you are running by viewing Help -> About VirtualDub. It will either say built for x86 (32 bit) or amd64 (64 bit). Or you can use Task Manager. It marks 32 bit programs with *32 on the Process tab.
Last edited by jagabo; 10th Feb 2016 at 09:34.
I checked virtual dub. It’s 64bit. I also uninstalled AviSynth and installed a 64 version from CNET. I also reinstalled the plugins. It gives the same error message. What is more when you go to video file>open in virtual dub, the image of the script I’m going to open looks different from the image you normally see, it is just an empty rectangular.
Does only Version() still give the same error?
The error code you're getting indicates AviSynth is not installed. Looking at the install instructions for one of the 64 bit AviSynth builds, it looks like it needs to have the 32 bit version installed fist. I recommend you forget about 64 bits and use 32 bit AviSynth and VirtualDub.
Last edited by jagabo; 10th Feb 2016 at 12:35.
First, I applaud you in your efforts to move beyond the embedded MainConcept encoder in Premiere. You only stand to benefit by doing so.
Second, don't give up. There are many very knowledgeable individuals on this forum who will help you on your way.
Now, I would go with jagabo's recommendation and stay away from 64 bit flavors of vdub and avisynth. As he said, not every Avisynth filter is available in 64 bit. I have never heard of hd2sd so it could be calling a filter not available in 64 bit and that is your problem.
Downscaling HD for DVD authoring is a fairly trivial task and shouldn't require some custom filter, indexing, etc. For example, here is the Avisynth 2.6 x86 script I recently used for downscaling Lagarith lossless intermediates that I exported from PPro to encode using HCenc for DVD authoring in Encore:
AVISource("E:\video.avi", audio=false).AssumeFPS(30000,1001).ConvertToYV12(interlaced=false, matrix="rec601") Sharpen(0.5, 0) BlackmanResize(704, 480, taps=4) Blur(0, 0.7, false).Sharpen(0, 0.4, false)
EDIT: If your HD footage is interlaced, you should de-interlace before downscaling. This could be why your results were unacceptable. I use QTGMC for de-interlacing. For HD footage, the results are stunning.
Last edited by SameSelf; 10th Feb 2016 at 12:44.
Mind you, not having seen what hd2sd can do, I'd probably de-interlace with QTGMC first too, although creating DVDs seems to be something from the dark ages.
If you need interlaced resizing you can go with QTMGC(), or faster and less accurate Yadif(mode=1), then reinterlace with AssumeTFF().SeparateFields().SelectEvery(4,0,3).We ave().
Avoid going too sharp with downscaling, you'll get buzzing edges and oversharpening halos. If your source is very sharp (usually not the case) use BilinearResize. Otherwise BicubicResize(), Spline36Resize() or BlackmanResize() will probably be ok.
You also usually need to change from rec.709 to rec.601 colors:
Guys! Thanks so much for the help you've given me so far. That's a great site with you all people! It does seem that the error problem was the 64bit virtual Dub. I installed the 32bit version together with avisynth 260 and they co-operate smoothly. The output (downscaled) video is ok in terms of clarity. What is not ok though is that when the camera moves the two different sets of straps (fields?) are visible. Indeed, the faster the camera moves the more noticeable they become. When the camera is relatively still the result is very good. Any suggestions to overcome this?
You're still using hd2sd to go from interlaced HD to interlaced SD? Then you need to encode interlaced and use a player that deinterlaces on the fly. Since your plan is to make DVDs encode as interlaced MPEG 2 then the DVD player (or TV) will deinterlace for you.