Re: [Bug-gnupod] 4th generation iPod Nano
On Thu, May 28, 2009 at 09:13:08PM +0200, Richard van den Berg wrote: On 5/27/09 11:47 PM, Richard van den Berg wrote: I'll post a full patch including the documentation side later. Here is the patch to make the artwork work for the 4th generation iPod Nano. Thank you very much! I tried to commit the patch to CVS but savannah seems to be down at this moment. cheers -henrik ___ Bug-gnupod mailing list Bug-gnupod@nongnu.org http://lists.nongnu.org/mailman/listinfo/bug-gnupod
Re: [Bug-gnupod] 4th generation iPod Nano
On Fri, May 29, 2009 14:16, H. Langos wrote: It certainly wouldn't hurt to put some iTunesDB files away to have some data for verification if somebody sits down to reverse engineer that part of the iTunesDB format. I don't have the Nano anymore (it's on a plane to a sunny destination), but I can always borrow it later and make the dumps you suggested (my own approach was rather limited). It's rather interesting that the Nano didn't seem to mind the type 32 mhods were missing from the iTunesDB. Cheers, Richard ___ Bug-gnupod mailing list Bug-gnupod@nongnu.org http://lists.nongnu.org/mailman/listinfo/bug-gnupod
Re: [Bug-gnupod] 4th generation iPod Nano
On 5/27/09 11:47 PM, Richard van den Berg wrote: I'll post a full patch including the documentation side later. Here is the patch to make the artwork work for the 4th generation iPod Nano. Cheers, Richard ? .gnupod_version ? Makefile ? autom4te.cache ? config.log ? config.status ? configure ? nano_4g Index: doc/gnupod.html === RCS file: /sources/gnupod/gnupod/doc/gnupod.html,v retrieving revision 1.34 diff -u -r1.34 gnupod.html --- doc/gnupod.html 17 Feb 2008 09:14:04 - 1.34 +++ doc/gnupod.html 28 May 2009 19:11:42 - @@ -943,7 +943,7 @@ !--docid::SEC17::-- P -GNUpod can write cover artwork for video, nano and late 2007-nano iPods. The internal image format is model specific, so you should give +GNUpod can write cover artwork for video and nano iPods. The internal image format is model specific, so you should give GNUpod a hint about the image format it should use. /PP @@ -954,6 +954,8 @@ TABLEtrtdnbsp;/tdtd class=examplepremodel = nano /pre/td/tr/tableLate 2007-nanos need this setting: TABLEtrtdnbsp;/tdtd class=examplepremodel = nano_3g +/pre/td/tr/tableLate 2008-nanos need this setting: +TABLEtrtdnbsp;/tdtd class=examplepremodel = nano_4g /pre/td/tr/table/PP To specify a cover while adding files you'd use the CODE--artwork/CODE switch of CODEgnupod_addsong.pl/CODE. Example: Index: doc/gnupod.info === RCS file: /sources/gnupod/gnupod/doc/gnupod.info,v retrieving revision 1.33 diff -u -r1.33 gnupod.info --- doc/gnupod.info 17 Feb 2008 09:14:04 - 1.33 +++ doc/gnupod.info 28 May 2009 19:11:42 - @@ -667,6 +667,8 @@ model = nano Late 2007-nanos need this setting: model = nano_3g + Late 2008-nanos need this setting: + model = nano_4g To specify a cover while adding files you'd use the `--artwork' switch of `gnupod_addsong.pl'. Example: Index: doc/gnupod.texi === RCS file: /sources/gnupod/gnupod/doc/gnupod.texi,v retrieving revision 1.41 diff -u -r1.41 gnupod.texi --- doc/gnupod.texi 24 Mar 2009 16:54:41 - 1.41 +++ doc/gnupod.texi 28 May 2009 19:11:43 - @@ -684,7 +684,7 @@ @node Adding cover artwork @section Adding cover artwork -GNUpod can write cover artwork for video, nano and late 2007-nano iPods. The internal image format is model specific, so you should give +GNUpod can write cover artwork for video and nano iPods. The internal image format is model specific, so you should give GNUpod a hint about the image format it should use. If you own a video (compatible) iPod, set: @@ -700,6 +700,10 @@ @example model = nano_3g @end example +Late 2008-nanos need this setting: +...@example +model = nano_4g +...@end example To specify a cover while adding files you'd use the @co...@w{--artwork}} switch of @co...@w{gnupod_addsong.pl}}. Example: Index: doc/gnupodrc.example === RCS file: /sources/gnupod/gnupod/doc/gnupodrc.example,v retrieving revision 1.6 diff -u -r1.6 gnupodrc.example --- doc/gnupodrc.example28 Nov 2007 06:21:19 - 1.6 +++ doc/gnupodrc.example28 May 2009 19:11:43 - @@ -19,6 +19,7 @@ ## * video (default) ## * nano(pre-2007 nanos) ## * nano_3g (the late 2007 nano) +## * nano_4g (the late 2008 nano) # model = video ## Let GNUpod call mktunes.pl itself. Index: src/ext/ArtworkDB.pm === RCS file: /sources/gnupod/gnupod/src/ext/ArtworkDB.pm,v retrieving revision 1.21 diff -u -r1.21 ArtworkDB.pm --- src/ext/ArtworkDB.pm2 Feb 2008 11:30:38 - 1.21 +++ src/ext/ArtworkDB.pm28 May 2009 19:11:43 - @@ -35,7 +35,10 @@ use constant MODE_PARSED= 300; # Artwork profiles: - my $profiles = { 'nano_3g' = [ { height=320, width=320, storage_id=1060, bpp=16, }, { height=128, width=128, storage_id=1055, bpp=16, }, + my $profiles = { 'nano_4g' = [ { height=128, width=128, storage_id=1055, bpp=16, }, { height=128, width=128, storage_id=1068, bpp=16, }, + { height=240, width=240, storage_id=1071, bpp=16, }, { height=50, width=50, storage_id=1074, bpp=16, }, + { height=80, width=80, storage_id=1078, bpp=16, }, { height=240, width=240, storage_id=1084, bpp=16, }, ], +'nano_3g' = [ { height=320, width=320, storage_id=1060, bpp=16, }, { height=128, width=128, storage_id=1055, bpp=16, }, { height=56, width=56, storage_id=1061, bpp=16, drop=112} ], 'classic' = [ { height=320, width=320, storage_id=1060, bpp=16, }, { height=128, width=128,
Re: [Bug-gnupod] 4th generation iPod Nano
On 5/27/09 11:48 AM, H. Langos wrote: On Wed, May 27, 2009 at 07:29:11AM +0200, Richard van den Berg wrote: I temporarily have access to a 4th generation iPod Nano. During the gnupod_INIT I see a bunch of: /usr/bin/tunes2pod: skipping unknown entry of type '32' Should I see where these warnings come from, or is that harmless? Dunno. I'd look into it. And see how gtkpod/libgpod handles it. Type 32 mhod is related to video files (one appears for each file). This is confirmed by some posts on ipodlinux.org I found in the google cache (www.ipodlinux.org is down). It seems no one knows what type 32 mhod is exactly. Libgpod does not have support for it. I don't know how it handles unknown mhod types though. Gnupod removes them, which doesn't seem to bother my iPod Nano. I made some backups of the iTunesDB before and after loading video files with iTunes. A hex editor doesn't give me much insight. Let me know if you want to take a peek yourself. Cheers, Richard ___ Bug-gnupod mailing list Bug-gnupod@nongnu.org http://lists.nongnu.org/mailman/listinfo/bug-gnupod
Re: [Bug-gnupod] 4th generation iPod Nano
On 27-5-2009 11:48, H. Langos wrote: Here's a commit email regarding new artwork formats for the nano4g from libgpod: http://sourceforge.net/mailarchive/message.php?msg_id=E1LB8Vz-0005Dh-9Y%40d5vjzd1.ch3.sourceforge.com which has been fixed a little later http://gtkpod.svn.sourceforge.net/viewvc/gtkpod/libgpod/trunk/src/itdb_device.c?r1=2184r2=2187 Great research, thanks. I took the values from that last post and they worked just fine. The nano_4g is an awesome looking iPod.. too bad it's only 16GB. I'll post a full patch including the documentation side later. Cheers, Richard ___ Bug-gnupod mailing list Bug-gnupod@nongnu.org http://lists.nongnu.org/mailman/listinfo/bug-gnupod
[Bug-gnupod] 4th generation iPod Nano
I temporarily have access to a 4th generation iPod Nano. During the gnupod_INIT I see a bunch of: /usr/bin/tunes2pod: skipping unknown entry of type '32' Should I see where these warnings come from, or is that harmless? One thing I will look into is the artwork. Setting the model to nano_3g makes the coverflow work (awesome!), but does not display the artwork during all other views. In ArtworkDB.pm I see: # Artwork profiles: my $profiles = { 'nano_3g' = [ { height=320, width=320, storage_id=1060, bpp=16, }, { height=128, width=128, storage_id=1055, bpp=16, }, { height=56, width=56, storage_id=1061, bpp=16, drop=112} ], 'classic' = [ { height=320, width=320, storage_id=1060, bpp=16, }, { height=128, width=128, storage_id=1055, bpp=16, }, { height=56, width=56, storage_id=1061, bpp=16, drop=112} ], 'nano'= [ { height=100, width=100, storage_id=1027, bpp=16, }, { height= 42, width= 42, storage_id=1031, bpp=16, }, ], 'video' = [ { height=200, width=200, storage_id=1029, bpp=16, }, { height=100, width=100, storage_id=1028, bpp=16, }, ], }; Is there an easy way to figure out the right values for the nano_4g ? Or will I have to hexdump the ArtworkDB myself? Cheers, Richard ___ Bug-gnupod mailing list Bug-gnupod@nongnu.org http://lists.nongnu.org/mailman/listinfo/bug-gnupod