blob: e30cda0a96cff324d1b70936d2543cde3c275216 [file] [log] [blame]
diff --git a/src/libmtp.c b/src/libmtp.c
index bbe2642..b8f856b 100644
--- a/src/libmtp.c
+++ b/src/libmtp.c
@@ -8962,6 +8962,27 @@ int LIBMTP_Get_Thumbnail(LIBMTP_mtpdevice_t *device, uint32_t const id,
}
/**
+ * Get thumbnail format of a file.
+ * @param device a pointer to the device to get thumbnail format of.
+ * @param id the object ID of the file to get thumbnail format of.
+ * @return 0 on success, any other value means failure.
+ */
+int LIBMTP_Get_Thumbnail_Format(LIBMTP_mtpdevice_t *device, uint32_t const id,
+ uint16_t *format)
+{
+ PTPParams *params = (PTPParams *) device->params;
+ uint16_t ret;
+
+ PTPObjectInfo object_info;
+ ret = ptp_getobjectinfo(params, id, &object_info);
+ if (ret != PTP_RC_OK)
+ return -1;
+
+ *format = object_info.ThumbFormat;
+ return 0;
+}
+
+/**
* This routine updates an album based on the metadata
* supplied. If the <code>tracks</code> field of the metadata
* contains a track listing, these tracks will be added to the
diff --git a/src/libmtp.h b/src/libmtp.h
index f923cc1..07aa273 100644
--- a/src/libmtp.h
+++ b/src/libmtp.h
@@ -924,6 +924,8 @@ int LIBMTP_Get_Representative_Sample(LIBMTP_mtpdevice_t *, uint32_t const,
LIBMTP_filesampledata_t *);
int LIBMTP_Get_Thumbnail(LIBMTP_mtpdevice_t *, uint32_t const,
unsigned char **data, unsigned int *size);
+int LIBMTP_Get_Thumbnail_Format(LIBMTP_mtpdevice_t *device, uint32_t const id,
+ uint16_t *format);
/**
* @}
diff --git a/src/libmtp.h.in b/src/libmtp.h.in
index 2b2f0bb..49edd3c 100644
--- a/src/libmtp.h.in
+++ b/src/libmtp.h.in
@@ -924,6 +924,8 @@ int LIBMTP_Get_Representative_Sample(LIBMTP_mtpdevice_t *, uint32_t const,
LIBMTP_filesampledata_t *);
int LIBMTP_Get_Thumbnail(LIBMTP_mtpdevice_t *, uint32_t const,
unsigned char **data, unsigned int *size);
+int LIBMTP_Get_Thumbnail_Format(LIBMTP_mtpdevice_t *device, uint32_t const id,
+ uint16_t *format);
/**
* @}
diff --git a/src/libmtp.sym b/src/libmtp.sym
index 4130fe8..1148edd 100644
--- a/src/libmtp.sym
+++ b/src/libmtp.sym
@@ -103,4 +103,5 @@ LIBMTP_Set_Playlist_Name
LIBMTP_Set_Album_Name
LIBMTP_Set_Object_Filename
LIBMTP_Get_Thumbnail
+LIBMTP_Get_Thumbnail_Format
LIBMTP_Read_Event