'Recently Added' wraplist makes skin super slow
#1
Well, the title says it all.

On my homescreen I got a wraplist of recently added movies and it makes the whole skin navigation super slow.

As soon as I change it to a list or fixedlist, the problem disappears.
And what's even more confusing, the wraplist works fine for the first set of items it renders (9 are visible in my setup), but as soon as it actually wraps the FPS drop.

I'm running OS X Snow Leopard on a Core2Duo with 3.1Ghz and am working with the pre-Eden nightly builds.
Has anyone else experienced this issue?
Image
Reply
#2
I have a wraplist on home for recently added episodes, albums and random addons and don't see slowdowns. Feel free to test it. See my signature.

Edit: forgot to mention that i'm talking about a horizontal wraplist.
Reply
#3
Thanks for your input. I'm using a horizontal wraplist too.

I just tried your skin and when I enabled the recently added episodes widget XBMC froze completely.
Do you remember which nightly build you are using?
Image
Reply
#4
Just installed the latest nightly and can confirm slowdowns.
You may try the nightly compiled 2 or 3 days ago.
Reply
#5
Ok, thanks.
Is the team aware of this or should I open a bug?
Image
Reply
#6
Just wait a few days and then try again. The problem you had a freeze is strange, as mostly there are slowdowns on startup, try to disable notifications and autoupdates of addons. I've just tried again and now it's working smooth.
Reply
#7
Also tried it with an older version but no such luck.

I found out one more thing, which makes this whole thing even stranger.
Up to a width of 1883 pixels (I'm coding at 1080p) the wraplist scrolls smoothly.
If however I add even only 1 pixel to it, the scroll animation becomes super jerky.
I'm fairly certain this is a bug and should be addressed.

I will also try it on Windows today and report back if it's OS X specific.
Image
Reply
#8
toolpunk Wrote:Ok, thanks.
Is the team aware of this or should I open a bug?
even if we are aware You can/should definitely open a bug ticket @ trac (same login/pw as in forum) if You confirm this is still happening - this helps us to not forget about them. In "cc" field type "pieh" so I will be noticed about this ticket.

PS. some .xml samples that will help with reproducing issue will be more than helpful.
Always read the XBMC online-manual, FAQ and search the forums before posting.
Do NOT e-mail Team-XBMC members asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting, make sure you read this first

My previous forum/trac nickname: grajen3
Reply
#9
Confirmed, this is also happening on Windows 7.
So it seems to be a general bug.

Here's some sample code for you guys
All you need for it is to have 9 movies in your database.

PHP Code:
<control type="wraplist" id="50">
    <
posx>-105</posx>
    <
posy>207</posy>
    <
width>2045</width>
    <
height>460</height>
    <
visible>true</visible>
    <
onup>9000</onup>
    <
ondown>-</ondown>
    <
onleft>-</onleft>
    <
onright>-</onright>
    <
orientation>horizontal</orientation>
    <
pagecontrol>25</pagecontrol>
    <
focusposition>4</focusposition>
    <
scrolltime tween="sine" easing="out">800</scrolltime>
    <
itemlayout width="228" height="460">
        <
control type="image">
            <
posx>9</posx>
            <
posy>27</posy>
            <
width>210</width>
            <
height>311</height>
            <
texture blend="false">$INFO[ListItem.Thumb]</texture>
            <
aspectratio>scale</aspectratio>
        </
control>
    </
itemlayout>
    <
focusedlayout width="288" height="460">
        <
control type="image">
            <
posx>9</posx>
            <
posy>0</posy>
            <
width>270</width>
            <
height>400</height>
            <
texture blend="false">$INFO[ListItem.Thumb]</texture>
            <
aspectratio>scale</aspectratio>
        </
control>
    </
focusedlayout>
    <
content>
        <
item id="1">
            <
label>$INFO[Window.Property(LatestMovie.1.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.1.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.1.Thumb)]</thumb>
        </
item>
        <
item id="2">
            <
label>$INFO[Window.Property(LatestMovie.2.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.2.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.2.Thumb)]</thumb>
        </
item>
        <
item id="3">
            <
label>$INFO[Window.Property(LatestMovie.3.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.3.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.3.Thumb)]</thumb>
        </
item>
        <
item id="4">
            <
label>$INFO[Window.Property(LatestMovie.4.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.4.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.4.Thumb)]</thumb>
        </
item>
        <
item id="5">
            <
label>$INFO[Window.Property(LatestMovie.5.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.5.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.5.Thumb)]</thumb>
        </
item>
        <
item id="6">
            <
label>$INFO[Window.Property(LatestMovie.6.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.6.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.6.Thumb)]</thumb>
        </
item>
        <
item id="7">
            <
label>$INFO[Window.Property(LatestMovie.7.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.7.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.7.Thumb)]</thumb>
        </
item>
        <
item id="8">
            <
label>$INFO[Window.Property(LatestMovie.8.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.8.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.8.Thumb)]</thumb>
        </
item>
        <
item id="9">
            <
label>$INFO[Window.Property(LatestMovie.9.Title)]</label>
            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.9.Path)])</onclick>
            <
thumb>$INFO[Window.Property(LatestMovie.9.Thumb)]</thumb>
        </
item>
    </
content>
</
control

I will submit a ticket now. Thanks for looking into it. Smile

EDIT: Ticket is here http://trac.xbmc.org/ticket/12145
Image
Reply
#10
Just curious... what does blend="false" do?
Image
Reply
#11
I believe it disables alpha blending, which should result in a small performance boost for slower computers.
After searching for it and not finding any results I'm not sure. Maybe it doesn't even exist. I don't know. It's certainly not the cause of this issue.
Image
Reply
#12
Another finding!
It works fine for up to 5 thumbs.
Even at a width of 1884 pixels or more.
But as soon as I add another item the FPS drop again.

Which is weird, because if I leave all 9 items in and limit the width to 1883 pixels, it does render 8 items just fine.
(The remaining 2 are note rendered because the control is too small.)
Image
Reply
#13
With dirty regions enabled I noticed that the 'imaginary' set gets re-rendered every frame, while the original set doesn't.
So I'm pretty sure there is some bug.
I will upload some screenshots later to visualize what I mean.

But I've also been experiencing huge slowdowns with my panel view.
Could it be that coding at 1080p is the reason for all these troubles?
Is anyone else working on a Full HD skin?
If so, did you notice performance issues too?
Image
Reply
#14
Alright, I got news again.
The panel container slowdowns came from a corrupted database.
So this is sorted now and nothing to worry about.

I also coded my library poster view and it's working very well.
So this issue here is definitely related, and limited, to the 'Recently Added' implementation.

I'm probably alone with this issue because nobody else is using 9 items, and it works just fine for up to 8.

I might also try to set it up as a grouplist and see if that works any better, but I'd prefer a clean solution obviously.
Image
Reply
#15
I'm using 10 items btw... Smile
Reply

Logout Mark Read Team Forum Stats Members Help
'Recently Added' wraplist makes skin super slow0