Converting PAL DVDs to NTSC


My parents went to France and brought back some "English" DVDs. Literally English — although they were region-free DVDs, they contained PAL video data.

Many newer DVD players sold in the US contain a PAL-to-NTSC chipset that does very good conversion in real time. But older ones don't. Below is how I attempted to work around this.
The description is, of course, how to do this with Linux or BSD or Mac OS. Apparently there are other operating systems out there. Incredibly expensive and incredibly buggy operating systems, so I don't see why anyone would use them.


Method #1

Extract the data

Load the DVD into the drive, mount it as /mnt/cdrom

Use dvdunauthor to extract the files.
$ mkdir /path/to/new/dvd
$ cd /path/to/new/dvd
$ dvdunauthor /mnt/cdrom
Note that it doesn't just copy the files. It reads the *.IFO files and others, and gives you a pile of MPEG files named vob* plus an XML file that describes the menu construction and how everything goes together. It dumps it all into the current directory, it does not build the DVD standard file system with AUDIO_TS and VIDEO_TS subdirectories.

Convert the data

Use ffmpeg to convert the MPEG files from PAL to NTSC. Allow plenty of time for this to happen.... Something like this:
$ for F in vob*
> do
>   ffmpeg -i $F -target ntsc-dvd -s 720x480 -r 29.970 new-$F
> done
That's about 30 minutes per 1 GB file on my system, so you're looking at maybe two to three hours of compute time.

At this point you need to see how much data you have created:
$ du -h .
Many DVD burning drives can read dual-layer discs but can only burn single-layer discs. Since dual-layer-burning drives are slightly more expensive, and dual-layer media is ridiculously more expensive, that's a common scenario for many.

If you have less than 4.4 GB of data,
Or if you have less than 8.5 GB of data and a dual-layer drive and media:

Create a new directory in which to build the new DVD file system:
$ mkdir newdvd

Do the conversion on those new MPEG files:
$ for F in new-*
> do
>   dvdauthor -o newdvd -t $F
> done
This runs much faster, just a minute or so per file.

If you have more data than will fit on one disc:

You will need to create two (or more!) subdirectories and use dvdauthor as shown above to convert some of the MPEG files into each directory.

Build the main table of contents

This table of contents file won't be a menu but will make it auto-play:
$ dvdauthor -o newdvd -T
Since you poured a number of MPEG files into the DVD in the above loop, the result should be one long auto-playing program.

Now, the documentation tells me that I *should* have been able to instead edit the XML file and then just do this:
$ dvdauthor -o newdvd -x whatever.xml
The result would be the original menus, now in the new video format.

However, dvdauthor complains about XML syntax errors, and it seems (at least with these two DVDs) that dvdunauthor produces something that dvdauthor cannot immediately use. That's surprising, since they're part of the same package...

Burn the resulting file system data structure


Method #2

The REAL way to do this is learn how to write the XML file, as described places like this: http://gentoo-wiki.com/HOWTO_Create_a_DVD and (at least partially) in the dvdauthor manual page.

But for now, I have playable NTSC DVDs.

Components for doing this in a better way include:


Now, my DVD/VCR deck (the infamous one I partly disassembled the night I purchased it in order to dub some old brittle VHS tapes to DVD) can do the PAL->NTSC conversion in its chipset. These PAL DVDs play fine on it, sending output to my NTSC-only TV. It's a fairly no-name Insignia NS-DRVCR. Goldstar (or whatever their name really is in Korea) makes them as the house brand for Best Buy.

I had to disassemble the tape cases, using the bottom half as a carrier to place the two tape spools and tape run into the correct relative positions. With a bit of manual "help", I could get the deck to load the tape. Then I could dub it onto a DVD.

DVD/VHS deck DVD/VHS deck DVD/VHS deck DVD/VHS deck DVD/VHS deck

The DVDs created with the above process have some artifacts. Motion of objects within the frame looks OK, but pans of the camera cause some artifacts on edges perpendicular to the direction of pan. Some is flicker of the entire edge, some is an exaggerated square saw-tooth effect. I think this comes from the conversion done by ffmpeg.

Ask Google something like
dvd region-free ntsc pal

and you see that there are a number of models available in the US that ignore the region code (or at least they claim to) and also have the PAL->NTSC chipset.

Also see another page of mine for a related project.


Radio topics — Ham radio, construction and repair, propagation, frequencies, etc

Various Technical Topics


Home Page Unix/Linux TCP/IP Infosec Travel Radio Site Map Contact
Use /bin/vi! Manipulate images with ImageMagick! Hosted on OpenBSD
Hosted on Apache Valid XHTML 1.1! Valid CSS!
© Bob Cromwell Jan 2009. Created with /bin/vi and ImageMagick, hosted on OpenBSD with Apache.    Root password available here