29 #ifndef LIBMTP_H_INCLUSION_GUARD
30 #define LIBMTP_H_INCLUSION_GUARD
32 #define LIBMTP_VERSION 1.1.3
33 #define LIBMTP_VERSION_STRING "1.1.3"
39 #define snprintf _snprintf
40 #define ssize_t SSIZE_T
47 typedef unsigned char uint8_t;
48 typedef __int16 int16_t;
49 typedef unsigned __int16 uint16_t;
50 typedef __int32 int32_t;
51 typedef unsigned __int32 uint32_t;
52 typedef unsigned __int64 uint64_t;
69 #define LIBMTP_DEBUG_NONE 0x00
70 #define LIBMTP_DEBUG_PTP 0x01
71 #define LIBMTP_DEBUG_PLST 0x02
72 #define LIBMTP_DEBUG_USB 0x04
73 #define LIBMTP_DEBUG_DATA 0x08
74 #define LIBMTP_DEBUG_ALL 0xFF
83 LIBMTP_FILETYPE_FOLDER,
88 LIBMTP_FILETYPE_AUDIBLE,
90 LIBMTP_FILETYPE_UNDEF_AUDIO,
96 LIBMTP_FILETYPE_UNDEF_VIDEO,
102 LIBMTP_FILETYPE_PICT,
104 LIBMTP_FILETYPE_VCALENDAR1,
105 LIBMTP_FILETYPE_VCALENDAR2,
106 LIBMTP_FILETYPE_VCARD2,
107 LIBMTP_FILETYPE_VCARD3,
108 LIBMTP_FILETYPE_WINDOWSIMAGEFORMAT,
109 LIBMTP_FILETYPE_WINEXEC,
110 LIBMTP_FILETYPE_TEXT,
111 LIBMTP_FILETYPE_HTML,
112 LIBMTP_FILETYPE_FIRMWARE,
114 LIBMTP_FILETYPE_MEDIACARD,
115 LIBMTP_FILETYPE_FLAC,
125 LIBMTP_FILETYPE_ALBUM,
126 LIBMTP_FILETYPE_PLAYLIST,
127 LIBMTP_FILETYPE_UNKNOWN
137 #define LIBMTP_FILETYPE_IS_AUDIO(a)\
138 (a == LIBMTP_FILETYPE_WAV ||\
139 a == LIBMTP_FILETYPE_MP3 ||\
140 a == LIBMTP_FILETYPE_MP2 ||\
141 a == LIBMTP_FILETYPE_WMA ||\
142 a == LIBMTP_FILETYPE_OGG ||\
143 a == LIBMTP_FILETYPE_FLAC ||\
144 a == LIBMTP_FILETYPE_AAC ||\
145 a == LIBMTP_FILETYPE_M4A ||\
146 a == LIBMTP_FILETYPE_AUDIBLE ||\
147 a == LIBMTP_FILETYPE_UNDEF_AUDIO)
156 #define LIBMTP_FILETYPE_IS_VIDEO(a)\
157 (a == LIBMTP_FILETYPE_WMV ||\
158 a == LIBMTP_FILETYPE_AVI ||\
159 a == LIBMTP_FILETYPE_MPEG ||\
160 a == LIBMTP_FILETYPE_UNDEF_VIDEO)
166 #define LIBMTP_FILETYPE_IS_AUDIOVIDEO(a)\
167 (a == LIBMTP_FILETYPE_MP4 ||\
168 a == LIBMTP_FILETYPE_ASF ||\
169 a == LIBMTP_FILETYPE_QT)
177 #define LIBMTP_FILETYPE_IS_TRACK(a)\
178 (LIBMTP_FILETYPE_IS_AUDIO(a) ||\
179 LIBMTP_FILETYPE_IS_VIDEO(a) ||\
180 LIBMTP_FILETYPE_IS_AUDIOVIDEO(a))
186 #define LIBMTP_FILETYPE_IS_IMAGE(a)\
187 (a == LIBMTP_FILETYPE_JPEG ||\
188 a == LIBMTP_FILETYPE_JFIF ||\
189 a == LIBMTP_FILETYPE_TIFF ||\
190 a == LIBMTP_FILETYPE_BMP ||\
191 a == LIBMTP_FILETYPE_GIF ||\
192 a == LIBMTP_FILETYPE_PICT ||\
193 a == LIBMTP_FILETYPE_PNG ||\
194 a == LIBMTP_FILETYPE_JP2 ||\
195 a == LIBMTP_FILETYPE_JPX ||\
196 a == LIBMTP_FILETYPE_WINDOWSIMAGEFORMAT)
202 #define LIBMTP_FILETYPE_IS_ADDRESSBOOK(a)\
203 (a == LIBMTP_FILETYPE_VCARD2 ||\
204 a == LIBMTP_FILETYPE_VCARD3)
210 #define LIBMTP_FILETYPE_IS_CALENDAR(a)\
211 (a == LIBMTP_FILETYPE_VCALENDAR1 ||\
212 a == LIBMTP_FILETYPE_VCALENDAR2)
219 LIBMTP_PROPERTY_StorageID,
220 LIBMTP_PROPERTY_ObjectFormat,
221 LIBMTP_PROPERTY_ProtectionStatus,
222 LIBMTP_PROPERTY_ObjectSize,
223 LIBMTP_PROPERTY_AssociationType,
224 LIBMTP_PROPERTY_AssociationDesc,
225 LIBMTP_PROPERTY_ObjectFileName,
226 LIBMTP_PROPERTY_DateCreated,
227 LIBMTP_PROPERTY_DateModified,
228 LIBMTP_PROPERTY_Keywords,
229 LIBMTP_PROPERTY_ParentObject,
230 LIBMTP_PROPERTY_AllowedFolderContents,
231 LIBMTP_PROPERTY_Hidden,
232 LIBMTP_PROPERTY_SystemObject,
233 LIBMTP_PROPERTY_PersistantUniqueObjectIdentifier,
234 LIBMTP_PROPERTY_SyncID,
235 LIBMTP_PROPERTY_PropertyBag,
236 LIBMTP_PROPERTY_Name,
237 LIBMTP_PROPERTY_CreatedBy,
238 LIBMTP_PROPERTY_Artist,
239 LIBMTP_PROPERTY_DateAuthored,
240 LIBMTP_PROPERTY_Description,
241 LIBMTP_PROPERTY_URLReference,
242 LIBMTP_PROPERTY_LanguageLocale,
243 LIBMTP_PROPERTY_CopyrightInformation,
244 LIBMTP_PROPERTY_Source,
245 LIBMTP_PROPERTY_OriginLocation,
246 LIBMTP_PROPERTY_DateAdded,
247 LIBMTP_PROPERTY_NonConsumable,
248 LIBMTP_PROPERTY_CorruptOrUnplayable,
249 LIBMTP_PROPERTY_ProducerSerialNumber,
250 LIBMTP_PROPERTY_RepresentativeSampleFormat,
251 LIBMTP_PROPERTY_RepresentativeSampleSize,
252 LIBMTP_PROPERTY_RepresentativeSampleHeight,
253 LIBMTP_PROPERTY_RepresentativeSampleWidth,
254 LIBMTP_PROPERTY_RepresentativeSampleDuration,
255 LIBMTP_PROPERTY_RepresentativeSampleData,
256 LIBMTP_PROPERTY_Width,
257 LIBMTP_PROPERTY_Height,
258 LIBMTP_PROPERTY_Duration,
259 LIBMTP_PROPERTY_Rating,
260 LIBMTP_PROPERTY_Track,
261 LIBMTP_PROPERTY_Genre,
262 LIBMTP_PROPERTY_Credits,
263 LIBMTP_PROPERTY_Lyrics,
264 LIBMTP_PROPERTY_SubscriptionContentID,
265 LIBMTP_PROPERTY_ProducedBy,
266 LIBMTP_PROPERTY_UseCount,
267 LIBMTP_PROPERTY_SkipCount,
268 LIBMTP_PROPERTY_LastAccessed,
269 LIBMTP_PROPERTY_ParentalRating,
270 LIBMTP_PROPERTY_MetaGenre,
271 LIBMTP_PROPERTY_Composer,
272 LIBMTP_PROPERTY_EffectiveRating,
273 LIBMTP_PROPERTY_Subtitle,
274 LIBMTP_PROPERTY_OriginalReleaseDate,
275 LIBMTP_PROPERTY_AlbumName,
276 LIBMTP_PROPERTY_AlbumArtist,
277 LIBMTP_PROPERTY_Mood,
278 LIBMTP_PROPERTY_DRMStatus,
279 LIBMTP_PROPERTY_SubDescription,
280 LIBMTP_PROPERTY_IsCropped,
281 LIBMTP_PROPERTY_IsColorCorrected,
282 LIBMTP_PROPERTY_ImageBitDepth,
283 LIBMTP_PROPERTY_Fnumber,
284 LIBMTP_PROPERTY_ExposureTime,
285 LIBMTP_PROPERTY_ExposureIndex,
286 LIBMTP_PROPERTY_DisplayName,
287 LIBMTP_PROPERTY_BodyText,
288 LIBMTP_PROPERTY_Subject,
289 LIBMTP_PROPERTY_Priority,
290 LIBMTP_PROPERTY_GivenName,
291 LIBMTP_PROPERTY_MiddleNames,
292 LIBMTP_PROPERTY_FamilyName,
293 LIBMTP_PROPERTY_Prefix,
294 LIBMTP_PROPERTY_Suffix,
295 LIBMTP_PROPERTY_PhoneticGivenName,
296 LIBMTP_PROPERTY_PhoneticFamilyName,
297 LIBMTP_PROPERTY_EmailPrimary,
298 LIBMTP_PROPERTY_EmailPersonal1,
299 LIBMTP_PROPERTY_EmailPersonal2,
300 LIBMTP_PROPERTY_EmailBusiness1,
301 LIBMTP_PROPERTY_EmailBusiness2,
302 LIBMTP_PROPERTY_EmailOthers,
303 LIBMTP_PROPERTY_PhoneNumberPrimary,
304 LIBMTP_PROPERTY_PhoneNumberPersonal,
305 LIBMTP_PROPERTY_PhoneNumberPersonal2,
306 LIBMTP_PROPERTY_PhoneNumberBusiness,
307 LIBMTP_PROPERTY_PhoneNumberBusiness2,
308 LIBMTP_PROPERTY_PhoneNumberMobile,
309 LIBMTP_PROPERTY_PhoneNumberMobile2,
310 LIBMTP_PROPERTY_FaxNumberPrimary,
311 LIBMTP_PROPERTY_FaxNumberPersonal,
312 LIBMTP_PROPERTY_FaxNumberBusiness,
313 LIBMTP_PROPERTY_PagerNumber,
314 LIBMTP_PROPERTY_PhoneNumberOthers,
315 LIBMTP_PROPERTY_PrimaryWebAddress,
316 LIBMTP_PROPERTY_PersonalWebAddress,
317 LIBMTP_PROPERTY_BusinessWebAddress,
318 LIBMTP_PROPERTY_InstantMessengerAddress,
319 LIBMTP_PROPERTY_InstantMessengerAddress2,
320 LIBMTP_PROPERTY_InstantMessengerAddress3,
321 LIBMTP_PROPERTY_PostalAddressPersonalFull,
322 LIBMTP_PROPERTY_PostalAddressPersonalFullLine1,
323 LIBMTP_PROPERTY_PostalAddressPersonalFullLine2,
324 LIBMTP_PROPERTY_PostalAddressPersonalFullCity,
325 LIBMTP_PROPERTY_PostalAddressPersonalFullRegion,
326 LIBMTP_PROPERTY_PostalAddressPersonalFullPostalCode,
327 LIBMTP_PROPERTY_PostalAddressPersonalFullCountry,
328 LIBMTP_PROPERTY_PostalAddressBusinessFull,
329 LIBMTP_PROPERTY_PostalAddressBusinessLine1,
330 LIBMTP_PROPERTY_PostalAddressBusinessLine2,
331 LIBMTP_PROPERTY_PostalAddressBusinessCity,
332 LIBMTP_PROPERTY_PostalAddressBusinessRegion,
333 LIBMTP_PROPERTY_PostalAddressBusinessPostalCode,
334 LIBMTP_PROPERTY_PostalAddressBusinessCountry,
335 LIBMTP_PROPERTY_PostalAddressOtherFull,
336 LIBMTP_PROPERTY_PostalAddressOtherLine1,
337 LIBMTP_PROPERTY_PostalAddressOtherLine2,
338 LIBMTP_PROPERTY_PostalAddressOtherCity,
339 LIBMTP_PROPERTY_PostalAddressOtherRegion,
340 LIBMTP_PROPERTY_PostalAddressOtherPostalCode,
341 LIBMTP_PROPERTY_PostalAddressOtherCountry,
342 LIBMTP_PROPERTY_OrganizationName,
343 LIBMTP_PROPERTY_PhoneticOrganizationName,
344 LIBMTP_PROPERTY_Role,
345 LIBMTP_PROPERTY_Birthdate,
346 LIBMTP_PROPERTY_MessageTo,
347 LIBMTP_PROPERTY_MessageCC,
348 LIBMTP_PROPERTY_MessageBCC,
349 LIBMTP_PROPERTY_MessageRead,
350 LIBMTP_PROPERTY_MessageReceivedTime,
351 LIBMTP_PROPERTY_MessageSender,
352 LIBMTP_PROPERTY_ActivityBeginTime,
353 LIBMTP_PROPERTY_ActivityEndTime,
354 LIBMTP_PROPERTY_ActivityLocation,
355 LIBMTP_PROPERTY_ActivityRequiredAttendees,
356 LIBMTP_PROPERTY_ActivityOptionalAttendees,
357 LIBMTP_PROPERTY_ActivityResources,
358 LIBMTP_PROPERTY_ActivityAccepted,
359 LIBMTP_PROPERTY_Owner,
360 LIBMTP_PROPERTY_Editor,
361 LIBMTP_PROPERTY_Webmaster,
362 LIBMTP_PROPERTY_URLSource,
363 LIBMTP_PROPERTY_URLDestination,
364 LIBMTP_PROPERTY_TimeBookmark,
365 LIBMTP_PROPERTY_ObjectBookmark,
366 LIBMTP_PROPERTY_ByteBookmark,
367 LIBMTP_PROPERTY_LastBuildDate,
368 LIBMTP_PROPERTY_TimetoLive,
369 LIBMTP_PROPERTY_MediaGUID,
370 LIBMTP_PROPERTY_TotalBitRate,
371 LIBMTP_PROPERTY_BitRateType,
372 LIBMTP_PROPERTY_SampleRate,
373 LIBMTP_PROPERTY_NumberOfChannels,
374 LIBMTP_PROPERTY_AudioBitDepth,
375 LIBMTP_PROPERTY_ScanDepth,
376 LIBMTP_PROPERTY_AudioWAVECodec,
377 LIBMTP_PROPERTY_AudioBitRate,
378 LIBMTP_PROPERTY_VideoFourCCCodec,
379 LIBMTP_PROPERTY_VideoBitRate,
380 LIBMTP_PROPERTY_FramesPerThousandSeconds,
381 LIBMTP_PROPERTY_KeyFrameDistance,
382 LIBMTP_PROPERTY_BufferSize,
383 LIBMTP_PROPERTY_EncodingQuality,
384 LIBMTP_PROPERTY_EncodingProfile,
385 LIBMTP_PROPERTY_BuyFlag,
386 LIBMTP_PROPERTY_UNKNOWN
393 LIBMTP_DATATYPE_INT8,
394 LIBMTP_DATATYPE_UINT8,
395 LIBMTP_DATATYPE_INT16,
396 LIBMTP_DATATYPE_UINT16,
397 LIBMTP_DATATYPE_INT32,
398 LIBMTP_DATATYPE_UINT32,
399 LIBMTP_DATATYPE_INT64,
400 LIBMTP_DATATYPE_UINT64,
409 LIBMTP_ERROR_GENERAL,
410 LIBMTP_ERROR_PTP_LAYER,
411 LIBMTP_ERROR_USB_LAYER,
412 LIBMTP_ERROR_MEMORY_ALLOCATION,
413 LIBMTP_ERROR_NO_DEVICE_ATTACHED,
414 LIBMTP_ERROR_STORAGE_FULL,
415 LIBMTP_ERROR_CONNECTING,
416 LIBMTP_ERROR_CANCELLED
445 void const *
const data);
460 uint32_t wantlen,
unsigned char *data, uint32_t *gotlen);
475 uint32_t sendlen,
unsigned char *data, uint32_t *putlen);
480 #define LIBMTP_HANDLER_RETURN_OK 0
481 #define LIBMTP_HANDLER_RETURN_ERROR 1
482 #define LIBMTP_HANDLER_RETURN_CANCEL 2
826 #define LIBMTP_STORAGE_SORTBY_NOTSORTED 0
827 #define LIBMTP_STORAGE_SORTBY_FREESPACE 1
828 #define LIBMTP_STORAGE_SORTBY_MAXSPACE 2
LIBMTP_album_t * LIBMTP_Get_Album(LIBMTP_mtpdevice_t *, uint32_t const)
Definition: libmtp.c:8278
uint32_t default_music_folder
Definition: libmtp.h:626
int LIBMTP_Get_Device_Certificate(LIBMTP_mtpdevice_t *, char **const)
Definition: libmtp.c:3765
LIBMTP_folder_t * sibling
Definition: libmtp.h:732
int LIBMTP_Set_Track_Name(LIBMTP_mtpdevice_t *, LIBMTP_track_t *, const char *)
Definition: libmtp.c:6705
int LIBMTP_Set_Syncpartner(LIBMTP_mtpdevice_t *, char const *const)
Definition: libmtp.c:3556
uint32_t storage_id
Definition: libmtp.h:714
uint16_t AccessCapability
Definition: libmtp.h:755
char * genre
Definition: libmtp.h:676
uint64_t LIBMTP_Get_u64_From_Object(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, uint64_t const)
Definition: libmtp.c:1168
LIBMTP_filetype_t filetype
Definition: libmtp.h:691
int LIBMTP_Set_File_Name(LIBMTP_mtpdevice_t *, LIBMTP_file_t *, const char *)
Definition: libmtp.c:6645
void LIBMTP_Release_Device(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:2260
LIBMTP_file_t * next
Definition: libmtp.h:663
void LIBMTP_destroy_file_t(LIBMTP_file_t *)
Definition: libmtp.c:3982
LIBMTP_track_t * next
Definition: libmtp.h:692
LIBMTP_file_t * LIBMTP_Get_Filelisting(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:4138
void LIBMTP_Clear_Errorstack(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:2373
LIBMTP_datatype_t
Definition: libmtp.h:392
char * name
Definition: libmtp.h:731
LIBMTP_track_t * LIBMTP_Get_Tracklisting_With_Callback_For_Storage(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:4691
uint16_t LIBMTP_Get_u16_From_Object(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, uint16_t const)
Definition: libmtp.c:1198
uint64_t FreeSpaceInBytes
Definition: libmtp.h:757
LIBMTP_album_t * next
Definition: libmtp.h:721
void LIBMTP_destroy_track_t(LIBMTP_track_t *)
Definition: libmtp.c:4385
LIBMTP_file_t * LIBMTP_new_file_t(void)
Definition: libmtp.c:3958
LIBMTP_file_t * LIBMTP_Get_Filemetadata(LIBMTP_mtpdevice_t *, uint32_t const)
Definition: libmtp.c:4114
uint32_t storage_id
Definition: libmtp.h:701
uint16_t nochannels
Definition: libmtp.h:683
uint32_t parent_id
Definition: libmtp.h:729
uint8_t maximum_battery_level
Definition: libmtp.h:624
void LIBMTP_destroy_allowed_values_t(LIBMTP_allowed_values_t *)
Definition: libmtp.c:1066
LIBMTP_filesampledata_t * LIBMTP_new_filesampledata_t(void)
Definition: libmtp.c:8382
LIBMTP_mtpdevice_t * LIBMTP_Open_Raw_Device_Uncached(LIBMTP_raw_device_t *)
Definition: libmtp.c:1776
char * name
Definition: libmtp.h:715
int LIBMTP_Set_Object_Filename(LIBMTP_mtpdevice_t *, uint32_t, char *)
Definition: libmtp.c:6807
int(* LIBMTP_progressfunc_t)(uint64_t const sent, uint64_t const total, void const *const data)
Definition: libmtp.h:444
uint8_t object_bitsize
Definition: libmtp.h:600
uint16_t product_id
Definition: libmtp.h:497
struct LIBMTP_object_struct LIBMTP_object_t
Definition: libmtp.h:430
char * title
Definition: libmtp.h:673
int LIBMTP_Set_Object_u32(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, uint32_t const)
Definition: libmtp.c:1244
int LIBMTP_Set_Object_u8(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, uint8_t const)
Definition: libmtp.c:1274
uint32_t default_zencast_folder
Definition: libmtp.h:636
uint64_t FreeSpaceInObjects
Definition: libmtp.h:758
uint16_t bitratetype
Definition: libmtp.h:686
uint32_t bitrate
Definition: libmtp.h:685
uint32_t parent_id
Definition: libmtp.h:671
int LIBMTP_Send_File_From_File(LIBMTP_mtpdevice_t *, char const *const, LIBMTP_file_t *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5583
LIBMTP_error_number_t
Definition: libmtp.h:407
uint32_t storage_id
Definition: libmtp.h:672
char const * LIBMTP_Get_Filetype_Description(LIBMTP_filetype_t)
Definition: libmtp.c:762
LIBMTP_error_number_t LIBMTP_Get_Connected_Devices(LIBMTP_mtpdevice_t **)
Definition: libmtp.c:2209
uint16_t StorageType
Definition: libmtp.h:753
char * LIBMTP_Get_String_From_Object(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const)
Definition: libmtp.c:1153
LIBMTP_folder_t * LIBMTP_Get_Folder_List_For_Storage(LIBMTP_mtpdevice_t *, uint32_t const)
Definition: libmtp.c:6980
uint32_t item_id
Definition: libmtp.h:670
LIBMTP_track_t * LIBMTP_Get_Tracklisting_With_Callback(LIBMTP_mtpdevice_t *, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:4641
LIBMTP_folder_t * child
Definition: libmtp.h:733
uint16_t num_entries
Definition: libmtp.h:559
int LIBMTP_Get_Track_To_Handler(LIBMTP_mtpdevice_t *, uint32_t const, MTPDataPutFunc, void *, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5200
char * artist
Definition: libmtp.h:716
uint16_t rating
Definition: libmtp.h:687
uint32_t * tracks
Definition: libmtp.h:719
uint16_t FilesystemType
Definition: libmtp.h:754
uint32_t wavecodec
Definition: libmtp.h:684
char * vendor
Definition: libmtp.h:494
void * usbinfo
Definition: libmtp.h:610
int LIBMTP_Set_Playlist_Name(LIBMTP_mtpdevice_t *, LIBMTP_playlist_t *, const char *)
Definition: libmtp.c:6742
int LIBMTP_Get_Allowed_Property_Values(LIBMTP_mtpdevice_t *, LIBMTP_property_t const, LIBMTP_filetype_t const, LIBMTP_allowed_values_t *)
Definition: libmtp.c:918
LIBMTP_devicestorage_t * storage
Definition: libmtp.h:617
char * composer
Definition: libmtp.h:717
int LIBMTP_Check_Specific_Device(int busno, int devno)
Definition: libopenusb1-glue.c:554
uint32_t default_video_folder
Definition: libmtp.h:632
LIBMTP_devicestorage_t * prev
Definition: libmtp.h:762
uint32_t album_id
Definition: libmtp.h:712
char * LIBMTP_Get_Deviceversion(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:3433
uint32_t default_organizer_folder
Definition: libmtp.h:634
LIBMTP_filetype_t
Definition: libmtp.h:82
void LIBMTP_destroy_filesampledata_t(LIBMTP_filesampledata_t *)
Definition: libmtp.c:8400
void LIBMTP_destroy_playlist_t(LIBMTP_playlist_t *)
Definition: libmtp.c:7216
uint32_t duration
Definition: libmtp.h:681
uint32_t samplerate
Definition: libmtp.h:682
LIBMTP_playlist_t * next
Definition: libmtp.h:705
int LIBMTP_Track_Exists(LIBMTP_mtpdevice_t *, uint32_t const)
Definition: libmtp.c:6834
int LIBMTP_Get_Batterylevel(LIBMTP_mtpdevice_t *, uint8_t *const, uint8_t *const)
Definition: libmtp.c:3625
time_t modificationdate
Definition: libmtp.h:661
void * params
Definition: libmtp.h:605
char * filename
Definition: libmtp.h:679
int LIBMTP_Get_File_To_Handler(LIBMTP_mtpdevice_t *, uint32_t const, MTPDataPutFunc, void *, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5074
LIBMTP_device_entry_t device_entry
Definition: libmtp.h:506
LIBMTP_folder_t * LIBMTP_Find_Folder(LIBMTP_folder_t *, uint32_t const)
Definition: libmtp.c:6911
uint32_t device_flags
Definition: libmtp.h:498
uint32_t no_tracks
Definition: libmtp.h:720
int LIBMTP_Set_Folder_Name(LIBMTP_mtpdevice_t *, LIBMTP_folder_t *, const char *)
Definition: libmtp.c:6675
uint64_t size
Definition: libmtp.h:744
uint32_t default_playlist_folder
Definition: libmtp.h:628
uint32_t usecount
Definition: libmtp.h:688
LIBMTP_device_extension_t * next
Definition: libmtp.h:590
uint16_t(* MTPDataPutFunc)(void *params, void *priv, uint32_t sendlen, unsigned char *data, uint32_t *putlen)
Definition: libmtp.h:474
char * name
Definition: libmtp.h:702
char * genre
Definition: libmtp.h:718
char const * LIBMTP_Get_Property_Description(LIBMTP_property_t inproperty)
Definition: libmtp.c:785
LIBMTP_mtpdevice_t * LIBMTP_Get_First_Device(void)
Definition: libmtp.c:1630
char * filename
Definition: libmtp.h:659
LIBMTP_track_t * LIBMTP_new_track_t(void)
Definition: libmtp.c:4346
int LIBMTP_Send_Track_From_File(LIBMTP_mtpdevice_t *, char const *const, LIBMTP_track_t *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5248
void LIBMTP_destroy_folder_t(LIBMTP_folder_t *)
Definition: libmtp.c:6880
char * LIBMTP_Get_Syncpartner(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:3518
char * LIBMTP_Get_Friendlyname(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:3455
uint32_t playlist_id
Definition: libmtp.h:699
void LIBMTP_Dump_Device_Info(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:2949
time_t modificationdate
Definition: libmtp.h:690
LIBMTP_folder_t * LIBMTP_new_folder_t(void)
Definition: libmtp.c:6857
int LIBMTP_Send_File_From_Handler(LIBMTP_mtpdevice_t *, MTPDataGetFunc, void *, LIBMTP_file_t *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5778
void LIBMTP_Dump_Errorstack(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:2400
char * composer
Definition: libmtp.h:675
LIBMTP_playlist_t * LIBMTP_Get_Playlist_List(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:7241
LIBMTP_error_t * errorstack
Definition: libmtp.h:622
uint32_t default_picture_folder
Definition: libmtp.h:630
uint8_t LIBMTP_Get_u8_From_Object(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, uint8_t const)
Definition: libmtp.c:1213
int LIBMTP_Get_Supported_Devices_List(LIBMTP_device_entry_t **const, int *const)
Definition: libopenusb1-glue.c:129
uint32_t LIBMTP_Number_Devices_In_List(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:2191
LIBMTP_track_t * LIBMTP_Get_Trackmetadata(LIBMTP_mtpdevice_t *, uint32_t const)
Definition: libmtp.c:4809
int LIBMTP_Update_Playlist(LIBMTP_mtpdevice_t *, LIBMTP_playlist_t *const)
Definition: libmtp.c:8004
char * LIBMTP_Get_Modelname(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:3396
uint32_t default_album_folder
Definition: libmtp.h:638
LIBMTP_album_t * LIBMTP_Get_Album_List(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:8197
char * product
Definition: libmtp.h:496
LIBMTP_track_t * LIBMTP_Get_Tracklisting(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:4593
int LIBMTP_Send_Representative_Sample(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_filesampledata_t *)
Definition: libmtp.c:8567
LIBMTP_filetype_t filetype
Definition: libmtp.h:743
uint64_t filesize
Definition: libmtp.h:689
uint32_t no_tracks
Definition: libmtp.h:704
char * date
Definition: libmtp.h:678
LIBMTP_playlist_t * LIBMTP_Get_Playlist(LIBMTP_mtpdevice_t *, uint32_t const)
Definition: libmtp.c:7319
int LIBMTP_Read_Event(LIBMTP_mtpdevice_t *, LIBMTP_event_t *)
Definition: libmtp.c:2058
int LIBMTP_Format_Storage(LIBMTP_mtpdevice_t *, LIBMTP_devicestorage_t *)
Definition: libmtp.c:3667
uint32_t default_text_folder
Definition: libmtp.h:640
char * LIBMTP_Get_Serialnumber(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:3414
uint32_t storage_id
Definition: libmtp.h:730
void LIBMTP_Init(void)
Definition: libmtp.c:744
uint32_t parent_id
Definition: libmtp.h:657
int LIBMTP_Send_Track_From_File_Descriptor(LIBMTP_mtpdevice_t *, int const, LIBMTP_track_t *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5380
int LIBMTP_Create_New_Album(LIBMTP_mtpdevice_t *, LIBMTP_album_t *const)
Definition: libmtp.c:8343
int LIBMTP_Get_Supported_Filetypes(LIBMTP_mtpdevice_t *, uint16_t **const, uint16_t *const)
Definition: libmtp.c:3786
uint64_t filesize
Definition: libmtp.h:660
LIBMTP_event_enum
Definition: libmtp.h:769
uint32_t id
Definition: libmtp.h:752
void LIBMTP_Set_Debug(int)
Definition: libmtp.c:726
char * name
Definition: libmtp.h:577
uint32_t parent_id
Definition: libmtp.h:713
int LIBMTP_Get_File_To_File(LIBMTP_mtpdevice_t *, uint32_t, char const *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:4950
char * data
Definition: libmtp.h:745
uint8_t devnum
Definition: libmtp.h:508
uint32_t height
Definition: libmtp.h:741
void * cd
Definition: libmtp.h:642
int LIBMTP_Delete_Object(LIBMTP_mtpdevice_t *, uint32_t)
Definition: libmtp.c:6536
LIBMTP_playlist_t * LIBMTP_new_playlist_t(void)
Definition: libmtp.c:7193
char * VolumeIdentifier
Definition: libmtp.h:760
uint32_t width
Definition: libmtp.h:740
uint32_t folder_id
Definition: libmtp.h:728
uint16_t tracknumber
Definition: libmtp.h:680
int LIBMTP_Get_Track_To_File_Descriptor(LIBMTP_mtpdevice_t *, uint32_t const, int const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5173
LIBMTP_datatype_t datatype
Definition: libmtp.h:563
LIBMTP_album_t * LIBMTP_Get_Album_List_For_Storage(LIBMTP_mtpdevice_t *, uint32_t const)
Definition: libmtp.c:8215
int LIBMTP_Set_Object_u16(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, uint16_t const)
Definition: libmtp.c:1259
int LIBMTP_Get_Track_To_File(LIBMTP_mtpdevice_t *, uint32_t, char const *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5149
uint32_t bus_location
Definition: libmtp.h:507
void LIBMTP_Release_Device_List(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:2243
uint64_t MaxCapacity
Definition: libmtp.h:756
uint32_t duration
Definition: libmtp.h:742
LIBMTP_devicestorage_t * next
Definition: libmtp.h:761
int LIBMTP_Get_File_To_File_Descriptor(LIBMTP_mtpdevice_t *, uint32_t const, int const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5010
uint32_t * tracks
Definition: libmtp.h:703
int major
Definition: libmtp.h:581
int LIBMTP_Get_Representative_Sample(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_filesampledata_t *)
Definition: libmtp.c:8662
LIBMTP_error_number_t LIBMTP_Detect_Raw_Devices(LIBMTP_raw_device_t **, int *)
Definition: libopenusb1-glue.c:590
uint32_t storage_id
Definition: libmtp.h:658
int minor
Definition: libmtp.h:585
int cached
Definition: libmtp.h:646
uint32_t LIBMTP_Get_u32_From_Object(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, uint32_t const)
Definition: libmtp.c:1183
LIBMTP_album_t * LIBMTP_new_album_t(void)
Definition: libmtp.c:8035
LIBMTP_file_t * LIBMTP_Get_Filelisting_With_Callback(LIBMTP_mtpdevice_t *, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:4186
int LIBMTP_Set_Friendlyname(LIBMTP_mtpdevice_t *, char const *const)
Definition: libmtp.c:3488
uint16_t(* MTPDataGetFunc)(void *params, void *priv, uint32_t wantlen, unsigned char *data, uint32_t *gotlen)
Definition: libmtp.h:459
LIBMTP_file_t * LIBMTP_Get_Files_And_Folders(LIBMTP_mtpdevice_t *, uint32_t const, uint32_t const)
Definition: libmtp.c:4251
uint16_t vendor_id
Definition: libmtp.h:495
char * album
Definition: libmtp.h:677
LIBMTP_device_extension_t * extensions
Definition: libmtp.h:644
void LIBMTP_destroy_album_t(LIBMTP_album_t *)
Definition: libmtp.c:8060
int LIBMTP_Create_New_Playlist(LIBMTP_mtpdevice_t *, LIBMTP_playlist_t *const)
Definition: libmtp.c:7952
LIBMTP_mtpdevice_t * next
Definition: libmtp.h:649
int LIBMTP_Reset_Device(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:3351
int LIBMTP_Send_File_From_File_Descriptor(LIBMTP_mtpdevice_t *, int const, LIBMTP_file_t *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5661
char * artist
Definition: libmtp.h:674
int LIBMTP_Get_Storage(LIBMTP_mtpdevice_t *, int const)
Definition: libmtp.c:3852
int LIBMTP_Get_Secure_Time(LIBMTP_mtpdevice_t *, char **const)
Definition: libmtp.c:3751
char * LIBMTP_Get_Manufacturername(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:3377
int LIBMTP_Send_Track_From_Handler(LIBMTP_mtpdevice_t *, MTPDataGetFunc, void *, LIBMTP_track_t *const, LIBMTP_progressfunc_t const, void const *const)
Definition: libmtp.c:5484
char * StorageDescription
Definition: libmtp.h:759
uint32_t item_id
Definition: libmtp.h:656
int LIBMTP_Update_Album(LIBMTP_mtpdevice_t *, LIBMTP_album_t const *const)
Definition: libmtp.c:8742
uint32_t parent_id
Definition: libmtp.h:700
LIBMTP_property_t
Definition: libmtp.h:218
int LIBMTP_Update_Track_Metadata(LIBMTP_mtpdevice_t *, LIBMTP_track_t const *const)
Definition: libmtp.c:6145
LIBMTP_filetype_t filetype
Definition: libmtp.h:662
int LIBMTP_Set_Object_String(LIBMTP_mtpdevice_t *, uint32_t const, LIBMTP_property_t const, char const *const)
Definition: libmtp.c:1228
int LIBMTP_Set_Album_Name(LIBMTP_mtpdevice_t *, LIBMTP_album_t *, const char *)
Definition: libmtp.c:6779
int LIBMTP_Get_Representative_Sample_Format(LIBMTP_mtpdevice_t *, LIBMTP_filetype_t const, LIBMTP_filesampledata_t **)
Definition: libmtp.c:8434
int is_range
Definition: libmtp.h:567
int LIBMTP_debug
Definition: libmtp.c:71
LIBMTP_error_t * LIBMTP_Get_Errorstack(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:2357
uint32_t LIBMTP_Create_Folder(LIBMTP_mtpdevice_t *, char *, uint32_t, uint32_t)
Definition: libmtp.c:7110
int LIBMTP_Is_Property_Supported(LIBMTP_mtpdevice_t *, LIBMTP_property_t const, LIBMTP_filetype_t const)
Definition: libmtp.c:1115
LIBMTP_folder_t * LIBMTP_Get_Folder_List(LIBMTP_mtpdevice_t *)
Definition: libmtp.c:7086