(The above photos are a comparison of stats rendered using the default "Internet HD 1080p 59.94 fps NVidia NVENC" to render out a small section of a vegas project. Left is the initial build of V15 / Right is 216 (update 1). Notice the variable frame rate listing on 216)
----
I was noticing minor A/V sync issues on a couple long projects I'd recently rendered w/ Version 15. It was driving me crazy that my Magix AVC MP4 renders would not match up for the full duration after I re-imported them back in to my project and lined up the audio. They would match frame for frame for about 17minutes and then a frame would seemingly get dropped throwing the remainder of the video out of sync (and I think that would happen again after another 17 or so minutes adding to the sync offset).
At first I thought this was probably a codec issue so I tried all sorts of adjustments in that area (disabling so4compound was of course one of the first things I tried).
What I eventually found w/ help of MediaInfo (https://mediaarea.net/en/MediaInfo) which shows detailed media file codec info/statistics is that the latest build (216) of Vegas creates "Variable Frame Rate" MP4s when Magix AVC w/ NVEnc is used. For example the following is the fps info listed for MP4s created w/ the default "Internet HD 1080p 59.94 fps (NVidia NVENC)" template using Vegas 15 build 216. :
==
Frame rate mode : Variable
Frame rate : 59.940 (59940/1000) FPS
Minimum frame rate : 59.940 FPS
Maximum frame rate : 60.000 FPS
Original frame rate : 59.940 (60000/1001) FPS
==
I checking a few pre-october mp4 renders I'd made w/ the initial build of V15 using the same templates and those all showed constant fps:
Frame rate mode : Constant
Frame rate : 59.940 (60000/1001) FPS
To confirm this was a bug(?) introduced in the most recent build of Vegas I uninstalled/reinstalled the initial build from late August and rendered a clip from the exact same project. FPS was constant 59.940 again.
I reproduced the mediainfo variable/constant results by creating a simple project that included only a JPG on a video track and a WAV for an audio track. Rendered using the default Magix AVC + NVIDIA Enc templates produces "variable frame rate" mp4s in the latest build. These variable fps mp4s seem to have a small decimal remainder (ie: 59.41 instead of 59.40) which eventually causes sync drift. At least that's what I'm seeing when I reimport the Vegas V15 build 216 MP4 back in to Vegas directly above my 2hr project. Frames start to mismatch ~17min in.
Rendering out w/ Magix AVC w/o NVENC produces a constant FPS MP4 even w/ the latest build so this seems to be a problem exclusive to GPU rendering. I have been using the latest NVidia driver (388.1x but did roll back to 381.xx to confirm the issue wasn't driver related - it wasn't). I have a GTX960 installed on the system I'm working on.
I think I've tested this enough on my side to make the assumption it's not just my system but if anyone tries to reproduce this please post your results. Once you install mediainfo you can just right click on any video file and pick "mediainfo" to get statistics. I did also open the MP4s in virtualdub to confirm the fps interpretation wasn't exclusive to mediainfo.
If you have time to render out an MP4 longer than 18 or so minutes that would be the ultimate way to see the problem that this causes. Use build 216 and render out a vegas project that is longer than 18min using the default Internet HD 1080p 59.94 fps (NVidia NVENC) template. When that finishes open the created MP4 back in to the same project on and line it up on new audio/video track directly below what you just rendered out. Align the audio waveforms and then use either the opacity/composite fader (or solo) and switch between the project and imported MP4 watching the preview window to see if the frames match. You should see that somewhere around 17min they'll cease to match up.