Another frame skipping problem

Hade my Vero 4k for a few days now, but both me and my wife notices occasional frame skipping/stutter. I have read through the other threads but they seem to be solved so I guess this is only me then? :slight_smile:

Most of our content is in 23.976 and this is where we have problem. 25hz-content for example seems to play fine. I’m very picky and will notice even the slightest playback error. My wife is more forgiving but started complaining after Vero 4k was installed (coming from nuc7). It’s pretty hard to gather evidence as I don’t see the skips in the debug log, and PlayerProcessWindow don’t display skipped frames. Is there a way to bring up the old CodecInfo?

More info about my setup:

  • OSMC is fully updated
  • NFS mounted in fstab
  • Buffer added in advancedsettings.xml
  • Adjust Display Refresh Rate enabled
  • Sync Playback to Display disabled (as I use audio passthrough)
  • Exchanged HDMI cables
  • TV: 55" Samsung KS8005
  • Soundbar: Samsung K960
  • Tried connecting HDMI directly to TV (instead of through the sound system)

Debug log: https://paste.osmc.tv/uladaperoc
Output of amhdmitx0/disp_cap: https://paste.osmc.tv/ujojujakoj

I found one interesting thing in the log: NOTICE: Display resolution ADJUST : 1920x1080 @ 24.00 - Full Screen (23) (weight: 0.001).
I googled that string but with 23.98 instead of 24.00 and got a few matches. Should it say 23.98 instead? Unfortunately my TV says 24p for both 23.976 and 24hz so I can’t tell whats being sent.

Will be very grateful for any help. Just let me know if you need anything else from me.

I can’t help you with the frame skipping problem, but you can bring up some additional info by pressing Shift+Ctrl+o under video playback.

Hope this is helpfull.

Do you happen to know how to do this with the remote that comes with the 4K ? Sorry for off topic

Not without a custom keymap.

Pressing the context menu button (three lines); then
OK should get you some detailed playback information
using the official remote

1 Like

Hi,

First – thanks for the detailed report. This is very helpful and means that you’ve covered a lot of questions that I would have asked already.

Your logs look OK – only thing that is interesting is that your TV does not appear to advertise a preferred mode.

  • Can we try a common clip that we both have access to, such as the 1080p Big Buck Bunny clip?
  • Can you post the full logs when you play a 23.976 file. This will include the kernel log which will show me if framerate automation is kicking in.

Cheers

Sam

Thank you for replying. I spent a few minutes watching 1080p Big Buck Bunny and didn’t actually notice any problems at all. Might have missed it though if the camera/animation is moving slowly. But when I switched to the content I normally watch I noticed the first glitch pretty quick (maybe two minutes in). Nothing in kodi log though.

Full log for 1080p Big Buck Bunny: https://paste.osmc.tv/gimuwulewe

Full log of my own file with stutter: https://paste.osmc.tv/apodexacap

Oh, and the detailed playback information is a no go with my official remote. I get the playerProcessWindow by pressing the context button, but no further. I might go purchase a cheap keyboard tomorrow to be able to press ctrl+shift+o.

I found a way to trigger the playback stats via the official kodi remote for iOS (long press info-button). Here’s a short clip of the problem, right after the kissing scene: Osmc vero 4K frame skipping - YouTube (unlisted on YT). Skip counter increments by one.

I also noticed that the bunny clip runs at 24.00Hz which is probably why it’s playing perfect. I just played the entire clip without any drops or skips.

You then need to press OK (if memory serves).

Hi @twarkie

I see this early in the logs:

Jul 29 21:43:06 osmc kernel: DI: di_receiver_event_fun: vframe provider reg
Jul 29 21:43:06 osmc kernel: tv_vout: vout [tv_set_vframe_rate_hint] duration = 4004, policy = 1!
Jul 29 21:43:06 osmc kernel: tv_vout: vout [framerate_automation_process] duration = 4004
Jul 29 21:43:06 osmc kernel: tv_vout: framerate_automation_process[1111] fps_playing_flag = 1
Jul 29 21:43:06 osmc kernel: tv_vout: fr_vsource = 2397
Jul 29 21:43:06 osmc kernel: tv_vout: mode_target=16,is_receiver_supported=1
Jul 29 21:43:06 osmc kernel: tv_vout: vout [framerate_automation_set_mode] mode_target = 16

which indicates that framerate automation is enabled; but I don’t think I actually saw it active when you played your clip, which would explain the skipping.

I’ve noticed this on some newer TVs which don’t seem to advertise a preferred mode. I’d recommend trying these improvements here. They will likely end up in OSMC proper very shortly, so it’s worth trying anyway. After you boot, run sudo chown osmc:osmc /sys/class/amhdmitx/amhdmitx0/frac_rate_policy. This won’t be necessary in the next update (but for now the permissions for this sysfs node were incorrect).

This kernel allows fractional video modes, i.e. 23.976 to be set from userspace without the ‘magic’ that used to happen before. It will also make it much easier to see if framerate automation is working as expected. The value of sudo chown osmc:osmc /sys/class/amhdmitx/amhdmitx0/frac_rate_policy should be 1 when you are playing back content with Adjust Refresh Rate enabled; otherwise 0.

Another thing worth testing, is whether Sync Playback to Display removes the issue. I know that this will prevent passthrough and I am only suggesting it as a quick test. If it does remove the issue, then it’s indeed a problem with the Adjust Refresh Rate option

Fortunately, you seem familiar with the command line and how to troubleshoot things, so I think we should be able to resolve this one quite quickly for you.

Sam

I installed the testing version tonight and tried the same file that was skipping frames. I only have time for a quick test right now, but it looks good at first glance. The skip counter is not incrementing anymore at least.

Here is the full debug log: https://paste.osmc.tv/qapopigapi
Can you see any obvious difference from my previous log?

frac_rate_policy however is still outoutting zero even when I’m playing something:

osmc@osmc:~$ cat /sys/class/amhdmitx/amhdmitx0/frac_rate_policy
0

osmc@osmc:~$ ls -l /sys/class/amhdmitx/amhdmitx0/frac_rate_policy
-rw-rw-r-- 1 osmc osmc 4096 Jul 30 23:19 /sys/class/amhdmitx/amhdmitx0/frac_rate_policy

And I saw a couple blackouts but I’ll report them in the testing thread.

I will try to watch a complete movie or episode tomorrow night and see how it goes.

Thanks so far.

Did you change permissions?

Not sure what that might be – if it happens again let me know

Did you change permissions?

Yes! I actually put the command in rc.local as it seems to reset after reboot. ls -l confirms it. But it still does not change to 1 when I play a movie. My tv shows 24p so something is happening for sure.

I just watched a full 4k 10bit movie.
Good news: amazing picture, no blackouts, skip counter does not increment and there is nothing in the log.

Bad news: I still see frame skipping. Tried Suits where I know it skips and saw the same problem now, same place. Weird thing is that the skip counter is not incrementing with this test build, but I clearly see the skip.
Debug log: https://paste.osmc.tv/qapopigapi

Activating Sync Playback to Display results in perfect playback so one guess is that the frequency is set to 24.00 instead of 23.976. Is there anyway to see what refresh rate is being displayed from the terminal? Kodi shows 23.976 at least.

Hi,

Let me investigate this a little further and get back to you.

Sam

I’ve PM’ed you to ask for a magnet for the torrent for one of the files (Suits) to see if I can
reproduce the problem locally

Sam