Update of /cvsroot/gtkpod/libgpod/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7489/src

Modified Files:
        itdb.h itdb_itunesdb.c 
Log Message:
        * src/itdb_itunesdb.c:
        * src/itdb.h: split unk164 into flag1, flag2, flag3, and flag4.



Index: itdb.h
===================================================================
RCS file: /cvsroot/gtkpod/libgpod/src/itdb.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- itdb.h      13 Nov 2005 05:13:10 -0000      1.18
+++ itdb.h      13 Nov 2005 06:04:55 -0000      1.19
@@ -1,4 +1,4 @@
-/* Time-stamp: <2005-11-13 14:11:50 jcs>
+/* Time-stamp: <2005-11-13 14:58:18 jcs>
 |
 |  Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net>
 |  Part of the gtkpod project.
@@ -570,17 +570,21 @@
                         (always 0x01010100?), zero otherwise */
   guint32 unk152;     /* unknown */
   guint32 unk156, unk160;
-  guint32 unk164;     /* unknown (0x02?) in dbversion 0x0d, for
-                        podcasts this seems to be set to
-                        0x01010102. The 0x10000 bit seems to control
-                        whether or not iTunes remembers the last
-                        played position of this song. This will work
-                        on any song, not just podcasts.
-                        Assumption:
-                        Audiobooks also get this bit set by
-                        default. Assumption2: This is really four
-                        single byte flags, perhaps? Might want to try
-                        find various examples and compare them. */
+  guint8 flag1;       /* basically unknown. set to 0x02 for
+                      * podcasts, 0x00 otherwise. */
+  guint8 flag2;       /* "Skip when shuffling" when set to 0x01, set
+                        to 0x00 otherwise. .m4b and .aa files always
+                        seem to be skipped when shuffling, however */
+  guint8 flag3;       /* "Remember playback position" when set to
+                        0x01, set to 0x00 otherwise. .m4b and .aa
+                        files always seem to remember the playback
+                        position, however. */
+  guint8 flag4;       /* Used for podcasts, 0x00 otherwise.  If set to
+                        0x01 the "Now Playing" page will show
+                        Title/Album, when set to 0x00 it will also
+                        show the Artist. When set to 0x02 a sub-page
+                        (middle button) with further information
+                        about the track will be shown. */
   guint64 dbid2;      /* not clear. if not set, itdb will set this to
                         the same value as dbid when adding a track */
   guint32 unk176;     /* unknown - added in dbversion 0x0c, first

Index: itdb_itunesdb.c
===================================================================
RCS file: /cvsroot/gtkpod/libgpod/src/itdb_itunesdb.c,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -d -r1.29 -r1.30
--- itdb_itunesdb.c     13 Nov 2005 05:13:10 -0000      1.29
+++ itdb_itunesdb.c     13 Nov 2005 06:04:55 -0000      1.30
@@ -1,4 +1,4 @@
-/* Time-stamp: <2005-11-13 14:11:49 jcs>
+/* Time-stamp: <2005-11-13 14:58:17 jcs>
 |
 |  Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net>
 |  Part of the gtkpod project.
@@ -1816,7 +1816,10 @@
   {
       track->unk156 = get32lint (cts, seek+156);
       track->unk160 = get32lint (cts, seek+160);
-      track->unk164 = get32lint (cts, seek+164);
+      track->flag1 = get8int (cts, seek+164);
+      track->flag2 = get8int (cts, seek+165);
+      track->flag3 = get8int (cts, seek+166);
+      track->flag4 = get8int (cts, seek+167);
       track->dbid2 = get64lint (cts, seek+168);
       track->unk176 = get32lint (cts, seek+176);
       track->unk180 = get32lint (cts, seek+180);
@@ -2716,7 +2719,10 @@
   /* since iTunesDB version 0x0c */
   put32lint (cts, track->unk156);
   put32lint (cts, track->unk160);
-  put32lint (cts, track->unk164);
+  put8int (cts, track->flag1);
+  put8int (cts, track->flag2);
+  put8int (cts, track->flag3);
+  put8int (cts, track->flag4);
   put64lint (cts, track->dbid2);
   put32lint (cts, track->unk176);
   put32lint (cts, track->unk180);



-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
gtkpod-cvs2 mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2

Reply via email to