Log in

View Full Version : progressive desync converting NTSC->PAL


bkman
16th August 2006, 11:32
Hi,

I'm trying to convert an NTSC movie to a PAL DVD, and am experiencing some difficulties. The video has already been to MPEG-2 via the avisynth script: directshowsource("blah.mp4", fps=23.976).assumefps(25)

And now I am trying to encode the audio to AC3 with behappy and timestretch(23.976->25), but I keep getting a progressive desync when the two are muxed back together.

Any ideas as to why the rate seems to differ between the audio and the video?

Boulder
16th August 2006, 11:57
Try with DirectShowSource("blah.mp4",fps=23.976).AssumeFPS(25,true). Open it in VDub and save the audio track as WAV. Encode this WAV file without any framerate conversions and see if the problem still exists.

bkman
16th August 2006, 12:33
A direct stream copy results in an unusual sample rate, that I can't encode or resample with SSRC, but using virtualdub's resampler in full processing mode I can save the wav and encode it. And it syncs correctly!

Why does it work this way, and not when I do a framerate conversion on the audio separately? Also, this method leaves the pitch uncorrected, I assume. Anything that can be done about that?

Boulder
16th August 2006, 12:40
You could try using Directshowsource().AssumeFPS(25,true).SSRC(48000,fast=false) but it'll still leave the pitch uncorrected.

What I do is demux the original audio track, decode to WAV and use SoundStretch (in the SoundTouch package) to do the framerate conversion, then encode to the final format. For some reason I never got the 23.976->25fps conversion working in BeSweet.

The command line syntax is simply soundstretch.exe "path\source.wav" "path\destination.wav" -tempo=4.2709376.

bkman
16th August 2006, 13:24
Ok, I figure if I use: assumefps(25,true).timestretch(pitch=95.904).ssrc(44100)*
and encode directly with BeHappy, that will give me a good result with about the right pitch with no intermediate files.

I can only guess the problem was that a framerate conversion just on the audio ends up at a slightly different rate than that resulting from assumefps. Thanks for the help!

* (48000 doesn't work due to acceptable ratio requirements, but resampleaudio can do it)
Edit: Crap, DVD doesn't support 41000 AC3. Will have to be resampleaudio.