On December 9, 2002 11:19 pm, Jesse Kline wrote: > I also tried the other example on the transcode site using the bbmpeg > interface ( transcode [...] -V -y mpeg -F v,4 -E 44100 -b 224 -o test ). > This seemed to work fine, but I ended up with videos that had serious > A/V sync issues. I tried using both tcmplex and mplex but I had the same > problem with both.
Well, if transcode managed to produce a valid MPEG1 video and audio stream you might be able to use the mplex -O SYNC option where SYNC is a positive or negative value in milliseconds to fine tune the A/V sync. > It seems as though the script is now called mpegtranscode although the > documentation refers to mjpegtranscode (I'm using mjpegtools 1.6). I > installed all the dependencies and following the instructions but it > kept passing bad options to mpeg2dec. I even installed the mjpegtools > patched version of mpeg2dec. It was complaining that it didn't support > YUVh, so I edited the mpegtranscode script and changed it to xv. I was messing around with this last night and had similar problems at first. What I had to do to get mpeg2dec to work was to install the mjpegtools-dev package before doing a "./configure --prefix=/usr/local/ && make && make install" on the patched version of mpeg2dec. If the configure script outputs the following line, then mpeg2dec should allow YUV output: checking for mjpegtools-config... (cached) yes I then ran the following to extract and convert the video stream from MPEG2 to a VCD compliant MPEG1: $ mpeg2dec -s -o YUV original.mpg | yuvscaler -O VCD | mpeg2enc -f 1 -r 16 -o video_vcd.m1v You might need the complete path to mpeg2dec if /usr/local/bin isn't in your path. I tried to extract the audio stream using extract_ac3 but it wouldn't work for some reason. No matter, instead I used mplayer to dump the decoded audio into a raw pcm file like so: $ mplayer -vc null -vo null -ao pcm -aofile audio.pcm original.mpg ...and then encoded that into an mp2 audio stream: $ cat audio.pcm | mp2enc -V -v 2 -o audio_vcd.mp2 At this point you _should_ have seperate playable video and audio streams. Multiplex them together with mplex to create a single stream: $ mplex -f 1 -O SYNC_VALUE audio_vcd.mp2 video_vcd.m1v -o vcd_stream.mpg Substitute different values for SYNC_VALUE if A/V sync is off and then create the VCD image: $ vcdimager -v -l LABEL vcd_stream.mpg Use a volume label ( all caps, numbers and underscores allowed ) if you plan on playing the VCD on different computer platforms, linux doesn't care but windows might think the cd is empty if there is no label. I did all this with a sample mpeg2 SVCD stream and it seemed to work out ok. If it doesn't work for you I'm afraid I'm all out of ideas. Good luck. ~Scott
