View Full Version : What to do with 18p source going to DVD?


Darkvater
22nd December 2008, 00:15
My continuing adventure from http://forum.doom9.org/showthread.php?t=131032 .. :) (I finally have the time to finish things)

So I have received this 29.97i NTSC 720x480 (AR 4:3) video and am having a go at doing some fun with it.

I have converted the video back to 18fps through IVTC (see quote below), and now the question is what to do. I want to put out the results to DVD, but what kind? Should I convert the video back to 29.97i (eg leave as it is) and use this as a source, or use AviSynth to convert to 24p? I cannot leave it in 18fps unfortunately for DVD...

Unfortunately I have started a Premiere project in PAL and it cannot be changed back.. so, but how do I go from NTSC > PAL without as a minimum fiddling with the images as possible. If I add "Lanczos4Resize(720,576)" in the avisynth chain, things look all right....but what would be the proper way to go?
Should I let premiere handle things, or use http://forum.doom9.org/showthread.php?t=69876 and convert it myself?

Summarize: got 18fps progressive video in 720x480 (with AR 4:3), want to output to DVD what is my best option?


SeparateFields()
SelectEvery(10, 1,2, 3,4, 6,7) # 2:3:5
Weave()
AssumeFPS(18)

Guest
22nd December 2008, 00:31
You have 18fps progressive and you want to go to PAL DVD?

Easy. Use DGPulldown with custom 18->25fps conversion.

manono
22nd December 2008, 07:25
Your AssumeFPS(18) throws the audio out of synch as after your "IVTC", the true framerate is 17.982fps. Why not leave it alone and adjust the DGPulldown input framerate?

And that SelectEvery stuff works only if the pattern doesn't change throughout the entire video. Have you carefully checked that it's working everywhere?

Darkvater
22nd December 2008, 09:29
Thank you for the answers. The video does not have audio so that's not a problem (doing some background music in premiere). The pattern is luckily the same everywhere.

So, ok I do DGPulldown to go to 25fps but my video will still be 720x480. How do I convert this to 720x576? When I leave everything at 720x480 and go to NTSC DVD I get a proper 4x3 image. Everything else I tried in Premiere it black-boxed my video both on top/bottom and left/right. Or should I just Resize the video with Avisynth to 720x576 and be done with it? :confused:

manono
22nd December 2008, 10:15
Or should I just Resize the video with Avisynth to 720x576 and be done with it?
If you're making a PAL DVD you don't have any choice but to resize it to a PAL compliant resolution.
How do I convert this to 720x576?
Eh? This is the AviSynth Forum. You do the resize in the AviSynth script before sending it off to the encoder:

Lanczos4Resize(720,576)

And the DGPulldown step takes place after the encoding is finished.

videoFred
22nd December 2008, 10:33
This is a very interesting topic for me because this is what I'm doing all the time. So far I have done the following with my progressive capturings: I resize them to 720x576 and then assumeFPS(18,75) and save to AVI.

Now, when I load these 18,75fps files in Magix and then recode them to PAL Mpeg2, the encoder itself creates nice patterns: three originals, one interlaced frame.

But I am always open for suggestions, would Avisynth or DGPulldown do a better job and if so, why?

Fred.

manono
22nd December 2008, 10:56
By encoding to 18.75fps (not actually possible, of course, but it comes out OK after the DGPulldown step), you're encoding 18.75 progressive frames per second with a soft pulldown set so that 25fps is outputted, as opposed to encoding 25frames per second, 25% of which are interlaced. The result will be that the progressive 18.75fps encode will have something like 35-40% better quality for the same file size.

videoFred
22nd December 2008, 11:24
The result will be that the progressive 18.75fps encode will have something like 35-40% better quality for the same file size.

I see.... I certainly will try this. But are you talking about picture quality only? I mean will it play more smooth?

Fred.

Alex_ander
22nd December 2008, 12:52
If your encoder inserts fields (not full frames), the displayed frame structure might be the same in the 2 cases. The difference is that with DGPulldown you can have more bitrate per encoded frame + progressive type of encoding (also better for picture quality).
For smoother results you can try MVTools (its MVFlowFPS) for producing 25 fps (or 50 fields + interlacing). But with as low initial framerate it may give visible artifacts (depending on the type of footage).

Leak
22nd December 2008, 12:54
I see.... I certainly will try this. But are you talking about picture quality only? I mean will it play more smooth?
It'll play exactly the same, but the interlaced frames won't have to be encoded as they're created "on the fly" while decoding using MPEG2 repeat flags (just like the 3:2 telecine on 24fps movie DVDs), thus the remaining frames get more bitrate.

np: Tocotronic - Freiburg (Live, 2007) (Digital Ist Besser)

videoFred
22nd December 2008, 14:02
I understand... but perhaps it will play more smooth because there are less frames to encode. I would like to test it.

But what mpeg2 do I create then? I mean before using DGPulldown. My source is uncompressed progressive AVI. Remember my play speed must be around 18fps. I can not create a 18fps progressive mpeg2, can I?

EDIT: If I understand it well, I could make a 25fps progressive mpeg2 from my original AVI files, by creating AVI files with a play speed of 25fps (with assumeFPS(25) ). Then converting to Mpeg2 of cource. The resulted Mpeg2 will play to fast of cource, but I could fix this by adding flags with DGPulldown.... Is this correct?

Fred.

Guest
22nd December 2008, 14:29
If I understand it well, I could make a 25fps progressive mpeg2 from my original AVI files, by creating AVI files with a play speed of 25fps (with assumeFPS(25) ). Then converting to Mpeg2 of cource. The resulted Mpeg2 will play to fast of cource, but I could fix this by adding flags with DGPulldown.... Is this correct? That is correct. DGPulldown rewrites the frame rate fields of the stream. But you have to force the encoder to not try to convert the frame rate itself. That may require an AssumeFPS(25.0) in your Avisynth script, so that the encoder sees 25fps coming in.

videoFred
22nd December 2008, 14:46
Thank you for confirming this, Neuron2! It is very obvious we win a lot by adding playback flags.

Next problem: the sounddtrack. It's just some background music, it does not have to be 100% in sync. But if I add sound before DGPulldown, then later the video will run 25% slower and thus I will have 25% silence at the end of the clip, right? Of cource I could add sound (with my NLE) after DGPulldown but then I must be 100% sure my Mpeg2 Encoder will leave the video stream as it is. Or is there another way to add sound to an mpeg2 file?

Sorry for all those questions but I am not very familiar with the mpeg2 format.

Fred.

Guest
22nd December 2008, 14:48
The video will have a higher frame rate after pulldown but it will have extra fields to display, so the running time and sync is not affected by adding pulldown.

Alex_ander
22nd December 2008, 15:30
But if I add sound before DGPulldown...
You want to encode it as elementary progressive stream at 25fps. As mentioned, more safe to assume that value in AviSynth before encoding. In DGPulldown type the accurate original framerate value as input and 25 fps for output. This will restore original duration after pulldown (the program will assume input value you type).

Darkvater
22nd December 2008, 20:23
EDIT: If I understand it well, I could make a 25fps progressive mpeg2 from my original AVI files, by creating AVI files with a play speed of 25fps (with assumeFPS(25) ). Then converting to Mpeg2 of cource. The resulted Mpeg2 will play to fast of cource, but I could fix this by adding flags with DGPulldown.... Is this correct?

/me waves.
You guys are going too fast for me :)

So how do I go around doing this exactly?
- deinterlace my video
- resize to 720x576 with Lanczos
- assumeFPS 25
- do whatever magic I want with Premiere
- transcode video (demux video/audio)
- use DGPulldown to convert 18fps of assumed 25fps video to 25fps through flags
- remux video/audio back

Tadaa, and everything is running in sync? Am I correct?

It sounds very interesting :D

P.S. in reply to VideoFred when editing in Premiere I use the 18fps source to get audio in sync, When I transcode the video I "assume 25fps" through avisynth. So everything will be out of sync. But then by using pulldown everything gets back in sync again. Right?

Darkvater
22nd December 2008, 21:06
Hmm... I am missing something I think or trying to do too much at once.


When I use AssumeFPS(25) in my AviSynth script of course my whole edit is gone wrong. Cutpoints, edits, dissolves, all are at the incorrect position.
Running pulldown on the avisynth file crashes the program
Running pulldown on avi file created by makeAVIS (of ffdshow) creates an output file, but Premiere will not open it, complaining about 'unsupported or damaged file'


:stupid:

Guest
22nd December 2008, 21:48
You missed the part where we told you to apply pulldown to the elementary MPEG2 stream. I'm afraid I cannot help you with integrating Premiere into the process because I don't know what "magic" you are talking about.

do whatever magic I want with Premiere

If Premiere lets you make a project at 18fps, then just do that and render it out (as am MPEG program stream). Then demux the audio and video. Apply pulldown to the video and then remux them. You'll have to stop Premiere from converting the frame rate.

Darkvater
22nd December 2008, 21:53
You missed the part where we told you to apply pulldown to the elementary MPEG2 stream.

Sorry, but it's all confusing to me :(
So I have to apply pulldown on the elementary MPEG2 stream. What is that? Is that my source 29.97fps video or the one I sent through my Avisynth script? I presume the second, but, as above, when I pulldown that file it refuses to load in Premiere :(

eg.
1. use avisynth to go from 29.97i to 18p
2. dgpulldown to 25fps of makeAVIS of avisynth file
3. open in premiere
4. error?

You could of course say that Premiere is at fault but have already done all the editing in there, months of work :(

Guest
22nd December 2008, 21:54
See my edit.

Darkvater
22nd December 2008, 21:59
See my edit.

Now I get it :) :thanks:

If Premiere lets you make a project at 18fps, then just do that and render it out (as am MPEG program stream). Then demux the audio and video. Apply pulldown to the video and then remux them. You'll have to stop Premiere from converting the frame rate.

I think I am in trouble for I cannot let Adobe Premiere output to 18fps (12.5, 15 and the next one is 23.976). Well, that sucks... thanks for the explanation though :)

(magic was cutting of video and adding sound...childhood 8mm films from 30 years back :D )

Darkvater
24th December 2008, 16:43
(back) which leaves me with only one more question ;)

What is the best way apart from DGPulldown to go to DVD? Shall I use ChangeFPS() to get 24p and have a progressive 24p dvd (4:2:2)? Or go the interlaced way of 50i by doing a 3:3:2? Or 25p by doing 4:2:2:4:2?

Dilemma's :P

videoFred
24th December 2008, 17:22
If you are sure about the play speed from your source (18), then you could try MVFlowFPS() to interpolate to 25fps.

Works great for smooth panning and zooming scenes. But it will show artefacts on fast moving objects. See my example clips on Vimeo.

Or you can change playspeed to 18,75fps and let your Mpeg2 encoder do the change to 25fps with fixed interlacing patterns.

Fred.

Guest
24th December 2008, 17:51
If you are opening 18fps in Premiere and it can output only 25fps, then you are screwed. There will be no way to stop it from converting the frame rate. Given that, there's no point to consider alternative ways.

Can't you output it as an 18fps HUFFYUV AVI and then do the MPEG encoding with HCEnc?

And don't ask for "best". It's a forum rule 12 violation.

Darkvater
24th December 2008, 21:32
If you are opening 18fps in Premiere and it can output only 25fps, then you are screwed. There will be no way to stop it from converting the frame rate. Given that, there's no point to consider alternative ways.
Grrr. stupid Adobe :(. So I'll have to convert to 25fps myself then I see.

Can't you output it as an 18fps HUFFYUV AVI and then do the MPEG encoding with HCEnc?
Well, the problem is that with Adobe I create the whole movie including menus, transitions, audio track, whatever (in Encore), and then let the whole suite encode everything so it fits perfectly with the best quality on the DVD.

And don't ask for "best". It's a forum rule 12 violation.
Sorry about that :p

If you are sure about the play speed from your source (18), then you could try MVFlowFPS() to interpolate to 25fps.

Works great for smooth panning and zooming scenes. But it will show artefacts on fast moving objects. See my example clips on Vimeo.

Or you can change playspeed to 18,75fps and let your Mpeg2 encoder do the change to 25fps with fixed interlacing patterns.

Fred.
Fred, those movies look absolutely awesome! Unfortunately my movies are only plain 8mm, and were not as fortunate as yours to get a very good quality transfer :). Which parameters did you use for MVFlowFPS()? If I'm at it already, at vmeo I see you have some cleanup filters, etc. active. Do you have the source of these scripts somewhere? Really interested if they help me :). I've had money to buy premiere/encore, but really don't feel like spending thousands of dollars on filters/effects that do this within Adobe.

Oh, and what is the reason for changing playspeed to 18.75 from 18fps?

... I really am a newbie :(

Guest
24th December 2008, 22:12
I don't think you're understanding me, but I'm going to let you find out the hard way. You'll learn more. :)

videoFred
26th December 2008, 07:49
Which parameters did you use for MVFlowFPS()?

None! Just the standard usage as explained in the docs. (num=25 of cource)


at vmeo I see you have some cleanup filters, etc. active. Do you have the source of these scripts somewhere?

It's a combination of DepanStabilize(), MVDegrain2(), LimitedScharpenFaster(), and MVFlowFPS().

MVDegrain2() followed by LimitedSharpenFaster is great for restoring old films!


I've had money to buy premiere/encore, but really don't feel like spending thousands of dollars on filters/effects that do this within Adobe.

Save your money... Avisynth is free :) Learn it!


Oh, and what is the reason for changing playspeed to 18.75 from 18fps?

(18.75/3)*4= 25


... I really am a newbie :(

We where all newbies when we started... I agree with Neuron: the best way to learn it is the hard way. But there's nothing wrong with asking advice. :)

Fred.