Occasional rendering glitches with high bitrate AVC on AMLogic device

I’ve been using the ‘CoreELEC-S905.arm-8.95.6-S905’ build on my X96 Mini for a few months now. It appears to run better than my previous installation of LibreELEC did.
However there is an issue that has persisted since my LibreELEC days and continues to bother me on CoreELEC.

Most of the content I watch are Blu-Ray MKV remuxes (personally remuxed from physcial blu-rays), so the bitrates are often very high (>30Mbps) and all either AVC or VC1.
There’s one particular glitch with particular films whereby the bottom half of the video suddenly scrambles and becomes very pixelly and glitchy for about a second, before reverting to normal. With some films I’ll get this every 10-15 minutes for certain periods of the film.


This image was taken with LibreELEC a few months ago, it requires a lot of work to capture a screenshot of this rare and fleeting moment, but it’s essentially the same thing with CoreELEC, but not quite as bad as this. In CoreELEC it’s usually the bottom third of the image that is effected, and if memory serves - the image kind of slants in a diagonal direction, with this glitchy blocky noise effect.

It’s important to note that the videos run on my PC, run without issue.
Looking at MediaInfo and comparing videos that have this problem with other remuxes that run without issue, I can see no significant difference in their encoding.
I can only assume my box is maybe overheating or over-stretched its resources due to the high and often variable bitrates.
Anyway, I don’t know, it might be resolvable, which is why I’m posting here.

Is anyone familiar with this issue I’ve described, and is there an effective resolution to it?

Install our latest version and see if the issue still exists.

I followed your advice and installed the update, but if anything it’s made things worse :frowning:

Last night I was watching an old black and white film with an avg video bitrate of 27Mbps, occasionally peaking at 38-9Mbps.

Seeking appears to trigger the glitch (which is how I recorded the gifs), but it also happens just watching the film normally, I was getting this glitch every 1-2 minutes.
It takes a second for it to go away, it always happens with the bottom half of the screen, depending on how bad it is it can affect more of the upper bounds of the picture (as in the first example gif)

Another very different issue occurred when there was a brief moment of colorized footage in the film - whereby a bright red flag is raised - but instead of a solid red, I saw horizontal red bars over a greenish tinge. I experienced the exact same glitch on LibreELEC on a particularly problematic video too.
Stopping and starting the video fixed the issue, but it occurred a second time when the red flag was shown near the end of the film.
It’s too difficult to get on video, but hopefully someone will recognize it by my description - it’s as if the individual colors have separated and the red color layered ontop display as horizontal bars, like a blurry EQ meter:

Again, most videos function mostly OK, with only one a few occasional but minor video glitches.
With this video however, the problem was unbelievably bad, rendering the thing almost unwatchable.
If possible I’d like to eliminate these problems entirely.

Here’s the video stream’s mediainfo from the particularly glitch-inducing video referenced in the gifs:

ID                                       : 1
ID in the original source medium         : 4113 (0x1011)
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4.1
Format settings                          : CABAC / 4 Ref Frames
Format settings, CABAC                   : Yes
Format settings, RefFrames               : 4 frames
Codec ID                                 : V_MPEG4/ISO/AVC
Duration                                 : 1 h 12 min
Bit rate mode                            : Variable
Bit rate                                 : 27.4 Mb/s
Maximum bit rate                         : 35.0 Mb/s
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 23.976 (24000/1001) FPS
Standard                                 : NTSC
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.551
Stream size                              : 13.8 GiB (87%)
Language                                 : English
Default                                  : Yes
Forced                                   : No
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709
Original source medium                   : Blu-ray

How much memory does your box have?
And does you have this film locally or smb or nfs source?

2GB, I’ve checked and verified (1GB models are often mis-sold as 2GB).
I can’t say for certain but considering the memory consumption for video decoding is relatively low I don’t think that’s the issue.

Edit: I use Emby and an ethernet cable to local network storage, but in recording the glitch for the gifs I was using USB storage - they ran exactly the same. Network speed (100Mbps) or USB speed (less than 100Mbps) perfectly capable of delivering 30-40Mbps video.

In that case I don’t know.
You can try to collect logs, may be something is visible there
https://discourse.coreelec.org/t/how-to-report-an-issue-youre-having-with-coreelec/3022/4
and also dmesg command output after this issue

What does dmesg do? I assume it’s an ssh command. Please explain.

Yes, this command need to be executed from ssh console

Here’s my debug log with video and audio components enabled. I started playing the video (for about 5 minutes) and experienced a handful of those video glitches, but it’s so verbose I can’t see any sign of them in the log:

You can use paste for posting logs. Something like dmesg | paste will return a URL you can link here, much more convenient than uploading logs to google drive.

And also please link after executing command dispinfo

dispinfo? :confused:

yes, also from ssh. And you will receive a link to output.

dmesg (updated):
http://ix.io/1CMA

dispinfo:
http://ix.io/1CMy

Hm, you have only this modes available:

rgb,8bit
------------ /sys/devices/virtual/amhdmitx/amhdmitx0/attr ------------
8bit

------------ /sys/devices/virtual/amhdmitx/amhdmitx0/disp_cap ------------
480p60hz*
720p60hz
1080i60hz
1080p60hz 

From this output you have fixed 60Hz for all resolutions
What Benq model is it? Do you have possibility to check if rendering glitches issue persist on another monitor or TV?

It’s possible that you can try to set not recommended setting for this display:
Sync playback to display and check if you still have an issue

I usually use my device with my TV in the living room, but it’s more convenient for testing purposes to plug it into a second Monitor next to my PC, which is the BenQ model you referred to

I plugged it in the TV and here’s the new dispinfo:
http://ix.io/1CMW

Both displays have the same issue, but while briefly testing it just now I noticed it was less frequently glitchy than on my monitor.
But considering I was experiencing so many issues last night with it plugged into my TV, I think it’s just luck that it appeared to be working a bit better now.

Edit: While analysing the issue with the occasional glitchy rendering, please don’t forget the other possibly related issue I mentioned where the color red became separated from the image, resembling horizontal red bars like an EQ meter.

For red/green line issue you need to disable deinterlacing in CE settings. They only appear on 1080i interlaced sources.
For 1st one issue please upload full log again from this Panasonic TV (collected when you have an issue).

Interesting… I enabled Sync playback to display while the video was playing, with the menu overlaid over the picture. The video was glitching horrendously, every few seconds.
But when I return to the video properly, the screen went black momentarily and the video was then running perfectly. I seeked and seeked and, while I encountered some stuttering, I didn’t see a single glitchy render.

Here’s the new dmsg:
http://ix.io/1CN3

Edit: Thanks for the deinterlacing tip, I’ll try that next time.

I seem to be getting more stuttering now when seeking, but haven’t noticed any rendering glitches since enabling ‘Sync playback to display’

Sync playback to display was only recommended for Benq monitor, Panasonic have good refresh rate values and it’s better don’t use this setting for it.

As for Panasonic don’t select “sync playback to display” collect full log(as you did 1st time) when glitches occur and possible something can be found there.