While I do already have a solution to this problem, the solution is quite tedious. Anyways, my workflow is by to start screen recording with Camtasia, I've used this program for about 5 years now and have experience with it. I record in .avi at 30FPS, I have the K-lite Mega Codec pack installed (latest version) so I'm also able to use x264 as the video codec (I have also used Divx and Xvid, and still get synchronization issues). When I record I don't get any dropped frames as the program does track that. I use AC-3 ACM codec @ 48Khz Stereo 512kbps. After the recording I check the MediaInfo and it does say in the interleave duration that the audio is a little bit off FPS-wise. In fact when I import the same video in virtualdub (because I use that as my main video editor)I go Video > Framerate... it has an option where it says you can change video, so video and audio durations match. The problem with that is it will change the FPS of the whole video and when doing many different videos I always get a different FPS value in that area. I need to find a way to keep my FPS value at 30FPS instead of some random 29.734 or whatever my audio turned out to be (and it is random it's always 29.something different). It also appears the longer my video is the closer my audios framerate gets to 30, which is another problem. I put in some of my videos 5-10 second transitions that have audio FPS closer to 29FPS than 30FPS. Why this is a problem is becuase I use "APPEND avi segment" in Virtualdub. I make video game playthroughs and I need to have several short videos to make one longer video, because of this all those short videos will have different audio FPS values. I usually only string about 5-10 videos in the append feature of virtualdub. My only current solution is to do this manually which is very tedious. Once again I use Virtualdub (such a great program)and go to Audio > Interleaving... In the Audio Skew Correction I usually play around with this in increments of 100ms as that's the smallest I notice any changes. In this I use negative values in -100ms usually in every appended video like video 1 (0), video 2 (-100), video 3 (-200), etc. Sometimes it will be more or less depending on the audio's FPS, the closer it is to 30FPs (the framerate I encoded in) the less I have to skew the audio correction. What I would like to do is get some way of matching the audio's FPS to the video's FPS through stretching it, if I stretch the audio I will stay at 30FPS. I can't stretch the video to match the audio as that will change the default 30, to something different.
Normally I will play a video with VLC and use the j and k keys to note the correct interleaving factor for VirtualDub. VirtualDub Video > Direct stream copy Video > Frame Rate... > Convert to FPS: and insert 30 (the lower field in the Frame rate control window). I believe the 'convert fps' option will add or drop frames to keep the audio in sync - then adjust the audio interleaving. Save the video. Close out VirtualDub and repeat the process. Restart VirtualDub and append the new files. The resolution is the same for all, the same video codec is used, the same audio, and now the frame rates are the same. Maybe append without complaint?
Well that seems to be a lot better than what I was doing, I'm going to run some more tests on this. I should also mention that I forgot to keep the "source rate adjustment" at no change when doing this test, as keeping it there seems to be better than selecting "change so video and audio durations match" I haven't done any sound tests yet for listening for out of sync stuff, but I will get back to you one I have.
Alright, I've just done some tests and can say doing that FPS convert worked! Thank you very much, now my workflow's time should easily be cut in half!