Log in

View Full Version : Dropped Frames and relationship to refresh rate and Reclock


azaze1
25th July 2011, 08:20
I'm trying to understand something that's been puzzling me lately.

After a new OS install, new AMD HD 6450, I am getting lots of jitter due to dropped frames in MPC-HC. Doesn't matter if I do madVR or EVRCP, I average 1 dropped frame every 8 seconds, and it's terrible. I never used to get this, but on my new install I decided to not install Reclock as I've been using 23Hz refresh in CCC for some time, and figured it's unnecessary at this point, not to mention Reclock says to NOT use itself when bitstreaming audio.

I am bitstreaming all my audio, and have always chosen to enable reclock in the past despite it's own recommendation not to.

So my question is, are people with 23Hz refresh, and ATI/AMD HD 5xxx or 6xxx able to avoid dropped frames in MPC-HC while bitstreaming audio... and NOT using Reclock?

If so how? I'm thinking Reclock while bitstreaming is the cause for some random audio dropouts here and there (not often) on certain movies, just a theory but probably why they suggest not using it for bitstreaming audio. If one bitstreams audio, how does one avoid dropped frames when MPC-HC reports refresh rates right in the 23.976xx range?

EDIT: One thing I forgot to mention is when I set my refresh to 60Hz, the MPC-HC display stats graph is the nasty sawblade... but I get ZERO dropped frames for an hour at a time... seemingly indefinately, now obviously I shouldn't be watching at 60Hz for 23.976 fps material, but why would the proper refresh yield dropped frames every 8 seconds while a grossly mismatched refresh proves better?

nevcairiel
25th July 2011, 08:51
First, how close is your 23Hz really to 23.976? Check the madVR or EVR-CP OSD (Ctrl-J) for some stats.

If you're refresh rate does not perfectly match the source, you have two choices:

- Perfect video
- Perfect audio (especially when bitstreaming)

You can achieve perfect video with ReClock . If you're not bitstreaming, ReClock can resample your audio, so the audio stays properly in sync with the video. Most people will never hear the difference, and appreciate the fluid video.
However, if you're bitstreaming, ReClock can not resample the audio. So instead, it has to drop or repeat an audio frame to keep the A/V sync stable - which means you will hear it (or might hear it, depending on the sound at that moment).

If you're bitstreaming, and you want perfect audio, there really isn't a way to avoid dropped or repeated frames without losing the A/V sync, sorry.

I would suggest to simply not bitstream, and use ReClock. That way you'll get perfect video, and near-perfect audio (assuming you have a proper decoder).

For your 60Hz question - if you're playing a 23.976 stream at 60Hz, it'll do a 3:2 pulldown, which means it'll repeat every other frame 3 times, and the ones in between 2 times. This would work flawlessly if your 60Hz refresh rate is 59.940Hz (which displays seem to be much more able to match then 23.976). However if its not, it'll also drop a frame occasionally. Except! At 60Hz, one frame is only shown for a much shorter time then at 23.976Hz, so even if it did drop one, you would have a much harder time noticing.
Sounds to me like your display can do near-perfect 59.940, but is pretty far off on 23.976.

On NVIDIA, i would recommend trying to create a custom resolution and trying different timings for the 23.976 mode. But i don't think ATI/AMD offers that option to manually tweak timings, does it?

Qaq
25th July 2011, 10:01
I bet your problems are lie in video driver and video renderer settings. I have 5450 and I'd say *450 is a weak GPU for some 'heavy' options of madVR/EVR CP.
First, try to set CCC to work as fast as possible (the only option you really need there is VA de-interlacing and FullRGB pixel). After that you can play with quality options in video renderers, trying to avoid drops.
My only problem in madVR is backbuffer queue (reaches 0 sometime for 1080 videos). New rendering path options don't work good for 1080 video.
For EVR CP I know I can't use FFPP for 1080i and I can't use FFPP+shaders for 1080p.

azaze1
25th July 2011, 17:04
First, how close is your 23Hz really to 23.976? Check the madVR or EVR-CP OSD (Ctrl-J) for some stats.

If you're refresh rate does not perfectly match the source, you have two choices:

- Perfect video
- Perfect audio (especially when bitstreaming)

You can achieve perfect video with ReClock . If you're not bitstreaming, ReClock can resample your audio, so the audio stays properly in sync with the video. Most people will never hear the difference, and appreciate the fluid video.
However, if you're bitstreaming, ReClock can not resample the audio. So instead, it has to drop or repeat an audio frame to keep the A/V sync stable - which means you will hear it (or might hear it, depending on the sound at that moment).

If you're bitstreaming, and you want perfect audio, there really isn't a way to avoid dropped or repeated frames without losing the A/V sync, sorry.

I would suggest to simply not bitstream, and use ReClock. That way you'll get perfect video, and near-perfect audio (assuming you have a proper decoder).

For your 60Hz question - if you're playing a 23.976 stream at 60Hz, it'll do a 3:2 pulldown, which means it'll repeat every other frame 3 times, and the ones in between 2 times. This would work flawlessly if your 60Hz refresh rate is 59.940Hz (which displays seem to be much more able to match then 23.976). However if its not, it'll also drop a frame occasionally. Except! At 60Hz, one frame is only shown for a much shorter time then at 23.976Hz, so even if it did drop one, you would have a much harder time noticing.
Sounds to me like your display can do near-perfect 59.940, but is pretty far off on 23.976.

On NVIDIA, i would recommend trying to create a custom resolution and trying different timings for the 23.976 mode. But i don't think ATI/AMD offers that option to manually tweak timings, does it?

Thanks nevcairiel for your insightful response.

I do have a fairly good refresh rate in that it's at 23.976xx most of the time. It strays down and up a touch here and there, but nothing sustained, and again 99% of the time it's at 23.976xx.

Regarding bitstreaming and choosing between perfect video vs perfect audio, your explanation confirms my thoughts, and in my case using Reclock while bitstreaming creates a VERY noticable issue sometimes given I have an Onkyo receiver. With Onkyo, any time the audio synks there's a distinct clicking sound. It's not a click from speakers but physically coming from the receiver... quite annoying. This typically follows a split second audio dropout. I had been using Reclock for so long I completely forgot that it's the likely cause.

I guess my best bet is to use Arcsoft HD Audio decoder to send PCM to the receiver so that Reclock can do it's thing without the receiver dropping out and causing clicks. This will give perfect video and indistinguishable near-perfect audio.

I had never done the software decoding of audio sending PCM in the past because it was just more CPU processing which would spin up my CPU fan. Now I've got a solid state HTPC with no moving parts, so no fans, so CPU hit will not cause any noise.

Thanks again.

azaze1
25th July 2011, 17:14
I bet your problems are lie in video driver and video renderer settings. I have 5450 and I'd say *450 is a weak GPU for some 'heavy' options of madVR/EVR CP.
First, try to set CCC to work as fast as possible (the only option you really need there is VA de-interlacing and FullRGB pixel). After that you can play with quality options in video renderers, trying to avoid drops.
My only problem in madVR is backbuffer queue (reaches 0 sometime for 1080 videos). New rendering path options don't work good for 1080 video.
For EVR CP I know I can't use FFPP for 1080i and I can't use FFPP+shaders for 1080p.

Thanks, The 6450 in particular has 160 stream processors, which is twice the 5450. I know that is still weak but I've got no issue having CPU pick up the slack assuming that's how it works. I don't have anything special configured in my renderers, but I can confirm later by just resetting to defaults and starting over. Also, my CCC settings are RGB Full 4:4:4, and ALL video options are disabled, including ESVP. None of my material is interlaced, all 720p or 1080p.

Thanks again.