I have a couple of mpeg1 files that I wish to re-encode into mpeg2 streams, for DVD authoring. I also wish to use CCE and not TMPGenc since CCE, as far as I know, is superior at mpeg2 encoding, while TMPGenc is superior for mpeg1 encoding. Also, CCE is way faster than TMPGenc, especially when frameserving with AviSynth, which is what I do. Here's the problem: For example I add an mpeg1 file into CCE via avs script, and this mpeg1 file has a duration of 10m46s, but CCE tells me that the video is 5m23s, exactly half the time of the true duration of the movie. I tried encoding anyways, but I end up with a 5m23s movie, which is bad! It does the same thing to all my other mpeg1 movies, CCE will only encode/detect half the video. Very odd... Here's my very basic avisynth script (tested it in Windows media player and has no errors obviously!): LoadPlugin("MPEGDecoder.dll") MPEGSource("movie.mpg") BicubicResize(588,480,0,0.5) AddBorders(66, 0, 66, 0) What I use: CCE SP retail v2.67.00.27 AviSynth v2.08 MPEGDecoder v2.03a by Nic Any ideas?
You could try using DGIndex and DGDecode to load the video in AviSynth. As a last resort you could see what kind of video you get from DirectShowSource. Before trying any of that you should probably try viewing the AVS script in VirtualDub or Media Player Classic to see if the length is wrong.
Then I'd use DGIndex/DGDecode to load the video in AviSynth and also add ConvertToYUY2() to the end. If you don't do the conversion in your script you have to rely on some other program (probably Divx or Xvid) to do the conversion before CCE reads it.