Alrighty, Jim. Let's start with required tools:
1.) A VFW DV codec installed on your system *
2.) AviSynth 2.5.7
3.) LeakKernel Deinterlacer for AviSynth
5.) Premiere AviSynth Import Filter (* optional, see below)
-- * Most systems only have the MSDV codec installed. This will not allow you to write DV AVI files from VirtualDub. If you want to save it out to a DV AVI file, you need another codec (Cedocida DV Codec, Panasonic DV, Matrox DV, etc.) that can write AVI files. You could also choose another compressor (such as HUFFYUV or Lagarith) if you would like to avoid lossy compression. There is another alternative to this using tool #5 listed above.
1.) Create an AviSynth script in notepad. (Please read the AviSynth docs if you don't know what it is, how it works, how to install it, etc.)
LeakKernelBob(order=0, threshold=10, sharp=true, twoway=false)
# uncomment the line below if your DV looks "washed out"
# (such as the Matrox codec with "Expanded" color space)
2.) Save the file from Notepad as "dv_film.avs"
3a.) Open the "dv_film.avs" file in VirtualDub. Go to "Video>Compression" and choose your compression options. Choose "File>Save as .AVI" ...
3b.) ... or, if you've installed the Premiere AviSynth Import Filter, you can import your "dv_film.avs" script file directly into Premiere and render it there, as needed.
IMPORTANT NOTE: This workflow is intended only for AVI sources (such as DV). I'll post an HDV variation of the workflow in due time. Stay tuned!
A note on the above: If you'd like to batch the creation of AviSynth scripts based on templates, try this tool:
Very handy and very easy to use!
When I saw the title of this thread, I was going to respond to the OP, "wait until Jim Simon and Dan Isaacs weigh-in, and you'll get a lot of your questions answered... " Then I opened the thread.
Good one, as this/these questions come up so often. When done, anybody, who bothers to search will have a wealth of info.
I use DVFilm maker and love the results. As you say not perfect but at least it's easier then going through a ton of conversions.
Also it's a great deal at 149.00.
Second...if you take your footage into After Effects you can duplicate the layer and then set the top one to upper fields first and take the opacity down to 50 percent. Then nest that into a new comp you can change the frame rate to 23.976 in the interpret footage or you can use Andrew Kramers (videocopilot.net) frame rate converter to change to 23.976.
Hi Tlc --
> at least it's easier then going through a ton of conversions
The method I suggested has exactly one "conversion" -- this occurs when you either a.) write the file from VirtualDub or b.) render the timeline in Premiere, depending on which option you choose.
It a real great deal at $0.00! All freeware tools. Furthermore it can be customized in many ways and easily batched out as needed.
On the subject of batching, that's always one of my biggest problems in doing tasks like this in AfterEffects. Very tedious. There are also some things I don't understand about your suggested AE workflow:
1.) Duplicate layer/reverse field order/50% opacity is not really any different (as far as I can tell) to using one layer, interpreted as progressive with "Reduce Interlace Flicker" applied. It's sort of a poor man's deinterlacer, if you get what I mean. In this, you are throwing out 1/2 of your vertical resolution (through blurring/blending) AND you're loosing half the temporal resolution -- as you can get a nicer 24p from 60fps than from 30fps. Maybe I misunderstood something?
2.) I assume you meant "Composition Settings" and not "Interpret Footage" when you suggest changing the framerate to 23.976? Unless I'm mistaken, "interpret" would slow the clip down, right?
3.) I was unable to find Andrew Kramers frame rate converter but the same thing applies: You are then converting 30p -> 24p which won't look all that smooth.
OK, good start.
I've spent probably well over 100 man hours on testing various methods over the last several months, always trying to get just the right results. All have failed in some respect. I'll start listing my observations.
So far, this is my de facto method. It produces the most film like output with the fastest encoding time and few artifacts. The most noticeable are a flickering in tress and bushes, as well as brick walls during pans and other movements. I think the fine details of certain areas get less than perfect deinterlacing during the conversion process. Were it not for that flickering, which I do not get using VirtualDub to deinterlace, this method would really be near perfect.
The Motion setting of 40 seems to produce the best overall results for me (default is 50). I've noticed that as the number gets lower, the less of a film look you end up with (at 0 it looks completely like video), and as the numbers get higher, the more of a ghosting effect you get on moving objects.
I've also used the 24P tab of DVFilm Maker to convert my clips to genuine 24fps for use in a Premiere 24p project. This method produces some very nice results - on the computer, where it can be watched at 24 fps. But when I finally go to the DVD player, which adds it's own "pulldown" for display on TVs that can only show 30 fps, the results fall apart slightly. I found I get better results if I add the pulldown myself, such as when I do a normal conversion, rather than let the DVD player do it for me.
> flickering in tress and bushes, as well as brick walls during pans and other movement
A function of crap-o deinterlacing.
> Were it not for that flickering, which I do not get using VirtualDub to deinterlace...
An example of using decent deinterlacing. However, as VDub cannot "bob" and double the framerate (without help from AviSynth), you are essentially doing a 30p->24p conversion, which is not optimal.
> to convert my clips to genuine 24fps
As does my example. To add the pulldown yourself and put the 24p into a 30i container, add the following lines to the end of my example script:
SelectEvery(8, 0,1, 2,3,2, 5,4, 7,6,7)
I would suggest, however, letting the DVD player do the pulldown. First of all, it will only be done when needed --- displaying the original 24p on 720p/1080p HDTVs, etc. Actually, 24p is better for all upscaling TVs -- even at 1080i. Second, you get more "bang for the bitrate" when you encode MPEG2 at 24p vs. 30i.
Magic Bullet Frames:
I acquired this software because unlike DVFilm Maker, it works as a plug-in inside of Premiere. Because my normal workflow is to export out as a DV clip with chapter markers for use in Encore, I really liked that I could do this in one step, where as with DVFilm Maker I had to export out a DV clip, convert that, bring it back into Premiere and export again so the markers would be there for Encore.
(I have since learned that I can bring the original export into Encore complete with chapter markers, and then Replace Asset to use the converted version, leaving my chapter markers in place, so the "need" for a plug-in has gone away.)
Frames has two method of Field Interpolation - Motion and Blend. I don't understand the technical details of how they work under the hood, but there are differences in how they look on the screen.
Motion is the default setting. It produces a better look on diagonal lines and other details that might normally show some of the familiar "jaggies" of poor deinterlacing. But it has a tendency to produce too much stutter in the final output. It looks very choppy, very unnatural. This mode also has a problem during the fades of white titles on a black background, a pretty standard feature for any movie. The Field Smooth option does little to alleviate either issue.
The Blend mode produces much smoother motion and fades on titles, but it also generates those dreaded "jaggies" you see with poor deinterlacing. Setting the Field Smooth option to a fairly high number (50 to 75) does help with that issue, but it still never looks quite as good as either the Motion mode, or as good as DVFilm Maker.
Frames is also much slower to encode than DVFilm Maker.
In my quest for the ultimate film from video look, I also found the AE method described by tlc posted through the Internet. It does produce a much better deinterlace then either DVFilm Maker or Frames. The flickering/shimmering of fine details is nonexistent. But, the frame rate conversion is not nearly as smooth, and produces the same kind of unnatural stutter as the Motion mode of Frames.
The drawback here is that the stutter is readily apparent on every single scene, whereas the flickering of DVFilm Maker only happens with some scenes containing fine details. Thus, DVFilm Maker is still the best overall solution.
I also noticed that the layering of duplicate clips in AE changes the overall look, varying brightness and color saturation from the original. I suppose that's not unexpected, but it is unacceptable.
> I really liked that I could do this in one step, where as with DVFilm Maker I had to export out a DV clip, convert that, bring it back into Premiere and export again
OK Jim, I am getting a little confused about your intentions.
a.) Are you looking to convert clips to 24p and edit them in a 24p project?
b.) Are you looking to convert clips to 24p (in 30i) and edit them in a 30i project?
c.) Are you looking to use 30i clips on a complete 30i timeline and, post facto, convert this to 24p (optionally in a 30i container)?
From a visual perspective, using either the built-in deinterlace method, or the plug-in Smart Deinterlacer (thanks Dan for this tip), deinterlacing in VirtualDub provides the best overall visual results. There are no (or at least within acceptable limits, which for me is very high) interlacing artifacts. The image's brightness and color remain unchanged. There is no stutter.
What then is the problem with this method? Well, it does look more like film than straight video. I guess the "progressive" nature of film has a lot to do with the "film look". But it's not quite there. The motion still has that "too smooth" look of video. This method produces results free of artifacts, but a look that is sort of half way between film and video. Fideo I guess you could call it.
And like the AE method, this fideo look will apply to all scenes, thus leaving the occasional artifacts of DVFilm Maker as still the best overall method.
>I am getting a little confused about your intentions.
Simply put, I want my relatively inexpensive video to look like it was shot on much more expensive film. How I get there is the subject of this discussion. I'm open to any method that produces a film like look without creating artifacts.
Now, on to the testing of your suggestions...
> I'm open to any method that produces a film like look without creating artifacts
OK. I guess I mean your "intended workflow". You can use variations of my suggestion to get all of the workflow options I listed.
There's another option I forgot to list:
d.) Are you looking to use 24p clips on a complete 24p timeline and, post facto, convert this to a 30i?
If I were you, I'd look to do the editing in 24p... output to 24p.
I don't care if I edit in 24p or 30i, so long as the results look great. So far, I'm not overly impressed with putting a 24p clip on the DVD. Converting back to 30i before Encore has produced better results with the methods I've used so far. But I will test with your recommendations as well.
> So far, I'm not overly impressed with putting a 24p clip on the DVD
That's what 99% of Hollywood movies do. It seems the safest method to allow for different consumer equipment (and high-quality PC playback, too).
Frame rate converter
Jim, I find the best results to use DVFilm Maker to change to 23.976 exact and the ad the pulldown back in through DVFilm maker.
>That's what 99% of Hollywood movies do.
Not sure I agree with that. I think most Hollywood studios add the 3:2 pulldown themselves, making it truly 30i media on the DVD.
But right or wrong about that, putting a 24p clip into Encore has thus far produced lesser results than a 30i clip with the material I'm using. As I said, I will test that again with your methods.
Thanks for the link, tlc. I'll check it out.
OK, the whole Video Copilot thing, awesome! Great resource. Thank you tlc!
However, the linked to tutorial turned out not to be very workable. My first set of tests on a short clip showed the same stutter in the final output that I was getting from the other referenced AE method of duplicating clips and interpreting footage. (Why is it DVFilm Maker and MB Frames can smoothly interpret 30i to 24p and back to 30i again, but the much more sophisticated AE cannot?)
My second set of tests using a longer piece was stopped about midway through when I noticed it was going to take about an hour to render out 1 minute of footage - and that was with the settings on lowest quality draft mode! Even if the end result would have looked amazing, taking three days to render out a 90 minute wedding video is just not an option for me.
So, the search continues...
Might be easier to get a camera that does the job.
Oh, it definitely would be easier! But also much more expensive, which cancels that as an option. Thanks, though.
Maybe the Wedding world is not quite ready for the Film Look.
My clients seem to love it so far.
>My second set of tests using a longer piece was stopped about midway through when I noticed it was going to take about an hour to render out 1 minute of footage - and that was with the settings on lowest quality draft mode! Even if the end result would have looked amazing, taking three days to render out a 90 minute wedding video is just not an option for me.
Jim...try changing the pixel motion option. That is what takes all the render time. You still might get satisfactory results the the other option that render a lot faster.
> As I said, I will test that again with your methods
Sure enough, Jim. If there is something that you think can be improved don't hesitate to let me know. The beauty of AviSynth is that all things (more or less) are possible.
tlc mentioned "pixel motion" above: Well, that can be a great thing for smooth framerate conversions, but it seems to work better on source footage than on finished movies with cuts, transitions, titling, etc. (I am talking about AE's "pixel motion" and motion estimators in general).
On that note, there is a great plugin for AviSynth called MVTools, which performs all kinds of motion vector functions -- including things very like AE's "pixel motion" (but with more options). Needless to say, these can also be very slow -- but there are tradeoffs you can make to speed it up considerably.
One neat alternative is to use the MVFlowBlur() function to simulate motion blur. It is comparitively fast and can help smooth the motion a bit, simulating a longer shutter speed.
Here's a variation of my earlier AviSynth script using this technique:
source = AviSource("c:/path_to/dv_30i.avi", pixel_type="rgb32")
source = source.ConvertToYUY2()
source = source.LeakKernelBob(order=0, threshold=10, sharp=true, twoway=false)
backward_vec = source.MVAnalyse(isb = true, truemotion=true)
forward_vec = source.MVAnalyse(isb = false, truemotion=true)
source.MVFlowBlur(backward_vec, forward_vec, blur=50)
# uncomment the line below if your DV looks "washed out"
# (such as the Matrox codec with "Expanded" color space)
# uncomment the next two lines to add pulldown (NTSC 29.97i)
# SelectEvery(8, 0,1, 2,3,2, 5,4, 7,6,7).Weave()
Again, this is only one possibility. There are many other ways to trade off speed/quality, smoothness/sharpness, etc.
I still maintain that it would be better to perform these conversions on your source clips and edit in 24p. Even if you decide that you want the final DVD to be 29.97i, it would be easy and fast to perform the pulldown on the final 24p timeline.
EDIT: Also, Jim, can you tell me what DV codec(s) you have installed on your system? There are some optimizations I can make to the script (reducing the number of colorspace conversions), but these are dependent on your DV codec to a certain extent.
>.try changing the pixel motion option
I did. It was already on the faster rendering Frame setting, and still was taking about an hour for a minute of video. I never got to try the Pixel Motion setting.
>can you tell me what DV codec(s) you have installed on your system?
MS and Panasonic.
> I think most Hollywood studios add the 3:2 pulldown themselves, making it truly 30i media on the DVD.
Well, I just grabbed a few movies at random: Rescue Dawn, Knocked Up, Hostel Part II... all 3 are encoded as 24p according to GSpot.
That discussion we can save for another time. My point here was that with my material, putting 24p on the DVD has been less successful than adding my own pulldown. I haven't had a chance to test your suggestions yet, so we'll see if my observation still holds after I do.
> My point here was that with my material, putting 24p on the DVD has been less successful than adding my own pulldown
I am not arguing with your observations. It may well look better on your setup. However, this is making some assumptions about other people's setups. More and more folks these days have progressive displays and/or upsampling DVD players. For them, true 24p will look much nicer. Progressive video is a lot easier to resize (see the HDV -> DVD thread).
Futhermore, I would never rely on a DVD player or HDTV to remove pulldown: Adding telecine is much simpler than removing it, and every NTSC DVD player can do it. IVTC requires the player to determine which frames are progressive and which are interlaced -- and then it must deinterlace them and interpolate the missing field. For people with progressive scan setups, results will vary greatly.
> I haven't had a chance to test your suggestions yet, so we'll see if my observation still holds after I do
That's a possibility also: If your process is poorly interpolating fields from 30i -> 24p (due to bad deinterlacing) then I imagine it will look even worse when the bogus fields are duplicated for pulldown.
>For them, true 24p will look much nicer.
That test is also in the works. My cousin has a progressive player and TV I can test with.
I'm still waiting, Jim... I'd really love to make a basic 24p workflow page (and an "advanced" script) like I did for the HDV -> DVD conversions but I'd like to get your feedback first.
I can make a function that does whatever you want. Let me know any ideas you have for parameters that can be passed to script to customize the output.
Sorry, I'm fighting a deadline and time is somewhat limited.
I started off with an error in line 1. The video decompressor couldn't produce RGB32 output. So I tried it without that and then it threw up an error that it couldn't find LeakKernelBob. There is no information in the Leak Help file about where or what to unpack the .zip file to. Copying the entire folder over to the AviSynth plug-ins folder did not work.
I see why people prefer their GUIs.
My first onset 35mm experience, 'The Delinquents', was now twenty years ago. Since then I've amassed a pretty good resume working in 'Hollywood on the Gold Coast', Australia. I've cut my teeth on film and over the last ten an increasing number of digital productions. I feel a lot of people would be dumbfounded by the number of big budget US films, produced in AUS, that are shot digital. So here's my 2 cents - if you want the film look, shoot on film. It isn't any cheaper when considering the cost of big boy 'professional' post/editing systems used by big budget entities. One tip I picked up from this New Zealand scruff though was 'slow it down $^%*@!'. CS3 has a fantastic 'Time Remapping' feature, use it. Does it give a film look, no, but I feel it comes close. Actions seem more thought induced, quick glances become mental conversations, there's more time to admire the feminine form, lets all remember sex sells. It gives the whole sequence an air of more human than human, improving the actors depth and emotional range.
> The video decompressor couldn't produce RGB32 output
That's probably because of the Panasonic DV codec you have. I haven't used that in many years. So, simply use this instead:
> There is no information in the Leak Help file about where or what to unpack the .zip file
Right. There is information in the AviSynth docs:
In short: Place the LeakKernelDeint.dll file in the AviSynth\plugins folder. Usually AviSynth is setup to autoload plugins in this folder. If it still throws an error, then add this as the first line the script:
> I see why people prefer their GUIs
God know nobody's ever had an codec or plugin error occur in a GUI app before, right?! Please.
>It isn't any cheaper when considering the cost of big boy 'professional' post/editing systems used by big budget entities.
In my own case, I'm just doing wedding videos here, man. Shooting video and faking film actually is a hell of a lot cheaper than shooting real film.
I did finally get the script working with the plug-in and had the chance to review it on a regular DVD player and TV (no progressive output). In all honesty, so far it's probably the worst looking option. The interlacing artifacts in the trees and bushes are worse in the AviSynth processed file than any other option I tried, especially if I left it at 24fps and let the DVD player add the pulldown.
Adding the second part of the script to turn it back into 30i before import into Encore did help some, but the artifacts were still worse here than with any other option I've listed.
I don't know, maybe some parameters need adjustment? The whole script thing is new for me, and I'm still reading.
The other issue I noticed was a slightly unnatural ghosting/blurring on the converted footage. Much like too high a motion setting on DVFilm Maker produces. It did look more like film than video, to be sure, but it ended up having more artifacts overall than any other method I've tried so far.
Hi Jim --
Thanks for taking the time to check it out. I have lately become aware of artifacting with LeakKernel also and it is quickly losing favor with me. It's faster than a lot of other options, but... Like I said, there are many options here.
I am leaning towards SmoothDeinterlacer again for "fast" deinterlacing.
Example #1 (using SmoothDeinterlacer):
There is also the option of using MVBob() -- a very good (but slow) deinterlacing function written by "Scharfis Brain". You can download my repackaging of the sources. (just copy all the files in the "plugins" folder of the .zip to your AviSynth plugins folder.)
Example #2 (using MVBob):
As I said, MVBob is slow but the quality is very nice. Jim -- your 90 minutes won't take 3 days, but maybe 1 day on a fast machine :)
Thanks. I'll give the two options a go and report back.