diff --git a/docs/reference/tmpl/Internal.sgml b/docs/reference/tmpl/Internal.sgml
index d8a290a..698d08a 100644
--- a/docs/reference/tmpl/Internal.sgml
+++ b/docs/reference/tmpl/Internal.sgml
@@ -17,3 +17,6 @@ These functions won't be documented because you won't be using them. ;)
+
+
+
diff --git a/docs/reference/tmpl/artwork.sgml b/docs/reference/tmpl/artwork.sgml
index 00a87f3..554862e 100644
--- a/docs/reference/tmpl/artwork.sgml
+++ b/docs/reference/tmpl/artwork.sgml
@@ -19,6 +19,9 @@ album/track artwork. For working with photos, see the
+
+
+
@@ -47,6 +50,7 @@ album/track artwork. For working with photos, see the
+@void:
@Returns:
diff --git a/docs/reference/tmpl/chapterdata.sgml b/docs/reference/tmpl/chapterdata.sgml
index 53a59f1..f7787a6 100644
--- a/docs/reference/tmpl/chapterdata.sgml
+++ b/docs/reference/tmpl/chapterdata.sgml
@@ -18,6 +18,9 @@ points in the track are defined here, as well as the title for each chapter.
+
+
+
@@ -49,6 +52,7 @@ points in the track are defined here, as well as the title for each chapter.
+@void:
@Returns:
@@ -74,6 +78,7 @@ points in the track are defined here, as well as the title for each chapter.
+@void:
@Returns:
diff --git a/docs/reference/tmpl/device.sgml b/docs/reference/tmpl/device.sgml
index c21e2e6..33fb0e7 100644
--- a/docs/reference/tmpl/device.sgml
+++ b/docs/reference/tmpl/device.sgml
@@ -17,6 +17,9 @@ These functions are for reading and setting information about the iPod.
+
+
+
@@ -30,12 +33,14 @@ These functions are for reading and setting information about the iPod.
@sysinfo_changed:
@timezone_shift:
@iphone_sync_context:
+@iphone_sync_nest_level:
+@void:
@Returns:
@@ -130,6 +135,7 @@ These functions are for reading and setting information about the iPod.
+@void:
@Returns:
@@ -167,6 +173,9 @@ These functions are for reading and setting information about the iPod.
@ITDB_IPOD_GENERATION_CLASSIC_3:
@ITDB_IPOD_GENERATION_NANO_5:
@ITDB_IPOD_GENERATION_TOUCH_3:
+@ITDB_IPOD_GENERATION_IPAD_1:
+@ITDB_IPOD_GENERATION_IPHONE_4:
+@ITDB_IPOD_GENERATION_TOUCH_4:
@@ -222,6 +231,9 @@ These functions are for reading and setting information about the iPod.
@ITDB_IPOD_MODEL_SHUFFLE_BLACK:
@ITDB_IPOD_MODEL_IPHONE_WHITE:
@ITDB_IPOD_MODEL_IPHONE_BLACK:
+@ITDB_IPOD_MODEL_SHUFFLE_GOLD:
+@ITDB_IPOD_MODEL_SHUFFLE_STAINLESS:
+@ITDB_IPOD_MODEL_IPAD:
@@ -247,10 +259,10 @@ These functions are for reading and setting information about the iPod.
@back_color:
@display_width:
@interlaced:
-@align_row_bytes:
@color_adjustment:
@gamma:
@associated_format:
+@row_bytes_alignment:
diff --git a/docs/reference/tmpl/itunesdb-copying.sgml b/docs/reference/tmpl/itunesdb-copying.sgml
index 0d6705f..70fa3ca 100644
--- a/docs/reference/tmpl/itunesdb-copying.sgml
+++ b/docs/reference/tmpl/itunesdb-copying.sgml
@@ -18,6 +18,9 @@ about the files and directories on the iPod.
+
+
+
diff --git a/docs/reference/tmpl/itunesdb-db.sgml b/docs/reference/tmpl/itunesdb-db.sgml
index d4b377e..254e35d 100644
--- a/docs/reference/tmpl/itunesdb-db.sgml
+++ b/docs/reference/tmpl/itunesdb-db.sgml
@@ -89,6 +89,9 @@ library _duplicate()/_free() functions.
+
+
+
@@ -143,6 +146,7 @@ library _duplicate()/_free() functions.
+@void:
@Returns:
diff --git a/docs/reference/tmpl/itunesdb-lowlevel.sgml b/docs/reference/tmpl/itunesdb-lowlevel.sgml
index 1c89c91..5569faa 100644
--- a/docs/reference/tmpl/itunesdb-lowlevel.sgml
+++ b/docs/reference/tmpl/itunesdb-lowlevel.sgml
@@ -18,6 +18,9 @@ control over the iPod database.
+
+
+
diff --git a/docs/reference/tmpl/itunesdb-time.sgml b/docs/reference/tmpl/itunesdb-time.sgml
index c0e33a7..31d3de9 100644
--- a/docs/reference/tmpl/itunesdb-time.sgml
+++ b/docs/reference/tmpl/itunesdb-time.sgml
@@ -24,11 +24,15 @@ writing/reading the iPod databases.
+
+
+
+@void:
@Returns:
diff --git a/docs/reference/tmpl/photodb.sgml b/docs/reference/tmpl/photodb.sgml
index 655394f..d0b92c2 100644
--- a/docs/reference/tmpl/photodb.sgml
+++ b/docs/reference/tmpl/photodb.sgml
@@ -91,6 +91,9 @@ directory of the libgpod source for an example of how to use the interface.
+
+
+
diff --git a/docs/reference/tmpl/playlists.sgml b/docs/reference/tmpl/playlists.sgml
index 4eb23c2..aff1760 100644
--- a/docs/reference/tmpl/playlists.sgml
+++ b/docs/reference/tmpl/playlists.sgml
@@ -19,6 +19,9 @@ a playlist, etc.
+
+
+
diff --git a/docs/reference/tmpl/smart-playlists.sgml b/docs/reference/tmpl/smart-playlists.sgml
index 8a54c5c..53a1e44 100644
--- a/docs/reference/tmpl/smart-playlists.sgml
+++ b/docs/reference/tmpl/smart-playlists.sgml
@@ -17,6 +17,9 @@ These functions and structures are for dealing with smart playlists.
+
+
+
@@ -275,6 +278,7 @@ These functions and structures are for dealing with smart playlists.
+@void:
@Returns:
diff --git a/docs/reference/tmpl/track.sgml b/docs/reference/tmpl/track.sgml
index e4d6511..7a01935 100644
--- a/docs/reference/tmpl/track.sgml
+++ b/docs/reference/tmpl/track.sgml
@@ -18,6 +18,9 @@ information about an iPod track.
+
+
+
@@ -171,6 +174,7 @@ information about an iPod track.
@ITDB_MEDIATYPE_ITUNES_EXTRA:
@ITDB_MEDIATYPE_MEMO:
@ITDB_MEDIATYPE_ITUNES_U:
+@ITDB_MEDIATYPE_EPUB_BOOK:
@@ -184,6 +188,7 @@ information about an iPod track.
+@void:
@Returns:
diff --git a/src/itdb.h b/src/itdb.h
index e8d7547..a7cb040 100644
--- a/src/itdb.h
+++ b/src/itdb.h
@@ -1253,22 +1253,22 @@ typedef enum
*/
typedef enum
{
- ITDB_MEDIATYPE_AUDIO = 0x000001,
- ITDB_MEDIATYPE_MOVIE = 0x000002,
- ITDB_MEDIATYPE_PODCAST = 0x000004,
- ITDB_MEDIATYPE_VIDEO_PODCAST= 0x000006,
- ITDB_MEDIATYPE_AUDIOBOOK = 0x000008,
- ITDB_MEDIATYPE_MUSICVIDEO = 0x000020,
- ITDB_MEDIATYPE_TVSHOW = 0x000040,
- ITDB_MEDIATYPE_MUSIC_TVSHOW = 0x000060,
- ITDB_MEDIATYPE_RINGTONE = 0x004000,
- ITDB_MEDIATYPE_RENTAL = 0x008000,
- ITDB_MEDIATYPE_ITUNES_EXTRA = 0x010000,
- ITDB_MEDIATYPE_MEMO = 0x100000,
- ITDB_MEDIATYPE_ITUNES_U = 0x200000,
- ITDB_MEDIATYPE_EPUB_BOOK = 0x400000
+ ITDB_MEDIATYPE_AUDIO = (1 << 0),
+ ITDB_MEDIATYPE_MOVIE = (1 << 1),
+ ITDB_MEDIATYPE_PODCAST = (1 << 2),
+ ITDB_MEDIATYPE_AUDIOBOOK = (1 << 3),
+ ITDB_MEDIATYPE_MUSICVIDEO = (1 << 5),
+ ITDB_MEDIATYPE_TVSHOW = (1 << 6),
+ ITDB_MEDIATYPE_RINGTONE = (1 << 14),
+ ITDB_MEDIATYPE_RENTAL = (1 << 15),
+ ITDB_MEDIATYPE_ITUNES_EXTRA = (1 << 16),
+ ITDB_MEDIATYPE_MEMO = (1 << 20),
+ ITDB_MEDIATYPE_ITUNES_U = (1 << 21),
+ ITDB_MEDIATYPE_EPUB_BOOK = (1 << 22)
} Itdb_Mediatype;
+#define ITDB_MEDIATYPE_VIDEO_PODCAST (ITDB_MEDIATYPE_MOVIE | ITDB_MEDIATYPE_PODCAST)
+#define ITDB_MEDIATYPE_MUSIC_TVSHOW (ITDB_MEDIATYPE_MUSICVIDEO | ITDB_MEDIATYPE_TVSHOW)
typedef struct _Itdb_Track_Private Itdb_Track_Private;
/**
* Itdb_Track:
diff --git a/src/itdb_itunesdb.c b/src/itdb_itunesdb.c
index ea3a7ad..bae2844 100644
--- a/src/itdb_itunesdb.c
+++ b/src/itdb_itunesdb.c
@@ -6472,9 +6472,8 @@ static gboolean write_hths (FExport *fexp)
put32lint_seek(cts, cts->pos, track_seek);
g_return_val_if_fail (write_rths(cts, track), FALSE);
- if (track->mediatype == ITDB_MEDIATYPE_AUDIOBOOK ||
- track->mediatype == ITDB_MEDIATYPE_VIDEO_PODCAST ||
- track->mediatype == ITDB_MEDIATYPE_PODCAST)
+ if ((track->mediatype & ITDB_MEDIATYPE_AUDIOBOOK) ||
+ (track->mediatype & ITDB_MEDIATYPE_PODCAST))
nonstdtrackcnt++;
/* Go to the offset for the next track */
@@ -6542,9 +6541,8 @@ static gboolean write_lphs (WContents *cts, Itdb_Playlist *pl)
id = tr->dbid;
ctr = current_track->data;
/* Count the number of podcasts and audiobooks for later use */
- if (tr->mediatype == ITDB_MEDIATYPE_AUDIOBOOK ||
- tr->mediatype == ITDB_MEDIATYPE_VIDEO_PODCAST ||
- tr->mediatype == ITDB_MEDIATYPE_PODCAST)
+ if ((tr->mediatype & ITDB_MEDIATYPE_AUDIOBOOK) ||
+ (tr->mediatype & ITDB_MEDIATYPE_PODCAST))
nonstdtrackcnt++;
while( id != ctr->dbid)
diff --git a/src/itdb_playlist.c b/src/itdb_playlist.c
index 5b1e8d8..85cef97 100644
--- a/src/itdb_playlist.c
+++ b/src/itdb_playlist.c
@@ -1595,7 +1595,7 @@ gboolean itdb_playlist_is_audiobooks (Itdb_Playlist *pl)
for (tl = pl->members; tl; tl = tl->next)
{
track = tl->data;
- if (track->mediatype != ITDB_MEDIATYPE_AUDIOBOOK)
+ if (!(track->mediatype & ITDB_MEDIATYPE_AUDIOBOOK))
{
return FALSE;
}
diff --git a/src/itdb_sqlite.c b/src/itdb_sqlite.c
index 380b5a1..4825cb2 100644
--- a/src/itdb_sqlite.c
+++ b/src/itdb_sqlite.c
@@ -1256,8 +1256,6 @@ static int mk_Library(Itdb_iTunesDB *itdb,
/* if it's a movie, music video or tv show */
if ((track->mediatype & ITDB_MEDIATYPE_MOVIE)
|| (track->mediatype & ITDB_MEDIATYPE_MUSICVIDEO)
- || (track->mediatype & ITDB_MEDIATYPE_VIDEO_PODCAST)
- || (track->mediatype & ITDB_MEDIATYPE_MUSIC_TVSHOW)
|| (track->mediatype & ITDB_MEDIATYPE_TVSHOW)) {
/* printf("[%s] -- inserting into \"video_info\"\n", __func__); */
res = sqlite3_reset(stmt_video_info);