PDA

View Full Version : Using AviSynth_Script causing interlace problem ???


1loser
2nd May 2002, 21:08
AVI2SVCD, CinemaCraft 2.5

I was having problems getting the aspect ratio to remain the same. The source avi is 480 x 360. I read that I could use this AviSynth_Script.

AVISource("d:\Tropical.avi")
BilinearResize(480,480)
AssumeFrameBased
SeparateFields
SelectEvery(8, 0,1, 2,3,2, 5,4, 7,6,7)
Weave

When I did the picture came out with the correct aspect ratio but when I play it in FlaskMPEG the video structure keeps

changing from progressive to interlaced. When I play it on my PC it looks funny, I guess that's the interlacing. I only have

this problem when I use the script so it much be the script. But I definitely need to use a script to get the right size.

I would appreciate any help on how the script could be changed to correct this problem.

I'm very new at converting AVI to SVCD and it took me a long time to get this far (getting the aspect ratio to be correct).

I'm also new at using CinemaCraft, FlaskMPEG, DVD2SVCD or AVI2SVCD, VCDEasy and just about everything else.

1loser
4th May 2002, 18:21
This post was moved from the advanced to basic topics.

If this is s basic question than why hasn't anyone been able to answer it.

Since the moderator thinks it's basic than maybe they could answer it.

dvd2svcd
4th May 2002, 19:01
Maybe moderators moderate, hmm. Anyway, when editing AVS files your better of asking in the avisynth forum. I don't know who moved it, but if I moved it, it would have been to the avisynth forum. I have no answer for you, sorry.

markrb
4th May 2002, 19:11
Read the forum structure. All questions about problems belong in the basics forum, not the DVD2SVCD adavanced forum.

If you want any answers to your questions chill the attitude.

I will move this to the Avisynth Forum now since this is really out of the scope of DVD2SVCD even though it may be used within it.

Mark

Hanty
5th May 2002, 01:19
A script can't cause interlacing, and I don't see any telecide/decimate in there so chances that the source is interlaced. I wouldn't trust an app as to how a source is interlaced or not, I use my eyes to decide that.

Kedirekin
5th May 2002, 01:30
I'm not sure where you read to use that script.

Resizing to 480x480 will give the SVCD the correct ratio. 360x480 at 1:1 DAR (display aspect) gives 4:3 viewing ratio. SVCD is natively at 4:3 DAR, so 480x480 at 4:3 DAR gives a 4:3 viewing ratio.

But as near as I can tell, in addition to resizing, the script is doing a hard version of pulldown telecine. Pulldown telecine will indeed introduce interlacing, though I'm not sure how FlasK recognizes the video structure. In addition to the interlacing, the hard telecine is wasting bitrate.

Were I you, I'd do away with everything below the BilinearResize line, and apply Pulldown.exe after the encoding. That way you get the bitrate savings of a 23.98 fps encode, but still get a playable 29.97 fps output stream. You'll still get the combing in the final result, but you need telecine somewhere in the mix, so you can't avoid combing in any case.

Kedirekin
5th May 2002, 01:41
Oops! Hanty posted while I was writing my reply.

Actually a script can introduce combing. As soon as you start using SeparateFields, you run the risk of combing. AviSynth is a powerful tool, so you need to use it wisely.

Hanty
5th May 2002, 09:38
Well, the script "itself" can't introduce combing, it only does what it has been told, but that's getting into semantics so nevermind. My point is that you'll most likely have some sort of interlacing in there as long as there with the current script. Which sorta begs the question, what is your logic behind using that rather "specialized" script.

1loser
5th May 2002, 15:40
Original script generated by DVD2SVCD:
********************************
AVISource("D:\Tropical.avi")
ConvertToYUY2()
AssumeFPS(23.976,True)
BilinearResize(480,360)
AddBorders(0,60,0,60)
********************************

I only needed to do this:
********************************
AVISource("D:\Tropical.avi")
ConvertToYUY2()
AssumeFPS(23.976,True)
BilinearResize(480,480)
********************************

The information I got from Doom's site doesn't apply to my problem of resizing. It apparently does a 3:2 pulldown which DVD2SVCD does for me already. Many of these terms are very confusing to me (a new person). Does this mean if I just use Cinemacraft outside of DVD2SVCD I can use this AviSynth script to create the "pulldown"? I tried it in CinemaCraft and got the error "Frame rate 20000000/667024 is not supported"

Source of information:
http://www.doom9.org/mpg/conversion_guide.htm
Step 2: Preparing the source

[Removed 1st paragraph]

CCE and Heuris need a 29.97fps source for NTSC and so does any encoder when you're going to make a VCD. If you have a 23.976/24fps we can perform a 3:2 pulldown in an AviSynth script. Open notepad and write the following and save it as movie.avs.
AVISource("f:\videoout.avi")
AssumeFrameBased
SeparateFields
SelectEvery(8, 0,1, 2,3,2, 5,4, 7,6,7)
Weave

Kedirekin
5th May 2002, 23:52
Agreed. Many of these terms are confusing to new people. I wish there were a way to make it easy, but there really isn't. You need to keep playing around, make mistakes, and thus learn the ropes. That's one of the reasons these forums are here.

I'm not sure why CCE generated that error. Or more accuately, I do know why, but I don't know why the script generated an avi with the wrong framerate. At any rate, I don't think you need use the hard wired pulldown.

Doom9's guide is correct for creating a VCD. VCD is MPEG1, and I don't think MPEG1 supports pulldown flags, so you have to encode at 29.97 fps. SVCD is MPEG2, which does support pulldown flags, which means you can encode at 23.97 fps and add the pulldown flags to achieve 29.97 fps on playback. When using CCE (which doesn't add the pulldown flags for you during encoding) you have to use the pulldown program (pulldown.exe) to add the flags after encoding. Again, using the flags is best because you get a better encode by virtue of the fact that you're encoding fewer frames per second.

I haven't used the AVI2SVCD functionality of DVD2SVCD, so I can't tell you how to set up the project, but I'm sure it'll run pulldown.exe automatically if you set it up correctly. As for the resizing, AVI2SVCD resized to 360 and added the borders because it thought the avi was 16:9.

You might want to go back to the DVD2SVCD forum to get more advice on setting up AVI2SVCD. Don't let the earlier reprimands discourage you - just follow the rules and I'm sure everyone will be happy to help. You might want to scour the sticky's, FAQ's and such first though, just to make sure you don't ask questions that are already answered. Nothing gets more tiring than seeing the same questions over and over again.

1loser
6th May 2002, 01:31
I got the error in CCE when I used the script on Doom's site (I think it was for the pull down). I don't need to use it since I'm using DVD2SVCD (set for AVI2SVCD) and it does the pulldown automatically. Btw DVD2SVCD is GREAT for avi to svcd conversions. All I had to do is have is stop after the audio is finished so I can edit the avs file to correct the size on my full screen movies (wide screen doesn't seem to have that problem). I did 6 IMAX movies so far and the results are outstanding. I highly recommend using DVD2SVCD for this purpose. Also using CinemaCraft 2.5 (not a newer version) as the encoder.

I converted Voyage to the bottom of the sea from a 1 CD DivX to a 2 CD SVCD. Practically all I had to do was press the go button. My 750 Duron was downloading files at the same time and I had the d/l set as a priority and DVD2SVCD set to idle and using 1 pass VBR encoding it took about 5 hours. The best part was the results were incredible. It looks like I won't be using TMPGEnc anymore for my encodes but will use it for other processes.

BTW, there was a good post in this forum about the bitrate and other settings for Cinema Craft and I followed them and that's probably why I got such great results.

Thanks to Kedirekin and others for their help.