This shall serve as a reminder for myself and may help others. There is different versions of audio conversion, CBR (Constant Bit Rate) and VBR (Variable Bit Rate), it seems that many DVD players perfer the CBR. Below is both versions with links to the relevant programs and example command lines.
To convert the avi file into a mpeg file for a PAL 352×288 screen, there is different settings either use the ‘man’ or goto the Transcode website for viewing the conversion in more detail. The command line that I use is
transcode -i<AVI FILM> -V -y mpeg -F v,1 -E 44100 -b 224 -fps 25 -o <OUTPUTFILENAME>
This generates two files, *.m1v (the video segment) and *.mpa (the audio segment).
The options in the above command line are
- -b Audio bitrate Kbit’s
- -E Audio sampling rate (Hz)
- -F codec
- -i input file
- -V use internal video codec (faster but some import modules do not support this)
- -y video, audio export modules.
- -fps Frames per second, 25 is for PAL, 29.97 for NTSC
Joining the OUTPUTFILENAME’s together
To join these two segments together
tcmplex -o <OUTPUT.MPG> -i <OUTPUTFILENAME.M1V> -p <OUTPUTFILENAME.MPA> -m v
The programs to download/use are obtained from these links
If the AVI file is in MS MPeg4 v3(DIVX3)
If the INPUT file is in a MS MPeg4 v3 (DIVX3) then you have to convert the file into a DIVX format for FFMPeg to do its stuff. To convert to the required file you will need the mencoder program from MPlayer website. To convert to the required file structure use the commands below.
mencoder -ovc lavc -lavcopts vcodec=mpeg4:vhq -oac copy INPUTFILE.AVI -o OUTPUT.AVI
The options produce a mpeg4 version of the input file using the lavc video converter. Also with the option ‘vhq’, it produces a very high quality output file.
To convert AVI to MPEG use the ffmpeg program, with the commands as below. The INPUT.FILE is in AVI format and the OUTPUT.FILE is an MPEG format
ffmpeg -vcd -i INPUT.FILE -b 1150 -s 352x288 -vcodec mpeg1video -f mpegvideo OUTPUT.FILE
With advice, the ffmpeg build version 4753 (form cvs) the parameters are:-
ffmpeg -target vcd -i INPUT.FILE -b 1150 -s 352x288 -vcodec mpeg1video -f mpegvideo OUTPUT.FIL
The options enable an VCD Mpeg type file output(-vcd) with a bitrate of 1150 (-b) and an output screen size of 352×288 (-s). The codecs to convert to are mpeg1video (-vcodec) so that it is able to be converted to an vcd image with the vcdimager program.
Note: This is still a MPEG file and not a vcd file, you have to use vcdimager below to create a vcd file to burn to disk.
PAL Divx 3 avi file to NTSC vcd
Thanks to Marc for this
ffmpeg -i FILE.AVI -b 1150 -r 29.97 -s 352x240 -aspect 16:9 -vcodec mpeg1video -f mpegvideo FILE-NTSC.mpeg
If MPEG file is bigger than 700MB
If the MPeg file is over the maximum size of the cd, then I use the program mencoder from MPlayer. With the options as below
mencoder -oac copy -ovc copy INPUT.FILE -o OUTPUT.FILE -endpos 670mb
At the end of the copy it should say the frame that the mencoder finished on for the first file. Place that value in the line below (in the VALUE) to create the second value.
I usally subtract about 10 frames just to make sure.
mencoder -oac copy -ovc copy INPUT.FILE -o OUTPUT2.FILE -ss VALUE
Both of the files, INPUT & OUTPUT are mpeg files
This will create a MPEG file ready to be either watched or converted again into the VCD format and then burned.
Hope that helps, and this also servers as a reminder to me 🙂