Superb quality and spec AB-Com PULSe 4K SE. Crazy offer! Only £99! FREE UK DELIVERY! 4K UHD, Enigma 2, Multiboot 4 images & more!...
Superb quality and spec AB-Com PULSe 4K Rev II Twin Satellite tuner only £149! FREE UK DELIVERY! 4K UHD, Enigma 2, SATA HDD facility, Multiboot 4 images & more!...

[Zgemma H7] picon caching strangeness

  • Thread starter Thread starter BrokenUnusableAccount
  • Start date Start date
B

BrokenUnusableAccount

Guest
Note: My Zgemma H7 is set to always output 1080P (to match my HD TV) no matter what the resolution of any video that it may be playing, and I use a 1080 skin.

For a long time, the perfectionist in me has been irritated by the fact that picons display with an inconsistent quality.
Sometimes with obvious jagged edges and steps visible, other times looking 100% perfect.

I think what's happening is that the pixmap caching is caching the picons read from their files after they have been scaled ready to be displayed, and this results in the large picons displayed in, for example, the InfoBar sometimes being upscaled from low resolution versions that were cached when small picons were displayed in, for example, the grid EPG or the movie list.

At present, I'm fixing this by using this modified version of /usr/lib/enigma2/python/Tools/LoadPixmap.py
Code:
my file: https://github.com/BrianG61UK/enigma2/blob/PixmapCaching/lib/python/Tools/LoadPixmap.py

compared: https://github.com/BrianG61UK/enigma2/commit/4b654b2d665c0871806c6e263f09f0db60025ff8
on my box.

It's not obvious why it works, and the fact that it does suggest that at some point caching was deliberately not asked for when displaying picons.

However, it doesn't seem to noticeably slow things down on my box, but is it an acceptable solution for me to do a pull request?

It does still allow code to ask for caching in cases where it is likely to help things go at acceptable speed, like if the same pixmap is used a large number of times on the same screen (perhaps parts of the grid EPG might do this, I don't know?).
But it also does probably result in less caching occurring, and thus more reading pixmaps from files.

Should I make a pull request, or should I try and have a go at, perhaps, making the pixmap caching in some way bitmap size aware?
 
Nobody else notices inconsistent rendering of picons?

Perhaps almost nobody besides me enables picon display in multiple places so that different sized picons are displayed during their use OpenViX?
 
Nobody else notices inconsistent rendering of picons?

Perhaps almost nobody besides me enables picon display in multiple places so that different sized picons are displayed during their use OpenViX?

I only use them in infobar, and haven't changed my picons in years. Just briefly turned them on in the EPG and have to say not great, but really cannot remember if they have ever looked better
 
Nobody else notices inconsistent rendering of picons?

Perhaps almost nobody besides me enables picon display in multiple places so that different sized picons are displayed during their use OpenViX?

I use them in channel list and infobar on 1080 TV and 1080 skin. Can't say that I have particularly noticed any jaggies and I don't recall any user reports of inconsistencies in picon presentation.
 
I'm using the simple 1080 skin on my solo2 and picons display fine in all scenarios. What picons are you using? I use the one from plugins snp-full 220x132 light on transparent.
 
Nobody else notices inconsistent rendering of picons?
No.
If I go to the graphical EPG, get to a channel that I haven't seen since boot-up (so its picon is displayed on the left hand side - small) and select it, the Infobar that then comes up has a much larger version of the picon, and it looks fine to me.
 
Brian I don't get what you are saying.

SVG the resolution is cached. If you open the same SVG at a different resolution the cache will hold both.

With the PNGs they are loaded at their native resolution.
 
No.
If I go to the graphical EPG, get to a channel that I haven't seen since boot-up (so its picon is displayed on the left hand side - small) and select it, the Infobar that then comes up has a much larger version of the picon, and it looks fine to me.
The picon is scaled in epixmap.cpp so it fits the containing element. The flag is set here: https://github.com/OpenViX/enigma2/blob/Developer/lib/python/Components/Renderer/Picon.py#L146

The question was, is the scaling being done on a picon that was already loaded at a lower resolution than native, making it look jagged at the larger size.
 
More info:
I'm using these icons: enigma2-plugin-picons-snp-full.220x132-190x102.light.on.transparent_2022-03-04--23-13-14_all.ipk
I mostly use the "Simple Ten Eighty" skin, though I did try a couple of other 1080 skins and I seemed to see the same inconsistant picon display.
 
The question was, is the scaling being done on a picon that was already loaded at a lower resolution than native, making it look jagged at the larger size.
That's exactly what I think is happening.
 
The question was, is the scaling being done on a picon that was already loaded at a lower resolution than native, making it look jagged at the larger size.
Which is why I gave an example where my first view of it was as a small image, followed by seeing the same picon at a larger size (~ 4 times linearly?).
 
If I had to guess I would say this is maybe a HiSi bug.
 
I flashed dev 6.1 on my AX61 HD and installed the same snp picons as in post #9 above. Using Simple 1080 skin, I displayed the picons on the channel list initially, followed by the larger picon image in the infobar. All looks ok - no jaggies.
 
I've never understood the need for picons, so maybe I shouldn't comment. 6.0.008 (Release) Same picons as above.

ET10K/Large - clean picon image, after enlarging a snapshot.

clean.webp



ET10K/Small - slightly jagged, after enlarging a snapshot.

Ultimo4K/Large - slightly jagged, after enlarging a snapshot.:confused:

Ultimo4K/Small - slightly jagged, after enlarging a snapshot.

All 3 look much like this...

jagged.webp

I've tried a different channel and the same applies.
 
Where are you setting large/small?

I selected a channel number after a gui restart to get a "large" picon in the infobar.

I selected a channel from the grid epg (picons showing) after a gui restart to cache a "small" picon which I assume is resized to "large" in the infobar.
 
Two good picons to show the effect are "CNBC HD" (when distorted the bottom letters look flattened against the floor) and "NTD" (good example of a picon with large slanted lines, steps show when distorted).
 
I selected a channel number after a gui restart to get a "large" picon in the infobar.

I selected a channel from the grid epg (picons showing) after a gui restart to cache a "small" picon which I assume is resized to "large" in the infobar.

:confused: Are they PNG?

loadPNG() has no scale argument. The files are cached at native resolution. Any resizing of the graphic would be done when attaching it to the lower layer.

https://github.com/OpenViX/enigma2/blob/Developer/lib/gdi/epng.cpp#L19
 
Two good picons to show the effect are "CNBC HD" (when distorted the bottom letters look flattened against the floor) and "NTD" (good example of a picon with large slanted lines, steps show when distorted).
Brian you need to look at adding some SVG picons.
 
:confused: Are they PNG?

loadPNG() has no scale argument. The files are cached at native resolution. Any resizing of the graphic would be done when attaching it to the lower layer.

https://github.com/OpenViX/enigma2/blob/Developer/lib/gdi/epng.cpp#L19

I'm just following on from here.....

More info:
I'm using these icons: enigma2-plugin-picons-snp-full.220x132-190x102.light.on.transparent_2022-03-04--23-13-14_all.ipk
I mostly use the "Simple Ten Eighty" skin, though I did try a couple of other 1080 skins and I seemed to see the same inconsistant picon display.
 

OpenViX Feeds Status

Back
Top