Just in case you didn't know, VCD is about
the oldest highly compressed video format we have and uses the Mpeg-1
codec. It generally gives the lowest overall quality picture when
compared to DivX & SVCD's but can still produce near VHS quality
video when split over 2 CD's. Another benefit is it can be played
on just about every standalone VCD, SVCD and DVD player. Not only
that but a VCD can be played on a PC with only 100Mhz CPU as long
as it has the graphics card isn't really weak.
The old way to make VCD's was to use Xing
or the Panasonic Mpeg encoder and of course both encoders cost money
to buy and were awkward to use with DVD's. But now since Flask Mpeg
comes with the BBMpeg plugin there has been no reason to choose
that path anymore. The free BBMpeg plugin produces slightly better
quality then Xing and about the same quality or better as the Panasonic
encoder. This quality is usually as good as most professionally
made VCD's too so there is probably no need to change it. The only
downside is its not an amazingly fast method.
Various Methods of Making a VCD
Before I go any further in explaining how
to use BBMpeg you should know that there are a few other methods
for making VCD's but all of them require that you Frameserve
to the application you want to use! To frameserve with Flask you
must check out my frameserving guide Here.
Many prefer using TMPGEnc for making both SVCD's and VCD's and I
see no reason to frameserve to any other application since its the
best there is both for quality and features! I think it is a waste
of my time to explain all of the methods you can use - you want
the best ones, right :o). For more details on setting up TMPGEnc
after you have frameserved to it just follow my guide: 'AVI to VCD'.
In the good
old days it was always very hard to convert a DVD to VCD without
problems. These days its becoming much easier to do. I remember
doing the Matrix was a big pain. I had to split the Vobs into parts
and delete repeated sequences, slice it into parts - it took ages
to work it all out! Nowadays you just open it in Flask and press
go! But in my search I found one of the easiest method was to use
the Panasonic Mpeg Encoder. So I think this method is worth a mention
only because the same method works with many applications including
TMPGEnc and you may find it useful to know sometime. By using this
method it may be possible to cut out the frameserving completely
and convert straight to SVCD or VCD! In reality, because of the
way DVD's are made, this option is probably not the way to go :o(.
All it required is you install the WinDVD
Audio Filter and the Ligos Mpeg-2
Mpeg-2 Video Filter. Easiest way to install them is to
Just drag them over the utility like this:
Or you can just use the DOS line command Regsvr32.exe (i.e.. regsvr32
After they are installed you should be able to open any DVD Vob
file in TMPGEnc or Panasonic Mpeg Encoder and encode them! The first
problem you will see is that Windows 9x only handles files of 4GB
at a time! So if your DVD is larger than 4GB it wont do a whole
movie. AVISynth is one solution to this because now you have the
WinDVD and Ligos filters installed it will let you open all the
Vob files in a long list. Check out how to use AVISynth Here.
Flask also lets you use a few other plug-IN's
other than BBMpeg to convert to VCD. The most common one is the
Panasonic MPEG1 Encoder Plug-In for Adobe Premiere5.x. Install the
plugin like you would with Premiere. You don't actually need
Adobe Premiere, just install the plug-in! When installing the
plug-in choose a folder to store it; it doesn't really matter where.
Once its installed find the plugin, it's usually called: cm-mpeg-pwi2.0e.prm.
Copy and paste it into the Flask Mpeg folder and rename
it to panplug.cm.flask.
Actually it doesn't matter what you call it, Flask
tries to use any plug-in that are named to
All you need to do then is select the Panasonic
option in Flask instead of BBMpeg. Up will pop the selection box,
choose the Panasonic's VCD option - Bingo! You're done! The problem
with the Premiere plugin is the quality is not quite as good as
BBMpeg, although it's still nearly as good. It can sometimes also
mess up some of your system codecs so you may need to reinstall
some of them after if you get problems.
Okay, you've seen the rest not see one of the best!
As always, you must have the DVD files ripped
and decoded to your Hard Disk first if you want to convert a DVD.
You can use CladDVD or VobDec to do this but I prefer SmartRipper.
They are all legal (because they do not use stolen DVD codes) so
there is nothing to worry about. Flask has two basic conversion
Open File: This will open any mpeg
file and try to convert it to whatever you want.
Open DVD: This is a special mode that
reads a DVD in the same way a DVD player would. This means you will
be able to select to convert with subtitles; it will also make sure
it only rips one angle in a multi-angle DVD. This prevents repeated
scenes spoiling your movie!
If you want to use Flask's 'Open DVD' mode you must copy
the files exactly as they are on the DVD. This means you must rip them
with SmartRippers file mode, do not use its movie mode. With VobDec
or CladDVD you must turn off the multi-angle functions first - DeCSS is
old and cannot do all DVD anymore, so don't use it!
Also, if you are using Flask's 'Open DVD' mode you must
copy the IFO file that belongs to the movie you wish to convert. This
will be called by the same name as the first movie file. For example,
if the first movie file is called VTS_01_0.VOB
the IFO file to copy with it will be VTS_01_0.IFO.
Remember, the main movie will not always have the same name. So if first
file of the main movie were called VTS_02_0.VOB
then the IFO file to copy with it will obviously also be VTS_02_0.IFO
For more details on this subject read the article called "Introduction
to the Structure of a DVD" in the appendix section.
OPEN THE FILE WITH 'Open DVD'
Select 'Open DVD' and find the .IFO file for your movie.
Up will pop something like the picture below:
Select the movie Duration, in this case 1.51.53. This will usually
be the first one in the list, but you can usually see from the length
which one to choose. Its a good idea to take a note of this time
for later on. If you are not converting using the IFO file then
get the length of the video from your PC DVD player (i.e. PowerDVD
Next choose the language. Obviously they cannot ALL be English
so choose the first and encode one min of the film and listen to
it. If its not English choose the next in the list, and the next
and the next etc., until you find the correct one. Or open the DVD
in a DVD player and see the order they are in, usually it will be
Lastly we have subtitles. I don't usually select any because I don't
want them on my movie. If you choose subtitles then you will not be able
to turn them off, they will ALWAYS be on your movie! Flask is not always
able to do subtitles correctly, so again, you will have to try it and
see. There are other ways to get subtitles, though; why not check out
my subtitle ripping section for this.
Now Press FlasK this DVD!
GLOBAL PROJECT OPTIONS
Select Global Project options.
Frame Size: In the Width and Height sections
you can put the size you wish your final video to be. If you wish
to crop your movie too you can select the 'Show Output Pad' at the
bottom right. BUT your final movie size must be either 352
x 288 if your VCD is PAL or 352 x 240 if it is NTSC. So crop and
resize how you like but make sure the final image is the right size.
Time Base (fps): All PAL movies (European)
are 25 frames per second (fps) no other setting will work. All North
American movies are NTSC which means they are 29.97 fps, no other
setting will work!
iDCT Options: Just leave these alone its overkill
to use IEEE and the quality will not look better.
Video Structure: Do not check the deinterlace
button unless you really need it because the video will decode very slow.
For a full explanation of the interlace problem, check out my article:
"Video Formats: NTSC & PAL / Telecine" in the appendix section.
For this kind of Deinterlacer blend gives best quality. The Threshold
setting is basically how much it blurs problem lines. The lower the
number the more it blurs it. If the interlace problem is really bad
you should use a setting of 1-5 instead of 20. If its not very bad
you could use 15-20.
On to the Audio tab select 'Decode audio' if you want
sound. You need to choose 44100Hz to be compatible with VCD standards.
If you just want to copy the DVD's AC3 audio across
instead of converting it you can use the 'Direct Stream copy' option.
This could be the way to go if you have synch problems. But that
way the audio must be decoded to wave using another method such
as explained in my Mpeg2avi guide. Then you can use something like
TMPGEnc to encode the audio to Mp2 and multiplex it to the video
file. It is also possible to fix synching by opening the video in
Cool Edit or another audio editing tool to stretch the audio a bit.
Then you can again encode and multiplex. All this is a real pain
in the neck so I hope you never need to try any of them.
POST PROCESSING TAB
This section deals almost exclusively with resizing. Never
use 'Nearest Neighbouring' unless you are not resizing the picture because
the quality is crud. Contrary to popular belief Bilinear looks just as
nice as Bicubic, except it is twice as fast. JASC (makers of Paint Shop
Pro) recommend Bilinear for shrinking images and Bicubic for enlarging
them. But use what you think looks best.
Keep aspect ratio: PAL users should always
tick this box unless you know you don't need it. This is even more
important with Widescreen DVD's. If you use NTSC DVD's the image
may become stretched slightly wrongly. If you notice this uncheck
the 'keep aspect ratio' and work out the ratio yourself. See the
article"Resizing DVD's with Correct Aspect Ratios"
in my appendix. Don't forget that the final movie must be either
352 x 288 or 352 x 240 respectively.
Crop & Letterboxing: All the settings for
cropping and letterboxing the DVD can be entered here or the output
pad can be used. For detailed information on how to resize a movie
in Flask read section 2nd of this guide: "resizing the video".
I suggest you don't mess about with all that though, just check
the no crop and the no letterboxing options.
Choose where you want to save your final movie. The audio
save option is grayed out because you are encoding the video with
audio in it. If you selected 'Direct Stream Copy' on the previous
Audio Tab then you could say where you wanted it saved.
Compiling Time: This is important. You
must tell Flask how long the movie is. This is why I
asked you to take note of the movie length. You must work out exactly
how long the movie is. If you don't tell Flask the movie length
could end up 300,000 frames even if your movie is only 30 seconds
long! As you can imagine this is a big waste of time.
There are 25 frames to every second of a PAL video
and 30 for every NTSC. So lets say your PAL movie was one hour long.
First you would work out how many seconds on an hour of video (i.e:
60 x 60 =3600 seconds). And then you would multiply that by 25 (i.e:
25 x 3600 = 90,000). You can also encode a small test clip to see
the quality before you start. But I still recommend you shut down
and restart Flask just before you start to encode a long movie to
reduce chances of it crashing.
Search Size: This searches the DVD for the
audio. As it says, if you have problems make the number bigger.
If all else fails and you cannot find audio you can try one of the
other methods I explain in the section:"DVD Audio Extraction".
This means you will need to encode the audio to Mp2 and multiplex
it with the original with TMPGEnc or something like that. There
is no fail-safe way to convert a DVD yet.
SELECT THE BBMPEG PLUG-IN
Once you have finished setting up your movie just go to
Run > Start Conversion.
Up will pop BBMpegs info window showing the settings
you put into Flask. Next choose the 'settings' option.
Go to the Video Stream Settings option and choose the VideoCD (A)
option below. If your movie is NTSC change the 25fps option (B)
to 29.976. That's it!
Now here is where you must use some restraint; the VCD format is
very exacting. When we used the 'VideoCD' option BBMpeg sets the
Whitebook standard. VCD doesn't allow you to set your own bitrate
it must be a constant bitrate (CBR) of 1150kbps (1150000). The I,
P and B frames are set to 15/3. The packing is 2324 and the audio
is 16bit 44100Hz stereo 224kbps Mpeg-1 Layer 2 (Mp2).
BBMpeg looks very difficult to use at first because it has lots
of options but, at least for VCD, you cannot use them. The only
ones we can safely change are the framerate to either 25fps or 29.97fps
and what processor optimizations to use in the General Settings
Bingo! Thats it! Wait for the movie to finish, it should be anything
upto 1480 MB in size to fit on 2 CD's! Don't worry, VCD's and SVCD's
are not written to a CD-R in the same way we would write other data!
CD-R's actually waste about 90MB in order to produce a filing system
that we can use in Windows. This means that you can fit an Mpeg
video of about 740MB on a single 650MB CD-R or 820MB for playing
in a standard VCD player. The same idea has aways applied to any
audio CD's you make. As long as it is 74 mins it doesn't matter
how many megabytes the audio takes on your hard disk. Either way
your CD-R burning software will usually tell you if the Mpeg is
Nero and Easy CD Creator are considered the best CD-R 'Burning'
software for making both VCD's and SVCD's. Truth is they both have
their problems. Nero sometimes burns SVCD's that are not compatable
with certain players such as a Samsung. And Easy CD sometimes will
not accept your Mpeg file!? This is very annoying! I do not have
any of these problems because my player accepts the files no problems,
but this is what I have told by Email. A lot of people seem to be
and I would recommend that you try Nero or Easy CD first and then
if you can't get them to work you should try VCDImager as it works
with both VCD and SVCD. There is also a way to patch Nero images
as explained in my FAQ's section.
But wait! Before we can burn anything we need to chop our movie
into two parts. For details on how to do this check out my 'Cutting
and joining Mpeg's guide' Here.
Once that's done you can burn them to CD and you're done!
Duplication of links or content is strictly
prohibited. (C) NICKY PAGE 2000