diff --git a/plugins/mtpdevice/rb-mtp-source.c b/plugins/mtpdevice/rb-mtp-source.c index e699e58..84346d4 100644 --- a/plugins/mtpdevice/rb-mtp-source.c +++ b/plugins/mtpdevice/rb-mtp-source.c @@ -329,6 +329,27 @@ add_mtp_track_to_db (RBMtpSource *source, g_value_unset (&value); } + /* Set playcount */ + if (track->usecount != 0) { + GValue value = {0, }; + g_value_init (&value, G_TYPE_ULONG); + g_value_set_ulong (&value, track->usecount); + rhythmdb_entry_set (RHYTHMDB (db), entry, + RHYTHMDB_PROP_PLAY_COUNT, + &value); + g_value_unset (&value); + } + /* Set rating */ + if (track->rating != 0) { + GValue value = {0, }; + g_value_init (&value, G_TYPE_DOUBLE); + g_value_set_double (&value, track->rating/20); + rhythmdb_entry_set (RHYTHMDB (db), entry, + RHYTHMDB_PROP_RATING, + &value); + g_value_unset (&value); + } + /* Set title */ entry_set_string_prop (RHYTHMDB (db), entry, RHYTHMDB_PROP_TITLE, track->title); @@ -663,6 +684,8 @@ transfer_track (RBMtpSource *source, } trackmeta->tracknumber = rhythmdb_entry_get_ulong (entry, RHYTHMDB_PROP_TRACK_NUMBER); trackmeta->duration = rhythmdb_entry_get_ulong (entry, RHYTHMDB_PROP_DURATION) * 1000; + trackmeta->rating = rhythmdb_entry_get_double (entry, RHYTHMDB_PROP_RATING) * 20; + trackmeta->usecount = rhythmdb_entry_get_ulong (entry, RHYTHMDB_PROP_PLAY_COUNT); trackmeta->filesize = filesize; if (mimetype == NULL) { trackmeta->filetype = mimetype_to_filetype (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_MIMETYPE)); diff -ur a/plugins/mtpdevice/rb-mtp-source.c b/plugins/mtpdevice/rb-mtp-source.c --- a/plugins/mtpdevice/rb-mtp-source.c +++ b/plugins/mtpdevice/rb-mtp-source.c @@ -670,7 +693,11 @@ transfer_track (RBMtpSource *source, trackmeta->filetype = mimetype_to_filetype (mimetype); } +#ifndef HAVE_LIBMTP_030 + if (LIBMTP_Send_Track_From_File (device, filename, trackmeta, NULL, NULL) != 0) { +#else if (LIBMTP_Send_Track_From_File (device, filename, trackmeta, NULL, NULL, 0) != 0) { +#endif LIBMTP_destroy_track_t (trackmeta); rb_debug ("Tracktransfer failed\n"); return NULL; --- ./configure 2008-08-24 09:30:40.000000000 +0200 +++ ./configure 2008-08-24 09:28:57.000000000 +0200 @@ -14287,6 +14287,23 @@ fi if test "x$enable_hal" = xyes; then use_mtp=yes + if test -n "$PKG_CONFIG" && \ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libmtp >= 0.3.0\"") >&5 + ($PKG_CONFIG --exists --print-errors "libmtp >= 0.3.0") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + found_libmtp_030_pkg=yes +else + found_libmtp_030_pkg=no +fi + if test x"$found_libmtp_030_pkg" = "xyes" ; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_LIBMTP_030 1 +_ACEOF + + fi fi