Another stuttering thread

I get major stuttering playing some BDMV-streams. I have a freshly installed Vero 4K+ connected to an Anthem MRX1120 receiver and an LG C7 OLED TV. It mainly happens with concert-blurays. In this example it is the Adèle Live at the Royal Albert Hall stream . When loggin is enabled I see the FPS on my screen jumping around from 15-25 FPS, but never reaching the needed 29.97 number.

Most 4K/HDR/Atmos files play fine, even the 60Hz Gemini Man, so throughput shouldn’t be a problem.

My log can be found here

When more info is needed just let me know. Thanks in advance!

MediaInfo:

Algemeen
ID : 0 (0x0)
Volledige naam : /Volumes/video/Music DVD/Adele Live at the Royal Albert Hall (2011)/BDMV/STREAM/00000.m2ts
Formaat : BDAV
Formaat/Info : Blu-ray Video
Bestandsgrootte : 21,9 GiB
Duur : 1 h 39 min
Totale bitratemodus : Variabel
Totale bitrate : 31,6 Mb/s
Maximale Totale bitrate : 48,0 Mb/s

Video
ID : 4113 (0x1011)
Menu-ID : 1 (0x1)
Formaat : AVC
Formaat/Info : Advanced Video Codec
Formaatprofiel : High@L4.1
Formaatinstellingen : CABAC / 4 Ref Frames
Formaatinstellingen, CABAC : Ja
Formaatinstellingen, RefFrames : 4 frames
Format settings, GOP : M=3, N=24
Codec-ID : 27
Duur : 1 h 39 min
Bitrate-modus : Variabel
Maximale bitrate : 35,0 Mb/s
Breedte : 1 920 pixels
Hoogte : 1 080 pixels
Beeldverhouding : 16:9
Framerate : 29,970 (30000/1001) FPS
Standaard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scansoort : MBAFF
Scan type, store method : Interleaved fields
Scanvolgorde : Bovenste Veld Eerst
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709

Audio #1
ID : 4352 (0x1100)
Menu-ID : 1 (0x1)
Formaat : DTS XLL
Formaat/Info : Digital Theater Systems
Commercial name : DTS-HD Master Audio
Muxingmodus : Stream extension
Codec-ID : 134
Duur : 1 h 39 min
Bitrate-modus : Variabel
Kanaal(en) : 6 kanalen
Channel layout : C L R Ls Rs LFE
Samplerate : 48,0 kHz
Framerate : 93,750 FPS (512 SPF)
Bit depth : 16 bits
Compression mode : Lossless

I see my GUI resolution was at 2160p60, that wasn’t the case yesterday? Anyway, put it back at 1080p50 but the stuttering remains.

Try 1080p 60.

Just tried, but still nearly unwatchable. Also tried 1080p59,9, same story. I have all the available modes whitelisted.

Playing the same file on Kodi on my Shield with the same settings is a fluent play. I did notice that on the Shield there are way less modes available in the whitelist. I thought Kodi read the EDID of the TV and made only the supported modes available?

I notice that MediaInfo says the file is 29,970 fps but my HDFury gives 1080p59,933. I really don’t understand. Ticking the “3:2 Pulldown refresh rates” also makes no difference.

I doubt this will help, but try de-whitelisting 1080p/29.97 and 1080p/30, and making sure that “Allow double refresh rates” is checked.

It wouldn’t. That allows 24fps video to be played with a 60Hz refresh rate (or 23.976fps to be played at 59.94Hz).

I don’t read technical German, but I think your video is 1080i/59.94? If
It was captured from a progressive source, that’s the equivalent of 1080p/29.97, hence the ambiguity.

De-whitelisting 1080p29,97 and 30 did the trick! Thanks a lot. But doesn’t this affect other video’s being played incorrectly now?

And just wondering: what is going on that I got stutter and not with your solution? My LG C7 OLED TV can play all modes I think, so it should just passthrough the sourcefile as it is?

There are some bugs with deinterlacing at the moment. Part of it is that it can get muddled about what the appropriate refresh rate is. It reads the file header and thinks “okay, 29.97fps”, switches to 29.97Hz output, then realises a few seconds later that it’s actually trying to output 59.94 progressive frames per second, tries to switch to 59.94Hz refresh rate, finds it has lots of frames saved up and tries to rush through them all at high speed, and then everything goes a bit off the rails… But if you can force it to output 59.94Hz right from the start then everything goes more smoothly.

I hope there will be some fixes for this in the future!

A video that is actually 1080p/29.97fps will be played at 59.94Hz without any visible difference - each frame is sent to the TV twice, but it looks the same to the viewer. Similarly 1080p/30 can be output as 1080p/60.

May I recommend my guide to the Whitelist…?

I get it. Thanks for your help! Time for some concerts being played here :smiley:

Last night trying to watch a movie (Secret life of Pets 2) with the kids. Again, such a stuttering it wasn’t watchable. Tried everything, whitelisting/de-whitelisting relevant resolutions, not using a whitelist at all, playing with Interlace-settings. All without result. Started watching the movie on Kodi on my Nvidia Shield: all fine, no probs at all… I have everything whitelisted on the Shield, but video also played smoothly with no whitelist enabled on the Kodi/Shield. Here is the MediaInfo:

I do start to believe that there is something seriously not good with the latest OSMC on Vero 4K? I bought it for a smooth experience with HQ picture. But when Kodi on Shield and also InFuse on Apple TV 4K do a better job… The reason I still use Vero is for its Atmos passthrough, which my Shield 2015 and ATV cannot do. A Shield 2019 would be my next option. What I don’t understand is that it is being stated that there are bugs in Kodi regarding interlacing, but on my Shield with the latest Kodi that doesn’t seem to be affected? Is it a Kodi or an OSMC bug?

Logs when starting and playing the video can be found here. I noticed a very high (almost maxed-out) CPU load.

Is that a 10-bit h.264 encode? Because the Vero has never been able to handle those at 1080p, as far as I’m aware.

I don’t know if it is h.264. All MediaInfo tells me is this:

General
Complete name : /Volumes/video/Kinderfilms/Huisdiergeheimen 2 (2019)/Huisdiergeheimen 2 (2019).mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42 (isom/iso2/avc1/mp41)
File size : 1.25 GiB
Duration : 1 h 26 min
Overall bit rate : 2 079 kb/s
Encoded date : UTC 2019-12-15 07:42:57
Tagged date : UTC 2019-12-15 07:42:57
Writing application : HandBrake 1.3.0 2019110900

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High 10@L4.1
Format settings : CABAC / 4 Ref Frames
Format settings, CABAC : Yes
Format settings, Reference frames : 4 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 1 h 26 min
Bit rate : 1 850 kb/s
Width : 1 920 pixels
Height : 1 036 pixels
Display aspect ratio : 1.85:1
Frame rate mode : Variable
Frame rate : 23.976 (24000/1001) FPS
Minimum frame rate : 23.974 FPS
Maximum frame rate : 23.981 FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 10 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.039
Stream size : 1.11 GiB (89%)
Writing library : x264 core 157 r2935 545de2f
Encoding settings : cabac=1 / ref=4 / deblock=1:0:0 / analyse=0x3:0x133 / me=umh / subme=10 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=18 / lookahead_threads=3 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=8 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=240 / keyint_min=24 / scenecut=40 / intra_refresh=0 / rc_lookahead=60 / rc=2pass / mbtree=1 / bitrate=1850 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=81 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=150000 / vbv_bufsize=187500 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00
Encoded date : UTC 2019-12-15 07:42:57
Tagged date : UTC 2019-12-15 07:42:57
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
Codec configuration box : avcC

Audio
ID : 2
Format : AAC LC
Format/Info : Advanced Audio Codec Low Complexity
Codec ID : mp4a-40-2
Duration : 1 h 26 min
Bit rate mode : Constant
Bit rate : 224 kb/s
Channel(s) : 6 channels
Channel layout : C L R Ls Rs LFE
Sampling rate : 48.0 kHz
Frame rate : 46.875 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 138 MiB (11%)
Title : Surround
Language : Dutch
Default : Yes
Alternate group : 1
Encoded date : UTC 2019-12-15 07:42:57
Tagged date : UTC 2019-12-15 07:42:57

Looks like it is AVC?

AVC and h.264 are the same thing. And it’s clearly 10-bit. So I’d say that’s probably your problem.

Okay, thanks. So it has nothing to do with my settings but it is a shortcoming of the Vero? And I suppose the Shield can play the file because it has a much faster CPU?

Well, that’s a little harsh. The Vero can’t decode 10-bit h.264 in hardware. Few media players of that age can. It’s a rather rare video format that SoCs generally aren’t designed to handle. The Nvidia Shield TV can’t decode it in hardware either, but it has a more powerful CPU so it can handle that video using software decoding - though, probably only barely. You could transcode it to 8-bit h.264 or to HEVC/h.265 and the Vero could handle that just fine.

1 Like

You’ll have to ask @sam_nazarko for details of that. But didn’t you fix your deinterlacing problem by tweaking the whitelist settings?

Yes, that’s correct. But with the Shield I didn’t have to change the whitelist.

I didn’t mean to be harsh, sorry if I made people feel that way! I am playing with OSMC since the Apple TV 1st gen (Crystalbuntu it was?) and now have my 2nd or 3rd Vero. It was actually always flawless but since the latest iterations it doesn’t seem to get it completely right. Just a feeling. Most mediaplayers have flaws, especially now with the complications of HDR and the HDMI mess.

I suspect they all do. I’ve certainly never come across a media player that doesn’t have at least one flaw severe enough to render it not fit for purpose, and most have several.

On the Shield it took Nvidia four years just to get automatic colour space switching between rec.709 and rec.2020 working. Even now (as far as I’m aware) one still has to deal with no 576p or 480p output, terrible upscaling, and the worst chroma upsampling quality I’ve ever seen. There may well still be actual decoding errors - when I used one the colours were always subtly “off”, in a way I couldn’t quite put my finger on, while the Vero 4K+ always looked “right”.

This is (I believe) the most complex software release OSMC has ever done. It wasn’t that long ago that they moved from Debian Stretch to Debian Buster; in this release there is both a change from kernel version 3.14 to 4.9 with lots of new driver software, and a move from Kodi Leia to Kodi Matrix at the same time. I think we’re all going to have to be patient for a while, until Sam and the guys work out some of the bugs. I’m hopeful they will be worked out eventually.

3 Likes