Major issue with framerate and Vegas "holding" frames

shrink wrote on 7/6/2017, 5:00 PM

I'm using Vegas Pro 14.

I have been recording gameplay footage of something in the effort to make a montage. My game plays upwards of 100fps, and I record it with nVidia Shadowplay at 60fps. I noticed that when I rendered the footage of some clips, it appeared much less than 60P. When I played back the rendered footage in Media Player Classic and I went frame by frame, I noticed that at some parts of the video it rendered one frame, then a different frame, and then the third frame was a copy of the second one. Every third frame was a "hold" of the one before it.

At first I thought it was my render settings, but then I discovered that Vegas Pro shows exactly this situation in its preview window, so it's NOT the rendering. These clips are auto detected by Vegas anywhere from 59.997 fps to 59.999, and I'm trying to render the video at 1080p 60fps. I have disabled resampling anywhere it is, which shouldn't matter and doesn't accomplish anything anyway, and I have the project set to 60 fps as well as the render. For some reason, this issue will happen with some clips, and not with others, even though they were recorded the exact same way. Some clips I noticed have this issue happen in them in one spot, yet not in another, within a single recording.

When I took my "main" video clip, which visually looks like it's playing at a choppy framerate half of what it should be, and played the original, native video recording of it in Media Player Classic, there was no frame holding at all, every single frame was unique, and playback of this video looked like 60 fps. But when I import it into Vegas, the preview and the render both have every third frame a freeze of the one before it, effectively giving me 40 unique frames a second and 20 copies. For the life of me I cannot figure out why. I doubt it's the recordings themselves because if so, playing it back frame by frame in MPC would show me the 20 copied frames a second, which aren't there.

This is beyond frustrating, I have set everything to 60fps and yet for some reason it's giving me 2/3rds of what I should have.

 

edit: I've used MediaInfo to discover that shadowplay, while it tries to record at 60fps, is still somehow set in variable framerate. MediaInfo tells me that my "main" clip has a minimum framerate of 58 something fps and a max of 63 something. Is this the cause of the issue? If it is, why does it appear to play properly in MPC but messes up when imported to Vegas?

 

edit 2: i have just compared the clip in Vegas to the playback in MPC frame by frame. In MPC the video plays properly, and I have discovered that in Vegas the program is doing something nonsensical every three frames. Rather than play three frames sequentially like it should, Vegas in both preview and when it renders is rendering the first frame, then skipping the second frame, and renders the third frame TWICE. Why this is happening is totally beyond me but it's maddening.

Comments

Musicvid wrote on 7/6/2017, 5:54 PM

Vegas doesn't handle variable frame rate yet. There's a FAQ for that; back up a page.

TheHappyFriar wrote on 7/6/2017, 6:31 PM

might not be variable framerate, you could get the same for if the very start/end of the video is different then the assumed .

shrink wrote on 7/6/2017, 7:51 PM

I'm not convinced the variable framerate is the issue. For one thing, that variation isn't much, and for another, there's no rational reason it would skip every second frame and repeat every third frame twice, even if variable framerate was the problem. It makes no sense why some playbacks are okay and others aren't.

Rather than render frames 1 2 3 4 5 6, Vegas decides to render 1 3 3 4 6 6 etc. The native media is in AVC/AAC, so Vegas should have no real issue with it.

 

edit: for further info, this link is the MediaInfo data about my main clip https://www.dropbox.com/s/tthhyhcx1t22id6/format.txt?dl=0

and THIS is a screenshot of my project settings and how things are set up in Vegas. I can't figure out why I'm getting this frame issue. https://www.dropbox.com/s/orh2f2l3750xpdm/Vegas.png?dl=0

if you want to download the source video itself, it's 135 MB https://www.dropbox.com/s/duunywvlf4j49re/intro.mp4?dl=0

TheHappyFriar wrote on 7/6/2017, 9:09 PM

I downloaded the file. I imported it in to Vegas 10 & Vegas said it was 120fps & I set the project properties to match the file. It duplicated every other frame. So it would be 1 1 2 2 3 3, etc.

I changed the project FPS to 60 & disabled resampling on the event. Now Vegas plays 1 2 3 4, etc. Matches what I'm seeing in Media Player Classic.

I'm using Vegas 10, you're using 14, so I'm guessing it's a codec plugin in 14 that's doing it.

What I normally do for game footage is I get it in to individual file frames (normally PNG's or TGA's) and import those vs a video. More control vs a video. That should work for you if you can get it converted.

shrink wrote on 7/6/2017, 9:23 PM

Although it's more of a workaround than a solution, thanks for taking the time to look at it anyway. 120FPS is definitely not what it is, I'm not sure why Vegas 10 would interpret that to be the case. Vegas 14 shows it as 60 just as MediaInfo does. Man, I had no idea Vegas and its iterations were this ridiculously finicky, from the hours I've spent reading up on version histories and codecs and whatnot there are tons of speedbumps to run into. At some point they should try building the product from the ground up rather than duct taping things, but what do I know.

If I could get my videos expanded out into images on a by-frame basis yes, I could use that workaround, but the principle of the matter it what bothers me, the fact I shouldn't need to, aside from the extra steps and time. I also disabled resampling everywhere I could (on all clips, in projects settings and in render menu) and made sure everything was set to 60p (which you can see in the screenshot link) and it still gives me the issue. I have one friend who has Vegas 13 and he says it gives him the same exact behavior, and I've got another friend who uses Adobe Premier, and he tells me he has zero issues with it.

I don't have a Premier license but the easiest solution might be to borrow his account though I would prefer to avoid that :(

fr0sty wrote on 7/6/2017, 11:15 PM

do you have any of the "allow media to adjust frame rate/size" options checked in the render settings?

Systems:

Desktop

AMD Ryzen 7 1800x 8 core 16 thread at stock speed

64GB 3000mhz DDR4

Geforce RTX 3090

Windows 10

Laptop:

ASUS Zenbook Pro Duo 32GB (9980HK CPU, RTX 2060 GPU, dual 4K touch screens, main one OLED HDR)

shrink wrote on 7/7/2017, 12:12 AM

I've rendered videos with and without that selected, and it didn't change anything. I've rendered the same video several times with several combinations of project and render settings and the issue persists. Plus, as I said, this frame holding problem occurs internally, in the program and the preview itself.

For some reason, when I change the project to 40fps, it gives me a unique frame every frame. When I up it to 45 or something, it duplicates every 4th frame, and when I set the project to 60, it duplicates every third while skipping every second.

john_dennis wrote on 7/7/2017, 1:22 AM

I watched the arm move across the screen to initialize the control panel and the file that you uploaded would hang for a frame in Vegas Pro 13-453.

I ran your file through VideoReDo TV Suite Quickstream Fix and did a non-recoding rewrap. The resultant file did not skip frames in my brief test.

Try my file for yourself. (Edit: Removed files to save dropbox space.)

shrink wrote on 7/7/2017, 1:33 AM

Yes, your file does work in Vegas 14 from what I can see. Each frame appears to be unique and I'm not seeing any hanging frames. The arm movement is what I was using for my benchmark too, since it's the most obvious motion.

So since that fixes it, can you take a guess at what the problem is? At first I thought it was the source material but evidence points to that not being the issue, and then I thought it was my encoding until I saw the preview in Vegas showing the same behavior. You think Friar was right and it's some screwup with a codec or something in Vegas itself?

I looked at the program you used and I could use the free trial as a bandaid in the short term, but I'm hoping if we can pinpoint the exact cause then I can verifiably find a program I can use indefinitely. I tried using Avidemux to rewrap it using the same AVC container, first by a direct copy of the video and then a re-encoding. Both results were improvements, but still have a "held" frame once every 20 frames or so, they're pretty spaced out, but the issue is still there, just much less egregious. Your file seems to be completely clear of it.

TheHappyFriar wrote on 7/7/2017, 6:13 AM

I believe it is the encoding codec\settings. I have recorded in game footage to miniDV, image sequence, uncompressed AVI, and mpeg-2 but have never seen this issue. Many codecs have "delivery" and "editing" settings, you might need to play with the encoding settings to get it to work.

john_dennis wrote on 7/7/2017, 12:20 PM

One of the effects of performing the VideoReDo Quickstream Fix is a change from a variable frame rate to a constant frame rate.

I would follow THF's advice and work on the capture application to create a more editable file from the outset.

Musicvid wrote on 7/9/2017, 4:50 PM

Your misreported frame rate is indicative and entirely typical of vfr in Vegas. Videoredo and ffmpeg normalize it. Really no mystery as to the cause of that part of your question - - been that way since vfr was introduced, years ago...