Hi. I have a problem with a program that I am writing to recompress AVI files.

What I want is for the user to recompress either the video or the audio streams or both (it works when I recompress both). IOW when the user only wants to re-encode the video stream, then the source audio stream must just be dumed "as is" and vice versa.

The problem comes when I try to re-encode only one of the streams.

The method I'm using comes from one of the DirectShow tutorials in the DXSDK 8.0 documentation. The tutorial shows you how to recompress an AVI file, but it only works for the video stream. I modified the code so that it can recompress both audio and video streams.

The documentation states that the ICaptureGraphBuilder2::RenderStream() method can render a file to a stream via an optional recompression filter, and if that parameter is NULL, then it won't recompress, which is exactly what I'm doing.

But when I try to only re-encode one of the streams, I don't get the other stream in the output file.

Any help would be appreciated.