Version: 1.4.3 (using KDE 3.5.1 Level "a" , SUSE 10.1) Compiler: Target: i586-suse-linux OS: Linux (i686) release 2.6.16.21-0.25-default My location is GMT +13 hours When plugging in my iPod Amarok either says the songs have been played in the future or if over 12 hours ago says they have been played at the time less 12 hrs (at 6:00 pm it will report a song played at 4:00 am as having been played 2 hours ago ) I have tried setting my system time to UTC and also setting my iPod to 24 hr clock but it makes no difference
You don't need to have your system time changed, but rather the timezone on the ipod. Make sure the date is correct too.
iPod time, date and time zone are correct and matches the time, date and time zone on my PC. Having just played a track on my iPod, connecting it to Amorok says "Last Played: Tomorrow"
Changing the time zone on my iPod to one that is 12 hours behind me, Amarok now shows the correct last played details but this is not a solution as the calendar on my iPod is now incorrect as are any alarms I have set on it
Can you please report exactly which timezones you have set on your computer and your ipod? What version of libgpod are you using?
My time zone is set to Pacific, Auckland, New Zealand (GMT + 13 hours) on both my PC and my iPod I am using libgpod 0.3.2-4@i586
I can confirm this bug. I'm in UTC+0200, and if the timezone on my iPod is set to UTC+0200 then the Last Played timestamp is 2 hours ahead. If I set my iPod to UTC then the timestamp is correct. I found the following comment in the libgpod code: /* NOTE: * * The iPod (firmware 1.3, 2.0, ...?) doesn't seem to use the * timezone information correctly -- no matter what you set * iPod's timezone to, it will always record as if it were set * to UTC -- we need to subtract the difference between * current timezone and UTC to get a correct * display. -- this should be done by the application were * necessary */ As I read it, Amarok needs to convert the timestamp to UTC when synchronising. From glancing through the Amarok source code, it looks like it doesn't do this.
Created attachment 18379 [details] Convert Last Played timestamps to UTC when synchronising from iPod The iPod seems to store Last Played timestamps as localtime, regardless of what timezone it is set to (i.e. exactly what the time is displayed as). My patch converts these timestamps to UTC by subtracting the timezone offset. I'm not sure if my method of getting the timezone offset is the best method. I also don't know if this behaviour applies to all iPods. Mine is a 2G Nano.
libgpod should handle this now: http://permalink.gmane.org/gmane.comp.ipod.gtkpod.cvs/1522
Alejandro, can you please comment on this? Is this still a problem in Amarok 2?
Last played et al are NYI on A2 as a matter that goes along with sync'ing of devices with local collection. Jefferai is working on AFT stuff currently, so until that gets dealt with not a ton I can do.
... and so this will be fixed for 2.0.
Closing correctly. Solved in Amarok 2.x already.