rendered paste bodyIndex: src/file.c
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/file.c,v
retrieving revision 1.144
diff -u -p -r1.144 file.c
--- src/file.c 15 Oct 2005 17:04:38 -0000 1.144
+++ src/file.c 7 Nov 2005 18:39:49 -0000
@@ -80,6 +80,19
@@ gint determine_file_type (gchar *path) else if (g_strcasecmp (suf, ".m4p") == 0) type = FILE_TYPE_M4P; else if (g_strcasecmp (suf, ".m4b") == 0) type = FILE_TYPE_M4B; else if (g_strcasecmp (suf, ".wav") == 0) type = FILE_TYPE_WAV;
+ /* TODO: Currently all video extensions are treated as m4v. */
+ else if (g_strcasecmp (suf, ".m4v") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".mp4") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".mpg") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".mpeg") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".avi") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".mov") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".M4V") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".MP4") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".MPG") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".MPEG") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".AVI") == 0) type = FILE_TYPE_M4V;
+ else if (g_strcasecmp (suf, ".MOV") == 0) type = FILE_TYPE_M4V; else if (g_strcasecmp (suf, ".m3u") == 0) type = FILE_TYPE_M3U; else if (g_strcasecmp (suf, ".pls") == 0) type = FILE_TYPE_PLS; }
@@ -148,6 +161,7
@@ add_playlist_by_filename (iTunesDB *itdb case FILE_TYPE_M4P: case FILE_TYPE_M4B: case FILE_TYPE_WAV:
+ case FILE_TYPE_M4V: gtkpod_warning (_("'%s' is a not a known playlist file.\n\n"), plfile); g_free(plname);
@@ -838,6 +852,9
@@ Track *get_track_info_from_file (gchar * case FILE_TYPE_WAV: nti = wav_get_file_info (name); break;
+ case FILE_TYPE_M4V:
+ nti = m4v_get_file_info (name);
+ break; case FILE_TYPE_UNKNOWN: gtkpod_warning (_("The following track could not be processed (filetype unknown): '%s'\n"), name_utf8); g_free (name_utf8);
@@ -1800,6 +1817,7
@@ gboolean add_track_by_filename (iTunesDB case FILE_TYPE_M4A: case FILE_TYPE_M4P: case FILE_TYPE_M4B:
+ case FILE_TYPE_M4V: /* TODO? */ case FILE_TYPE_UNKNOWN: break; }
@@ -1953,6 +1971,7
@@ static gboolean file_write_info (gchar * return mp4_write_file_info (name, track); case FILE_TYPE_WAV: return wav_write_file_info (name, track);
+ case FILE_TYPE_M4V: /* TODO? */ case FILE_TYPE_M3U: case FILE_TYPE_PLS: case FILE_TYPE_UNKNOWN:
@@ -2438,6 +2457,7
@@ gboolean get_gain (Track *track) case FILE_TYPE_M4P: /* FIXME */ case FILE_TYPE_M4B: /* FIXME */ case FILE_TYPE_WAV: /* FIXME */
+ case FILE_TYPE_M4V: /* FIXME */ case FILE_TYPE_UNKNOWN: gtkpod_warning ( _("Normalization failed: file type not supported.\n"));
Index: src/file.h
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/file.h,v
retrieving revision 1.45
diff -u -p -r1.45 file.h
--- src/file.h 20 Jun 2005 14:32:06 -0000 1.45
+++ src/file.h 7 Nov 2005 18:39:49 -0000
@@ -49,6 +49,7
@@ typedef enum FILE_TYPE_M4P, FILE_TYPE_M4B, FILE_TYPE_WAV, + FILE_TYPE_M4V, FILE_TYPE_M3U, FILE_TYPE_PLS } FileType;
Index: src/misc_track.c
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/misc_track.c,v
retrieving revision 1.27
diff -u -p -r1.27 misc_track.c
--- src/misc_track.c 24 Sep 2005 04:20:24 -0000 1.27
+++ src/misc_track.c 7 Nov 2005 18:39:52 -0000
@@ -803,6 +803,7
@@ Playlist *add_text_plain_to_playlist (iT case FILE_TYPE_M4P: case FILE_TYPE_M4B: case FILE_TYPE_WAV:
+ case FILE_TYPE_M4V: if (!pl) { /* no playlist yet -- create new one */ pl = add_new_pl_user_name (itdb, NULL,
Index: src/wavfile.c
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/wavfile.c,v
retrieving revision 1.9
diff -u -p -r1.9 wavfile.c
--- src/wavfile.c 20 Sep 2005 09:50:13 -0000 1.9
+++ src/wavfile.c 7 Nov 2005 18:39:52 -0000
@@ -90,6 +90,14
@@ static gint read_le_short(FILE * file, g }
+Track *m4v_get_file_info (gchar *filename)
+{
+ /* FIXME: this is a hack! Move somewhere more appropriate! */
+ Track *track = NULL; + track = gp_track_new ();
+ track->filetype = g_strdup ("M4V video file"); + return track;
+} Track *wav_get_file_info (gchar *filename) {
Index: src/wavfile.h
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/wavfile.h,v
retrieving revision 1.6
diff -u -p -r1.6 wavfile.h
--- src/wavfile.h 17 Jun 2005 13:30:05 -0000 1.6
+++ src/wavfile.h 7 Nov 2005 18:39:52 -0000
@@ -34,4 +34,7
@@ gboolean wav_write_file_info (gchar *filename, Track *track); Track *wav_get_file_info (gchar *name);
+
+/* FIXME: this is a hack! Move somewhere more appropriate! */
+Track *m4v_get_file_info (gchar *name); #endif