Tool to fix video that's out of sync with audio?

I'm looking for (preferably free) software for Windows 7 that will allow me to fix an AVI file that has audio out of sync with the video. I tried with Windows Live Movie Maker and VirtualDub and couldn't find out how to do it (if at all possible) on both of them. If any of those can help me, instructions for that would also be nice.

Background: I have a RCA-to-USB capture card, which I'm using to transfer VHS casettes and stuff from a video camera to digital format. The problem is that the audio comes out heavily distorted. So instead I connected the audio out from the VCR directly to the computer's line in. This works, but the audio is out of sync, about half a second behind the video. I could spend time trying to fix this issuee, but I think it'll be easier to simply fix the video.


EDIT: These instructions apply for VirtualDub v1.8.11 and VLC v1.1.9.

VirtualDub is definitely the correct choice of program for AVI files. I'll walk you through it.

Run VirtualDub by going to the folder where you saved it and running VirtualDub.exe.

Head to File > Open Video File, and select the AVI file from the file browser, and select Open.

Next, go to the Video drop-down menu, and select Direct Stream Copy (we don't want to re-encode what will be an already pretty poor quality stream).

Next, go to the Audio drop-down menu, and select Direct Stream Copy (with the same rationale as above).

Next, go to Audio > Interleaving. This will bring up a dialog box. Note the box with the label Delay audio track by...

Change the value in this box. If you want to get a good idea of what value to change it to, either keep changing it in VirtualDub and checking the result, or do it in VLC. You can change the audio timings on the fly in VLC by playing the video and then hitting J to reduce the audio offset, and K to increase it. Note the value where they appear to sync up, and then use that in VirtualDub. If you can't get them close enough, you can get more finely-grained control by, still in VLC, going to Tools > Track Synchronization. You can then adjust Advance of audio over video until you sync them up, and then use that value in VirtualDub.

Once done, go to File > Save as AVI, and enter the name you want for the file.


Found an easier and cheaper way!

  1. Open the movie in Real Player.
  2. Open the "Convert to" and convert the video to WMA (Windows Media Audio).
  3. Open Window Movie Maker and import video.
  4. Mute the volume.
  5. Import the WMA file from Step 3.
  6. Adjust the Start point for the music so that it is correct.
  7. Save the movie again.