Digital Digest
  • About the Author
  • Email
  • Disclaimer
  • Essential Links
  • Essential Tools
  • Ethics, Piracy & Philosophy
    Convert DVDs with Flask Mpeg
  • Extracting the DVD
  • Using FlasK Mpeg
  • Resizing in Flask
  • Convert DVDs with Mpeg2avi
  • Extracting the DVD
  • Using Mpeg2avi
  • Resizing in Mpeg2avi
  • Advanced DVD Conversion
    Convert DVDs with DVD2AVI
    Nandub SBC Encoding
  • Using Nandub
  • Using DivX 4.0
  • Audio / Video Editing
    Advanced VirtualDub
    Digital Video Capture
  • Video Capture: Part 1
  • Special FX Tutorials
  • Morphing Buffy Style
  • Star Wars LightSaber Effects
  • The Exorcist Effect
  • Other Video Formats
    VCD & SVCD Guides
  • DVD to VCD
  • AVI to VCD
  • Multimedia Guides
  • DivX with Subtitles
  • Mutilanguage DivX
  • Multimedia DivX Pt 1
  • Multimedia DivX Pt 2
  • Appendix / Tips
  • Aspect Ratio's
  • Resizing DVD's
  • DivX Quality Guide
  • Bicubic vs Bilinear Resizing
  • Deinterlace Method Test
  • Video Comparisons
  • WM8 Quality
  • Basic DVD Structure
  • NTSC / PAL & Interlace
  • AVI 4GB Limit
  • Key Frames & Delta
  • Monitor Setup Guide
  • FAQ's
  • Questions Answered
  • Downloadable PDF Guides
  • Glossary
  • Word Definitions
  • My Guides Translated
  • Go Here
  • How to Create a Multimedia DivX
    Part 2: Creating Menu's
    "Some believed we lacked the programming language to describe your perfect world. But I believe that, as a species, human beings define their reality through suffering and misery. The perfect world was a dream that your primitive cerebrum kept trying to wake up from. Which is why the Matrix was re-designed to this: the peak of your civilization". - Agent Smith (From the Matrix)
    If you want to download the Matrix menu example I have made, I have uploaded it to Myspace at:
    Password: menu
    WARNING: If you can't download it its tough! Myspace is a Bunch of Crap! I'm looking for a better place now.
    Unfortunately, you have to join myspace.
    The zip file is 13MB and contains all the pictures and video animation, subtitles and INI files. It will play in MicroDVD player but when you click on the play movie or specials they wont play because I'm not uploading 650MB's of the Matrix just to show the menu....well, I could, no...I'd better not..he, he! Anyway, its chopped into two parts and needs to be rejoined with HJSplit which is also found in the myspace folder. I hope you like it.


    In my last tutorial I explained the basics of creating a DivX that had chapter listings, subtitles and alternate language options. All these extra features rely on the MicroDVD Player. Now I have decided to finish the job and explain how to make those cool menus that every DVD seem to have. These menu rips will almost completely match those of the original DVD's. In fact, if someone didn't know any better they probably wouldn't even be able to tell that your film wasn't a real DVD! MicroDVD Player is even able to present menu links over the top of moving film sequences just like the kind you would get in such films as The Matrix - truly amazing stuff!

    I'm sure after this goes on line a whole host of tutorials will appear teaching the would be DVD ripper all they need to know about menus 'n' stuff, just like they have with many of my guides. It doesn't bother me so much because it still helps to teach others and will bring a higher percentage of good quality rips for everyone ;^)....But just remember one thing, you learnt it first on the Digital Digest website! Don't let anyone tell you different!

    Obviously Locutus is a man who doesn't like to settle for second best =^). The MicroDVD Player has functions that are able to mimic a real DVD almost exactly in terms of features. But these features came at a cost, namely, that that we learn how to create a correct .ini file to use them :^(.

    Actually, these menus 'are' all pretty easy to do. The only real problems are keeping track of what you are doing. You will be testing your newly created .ini file and the MicroDVD Player will come up with a vague error message in German! This is where it can get very frustrating! Usually it is just a minor mistake that was made, but if you are doing a very complex menu system with actor profiles and other special features etc., then it can take a long time to track down the problems! Sometimes a helpful message will pop up telling you which line in the .ini file has the error. In this case just count down the lines and check the settings in this area of the text file.

    Note: I would recommend that you have the original MicroDVD documentation handy for quick reference. If you haven't already read through it, it may be an idea to have a quick browse for a while first to get the general idea of what it is capable of. That documentation explains in full detail ALL the features.

    Before I start you will need:

    MicroDVD & INI Editor

    Basic Concepts

    First we will restrict ourselves to a boring set of pages with no animated sequences. Open up the MicroDVD Ini Editor, like we did before, and lets get better acquainted with the controls. Press the new page button and up pops this windows again. Right-Clicking on any Menu area (ie. Main, Movie or Menu in this case) you will bring up a list of useful options. These are not always vital but are there to save you having to type out all the commands. As you can see here I have set up a basic demo .ini file with the Title 'demo'. The CD ID is just 123, use any numbers you like. I have put the Movie inside a folder on my CD and called it Video. So under the Movie section I have to tell it Directory=Video, duh! The actual file inside the video folder I called 'film.avi' so I had to tell it where that was too. All this you should already know by now though.

    Menus are created just like web pages, so if you understand how to make a web page then you have a head start. The 'MENU' box at the bottom of this ini editor is only there to explain where the "web pages" are kept and a few other minor details. It has nothing to do with the actual set-up of the pages. You have to imagine this menu box as just a bunch on links to your 'real' pages. If you Right-Click and select 'Insert Default Entries' a whole list of things will be pasted into the box. This is like a questionnaire that needs to be filled out. Any settings that you do not want or need can be deleted in the same way you would in any word processor. Lets go through the options I have:

    Directory=Menu. This is the Folder where I am going to keep all the Menu "web pages". You can, of course, just whack everything on the CD without any folders but I think keeping them in folders makes it easier to see what you are doing. Everything related to menus, all your film sequences, all your pictures and so on, must be kept in this single folder. If you have no folders it will assume they are just on the CD and not in a folder.

    Size=800, 600. This is the size of the menu pages that will be displayed. I have selected 800 pixels across by 600 pixels down which is one of the PC standard resolutions. You can also try 640 x 480, 1024 x 768, 1152 x 864 or whatever you like. If you are using a movie sequence for your Menu you do not need to set the size because it defaults to the movie size.

    StartPage=1. When you start your DivX playing, MicroDVD needs to know which menu page to show first of all. From this page the rest of the menu pages can be accessed. All pages you create are given a number so I have chosen page 1 as the start page. This can be likened to a websites Home Page.

    MenuPage=1. The Menu page is the page that contains all the menu options. This is different from the StartPage only in that MicroDVD will go automatically to this page when you stop the movie or when it ends, whereas the StartPage will only appear when the CD is first inserted. I have chosen page 1 again; this means that both the MenuPage and StartPage are the same page, which will contain all the selections that both need.

    AudioName=. For those boring DVD nav menus that have no animated pages and no sound, you can specify the name of an audio file (WAV, MP3 etc.) here that is played as background audio whenever the menu pages are running.

    Note: The AudioFile is played only when the page being displayed is a still image. When a video page is active, the Audio file is paused and restarted when a still image page is active again.

    ChaptersPage=2. Since MicroDVD has special chapter selection buttons it likes to know where these Menu pages are too ;^). No big deal, if you have a chapters page say which page number this is. If you don't have chapters just don't put this line in.

    SpecialsPage=3. Specials are the additional movies you get on a DVD such as the Making of the Film or extra scenes that were cut out of it to fit it into a time slot. If you have any special features on the DivX then you can tell MicroDVD what page to display first to let the user select these options. Specials can also be where, like in the Matrix, you are given actor profiles and so on to read. These are all done as separate "web pages" just like anything else. If you don't have any Specials just don't put this line in.

    Okay, that's it! If you always keep pages 1, 2, 3 & 4 as your start, menu, chapters, and specials pages then you will never go wrong ;^). So lets start making our pages.


    Creating Menu Pages

    Menu pages are literally nothing more than a picture (or film sequence) with links on them! If your original DVD has just pictures for its menus, instead of any animated stuff, I would strongly suggest you just rip those from it =^). The easiest way to do this is to navigate the menu using PowerDVD (or any other player that allows image capture) and hit the camera button to take a snap of the screen. Open a good Paint Package such as Adobe Photoshop, Paintshop Pro etc., and select Edit > Paste. Then save your grabbed page.

    If you are not lucky enough to have these rather expensive Paint Programs there is a free program called IrfanView which does the job excellently check out my dowload section. I recommend that you save each page as highest quality JPEG to save memory unless the image sharpness is absolutely vital. If you don't have PowerDVD you could try hitting the "Print Screen" button on your keyboard and then pasting it.

    I'll probably say this again but it is helpful if you know. If you have an animated menu AND use still pictures in your menu too, the pictures must be the same resolution. So if your animated menu movie clip is 640 x 480 then your still pictures must also be saved as 640 x 480 images.

    There are many ways to rip the menu's from a DVD. As you probably know, both the animated menu's and the still pictures are recorded as a single movie. For still pictures this movie will look rather like a slideshow when played back. The DVD .ifo file knows what parts to play back but all we get when we rip it is the movie. Anyway, this movie is usually the smallest Vob file on the DVD. If you just want to use still pictures encode it with uncompressed AVI or Huffyuv MJPEG for highest quality. If you want an animated DVD start up to your DivX, encode it like any other DivX movie. When done you can get the pictures by opening the DivX movie in VirtualDub. Then you can chop out the movie sequance as you like. Then to get still pictures, move to the picture you want in VirtualDub and choose Video > Copy source frame to clipboard. Then paste it into Paint Shop or whatever art package you are using.

    I will explain how to do still picture menu's first.


    Building Menu Links

    Lets take a gander at the ol' Pages+Selections section of the MicroDVD .ini Editor. Now don't get confused here, ignore all lower boxes. The Picture File selector Box and the Movie File Boxes are only there to help you quickly reselect stuff you have already made. The same goes for the larger box in the middle that has 1: 2: 3: in my example picture. That bit is only to help you jump from one page to another, you can just as easily scroll down to find the section yourselves. In short, the only box that concerns us now is the top one. Right-Clicking on the PAGES+SELECTIONS heading brings up the list of options seen on the right of this picture. They provide some very useful functions indeed. Ignore the New PAGE and SELECTION Wizards as they will soon get confusing and they will only do what we are now anyway.

    Lets make our first page. Right-Click and select insert PAGE Section. A whole bunch of crazy crap will suddenly appear i.e:

    Go to the [Page=] bit and tell it the page number you are creating, in this case it is page1 so you will put [PAGE=1]. For now, delete all other options except these vital ones:

    Background Mode=. This tells MicroDVD this page will display either: 1 a video sequence or 2 a picture. Since we are only dealing with pictures choose 2. So we put: BackgroundMode=2.

    PictureFile=. Most importantly this tells MicroDVD what picture this page will display. So choose your main menu picture; mine was called main.jpg so I put PictureFile=main.jpg. If you cannot remember what you called the picture, Right-Click after the "=" part and choose the option 'Insert Picture File'. It will then let you browse for the picture you want. Select the picture and click Open. The correct name will be put in and you will notice that the .ini Editor also opens this picture to show you what it looks like. If the picture gets in the way just close it for now.

    PictureDuration=. MicroDVD lets you set how long the current page will be displayed. This time period is counted in seconds, so if I put: PictureDuration=10 then the picture would display for ten seconds only. If you put: PictureDisplay=0 the picture will display forever until you choose a link on it. If you do choose to set a time bracket in which to display the picture you must add for your next line the page that the picture will go to after the time limit has run out. This is done by putting: JumpAtEnd=. The number after the "=" represents the page it will jump to. So to recap, to make a page 1 display for only 10 seconds and then jump to page 2, you put:


    SelectionAvalable=. MicroDVD must know if this page contains any links that the user can click on. 1 means Yes, 2 means No! We want to add some links to this page so we will choose: SelectionAvalable=1.


    Creating Page Links

    So you have created your first page: the Menu Page. Now we have to add links on this page. Right-Click under the page text you just created and choose 'Insert SELECTION section' this will bring up another bunch'a'crazy crap =^) (see below picture). Number the selection heading by putting a 1 after the "SELECTION=" sign just like we did with the Page Section. In other words it should read [SELECTION=1] but any number will do providing you don't use the same number for another selection on the same page.

    It is important to remember also that, although the [SELECTION=] heading looks like a separate page (because it has its own heading), it is actually still part of the [PAGE=] section above it. ALL [Selection=] details found underneath a [PAGE=] heading belong to the page above. To illustrate, look at the example below. In this example selections 1, 2 & 3 all belong to page 1 whereas selections 1 & 2 below it will belong to page 2.


    A selection is basically another name for a Link. The commands that are put underneath each selection heading will either take you to another page, or perform some kind of action such as starting your movie. Under the Selection heading you will usually have the following options:

    Area=. This is literally the position of the link on the screen. It is defined by four numbers representing the four points of an imaginary box surrounding the text or icons on the page. I will show you how to get these Area Positions very soon.

    Action=. This tells MicroDVD what will happen when you click on this link on the page. Each action is given a number thusly:

    1. Go to Page
    2. Run Movie
    3. Go to Chapter
    4. Display Message (in pop-up box)
    5. Run Special Feature (movie)
    6. Change Language
    7. Change Subtitles
    8. Return to Movie

    These options need no detailed explanation, but if you need more details on using them check out the MicroDVD documentation.

    If you Right-Click after the "Action=" sign and select the 'Insert Action Number', it will let you pick which option you want to use as your action and paste it in.

    Parameter=. This command is directly connected to the Action= function. If, for example, you chose Action=1 which means 'Go to a Page' the only way it will know what page to go to will be if you tell it the page number in the Parameter= part. So if I want a link to take me to page 2 I would put the following:


    Note: CopyFrom= is an advanced option just delete it for now! What does it do? Well if you find that the settings for each page or selection are almost identical except for a couple of settings, you can then set CopyFrom= to the page number or selection number that is almost the same. MicroDVD will automatically use those settings as default for the CopyFrom page. Then any commands you put after the CopyFrom= page will override the ones that were copied. See the MicroDVD documentation for a full explanation.


    The Link Position

    Lets define a link for page 1. We have already inserted our selection (link) and our page looks like this:

    Note: Don't forget the above is just one page, the selection part under it is just the properties of the first link on the page!

    Okay, open the 'menu.jpg' picture by going to Edit > Open Picture File.

    Up pops the Main Menu picture that you ripped from the DVD. We need to put the position of the first link (Chapters link) after the 'Area=' option. So use the mouse to drag a mask box across the word 'Chapters'.

    Now, Right-Click just after the 'Area=' option in the .ini editor and choose: 'Acquire Area From Picture'. MicroDVD ini Editor will now paste the position you just highlighted:

    In the picture above I have set the PictureDuration to 10 so it will jump to page 3 after 10 seconds. For a page that doesn't move choose PictureDuration=0 and don't add the JumpAtEnd= at all.

    Note: If you are making a video sequance as a menu instead of a picture, the easiest way to find the positions of the text on the video is to capture it as a picture first (with VirtualDub not MicroDVD) and then open it in MicroDVD to get the position. But more about video menus later.

    Since this link will take us to another page that contains the chapter listing, we will set its action to 1 (ie. Go to Page) and the Parameter will be 2 (2 is the chapters page number). It will look like this:


    Your Next Link

    Now do the same again for your next link on this page ie:

    1. Choose 'Insert SELECTION section' and number the selection ie: [SELECTION=2].
    2. Highlight the area of the next link on the page and choose 'Acquire Area from Picture'. The next in my list is the 'Specials' "page".
    3. The action will be Action=1 (go to a page).
    4. And the Parameter=3 (it will jump to page 3 which is my specials page).

    And do the same again for the next link on this page and the next and the next until all the links for your page have been done! Now that the links on your page are finished you can start on page two.

    Page 2

    Start page 2 the same way you created your first recap:

    1. Right-Click and choose 'Insert PAGE section' and put the number of the page ie [PAGE=2].
    2. Set BackgroundMode=2 (picture only page).
    3. Set the PictureFile=chaps.jpg (my chapters page picture is called chaps.jpg)
    4. PictureDuration=0 (picture will stay on the screen until a link is clicked)
    5. SelectionAvalable=1 (Yes, you want to be able to click on the Chapter links)

    Once that is done you can add your links again as described in the "Your Next Link" bit above.

    Continue to do this with every page you make just like you did before. Essentially that is all you need to know to create a very complex menu system with just pictures - so go for it!


    Advanced Page Options

    Okay, that's about it for pages, I'm not gonna spoon feed you on this one =^). Just mess about with all the settings until you make a working set of pages. But perhaps I had better briefly explain some of the more advanced options pertaining to page creation that you may have missed.

    ActionAtEnd=. Remember I explained that the 'JumpAtEnd=' option will automatically jump to another page once a certain time limit is up. Well, the action at end is almost the same except instead of jumping to another page it will perform an action. You use the same action numbers that you would for a link action. So if you were to say:


    This set-up would will wait for 10 seconds and then Run the movie from the start. Other actions are:

    1. Go to Page
    2. Run Movie
    3. Go to Chapter
    4. Display Message (in pop-up box)
    5. Run Special Feature
    6. Change Language
    7. Change Subtitles
    8. Return to Movie

    Note: Links can also trigger multiple actions. For that purpose, the Action entry can hold multiple numbers, separated by a "#", e.g. "7#1" to change the subtitle and then jump to another page. The parameters also have to be separated by a "#". Remember that the parameter for action 4 (Display Message) not contain "#" characters as they would be interpreted as parameter delimiter.


    Creating Animated Menu's

    You would think that creating an animated Menu system would be much more difficult than just doing pages, but actually there is very little difference! All pages and links are done exactly the same, except instead of opening a picture to define where the links are found, you just open the video clip. You will select your Link areas just like you would on a normal picture =^). But instead of using the 'Acquire Area from Picture' option, you will Right-Click and use the 'Acquire Area from Video' option. Easy huh! Because of these similarities I will only explain those details that I haven't already explained concerning video backgrounds. If I don't do it this way my short article will turn into an entire book or something!

    All video sequences used for the menu backgrounds must show the links as part of the actual film. This is important because MicroDVD doesn't let you display any text other than subtitles over the top of a video sequence (unless I've missed something?). So if the original DVD has movie clips with the links already pasted on top of the movie screen then you are in luck. Otherwise you will need to use a professional Video Editing package to edit your video sequences and place text over your video clips, and re-save them like that.

    Another thing that is very important to remember is that all video sequences that you use in your menu backgrounds must be the same .avi file! In other words, if you have three different sequences and wanted to use one for each page, you must merge them together into one single file first. Let me just say that once again, you only get ONE video file to create all of your menu backgrounds with! This being the case, if you have more than one film sequence you want to use, you must take all the sequence avi files and merge them together using something like Peck Power Join. Power Join should work okay with these files because your intro sequences must be pretty small files anyway. If not, try merging the .Vob intro sequences together into one file with Vobmerger or whatever you prefer to use.


    Setting Up the Animated Page

    Okay, lets take you through making a single animated menu. Start to create your new page as you would a normal non-animated page. Right-Click and choose 'Insert PAGE Section'. Again you get loads of settings ie:

    Just delete the ones you will not use. So delete the last three 'Default' and 'Prohibit' Selection options. Delete the 'PictureFile=' and 'PictureDuration' because you are not using a picture on this page. You can also delete 'JumpAtEnd', 'ActionAtEnd' etc., until you are left with the options shown below:

    BackgroundMode=. We have set the BackgroundMode to 1. Remember I said that setting it to 2 tells MicroDVD the page is a picture, well setting it to 'BackgroundMode=1' tells MicroDVD it is a film sequence instead.

    SelectionAvailable=. Again this is set to 1 as this film sequence has links pasted across the screen. So setting 'SelectionAvalable=1' means links are on this page.

    VideoRange=. We haven't seen this feature yet. It tells MicroDVD to start playing the film sequence from one position in the film to another. This is rather like making chapters or subtitles, you have a start frame number and an end time number. To make life easier for you, you can get the start and end points by opening the movie ie:

    Using the Position Slider Bar (below) to position your film at the frame you wish to start from. You can also use the pause, fast forward etc., buttons just like any movie player. The important thing is your current position frames number (as indicated in my picture with the Current Position arrow).

    Move up and click just after the "=" of 'VideoRange='. Now Right-Click and select 'Acquire current frame from video'. The .ini Editor will now paste the current film position for the first frame number of the Video Range. Use the Video Bar to move to the final position that you wish to play for your page and press pause again. Now go up to the .ini editor once more, select 'Acquire current frame from video' again and you will have the final position that your page will play to.

    Make sure that the start and end positions are separated by a dash "-". In the example above the start position is frame 500 and the end position is frame 2000, so I put VideoRange=500-200.

    Before we move on it is important to remember that we are not playing the whole .avi file as a background sequence. We are merely picking out clips from it which we will play on our page.

    VideoLoop=. Unless you tell the video to loop it will play the frames you specified on your page but when it gets to the end the screen will just stop! You have a choice, either continue to loop this sequence over and over again until someone chooses a link, or get it to play once and then set an action at the end, such as jumping to another page. Setting 1 mean Yes and 0 means No! By choosing VideoLoop=0 you are saying that you do not want the video to loop after it gets to the end frame. By choosing VideoLoop=1 (as in the above case) we are saying loop this frame forever or until someone clicks on one of the links.

    That's it! This is all you need to know to make a repeating movie sequence in the background of your menu page! Creating links for a movie sequence page is EXACTLY the same as doing it on a page, do go to it! To recap:

    1. Choose 'Insert SELECTION section' and number the selection ie: [SELECTION=1].
    2. Highlight the area of the link on the page and choose 'Acquire Area from Video'.
    3. Set the link 'Action=' (setting 1 means go to a page).
    4. And add the Parameter= (which page you are linking to).

    And do the same again for the next link on this page and the next and the next until all the links for your page have been done! =^)


    Final Points

    I think I have covered everything you need to know to get started on your own intro sequences with or without movie backgrounds. For detailed descriptions of all the functions MicroDVD can do just refer to the Documentation. But perhaps a few final tips to help you get going would be in order.

    Video Links

    When you are using the MicroDVD .ini editor to get area positions for a link on a video, you cannot actually see the area that you are selecting like you can with the picture files. Hence, I would strongly advise that you take a snapshot of the video clip first. With this picture you can map out the positions of your links exactly. The important thing is getting the positions right, it doesn't matter how you get them! Use VirtualDub on your menu movie and copy the frame you need.

    Pictures & Video

    Most DVD's use both still picture menus and a movie background for their menus. The important thing to remember is to make sure the pictures you use as pages are the same size as your movie menu. Otherwise the links will all be positined wrong!


    If you do not want a video sequence to loop forever you can set it to jump to another page or perform another action when it reaches its end frame. Set the just set VideoLoop=0 and choose one of the action commands. These are done pretty much the same as I have already indicated:

    Go to Page
    Run Movie
    Go to Chapter
    Display Message (in pop-up box)
    Run Special Feature
    Change Language
    Change Subtitles
    Return to Movie

    So lets say I want my DivX to open with an intro sequence and then jump to the menu page. Also the menu page has a single link on it that plays the movie. I would make something like this:


    Notice that I have no parameter after my action. This is because Action=2 is to run the film and so I don't need one. But lets say, for example, I wanted to do the same thing but this time I wanted the link to to go to page 3 instead, I would put:


    That's it! I hope you have had as much fun as I did designing these freaky little menus =^). And finally a word from our sponsor:




    "It's that feeling you have had all your life. That feeling that something was wrong with the world. You don't know what it is but it's there, like a splinter in your mind, driving you mad, driving you to me. But what is it?" - Morpheus

    Duplication of links or content is strictly prohibited. (C) NICKY PAGE 2000