PDA

View Full Version : Scrolling jitter - Info.pm question



Triode
2005-03-09, 01:54
Hi,

I have noticed jitter on my new scrolling code when displaying "now playing" for remote streams. (Local ones are fine). [Seen if
you drop the Scroll Rate and reduce Scroll Pixels for the player]

After much searching, I think this is down to Info.pm line 619 taking much longer for remote streams than local ones. This is
because it does not use the display cache and hence calls infoFormat() each time I check to the text [every 30 seconds - only
actually check to update the top line, so any change to line 2 is redundant.]

Is there any reason why Info.pm needs to include !isFile($fullpath) in line 619 - the bit that invalidates the display cache and
causes it to call infoFormat()

I seem to get the right answer with the !isFile bit removed. ....?

Adrian

kdf
2005-03-09, 03:27
Quoting Triode <triode1 (AT) btinternet (DOT) com>:

> Hi,
>
> I have noticed jitter on my new scrolling code when displaying "now playing"
> for remote streams. (Local ones are fine). [Seen if
> you drop the Scroll Rate and reduce Scroll Pixels for the player]
>
> After much searching, I think this is down to Info.pm line 619 taking much
> longer for remote streams than local ones. This is
> because it does not use the display cache and hence calls infoFormat() each
> time I check to the text [every 30 seconds - only
> actually check to update the top line, so any change to line 2 is redundant.]
>
> Is there any reason why Info.pm needs to include !isFile($fullpath) in line
> 619 - the bit that invalidates the display cache and
> causes it to call infoFormat()
>
> I seem to get the right answer with the !isFile bit removed. ....?

sadly, it doesn't see to do the trick for me. at least on wireless, it is still
very jumpy.

-kdf

Dan Sully
2005-03-09, 08:35
* kdf shaped the electrons to say...

>> Is there any reason why Info.pm needs to include !isFile($fullpath) in line
>> 619 - the bit that invalidates the display cache and
>> causes it to call infoFormat()
>>
>> I seem to get the right answer with the !isFile bit removed. ....?
>
>sadly, it doesn't see to do the trick for me. at least on wireless, it is still very jumpy.

Be sure to sync up subversion - as we added some code to alleviate this in r2382

http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382

-D
--
<iNoah> all your base class are belong to us

kdf
2005-03-09, 10:35
Quoting Dan Sully <dan (AT) slimdevices (DOT) com>:

> * kdf shaped the electrons to say...
>
> >> Is there any reason why Info.pm needs to include !isFile($fullpath) in
> line
> >> 619 - the bit that invalidates the display cache and
> >> causes it to call infoFormat()
> >>
> >> I seem to get the right answer with the !isFile bit removed. ....?
> >
> >sadly, it doesn't see to do the trick for me. at least on wireless, it is
> still very jumpy.
>
> Be sure to sync up subversion - as we added some code to alleviate this in
> r2382
>
>
http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
>
>
I was at 2382.
-kdf

Triode
2005-03-09, 13:30
OK, I think I confused matters by refering to a line number. This problem still exists in r2382, but as you've adding stuff its at
a differnt line number!

If I do this attached it goes away (looking for kdf for a second opinion!)

Please comment on if there are any side effects of this? [NB diff includes the old line commented out, just using to ensure we are
talking about the same thing!]

Adrian

----- Original Message -----
From: "Dan Sully" <dan (AT) slimdevices (DOT) com>
To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
Sent: Wednesday, March 09, 2005 3:35 PM
Subject: [Developers] Re: Scrolling jitter - Info.pm question


>* kdf shaped the electrons to say...
>
>>> Is there any reason why Info.pm needs to include !isFile($fullpath) in line
>>> 619 - the bit that invalidates the display cache and
>>> causes it to call infoFormat()
>>>
>>> I seem to get the right answer with the !isFile bit removed. ....?
>>
>>sadly, it doesn't see to do the trick for me. at least on wireless, it is still very jumpy.
>
> Be sure to sync up subversion - as we added some code to alleviate this in r2382
>
> http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
>
> -D
> --
> <iNoah> all your base class are belong to us
>

kdf
2005-03-09, 13:38
Quoting Triode <triode1 (AT) btinternet (DOT) com>:

> OK, I think I confused matters by refering to a line number. This problem
> still exists in r2382, but as you've adding stuff its at
> a differnt line number!
>
> If I do this attached it goes away (looking for kdf for a second opinion!)

I noticed the shift, and had put the change at 654 already. SB1 and SB2 both
wireless, but to different AP's.

SB1: 802.11B, Medium font, Idle scrolling RSS ticker, scrollrate 0.04, pixels 3
SB2: 802.11G, standard font, playing Live365 stream, scrollrate 0.05, pixels 3

however, I'll wipe everything again tonight...and try again, since it seems I'm
the only one :)

-kdf

vidurapparao
2005-03-09, 13:40
I think the reason for excluding remote streams from the displayCache
was the hacked way in which we were displaying the current song for
radio stations - by setting the title for the corresponding URL in the
database. Since the title changed with song transitions, we avoided caching.

With r2382, the current song title comes from a separate runtime hash,
so we shouldn't need to exclude remote streams from the cache...but we
also shouldn't be hitting infoFormat() that often, since we're using the
currentTitles hash. I'm OK with removing the !isFile($fullpath) clause.

--Vidur

Triode wrote:

> OK, I think I confused matters by refering to a line number. This
> problem still exists in r2382, but as you've adding stuff its at a
> differnt line number!
>
> If I do this attached it goes away (looking for kdf for a second
> opinion!)
>
> Please comment on if there are any side effects of this? [NB diff
> includes the old line commented out, just using to ensure we are
> talking about the same thing!]
>
> Adrian
>
> ----- Original Message ----- From: "Dan Sully" <dan (AT) slimdevices (DOT) com>
> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
> Sent: Wednesday, March 09, 2005 3:35 PM
> Subject: [Developers] Re: Scrolling jitter - Info.pm question
>
>
>> * kdf shaped the electrons to say...
>>
>>>> Is there any reason why Info.pm needs to include
>>>> !isFile($fullpath) in line
>>>> 619 - the bit that invalidates the display cache and
>>>> causes it to call infoFormat()
>>>>
>>>> I seem to get the right answer with the !isFile bit removed. ....?
>>>
>>>
>>> sadly, it doesn't see to do the trick for me. at least on wireless,
>>> it is still very jumpy.
>>
>>
>> Be sure to sync up subversion - as we added some code to alleviate
>> this in r2382
>>
>> http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
>>
>>
>> -D
>> --
>> <iNoah> all your base class are belong to us
>>

Triode
2005-03-09, 14:19
Thanks Vidur - but looks like this is only part of the problem :-(

Kdf - just so you don't think you're going mad - on Radioio there is definate jitter and so it is not just this simple fix. I need
to look into this in more detail, may take a day or two I'm afraid.

If anyone else has tried my fast scrolling code and knows of screens which jitter please let me know!

Adrian
----- Original Message -----
From: "Vidur Apparao" <vidur (AT) slimdevices (DOT) com>
To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
Sent: Wednesday, March 09, 2005 8:40 PM
Subject: Re: [Developers] Re: Scrolling jitter - Info.pm question


>
> I think the reason for excluding remote streams from the displayCache was the hacked way in which we were displaying the current
> song for radio stations - by setting the title for the corresponding URL in the database. Since the title changed with song
> transitions, we avoided caching.
>
> With r2382, the current song title comes from a separate runtime hash, so we shouldn't need to exclude remote streams from the
> cache...but we also shouldn't be hitting infoFormat() that often, since we're using the currentTitles hash. I'm OK with removing
> the !isFile($fullpath) clause.
>
> --Vidur
>
> Triode wrote:
>
>> OK, I think I confused matters by refering to a line number. This problem still exists in r2382, but as you've adding stuff its
>> at a differnt line number!
>>
>> If I do this attached it goes away (looking for kdf for a second opinion!)
>>
>> Please comment on if there are any side effects of this? [NB diff includes the old line commented out, just using to ensure we
>> are talking about the same thing!]
>>
>> Adrian
>>
>> ----- Original Message ----- From: "Dan Sully" <dan (AT) slimdevices (DOT) com>
>> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
>> Sent: Wednesday, March 09, 2005 3:35 PM
>> Subject: [Developers] Re: Scrolling jitter - Info.pm question
>>
>>
>>> * kdf shaped the electrons to say...
>>>
>>>>> Is there any reason why Info.pm needs to include !isFile($fullpath) in line
>>>>> 619 - the bit that invalidates the display cache and
>>>>> causes it to call infoFormat()
>>>>>
>>>>> I seem to get the right answer with the !isFile bit removed. ....?
>>>>
>>>>
>>>> sadly, it doesn't see to do the trick for me. at least on wireless, it is still very jumpy.
>>>
>>>
>>> Be sure to sync up subversion - as we added some code to alleviate this in r2382
>>>
>>> http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
>>>
>>> -D
>>> --
>>> <iNoah> all your base class are belong to us
>>>

Triode
2005-03-09, 14:55
KDF - can you confirm the RadioIO scrolling jitter was when playing on a SB2 or softsqueeze? [i.e. not SB1]

Vidur/anyone any quick tips as to the difference in streaming to the SB2 from SBG? At present I seem to get perfect scrolling on a
SBG when playing RadioIO, but not on Richard's new Softsqueeze (which emulates SB2)...

Adrian
----- Original Message -----
From: "Triode" <triode1 (AT) btinternet (DOT) com>
To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
Sent: Wednesday, March 09, 2005 9:19 PM
Subject: Re: [Developers] Re: Scrolling jitter - Info.pm question


> Thanks Vidur - but looks like this is only part of the problem :-(
>
> Kdf - just so you don't think you're going mad - on Radioio there is definate jitter and so it is not just this simple fix. I
> need to look into this in more detail, may take a day or two I'm afraid.
>
> If anyone else has tried my fast scrolling code and knows of screens which jitter please let me know!
>
> Adrian
> ----- Original Message -----
> From: "Vidur Apparao" <vidur (AT) slimdevices (DOT) com>
> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
> Sent: Wednesday, March 09, 2005 8:40 PM
> Subject: Re: [Developers] Re: Scrolling jitter - Info.pm question
>
>
>>
>> I think the reason for excluding remote streams from the displayCache was the hacked way in which we were displaying the current
>> song for radio stations - by setting the title for the corresponding URL in the database. Since the title changed with song
>> transitions, we avoided caching.
>>
>> With r2382, the current song title comes from a separate runtime hash, so we shouldn't need to exclude remote streams from the
>> cache...but we also shouldn't be hitting infoFormat() that often, since we're using the currentTitles hash. I'm OK with removing
>> the !isFile($fullpath) clause.
>>
>> --Vidur
>>
>> Triode wrote:
>>
>>> OK, I think I confused matters by refering to a line number. This problem still exists in r2382, but as you've adding stuff its
>>> at a differnt line number!
>>>
>>> If I do this attached it goes away (looking for kdf for a second opinion!)
>>>
>>> Please comment on if there are any side effects of this? [NB diff includes the old line commented out, just using to ensure we
>>> are talking about the same thing!]
>>>
>>> Adrian
>>>
>>> ----- Original Message ----- From: "Dan Sully" <dan (AT) slimdevices (DOT) com>
>>> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
>>> Sent: Wednesday, March 09, 2005 3:35 PM
>>> Subject: [Developers] Re: Scrolling jitter - Info.pm question
>>>
>>>
>>>> * kdf shaped the electrons to say...
>>>>
>>>>>> Is there any reason why Info.pm needs to include !isFile($fullpath) in line
>>>>>> 619 - the bit that invalidates the display cache and
>>>>>> causes it to call infoFormat()
>>>>>>
>>>>>> I seem to get the right answer with the !isFile bit removed. ....?
>>>>>
>>>>>
>>>>> sadly, it doesn't see to do the trick for me. at least on wireless, it is still very jumpy.
>>>>
>>>>
>>>> Be sure to sync up subversion - as we added some code to alleviate this in r2382
>>>>
>>>> http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
>>>>
>>>> -D
>>>> --
>>>> <iNoah> all your base class are belong to us
>>>>

kdf
2005-03-09, 14:59
Quoting Triode <triode1 (AT) btinternet (DOT) com>:

> KDF - can you confirm the RadioIO scrolling jitter was when playing on a SB2
> or softsqueeze? [i.e. not SB1]

Live365 and RadioIO were the ones I tested. Radio70s to be precise, and
Ultimae80's on Live365. Radio70sPop makes some sort of unbearable noise.
Live365, I suppose I shouldn't be using really, since I'm told it is out of
date.

-kdf

> Vidur/anyone any quick tips as to the difference in streaming to the SB2 from
> SBG? At present I seem to get perfect scrolling on a
> SBG when playing RadioIO, but not on Richard's new Softsqueeze (which
> emulates SB2)...
>
> Adrian
> ----- Original Message -----
> From: "Triode" <triode1 (AT) btinternet (DOT) com>
> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
> Sent: Wednesday, March 09, 2005 9:19 PM
> Subject: Re: [Developers] Re: Scrolling jitter - Info.pm question
>
>
> > Thanks Vidur - but looks like this is only part of the problem :-(
> >
> > Kdf - just so you don't think you're going mad - on Radioio there is
> definate jitter and so it is not just this simple fix. I
> > need to look into this in more detail, may take a day or two I'm afraid.
> >
> > If anyone else has tried my fast scrolling code and knows of screens which
> jitter please let me know!
> >
> > Adrian
> > ----- Original Message -----
> > From: "Vidur Apparao" <vidur (AT) slimdevices (DOT) com>
> > To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
> > Sent: Wednesday, March 09, 2005 8:40 PM
> > Subject: Re: [Developers] Re: Scrolling jitter - Info.pm question
> >
> >
> >>
> >> I think the reason for excluding remote streams from the displayCache was
> the hacked way in which we were displaying the current
> >> song for radio stations - by setting the title for the corresponding URL
> in the database. Since the title changed with song
> >> transitions, we avoided caching.
> >>
> >> With r2382, the current song title comes from a separate runtime hash, so
> we shouldn't need to exclude remote streams from the
> >> cache...but we also shouldn't be hitting infoFormat() that often, since
> we're using the currentTitles hash. I'm OK with removing
> >> the !isFile($fullpath) clause.
> >>
> >> --Vidur
> >>
> >> Triode wrote:
> >>
> >>> OK, I think I confused matters by refering to a line number. This
> problem still exists in r2382, but as you've adding stuff its
> >>> at a differnt line number!
> >>>
> >>> If I do this attached it goes away (looking for kdf for a second
> opinion!)
> >>>
> >>> Please comment on if there are any side effects of this? [NB diff
> includes the old line commented out, just using to ensure we
> >>> are talking about the same thing!]
> >>>
> >>> Adrian
> >>>
> >>> ----- Original Message ----- From: "Dan Sully" <dan (AT) slimdevices (DOT) com>
> >>> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
> >>> Sent: Wednesday, March 09, 2005 3:35 PM
> >>> Subject: [Developers] Re: Scrolling jitter - Info.pm question
> >>>
> >>>
> >>>> * kdf shaped the electrons to say...
> >>>>
> >>>>>> Is there any reason why Info.pm needs to include !isFile($fullpath)
> in line
> >>>>>> 619 - the bit that invalidates the display cache and
> >>>>>> causes it to call infoFormat()
> >>>>>>
> >>>>>> I seem to get the right answer with the !isFile bit removed. ....?
> >>>>>
> >>>>>
> >>>>> sadly, it doesn't see to do the trick for me. at least on wireless, it
> is still very jumpy.
> >>>>
> >>>>
> >>>> Be sure to sync up subversion - as we added some code to alleviate this
> in r2382
> >>>>
> >>>>
>
http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
> >>>>
> >>>> -D
> >>>> --
> >>>> <iNoah> all your base class are belong to us
> >>>>

rtitmuss
2005-03-09, 15:30
Triode wrote:

> KDF - can you confirm the RadioIO scrolling jitter was when playing on
> a SB2 or softsqueeze? [i.e. not SB1]
>
> Vidur/anyone any quick tips as to the difference in streaming to the
> SB2 from SBG? At present I seem to get perfect scrolling on a SBG
> when playing RadioIO, but not on Richard's new Softsqueeze (which
> emulates SB2)...
>
I have just tried with RadioIO and I see jitter on both SB2 and
softsqueeze even after your patch has been applied. I don't have an SB1
on my desk to compare with at the moment.

Richard

Triode
2005-03-10, 19:40
Vidur,

Any chance of committing this change - now I have worked out that the other jitter problem is totally unrelated.

Adrian
----- Original Message -----
From: "Vidur Apparao" <vidur (AT) slimdevices (DOT) com>
To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
Sent: Wednesday, March 09, 2005 8:40 PM
Subject: Re: [Developers] Re: Scrolling jitter - Info.pm question


>
> I think the reason for excluding remote streams from the displayCache
> was the hacked way in which we were displaying the current song for
> radio stations - by setting the title for the corresponding URL in the
> database. Since the title changed with song transitions, we avoided caching.
>
> With r2382, the current song title comes from a separate runtime hash,
> so we shouldn't need to exclude remote streams from the cache...but we
> also shouldn't be hitting infoFormat() that often, since we're using the
> currentTitles hash. I'm OK with removing the !isFile($fullpath) clause.
>
> --Vidur
>
> Triode wrote:
>
>> OK, I think I confused matters by refering to a line number. This
>> problem still exists in r2382, but as you've adding stuff its at a
>> differnt line number!
>>
>> If I do this attached it goes away (looking for kdf for a second
>> opinion!)
>>
>> Please comment on if there are any side effects of this? [NB diff
>> includes the old line commented out, just using to ensure we are
>> talking about the same thing!]
>>
>> Adrian
>>
>> ----- Original Message ----- From: "Dan Sully" <dan (AT) slimdevices (DOT) com>
>> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
>> Sent: Wednesday, March 09, 2005 3:35 PM
>> Subject: [Developers] Re: Scrolling jitter - Info.pm question
>>
>>
>>> * kdf shaped the electrons to say...
>>>
>>>>> Is there any reason why Info.pm needs to include
>>>>> !isFile($fullpath) in line
>>>>> 619 - the bit that invalidates the display cache and
>>>>> causes it to call infoFormat()
>>>>>
>>>>> I seem to get the right answer with the !isFile bit removed. ....?
>>>>
>>>>
>>>> sadly, it doesn't see to do the trick for me. at least on wireless,
>>>> it is still very jumpy.
>>>
>>>
>>> Be sure to sync up subversion - as we added some code to alleviate
>>> this in r2382
>>>
>>> http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
>>>
>>>
>>> -D
>>> --
>>> <iNoah> all your base class are belong to us
>>>

vidurapparao
2005-03-10, 22:21
Done in r2419.

--Vidur

Triode wrote:

> Vidur,
>
> Any chance of committing this change - now I have worked out that the
> other jitter problem is totally unrelated.
>
> Adrian
> ----- Original Message ----- From: "Vidur Apparao"
> <vidur (AT) slimdevices (DOT) com>
> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
> Sent: Wednesday, March 09, 2005 8:40 PM
> Subject: Re: [Developers] Re: Scrolling jitter - Info.pm question
>
>
>>
>> I think the reason for excluding remote streams from the displayCache
>> was the hacked way in which we were displaying the current song for
>> radio stations - by setting the title for the corresponding URL in
>> the database. Since the title changed with song transitions, we
>> avoided caching.
>>
>> With r2382, the current song title comes from a separate runtime
>> hash, so we shouldn't need to exclude remote streams from the
>> cache...but we also shouldn't be hitting infoFormat() that often,
>> since we're using the currentTitles hash. I'm OK with removing the
>> !isFile($fullpath) clause.
>>
>> --Vidur
>>
>> Triode wrote:
>>
>>> OK, I think I confused matters by refering to a line number. This
>>> problem still exists in r2382, but as you've adding stuff its at a
>>> differnt line number!
>>>
>>> If I do this attached it goes away (looking for kdf for a second
>>> opinion!)
>>>
>>> Please comment on if there are any side effects of this? [NB diff
>>> includes the old line commented out, just using to ensure we are
>>> talking about the same thing!]
>>>
>>> Adrian
>>>
>>> ----- Original Message ----- From: "Dan Sully" <dan (AT) slimdevices (DOT) com>
>>> To: "Slim Devices Developers" <developers (AT) lists (DOT) slimdevices.com>
>>> Sent: Wednesday, March 09, 2005 3:35 PM
>>> Subject: [Developers] Re: Scrolling jitter - Info.pm question
>>>
>>>
>>>> * kdf shaped the electrons to say...
>>>>
>>>>>> Is there any reason why Info.pm needs to include
>>>>>> !isFile($fullpath) in line
>>>>>> 619 - the bit that invalidates the display cache and
>>>>>> causes it to call infoFormat()
>>>>>>
>>>>>> I seem to get the right answer with the !isFile bit removed. ....?
>>>>>
>>>>>
>>>>>
>>>>> sadly, it doesn't see to do the trick for me. at least on
>>>>> wireless, it is still very jumpy.
>>>>
>>>>
>>>>
>>>> Be sure to sync up subversion - as we added some code to alleviate
>>>> this in r2382
>>>>
>>>> http://svn.slimdevices.com/trunk/server/Slim/Music/Info.pm?rev=2382&r1=2376&r2=2382
>>>>
>>>>
>>>> -D
>>>> --
>>>> <iNoah> all your base class are belong to us
>>>>