Log in

View Full Version : get Async A/V .. what to do


ArieBK
30th March 2002, 10:38
hi all.

i have tryed some way's to solve this problem.
i have a title with 80% FILM and 20% NTSC @ 29.97
no mater what i try to do i get Async Audio/Video !

the Video quality is good but after cupple of minutes
it just get Async

1.i use this Script

LoadPlugin("D:\-= DVD =-\DVD2sVCD\MPEG2Dec\mpeg2dec.dll")
LoadPlugin("D:\-= DVD =-\Sub Utils\decomb.dll")
Mpeg2source("c:\_project\_saint.d2v")
ConvertToRGB()
function VD_Subtitler(clip clip, string filename)
{
LoadVirtualdubPlugin("D:\-= DVD =-\VirtualDub-1_4\plugins\subtitler.vdf","_VD_Subtitler")
return clip._VD_Subtitler(1, filename)
}
BicubicResize(480,480,0.75,0.75)
VD_Subtitler(last ,"c:\_project\saint.ssa")
ConvertToYUY2()
Telecide()
Decimate()
FieldDeinterlace()
ResampleAudio(44100)

with no success :confused:

2. i try the IVTC in TMPG then "feed" the AVI the encoder ... same

i uses CCE 2.50 to encode
and GraphEdit to exctract the audio --> TMPGEnc to Resample it

i hope some of you can Help me with this problem

Tanks

DJ Bobo
1st April 2002, 18:14
You gotta encode audio and video separately.
What's the matter with that weird virtual dub plugin??

Use VobSub! so you won't need any RGB convertion and no fuck adapters.

I would use the following script (use VobSub to extract the sub first)

LoadPlugin("D:\-= DVD =-\DVD2sVCD\MPEG2Dec\mpeg2dec.dll")
LoadPlugin("D:\-= DVD =-\Sub Utils\decomb.dll")
Mpeg2source("c:\_project\_saint.d2v")
VobSub(filename)
BilinearResize(480,480)
Telecide()
Decimate(cycle=5)

That's the whole story!
And no need for time wasting Bicubic resizing, since you're resizing IN ONLY ONE DIRECTION. Bicubic is only usefull for resizing in 2 directions!

Consider extracting the sound using DVD2AVI 1.76 (and no other version or tool!)

ArieBK
2nd April 2002, 09:31
i must use this plugin .

i'v made my Own Subtitles and thay with .SSA Format.

i sure encode audio and video separately.
tha audio was made with GraphEdit (taht i use for a very long time)

i guess that it's only the Video encoding.
every test i do (with some changes) i get a diffrent play time of the movie , but never the real time.
the audio is with the right time !

- play time = 01:56:11
- FrameRate = 29.97

The audio is 01:56:56
and the video is 01:10:11 in one test' 01:45:11 in other one
and so on ... as i say ... my guess it's the Video...

BTW ...
i allso try to encode it without any SubPlugin and i got the same.

DJ Bobo
2nd April 2002, 22:06
Don't use Graphedit anymore.
Load your VOBs in DVD2AVI, check Audio -> Dolby Digital -> Demux All Tracks (or Demux and choose the right track).
Then save your projekt.
You'll get AC3 file(s).
Get AZID and decode to WAV with the following command line:

azid -a -c normal filename.ac3 filename.wav

The WAV will be normalized automatically.

This GARANTEES synchronious audio and video!

And you may also consider (just try! may be it is because of Decomb) using another IVTC plugin instead of Decomb, like IVTC 2.2 for example.
I've got so far magnificent results with the setting ivtc(32,11,120)

If you still don't get equal times (you don't have to encode, just load the AVS in Virtual Dub and see what time it shows under file -> file information), that means there is a scene that has no audio. Most of the time, it is the first scene showing the logo of the studio or something, just note the difference in time and insert it as a Delay when muxing Audio & Video in bbMPEG

ArieBK
4th April 2002, 11:58
hi again ... i try the ivtc(32,11,120)
but i get somthing VERY Wired ....
the video is 1/2 of the original time ... BUT ....
it's Runing as in Fast Motion

any Idea ?

DJ Bobo
4th April 2002, 13:24
What movie is that?!

And please post the AVS that you used last time

ArieBK
5th April 2002, 09:33
movie name is ... "The Saint"

the script i use now ( and get a lot better reasult) is :

LoadPlugin("D:\-= DVD =-\DVD2sVCD\MPEG2Dec\mpeg2dec.dll")
LoadPlugin("D:\-= DVD =-\Sub Utils\decomb.dll")
LoadPlugin("D:\-= DVD =-\AviSynth Filters\IVTC 2.2\IVTC.dll")

Mpeg2source("c:\_project\thesaint.d2v")
ConvertToRGB()
function VD_Subtitler(clip clip, string filename)
{
LoadVirtualdubPlugin("D:\-= DVD =-\VirtualDub-1_4\plugins\subtitler.vdf","_VD_Subtitler")
return clip._VD_Subtitler(1, filename)
}
BicubicResize(480,480,0.75,0.75)
VD_Subtitler(last ,"c:\_project\saint.ssa")
ConvertToYUY2()
#Telecide()
#Decimate(cycle=5)
#IVTC(32,8,15)
FieldDeinterlace()

ResampleAudio(44100)

i made the .D2V out of dvd2avi as Force FILM.
so after i do a PullDown to the file i get exactly the time it shold be.. ie 01:56:11 ... but still when i mux the files i get a 0.5-1.0 async Shift when the Audio is Runing first.

when i got the "Fast motion" situation .. i use the same script on a Regular .D2V (Not Force) but i use all the lines include the "#" one's.

i guess now i need to add about 0.5sec blank video the the file ... then i get it to bw Sync.

one more thing .... maby it was somthing in my system that Coz all the problems... i preforme a Format and Reinstall all over again.
so now i'm with a "frash" system that look like it working fine.

DJ Bobo
5th April 2002, 10:41
1) You don't need to add anything to your video, just correct the delay of your audio by -500ms when multiplexing!

2) I told you to use BilinearResize, since you're resizing in only one direction. BicubicResize is senseless and only time wasting here!
Use Bicubic only if you're resizing in 2 directions, for example: 720x480 to 640x272

3) Why in the world FieldDeinterlace??!! if you have FILM source, Force Film in DVD2AVI will do its job. If not, you gotta IVTC your movie! and you said you have only 80% Film, that means, you HAVE TO IVTC your movie! (do not check FORCE FILM!!!)

4) The IVTC setting must be (32,11,120) not (32,8,15)!!! (32,8,15) gives jerky output!!!

5) You gotta use IVTC2.2 _OR_ Decomb, not both!!!
If you wanna use IVTC 2.2:
LoadPlugin("...ivtc.dll")
ivtc(32,11,120)

If you wanna use Decomb:
LoadPlugin("...decomb.dll")
Telecide()
Decimate(cycle=5)

And no FieldDeinterlace command!

Pko
5th April 2002, 11:12
Originally posted by ArieBK
movie name is ... "The Saint"
LoadPlugin("D:\-= DVD =-\DVD2sVCD\MPEG2Dec\mpeg2dec.dll")
LoadPlugin("D:\-= DVD =-\Sub Utils\decomb.dll")
LoadPlugin("D:\-= DVD =-\AviSynth Filters\IVTC 2.2\IVTC.dll")
Mpeg2source("c:\_project\thesaint.d2v")
ConvertToRGB()
function VD_Subtitler(clip clip, string filename)
{
LoadVirtualdubPlugin("D:\-= DVD =-\VirtualDub-1_4\plugins\subtitler.vdf","_VD_Subtitler")
return clip._VD_Subtitler(1, filename)
}
BicubicResize(480,480,0.75,0.75)
VD_Subtitler(last ,"c:\_project\saint.ssa")
ConvertToYUY2()
#Telecide()
#Decimate(cycle=5)
#IVTC(32,8,15)
FieldDeinterlace()
ResampleAudio(44100)


Not directly related to your question, but you probably should deinterlace or IVTC previous to any modification of the stream, since they should work better (that is specially true for IVTC, but also for FieldDeinterlace)
Also, with that you can leave out the ConvertToYUY2() statement since the stream gets opened in YUY2 in the first place.

Also, I think there is no point in opening the stream with Mpeg2source if your first statement is ConvertToRGB since the main advantage of Mpeg2source is that it opens the stream in YUY2 (it is an advantage because most AviSynth plugins work in YUY2 and YUY2 is usually faster)

So perhaps your script will be better (and perhaps even faster) with these changes:

# Plugins and definitions
LoadPlugin("D:\-= DVD =-\DVD2sVCD\MPEG2Dec\mpeg2dec.dll")
LoadPlugin("D:\-= DVD =-\Sub Utils\decomb.dll")
LoadPlugin("D:\-= DVD =-\AviSynth Filters\IVTC 2.2\IVTC.dll")
function VD_Subtitler(clip clip, string filename)
{
LoadVirtualdubPlugin("D:\-= DVD =-\VirtualDub-1_4\plugins\subtitler.vdf","_VD_Subtitler")
return clip._VD_Subtitler(1, filename)
}
# Open stream
Mpeg2source("c:\_project\thesaint.d2v")
# Deinterlace it
FieldDeinterlace()
# Other deintelacing possibilities, inactive
#Telecide()
#Decimate(cycle=5)
#IVTC(32,8,15)
# Convert to RGB to use VD plugin
ConvertToRGB()
# Add subtitles
VD_Subtitler(last ,"c:\_project\saint.ssa")
# Resize to destination resolution
BicubicResize(480,480,0.75,0.75)
# Other resizing possibilities, inactive
# (SimpleResize would require loading the plugin)
#BilinearResize(480,480)
#SimpleResize(480,480)
# Workaround for CCE/Athlon bug
ResampleAudio(44100)

The next applies ONLY if you are doing SVCD (as it seems since your resolution is 480x480): perhaps you should not mess with deinterlacing at all, deinterlacing IS NOT NECESSARY FOR SVCD, and allways will introduce artifacts and/or blurring and/or ghosting and/or jerking motion and also slows encoding a lot. So, if you use CCE, just try to do not deinterlace at all (comment out FieldDeinterlace) and encode unchecking in CCE "progressive" and "zig zag". You *MUST* make a test, though; encode a short clip with "upper field first" checked and another with that unchecked, burn a SVCD in a CD-RW with both clips and test them in a REAL TV set; one of them will look fine and the other awful. Both should look OK in your PC. Of course, encode then the whole movie with the right setting.

Nobody answered to the question about hybrid streams I made some days ago, but from what I've read and my own testings, I think that the best way to make SVCDs with hybrid or truly interlaced original streams (not FILM with pulldown, of course) is to keep them interlaced. The result will not only look much better, but will also compress around 50% faster too, and that is a very wellcome side effect...

DJ Bobo
5th April 2002, 15:18
@ Pko
You're right about IVTC before anything else, man how could I forgot to tell him this :o

And he used that ConvertToRGB command before to insert his subtitle, that's why he put ConvertToYUY2 later.

I don't think his video is interlaced, but you should consider a very important point: encoding interlaced SVCD requires very high bitrate to give a nice image. As lon as I'm concerned, interlaced SVCD comes nice only with 4000kbps, but no chance @2500kbps, it will come then totally blocky and ugly. So I would say, deinterlacing is better if you can't go make X-SVCD

@ ArieBK
Please make it as following:
Open your VOBs in DVD2AVI, Audio -> Dolby Digital -> Demux All Tracks (or Demux and choose the right track). Don't check Force Film!
Then save your project.
Notice the delay of the AC3 file (this is what you enter under delay when multiplexing in bbMPEG later)
Now make an AVS like this:

LoadPlugin("path\mpeg2dec.dll")
LoadPlugin("path\ivtc.dll")
mpeg2source("path\project.d2v")
ivtc(32,11,120)
BilinearResize(480,480)
ConvertToRGB()
function VD_Subtitler(clip clip, string filename)
{
LoadVirtualdubPlugin("D:\-= DVD =-\VirtualDub-1_4\plugins\subtitler.vdf","_VD_Subtitler")
return clip._VD_Subtitler(1, filename)
}

Now encode your movie, transcode your AC3 file to mp2 using your favorite program, then multiplex in bbMPEG.
This should give a perfect result.

ArieBK
8th April 2002, 09:08
ok ..... looks like it's working :)

and Faster then the original script.

still ... i don't understand why i get Async Problems for my Last Cupple of Ripps.

i use the same way as i allways used.
i Rip the same DVD's Mode (PAL@25).
with the same utils ....
DVD2AVI --> Avisynth --> CCE
GraphEdit --> TMPGEnc --> get mp2
BBmpeg Mux/Split.

i did lot's of Encoding with this way ... and it never failed me B4...
so i'm a bit confuse. the particular Encoding (with the .SSA) was somthing spacial.
but "Regular" Encoding ... why it begin to fail on .... :confused:

well .... tanks for all the Help .... :cool: