Tue Jul 14 07:32:58 PDT 2015

How to Make a DVD from a Set of MPG/MP4/M4V/FLV Files

When you have collected a set of mpg's from flv's from YouTube and similar places - how do you make your own DVD or make a DVD to give to a friend or relative?

Here we are talking about a normal DVD that you can play on a normal DVD player - not just on your computer - which can be convenient. Typically TV screens lead to nicer images than computer screens and they are designed to be viewed from many angles. It has to be said that the quality of the video is limited to the quality of the input flv (flash) file. Typically this is not as good as HD video - so be prepared for that.

To make a DVD proceed as follows:

ffmpeg -i normal.mpg -target ntsc-dvd dvdmpg.mpg

This converts your normal mpg into an mpg suitable for inclusion in a DVD. If you are in Europe or Japan, you will need to adjust the ntsc-dvd argument. The conversion takes a little while - so you will probably want to leave that running while you do other things. If you don't have an mpg input file - ffmpeg will determine the file type from the extension and generally it will do the 'right thing' - so proceed accordingly if your input files are mp4, m4v, avi, or flv (etc.)

The next step involves creating the directory structure and file contents of your DVD. The DVD format is quite fussy - and DVDs which do not have the correct format are not recognized by normal domestic players. So, use the 'dvdauthor' command to create your DVD layout. This is simple - you will get a simple continuously viewable DVD without menus etc. if you following these instructions. If you explore the documentation for dvdauthor your can create more sophisticated DVDs too.

So create yourself a little xml file which describes your DVD.

This is what the file (dvdauthor.xml) looks like:

<dvdauthor>
    <vmgm />
    <titleset>
        <titles>
            <pgc>
                <vob file="temp1.mpg" chapters="0" />
                <vob file="temp2.mpg" />
                <vob file="temp3.mpg" />
                <vob file="temp4.mpg" />
                <vob file="temp5.mpg" />
                <vob file="temp6.mpg" />
                <vob file="temp7.mpg" />
                <vob file="temp8.mpg" />
            <pgc>
        <titles>
    <titleset>
<dvdauthor>

Then use the xml file above to create the directory structure for the DVD:

dvdauthor -o example -x dvdauthor.xml

Then use the mkisofs command to create the .iso to burn your DVD:

mkisofs -dvd-video -o example.iso example

You will be left with an iso image file of your DVD that you can then burn to DVD using your preferred DVD burning software...and that DVD will be a normal movie DVD.


Posted by ZFS | Permanent link | File under: bash