Subscribe to AfterDawn's weekly newsletter.
| Convert PAL to NTSC | Viewing Page 4 of 5 -- Go To |
Overview | |
| Difficulty | Advanced |
| Progressive PAL to NTSC (23.976fps) | Very Good |
| Progressive PAL to NTSC (29.97fps) | Good |
| Interlaced PAL to NTSC (29.97fps) | Good |
PAL to NTSC using AviSynth
Unlike the other programs covered so far, AviSynth isn't an all-in-one type solution. It doesn't handle video or audio encoding. It can't author DVDs. It doesn't even have a standard GUI for an interface. What it does have is one of the biggest feature sets of any video editing program, including many built-in filters and a number of plugins written to work with it.
Although scripting with AviSynth can get as complex as you're prepared to make it, basic operations, like converting PAL to NTSC, are very straight forward. More importantly, your approach can be tailored to suit your source and destination. This allows you to stick with a single program for all your conversions.
Required Software | |
![]() | AviSynthAviSynth is a powerful open source video editor, commonly used to provide input for encoders such as Cinemacraft Encoder for MPEG-2 and x264 for AVC. You can find more information on AviSynth in our guide on Using AviSynth 2.5. It includes not only basic instructions for AviSynth, but also descriptions of a number of built-in filters, as well as third party plugins. |
![]() | AvsPAvsP is an editor for AviSynth files. In addtion to automating the process of script creation, it provides syntax highlighting to make AviSynth scripts more readable. It also includes a tool called Avs2Avi for creating actual AVI files from scripts. |
Optional Software | |
![]() | DGIndexDGIndex is the latest update to the classic DVD2AVI program and can be used to help AviSynth read MPEG-2 sources. |
![]() | SBDeintSBDeint is a smart bobber plugin for AviSynth. Smart bobbing is a form of deinterlacing that's particularly well suited for interlaced video. |
![]() | YadifYadif is a smart bobber plugin for AviSynth. Smart bobbing is a form of deinterlacing that's particularly well suited for interlaced video. |
Progressive PAL to NTSC film
When dealing with progressive PAL video you have a couple of options to consider. The first, and most important, is whether to slow it down to 23.976fps. When film sources are encoded for PAL it's common for them to simply be sped up a little to produce the desired framerate (film is 24fps - PAL is 25fps). You can use AviSynth to reverse this process, but you need to remember that this will require altering the audio speed as well. If the audio has more than two channels this can be a major undertaking so you should consider it carefully.
Rather than slowing the video down, you may prefer to simply resize it to the proper NTSC resolution and add Pulldown to make it play at 29.97fps. You can find instructions for that later in this guide. Read Page 5 for pulldown of MPEG-2 files or Page 6 for Pulldown of MPEG-4 (AVC) video.
PAL to NTSC film Conversion - No Slow Down
Even if you choose to use Pulldown flags to change the framerate, you'll probably want to resize the video to match one of NTSC's standard resolutions. Depending on what your final format will be that could be 720x480, 704x480, 640x480, 540x480, or even 480x480. A script to do that would look something like the following (the bolded parts are the resize operation):
MPEG2Source("MyVideo.d2v") |
PAL to NTSC film Conversion - With Slow Down
Maybe returning your film content to (nearly) it's original framerate is important to you. That's where you want to use AviSynth's AssumeFPS filter. AssumeFPS will simply change the video's playback speed without creating or destroying any frames. When you use AssumeFPS for this you'll also need to slow the audio to keep it in sync. If you have a surround sound audio stream this may be prohibitively difficult. For two channels or fewer it's as simple as telling AssumeFPS to keep the audio in sync, and then resampling afterward, like what follows. Once again the bolded part of the script is what you should be looking at:
#Load Video/Audio file |
The second filter, SSRC() resamples the audio to 48000Hz, which is standard for DVD and most other digital video applications.
Progressive PAL to NTSC
If for some reason Pulldown isn't an option, you can emulate the pulldown pattern with AviSynth. Doing this will mean encoding your video interlaced, which will increase the size of your final encode or lower the quality.
The pulldown pattern you'll need to emulate is 2:2:3:2:3, which means the first frame is displayed, followed by the second, then the third, and then half the third again and half the fourth. After that the other half of the fourth plus half the fifth become one frame, followed by the entire fifth frame. Just like Pulldown, this will introduce judder to the video, but if you're used to watching NTSC video you probably won't even notice.
Here's an example script:
#Load Video and Audio Sources |
Here's an example of that script in action.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| Learn about using AviSynth to encode video | |||||
| Encoding From DVD to AVC with AutoMKV | Using AviSynth 2.5 | Convert DVD to XviD with meGUI | |||
| DVD Rebuilder Free Basic Operations | AvsP - AviSynth Made Easy | ||||
Interlaced PAL to NTSC
There are many ways to convert between PAL and NTSC, and it's fair to say AviSynth can probably be used to accomplish most of them. For interlaced video it's especially nice to use because you can keep as much information as possible by using a process called Bobbing.
Bobbing
Bobbing is a special kind of deinterlacing that involves every frame being separated into individual fields, and each field being turned into a full size frame. It gives you twice as many frames as the original video source. By using a smart bobber like Yadif or SBDeint you can get very good results using this method.
#Load video source |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Continued On Page 5The last section will get back to an easier method. Instead of actually changing the video's framerate, we'll look at using pulldown flags to make it play at the speed we want. Next: MPEG-2 PAL to NTSC using Pulldown | |
| Convert PAL to NTSC | Viewing Page 4 of 5 -- Go To |
Written by: Rich "vurbal" Fiscus
Last updated: 16 March 2009
Last updated: 16 March 2009




























