The resulting DVD produced by this method is not compliant with DVD standards and therefore may no play properly in all players. This is the price we pay to avoid the quality loss that would result from transcoding the SVCD video stream into DVD compliant stream. Note that the video streams on a VCD may also be burned onto a DVD following the same method outlined here. In this case the video streams on the resulting DVD will be compliant with standards.
$ vcdxrip -i /dev/cdromNote that SVCDs do not have the same kind of error detection and correction that data CDs and DVDs have so this may be tricky.
$ mpeg3cat -a0 avseq01.mpg >avseq01.m2a $ ffmpeg -i avseq01.m2a -y avseq01.wav $ sox -V avseq01.wav -r48000 avseq01-48.wav $ toolame -b192 -s48 avseq01-48.wav avseq01-dvd.m2a
$ mpeg2desc -m <avseq01.mpgThe units of the offset is given in terms of 1/90000ths of a sec. Divide the the output of mpeg2desc by 90000 to obtain an offset measured in seconds suitable for mplex. This can be done automatically with the commands
$ mts=`mpeg2desc -m <avseq01.mpg` $ sec=`echo $mts / 90000.0 | bc -l`after which the environment variable $sec will contain the offest. Now extract the primative video stream using
$ extract_mpeg2 avseq01.mpg >avseq01.m2vand multiplex it with the resampled audio track with
$ mplex -O${sec}s -f8 avseq01.m2v avseq01-dvd.m2a -o avseq01-dvd.mpg
$ mpeg3cat -v0 item0019.mpg >item0019.m2v $ ffmpeg -i item0019.m2v -vframes 1 -f yuv4mpegpipe -y /dev/stdout | y4mscaler -O chromass=444 | y4mtoppm | pnmtopng >item0019.png