diff options
Diffstat (limited to 'src/ptp.h')
-rw-r--r-- | src/ptp.h | 400 |
1 files changed, 45 insertions, 355 deletions
@@ -1,7 +1,7 @@ /* ptp.h * * Copyright (C) 2001 Mariusz Woloszyn <emsi@ipartners.pl> - * Copyright (C) 2003-2017 Marcus Meissner <marcus@jet.franken.de> + * Copyright (C) 2003-2014 Marcus Meissner <marcus@jet.franken.de> * Copyright (C) 2006-2008 Linus Walleij <triad@df.lth.se> * * This library is free software; you can redistribute it and/or @@ -155,35 +155,29 @@ struct _PTPIPHeader { typedef struct _PTPIPHeader PTPIPHeader; /* Vendor IDs */ -/* List is linked from here: http://www.imaging.org/site/IST/Standards/PTP_Standards.aspx */ -#define PTP_VENDOR_EASTMAN_KODAK 0x00000001 -#define PTP_VENDOR_SEIKO_EPSON 0x00000002 -#define PTP_VENDOR_AGILENT 0x00000003 -#define PTP_VENDOR_POLAROID 0x00000004 -#define PTP_VENDOR_AGFA_GEVAERT 0x00000005 -#define PTP_VENDOR_MICROSOFT 0x00000006 -#define PTP_VENDOR_EQUINOX 0x00000007 -#define PTP_VENDOR_VIEWQUEST 0x00000008 -#define PTP_VENDOR_STMICROELECTRONICS 0x00000009 -#define PTP_VENDOR_NIKON 0x0000000A -#define PTP_VENDOR_CANON 0x0000000B -#define PTP_VENDOR_FOTONATION 0x0000000C -#define PTP_VENDOR_PENTAX 0x0000000D -#define PTP_VENDOR_FUJI 0x0000000E -#define PTP_VENDOR_NDD_MEDICAL_TECHNOLOGIES 0x00000012 -#define PTP_VENDOR_SAMSUNG 0x0000001a -#define PTP_VENDOR_PARROT 0x0000001b -#define PTP_VENDOR_PANASONIC 0x0000001c +#define PTP_VENDOR_EASTMAN_KODAK 0x00000001 +#define PTP_VENDOR_SEIKO_EPSON 0x00000002 +#define PTP_VENDOR_AGILENT 0x00000003 +#define PTP_VENDOR_POLAROID 0x00000004 +#define PTP_VENDOR_AGFA_GEVAERT 0x00000005 +#define PTP_VENDOR_MICROSOFT 0x00000006 +#define PTP_VENDOR_EQUINOX 0x00000007 +#define PTP_VENDOR_VIEWQUEST 0x00000008 +#define PTP_VENDOR_STMICROELECTRONICS 0x00000009 +#define PTP_VENDOR_NIKON 0x0000000A +#define PTP_VENDOR_CANON 0x0000000B +#define PTP_VENDOR_FOTONATION 0x0000000C +#define PTP_VENDOR_PENTAX 0x0000000D +#define PTP_VENDOR_FUJI 0x0000000E /* not from standards papers, but from traces: */ -#define PTP_VENDOR_SONY 0x00000011 /* observed in the A900 */ - +#define PTP_VENDOR_SONY 0x00000011 /* observed in the A900 */ +#define PTP_VENDOR_SAMSUNG 0x0000001a /* observed in the Samsung NX1000 */ +#define PTP_VENDOR_PARROT 0x0000001b /* observed in the Parrot Sequoia */ /* Vendor extension ID used for MTP (occasionaly, usualy 6 is used) */ #define PTP_VENDOR_MTP 0xffffffff /* gphoto overrides */ -#define PTP_VENDOR_GP_OLYMPUS 0x0000fffe -#define PTP_VENDOR_GP_OLYMPUS_OMD 0x0000fffd - +#define PTP_VENDOR_GP_OLYMPUS 0xfffffffe /* Operation Codes */ @@ -291,38 +285,18 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_CANON_SetPairingInfo 0x9030 #define PTP_OC_CANON_GetPairingInfo 0x9031 #define PTP_OC_CANON_DeletePairingInfo 0x9032 -#define PTP_OC_CANON_GetMACAddress 0x9033 /* no args */ -/* -0000 12 00 00 00 02 00 33 90-1a 00 00 00 2c 9e fc c8 ......3.....,... -0010 33 e3 - 3. - */ - +#define PTP_OC_CANON_GetMACAddress 0x9033 /* 9034: 1 param, no parms returned */ #define PTP_OC_CANON_SetDisplayMonitor 0x9034 #define PTP_OC_CANON_PairingComplete 0x9035 #define PTP_OC_CANON_GetWirelessMAXChannel 0x9036 -#define PTP_OC_CANON_GetWebServiceSpec 0x9068 /* no args */ -/* data returned: -0000 1e 00 00 00 02 00 68 90-1a 00 00 00 00 01 08 00 ......h......... -0010 14 00 bc ce 00 00 78 00-78 00 00 14 00 00 ......x.x..... -*/ - -#define PTP_OC_CANON_GetWebServiceData 0x9069 /* no args */ +#define PTP_OC_CANON_GetWebServiceSpec 0x9068 +#define PTP_OC_CANON_GetWebServiceData 0x9069 #define PTP_OC_CANON_SetWebServiceData 0x906B -#define PTP_OC_CANON_GetRootCertificateSpec 0x906C /* no args */ -/* -0000 12 00 00 00 02 00 6c 90-1a 00 00 00 00 01 6c 30 ......l.......l0 -0010 00 00 - .. -*/ -#define PTP_OC_CANON_GetRootCertificateData 0x906D /* no args */ -/* empty data on test */ +#define PTP_OC_CANON_GetRootCertificateSpec 0x906C +#define PTP_OC_CANON_GetRootCertificateData 0x906D #define PTP_OC_CANON_SetRootCertificateData 0x906F -#define PTP_OC_CANON_GetGpsMobilelinkObjectInfo 0x9075 /* 2 args: utcstart, utcend */ -#define PTP_OC_CANON_SendGpsTagInfo 0x9076 /* 1 arg: oid */ -#define PTP_OC_CANON_GetTrancecodeApproxSize 0x9077 /* 1 arg: oid? */ -#define PTP_OC_CANON_RequestTrancecodeStart 0x9078 /* 1 arg: oid? */ -#define PTP_OC_CANON_RequestTrancecodeCancel 0x9079 /* 1 arg: oid? */ /* 9101: no args, 8 byte data (01 00 00 00 00 00 00 00), no resp data. */ #define PTP_OC_CANON_EOS_GetStorageIDs 0x9101 @@ -399,13 +373,13 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_CANON_EOS_SetUILock 0x911B /* 911c: no cmd args, no data, no resp args */ #define PTP_OC_CANON_EOS_ResetUILock 0x911C -#define PTP_OC_CANON_EOS_KeepDeviceOn 0x911D /* no arg */ -#define PTP_OC_CANON_EOS_SetNullPacketMode 0x911E /* 1 param */ +#define PTP_OC_CANON_EOS_KeepDeviceOn 0x911D +#define PTP_OC_CANON_EOS_SetNullPacketMode 0x911E #define PTP_OC_CANON_EOS_UpdateFirmware 0x911F #define PTP_OC_CANON_EOS_TransferCompleteDT 0x9120 #define PTP_OC_CANON_EOS_CancelTransferDT 0x9121 #define PTP_OC_CANON_EOS_SetWftProfile 0x9122 -#define PTP_OC_CANON_EOS_GetWftProfile 0x9123 /* 2 args: setnum, configid */ +#define PTP_OC_CANON_EOS_GetWftProfile 0x9123 #define PTP_OC_CANON_EOS_SetProfileToWft 0x9124 #define PTP_OC_CANON_EOS_BulbStart 0x9125 #define PTP_OC_CANON_EOS_BulbEnd 0x9126 @@ -419,11 +393,11 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_CANON_EOS_RegistBackgroundImage 0x912A #define PTP_OC_CANON_EOS_ChangePhotoStudioMode 0x912B #define PTP_OC_CANON_EOS_GetPartialObjectEx 0x912C -#define PTP_OC_CANON_EOS_ResetMirrorLockupState 0x9130 /* no args */ +#define PTP_OC_CANON_EOS_ResetMirrorLockupState 0x9130 #define PTP_OC_CANON_EOS_PopupBuiltinFlash 0x9131 #define PTP_OC_CANON_EOS_EndGetPartialObjectEx 0x9132 -#define PTP_OC_CANON_EOS_MovieSelectSWOn 0x9133 /* no args */ -#define PTP_OC_CANON_EOS_MovieSelectSWOff 0x9134 /* no args */ +#define PTP_OC_CANON_EOS_MovieSelectSWOn 0x9133 +#define PTP_OC_CANON_EOS_MovieSelectSWOff 0x9134 #define PTP_OC_CANON_EOS_GetCTGInfo 0x9135 #define PTP_OC_CANON_EOS_GetLensAdjust 0x9136 #define PTP_OC_CANON_EOS_SetLensAdjust 0x9137 @@ -434,27 +408,17 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_CANON_EOS_EndSendPartialObjectEx 0x913B #define PTP_OC_CANON_EOS_SetCTGInfo 0x913C #define PTP_OC_CANON_EOS_SetRequestOLCInfoGroup 0x913D -#define PTP_OC_CANON_EOS_SetRequestRollingPitchingLevel 0x913E /* 1 arg: onoff? */ +#define PTP_OC_CANON_EOS_SetRequestRollingPitchingLevel 0x913E /* 3 args, 0x21201020, 0x110, 0x1000000 (potentially reverse order) */ #define PTP_OC_CANON_EOS_GetCameraSupport 0x913F -#define PTP_OC_CANON_EOS_SetRating 0x9140 /* 2 args, objectid, rating? */ +#define PTP_OC_CANON_EOS_SetRating 0x9140 /* 2 args */ #define PTP_OC_CANON_EOS_RequestInnerDevelopStart 0x9141 /* 2 args: 1 type, 1 object? */ #define PTP_OC_CANON_EOS_RequestInnerDevelopParamChange 0x9142 #define PTP_OC_CANON_EOS_RequestInnerDevelopEnd 0x9143 #define PTP_OC_CANON_EOS_GpsLoggingDataMode 0x9144 /* 1 arg */ #define PTP_OC_CANON_EOS_GetGpsLogCurrentHandle 0x9145 -#define PTP_OC_CANON_EOS_SetImageRecoveryData 0x9146 /* sends data? */ -#define PTP_OC_CANON_EOS_GetImageRecoveryList 0x9147 -#define PTP_OC_CANON_EOS_FormatImageRecoveryData 0x9148 -#define PTP_OC_CANON_EOS_GetPresetLensAdjustParam 0x9149 /* no arg */ -#define PTP_OC_CANON_EOS_GetRawDispImage 0x914A /* ? 2 args ? */ -#define PTP_OC_CANON_EOS_SaveImageRecoveryData 0x914B -#define PTP_OC_CANON_EOS_RequestBLE 0x914C /* 2? args? */ -#define PTP_OC_CANON_EOS_DrivePowerZoom 0x914D /* 1 arg */ - -#define PTP_OC_CANON_EOS_GetIptcData 0x914F -#define PTP_OC_CANON_EOS_SetIptcData 0x9150 /* sends data? */ -#define PTP_OC_CANON_EOS_InitiateViewfinder 0x9151 /* no arg */ + +#define PTP_OC_CANON_EOS_InitiateViewfinder 0x9151 #define PTP_OC_CANON_EOS_TerminateViewfinder 0x9152 /* EOS M2 wlan: 2 params, 0x00200000 0x01000000 */ #define PTP_OC_CANON_EOS_GetViewFinderData 0x9153 @@ -462,27 +426,17 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_CANON_EOS_DriveLens 0x9155 #define PTP_OC_CANON_EOS_DepthOfFieldPreview 0x9156 /* 1 arg */ #define PTP_OC_CANON_EOS_ClickWB 0x9157 /* 2 args: x,y */ -#define PTP_OC_CANON_EOS_Zoom 0x9158 /* 1 arg: zoom */ +#define PTP_OC_CANON_EOS_Zoom 0x9158 /* 1 arg */ #define PTP_OC_CANON_EOS_ZoomPosition 0x9159 /* 2 args: x,y */ -#define PTP_OC_CANON_EOS_SetLiveAfFrame 0x915A /* sends data? */ +#define PTP_OC_CANON_EOS_SetLiveAfFrame 0x915A #define PTP_OC_CANON_EOS_TouchAfPosition 0x915B /* 3 args: type,x,y */ #define PTP_OC_CANON_EOS_SetLvPcFlavoreditMode 0x915C /* 1 arg */ #define PTP_OC_CANON_EOS_SetLvPcFlavoreditParam 0x915D /* 1 arg */ #define PTP_OC_CANON_EOS_AfCancel 0x9160 -#define PTP_OC_CANON_EOS_GetObjectInfo64 0x9170 /* 1 arg: oid */ -#define PTP_OC_CANON_EOS_GetObject64 0x9171 /* 1 arg: oid */ -#define PTP_OC_CANON_EOS_GetPartialObject64 0x9172 /* args: oid, offset, maxbyte */ -#define PTP_OC_CANON_EOS_GetObjectInfoEx64 0x9173 /* 2 args: storageid, oid ? */ -#define PTP_OC_CANON_EOS_GetPartialObjectEX64 0x9174 /* args: oid, offset 64bit, maxbyte */ -#define PTP_OC_CANON_EOS_CreateHandle64 0x9175 -#define PTP_OC_CANON_EOS_NotifyEstimateNumberofImport 0x9182 /* 1 arg: importnumber */ -#define PTP_OC_CANON_EOS_NotifyNumberofImported 0x9183 /* 1 arg: importnumber */ -#define PTP_OC_CANON_EOS_NotifySizeOfPartialDataTransfer 0x9184 /* 4 args: filesizelow, filesizehigh, downloadsizelow, downloadsizehigh */ -#define PTP_OC_CANON_EOS_NotifyFinish 0x9185 /* 1 arg: reason */ #define PTP_OC_CANON_EOS_SetDefaultCameraSetting 0x91BE #define PTP_OC_CANON_EOS_GetAEData 0x91BF -#define PTP_OC_CANON_EOS_NotifyNetworkError 0x91E8 /* 1 arg: errorcode */ -#define PTP_OC_CANON_EOS_AdapterTransferProgress 0x91E9 +#define PTP_OC_CANON_EOS_NotifyNetworkError 0x91E8 +#define PTP_OC_CANON_EOS_AdapterTransferProgress 0x91E9 #define PTP_OC_CANON_EOS_TransferComplete2 0x91F0 #define PTP_OC_CANON_EOS_CancelTransfer2 0x91F1 #define PTP_OC_CANON_EOS_FAPIMessageTX 0x91FE @@ -540,7 +494,7 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_NIKON_GetPartialObjectHiSpeed 0x9400 /* 3 params, data in */ /* From Nikon V1 Trace */ -#define PTP_OC_NIKON_GetDevicePropEx 0x9504 /* gets device prop data */ +#define PTP_OC_NIKON_GetDevicePropEx 0x9504 /* gets device prop dataa */ /* Casio EX-F1 (from http://code.google.com/p/exf1ctrl/ ) */ #define PTP_OC_CASIO_STILL_START 0x9001 @@ -678,16 +632,8 @@ typedef struct _PTPIPHeader PTPIPHeader; /* WiFi Provisioning MTP Extension Codes (microsoft.com/WPDWCN: 1.0) */ #define PTP_OC_MTP_WPDWCN_ProcessWFCObject 0x9122 -/* Olympus OMD series commands */ -#define PTP_OC_OLYMPUS_OMD_Capture 0x9481 -#define PTP_OC_OLYMPUS_GetLiveViewImage 0x9484 /* liveview */ -#define PTP_OC_OLYMPUS_OMD_GetImage 0x9485 /* gets an JPEG image (from the capture? SDRAM style?) */ -#define PTP_OC_OLYMPUS_OMD_ChangedProperties 0x9486 -#define PTP_OC_OLYMPUS_OMD_MFDrive 0x9487 -#define PTP_OC_OLYMPUS_OMD_SetProperties 0x9489 /* Sends to the device a PTP list of all 16 bit device properties , count 32bit, then 16bit vals */ /* Olympus E series commands */ - #define PTP_OC_OLYMPUS_Capture 0x9101 #define PTP_OC_OLYMPUS_SelfCleaning 0x9103 #define PTP_OC_OLYMPUS_SetRGBGain 0x9106 @@ -703,7 +649,6 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_OLYMPUS_SetCameraID 0x9501 #define PTP_OC_OLYMPUS_GetCameraID 0x9581 - /* Android Random I/O Extensions Codes */ #define PTP_OC_ANDROID_GetPartialObject64 0x95C1 #define PTP_OC_ANDROID_SendPartialObject 0x95C2 @@ -744,54 +689,6 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_OC_PARROT_MagnetoCalibStatus 0x9212 #define PTP_OC_PARROT_SendFirmwareUpdate 0x9213 -#define PTP_OC_PANASONIC_9101 0x9101 -#define PTP_OC_PANASONIC_OpenSession 0x9102 /* opensession (1 arg, seems to be storage id 0x00010001)*/ -#define PTP_OC_PANASONIC_CloseSession 0x9103 /* closesession (no arg) */ -#define PTP_OC_PANASONIC_9104 0x9104 /* get ext device id (1 arg?) */ -/* 9104 gets this data: -0000 24 00 00 00 02 00 04 91-04 00 00 00 01 00 01 00 $............... -0010 01 00 e1 07 10 00 00 00-00 00 00 00 00 00 00 00 ................ -0020 00 00 00 00 - .... -*/ - -#define PTP_OC_PANASONIC_9107 0x9107 /* getsize? */ -#define PTP_OC_PANASONIC_ListProperty 0x9108 -#define PTP_OC_PANASONIC_9110 0x9110 /* Get_Object infos */ -#define PTP_OC_PANASONIC_9112 0x9112 /* Get Partial Object , 4 args */ -#define PTP_OC_PANASONIC_9113 0x9113 /* Skip Objects Transfer , 1 arg */ - -#define PTP_OC_PANASONIC_9401 0x9401 -#define PTP_OC_PANASONIC_GetProperty 0x9402 -#define PTP_OC_PANASONIC_SetProperty 0x9403 -#define PTP_OC_PANASONIC_InitiateCapture 0x9404 /* Rec Ctrl Release */ -#define PTP_OC_PANASONIC_9405 0x9405 /* Rec Ctrl AF AE */ -#define PTP_OC_PANASONIC_9406 0x9406 /* Setup Ctrl various functions: Format, Sensor Cleaning, Menu Save, firmware update? */ -#define PTP_OC_PANASONIC_9408 0x9408 -#define PTP_OC_PANASONIC_9409 0x9409 /* 1 arg */ -#define PTP_OC_PANASONIC_940A 0x940A /* 1 arg, e.g. 0x08000010 */ -#define PTP_OC_PANASONIC_940B 0x940B /* 1 arg, e.g. 0x08000010 */ -#define PTP_OC_PANASONIC_MoveRecControl 0x940C /* 07000011 start, 07000012 stop, 0700013 still capture */ -#define PTP_OC_PANASONIC_PowerControl 0x940D /* 1 arg: 0x0A000011 power off, 0x0a00012 device reset, 0x0a00013 device restart */ -#define PTP_OC_PANASONIC_PlayControl 0x940E /* 2 arg? 0x05000011 current=0, next=1, prev=0xffffffff */ -#define PTP_OC_PANASONIC_PlayControlPlay 0x940F /* 0x05000020 */ -#define PTP_OC_PANASONIC_9410 0x9410 /* Rec Ctrl Other */ -#define PTP_OC_PANASONIC_SetGPSDataInfo 0x9411 -#define PTP_OC_PANASONIC_Liveview 0x9412 /* 0d000010 start, 0d000011 stop */ -#define PTP_OC_PANASONIC_9414 0x9414 /* 1 arg e.g 12000020 */ -#define PTP_OC_PANASONIC_9416 0x9416 /* Rec Ctrl Mf Assist, Rec Ctrl Backup Req ... 1 arg */ - -#define PTP_OC_PANASONIC_ChangeEvent 0x9603 /* 2 args ... e.g. 0x4002, new (change object added event) */ -#define PTP_OC_PANASONIC_GetFromEventInfo 0x9605 /* 1 arg, e.g. 0x41000013 , 15c00021: setup exec menu save comp, 15c00022: setup exec pixel refresh comp */ -#define PTP_OC_PANASONIC_SendDataInfo 0x9606 /* no args? used during firmware update */ -#define PTP_OC_PANASONIC_StartSendData 0x9607 /* no args? used during firmware update */ - -#define PTP_OC_PANASONIC_9703 0x9703 /* Mnt_GetInfo_GetVersion ... 1 arg? */ -#define PTP_OC_PANASONIC_9704 0x9704 /* Set USB Mode ... 80040001 */ -#define PTP_OC_PANASONIC_9705 0x9705 /* Ctrl Liveview */ -#define PTP_OC_PANASONIC_LiveviewImage 0x9706 /* Get Liveview Data */ -#define PTP_OC_PANASONIC_9707 0x9707 /* 4k6k cutting get stream */ - - /* Proprietary vendor extension operations mask */ #define PTP_OC_EXTENSION_MASK 0xF000 @@ -900,7 +797,6 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_RC_MTP_WFC_Version_Not_Supported 0xA122 /* libptp2 extended ERROR codes */ -#define PTP_ERROR_NODEVICE 0x02F9 #define PTP_ERROR_TIMEOUT 0x02FA #define PTP_ERROR_CANCEL 0x02FB #define PTP_ERROR_BADPARAM 0x02FC @@ -937,8 +833,6 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_EC_CANON_StartDirectTransfer 0xC011 #define PTP_EC_CANON_StopDirectTransfer 0xC013 -#define PTP_EC_CANON_TranscodeProgress 0xC01B /* EOS ? */ - /* Canon EOS events */ #define PTP_EC_CANON_EOS_RequestGetEvent 0xc101 #define PTP_EC_CANON_EOS_ObjectAddedEx 0xc181 @@ -961,24 +855,12 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_EC_CANON_EOS_StoreRemoved 0xc193 #define PTP_EC_CANON_EOS_BulbExposureTime 0xc194 #define PTP_EC_CANON_EOS_RecordingTime 0xc195 -#define PTP_EC_CANON_EOS_InnerDevelopParam 0xc196 -#define PTP_EC_CANON_EOS_RequestObjectTransferDevelop 0xc197 -#define PTP_EC_CANON_EOS_GPSLogOutputProgress 0xc198 -#define PTP_EC_CANON_EOS_GPSLogOutputComplete 0xc199 -#define PTP_EC_CANON_EOS_TouchTrans 0xc19a -#define PTP_EC_CANON_EOS_RequestObjectTransferExInfo 0xc19b -#define PTP_EC_CANON_EOS_PowerZoomInfoChanged 0xc19d -#define PTP_EC_CANON_EOS_RequestPushMode 0xc19f #define PTP_EC_CANON_EOS_RequestObjectTransferTS 0xc1a2 #define PTP_EC_CANON_EOS_AfResult 0xc1a3 #define PTP_EC_CANON_EOS_CTGInfoCheckComplete 0xc1a4 #define PTP_EC_CANON_EOS_OLCInfoChanged 0xc1a5 -#define PTP_EC_CANON_EOS_ObjectAddedEx64 0xc1a7 -#define PTP_EC_CANON_EOS_ObjectInfoChangedEx64 0xc1a8 -#define PTP_EC_CANON_EOS_RequestObjectTransfer64 0xc1a9 -#define PTP_EC_CANON_EOS_RequestObjectTransferFTP64 0xc1ab -#define PTP_EC_CANON_EOS_ImportError 0xc1af -#define PTP_EC_CANON_EOS_BlePairing 0xc1b0 +#define PTP_EC_CANON_EOS_ObjectAddedUnknown 0xc1a7 +#define PTP_EC_CANON_EOS_RequestObjectTransferNew 0xc1a9 #define PTP_EC_CANON_EOS_RequestObjectTransferFTP 0xc1f1 /* Nikon extension Event Codes */ @@ -1007,8 +889,6 @@ typedef struct _PTPIPHeader PTPIPHeader; #define PTP_EC_PARROT_Status 0xC201 #define PTP_EC_PARROT_MagnetoCalibrationStatus 0xC202 -#define PTP_EC_PANASONIC_ObjectAdded 0xC108 - /* constants for GetObjectHandles */ #define PTP_GOH_ALL_STORAGE 0xffffffff @@ -1103,21 +983,6 @@ struct _PTPObjectInfo { }; typedef struct _PTPObjectInfo PTPObjectInfo; -struct _PTPObjectFilesystemInfo { - uint32_t ObjectHandle; - uint32_t StorageID; - uint16_t ObjectFormat; - uint16_t ProtectionStatus; - uint64_t ObjectCompressedSize64; - uint32_t ParentObject; - uint16_t AssociationType; - uint32_t AssociationDesc; - uint32_t SequenceNumber; - char *Filename; - time_t ModificationDate; -}; -typedef struct _PTPObjectFilesystemInfo PTPObjectFilesystemInfo; - /* max ptp string length INCLUDING terminating null character */ #define PTP_MAXSTRLEN 255 @@ -1440,9 +1305,7 @@ enum _PTPCanon_changes_types { PTP_CANON_EOS_CHANGES_TYPE_CAMERASTATUS, PTP_CANON_EOS_CHANGES_TYPE_FOCUSINFO, PTP_CANON_EOS_CHANGES_TYPE_FOCUSMASK, - PTP_CANON_EOS_CHANGES_TYPE_OBJECTREMOVED, - PTP_CANON_EOS_CHANGES_TYPE_OBJECTINFO_CHANGE, - PTP_CANON_EOS_CHANGES_TYPE_OBJECTCONTENT_CHANGE + PTP_CANON_EOS_CHANGES_TYPE_OBJECTREMOVED }; struct _PTPCanon_New_Object { @@ -1660,11 +1523,6 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_CANON_AverageFilesizes 0xD048 #define PTP_DPC_CANON_ModelID 0xD049 -#define PTP_DPC_CANON_EOS_PowerZoomPosition 0xD055 -#define PTP_DPC_CANON_EOS_StrobeSettingSimple 0xD056 -#define PTP_DPC_CANON_EOS_ConnectTrigger 0xD058 -#define PTP_DPC_CANON_EOS_ChangeCameraMode 0xD059 - /* From EOS 400D trace. */ #define PTP_DPC_CANON_EOS_Aperture 0xD101 #define PTP_DPC_CANON_EOS_ShutterSpeed 0xD102 @@ -1700,25 +1558,16 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_CANON_EOS_ImageFormatCF 0xD121 /* file setting CF */ #define PTP_DPC_CANON_EOS_ImageFormatSD 0xD122 /* file setting SD */ #define PTP_DPC_CANON_EOS_ImageFormatExtHD 0xD123 /* file setting exthd */ -#define PTP_DPC_CANON_EOS_RefocusState 0xD124 -#define PTP_DPC_CANON_EOS_CameraNickname 0xD125 -#define PTP_DPC_CANON_EOS_SpecialAcc 0xD12F #define PTP_DPC_CANON_EOS_CompressionS 0xD130 #define PTP_DPC_CANON_EOS_CompressionM1 0xD131 #define PTP_DPC_CANON_EOS_CompressionM2 0xD132 #define PTP_DPC_CANON_EOS_CompressionL 0xD133 -#define PTP_DPC_CANON_EOS_IntervalShootSetting 0xD134 -#define PTP_DPC_CANON_EOS_IntervalShootState 0xD135 -#define PTP_DPC_CANON_EOS_PushMode 0xD136 -#define PTP_DPC_CANON_EOS_LvCFilterKind 0xD137 #define PTP_DPC_CANON_EOS_AEModeDial 0xD138 #define PTP_DPC_CANON_EOS_AEModeCustom 0xD139 #define PTP_DPC_CANON_EOS_MirrorUpSetting 0xD13A #define PTP_DPC_CANON_EOS_HighlightTonePriority 0xD13B #define PTP_DPC_CANON_EOS_AFSelectFocusArea 0xD13C #define PTP_DPC_CANON_EOS_HDRSetting 0xD13D -#define PTP_DPC_CANON_EOS_TimeShootSetting 0xD13E -#define PTP_DPC_CANON_EOS_NFCApplicationInfo 0xD13F #define PTP_DPC_CANON_EOS_PCWhiteBalance1 0xD140 #define PTP_DPC_CANON_EOS_PCWhiteBalance2 0xD141 #define PTP_DPC_CANON_EOS_PCWhiteBalance3 0xD142 @@ -1726,10 +1575,6 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_CANON_EOS_PCWhiteBalance5 0xD144 #define PTP_DPC_CANON_EOS_MWhiteBalance 0xD145 #define PTP_DPC_CANON_EOS_MWhiteBalanceEx 0xD146 -#define PTP_DPC_CANON_EOS_PowerZoomSpeed 0xD149 -#define PTP_DPC_CANON_EOS_NetworkServerRegion 0xD14A -#define PTP_DPC_CANON_EOS_GPSLogCtrl 0xD14B -#define PTP_DPC_CANON_EOS_GPSLogListNum 0xD14C #define PTP_DPC_CANON_EOS_UnknownPropD14D 0xD14D /*found in Canon EOS 5D M3*/ #define PTP_DPC_CANON_EOS_PictureStyleStandard 0xD150 #define PTP_DPC_CANON_EOS_PictureStylePortrait 0xD151 @@ -1738,31 +1583,12 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_CANON_EOS_PictureStyleFaithful 0xD154 #define PTP_DPC_CANON_EOS_PictureStyleBlackWhite 0xD155 #define PTP_DPC_CANON_EOS_PictureStyleAuto 0xD156 -#define PTP_DPC_CANON_EOS_PictureStyleExStandard 0xD157 -#define PTP_DPC_CANON_EOS_PictureStyleExPortrait 0xD158 -#define PTP_DPC_CANON_EOS_PictureStyleExLandscape 0xD159 -#define PTP_DPC_CANON_EOS_PictureStyleExNeutral 0xD15A -#define PTP_DPC_CANON_EOS_PictureStyleExFaithful 0xD15B -#define PTP_DPC_CANON_EOS_PictureStyleExBlackWhite 0xD15C -#define PTP_DPC_CANON_EOS_PictureStyleExAuto 0xD15D -#define PTP_DPC_CANON_EOS_PictureStyleExFineDetail 0xD15E #define PTP_DPC_CANON_EOS_PictureStyleUserSet1 0xD160 #define PTP_DPC_CANON_EOS_PictureStyleUserSet2 0xD161 #define PTP_DPC_CANON_EOS_PictureStyleUserSet3 0xD162 -#define PTP_DPC_CANON_EOS_PictureStyleExUserSet1 0xD163 -#define PTP_DPC_CANON_EOS_PictureStyleExUserSet2 0xD164 -#define PTP_DPC_CANON_EOS_PictureStyleExUserSet3 0xD165 -#define PTP_DPC_CANON_EOS_AvailableImageSize 0xD168 -#define PTP_DPC_CANON_EOS_ErrorHistory 0xD169 -#define PTP_DPC_CANON_EOS_LensExchangeHistory 0xD16A -#define PTP_DPC_CANON_EOS_StroboExchangeHistory 0xD16B #define PTP_DPC_CANON_EOS_PictureStyleParam1 0xD170 #define PTP_DPC_CANON_EOS_PictureStyleParam2 0xD171 #define PTP_DPC_CANON_EOS_PictureStyleParam3 0xD172 -#define PTP_DPC_CANON_EOS_MovieRecordVolumeLine 0xD174 -#define PTP_DPC_CANON_EOS_NetworkCommunicationMode 0xD175 -#define PTP_DPC_CANON_EOS_CanonLogGamma 0xD176 -#define PTP_DPC_CANON_EOS_SmartphoneShowImageConfig 0xD177 #define PTP_DPC_CANON_EOS_HighISOSettingNoiseReduction 0xD178 #define PTP_DPC_CANON_EOS_MovieServoAF 0xD179 #define PTP_DPC_CANON_EOS_ContinuousAFValid 0xD17A @@ -1801,7 +1627,6 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_CANON_EOS_UnknownPropD19A 0xD19A /*found in Canon EOS 5D M3*/ #define PTP_DPC_CANON_EOS_UnknownPropD19C 0xD19C /*found in Canon EOS 5D M3*/ #define PTP_DPC_CANON_EOS_UnknownPropD19D 0xD19D /*found in Canon EOS 5D M3*/ -#define PTP_DPC_CANON_EOS_GPSDeviceActive 0xD19F #define PTP_DPC_CANON_EOS_CustomFuncEx 0xD1a0 #define PTP_DPC_CANON_EOS_MyMenu 0xD1a1 #define PTP_DPC_CANON_EOS_MyMenuList 0xD1a2 @@ -2162,7 +1987,6 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_FUJI_ReleaseMode 0xD201 #define PTP_DPC_FUJI_FocusAreas 0xD206 #define PTP_DPC_FUJI_AELock 0xD213 -#define PTP_DPC_FUJI_Copyright 0xD215 #define PTP_DPC_FUJI_Aperture 0xD218 #define PTP_DPC_FUJI_ShutterSpeed 0xD219 @@ -2186,22 +2010,6 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_MTP_Zune_UnknownVersion 0xD181 /* Olympus */ -/* these are from OMD E-M1 Mark 2 */ -#define PTP_DPC_OLYMPUS_Aperture 0xD002 -#define PTP_DPC_OLYMPUS_FocusMode 0xD003 -#define PTP_DPC_OLYMPUS_ExposureMeteringMode 0xD004 -#define PTP_DPC_OLYMPUS_ISO 0xD007 -#define PTP_DPC_OLYMPUS_ExposureCompensation 0xD008 -#define PTP_DPC_OLYMPUS_OMD_DriveMode 0xD009 -#define PTP_DPC_OLYMPUS_ImageFormat 0xD00D -#define PTP_DPC_OLYMPUS_FaceDetection 0xD01A -#define PTP_DPC_OLYMPUS_AspectRatio 0xD01B -#define PTP_DPC_OLYMPUS_Shutterspeed 0xD01C -#define PTP_DPC_OLYMPUS_WhiteBalance 0xD01E -#define PTP_DPC_OLYMPUS_LiveViewModeOM 0xD06D -#define PTP_DPC_OLYMPUS_CaptureTarget 0xD0DC - -/* unsure where these were from */ #define PTP_DPC_OLYMPUS_ResolutionMode 0xD102 #define PTP_DPC_OLYMPUS_FocusPriority 0xD103 #define PTP_DPC_OLYMPUS_DriveMode 0xD104 @@ -2366,83 +2174,6 @@ typedef struct _PTPCanonEOSDeviceInfo { #define PTP_DPC_PARROT_MultisensorsIrradianceIntegrationTime 0xD218 #define PTP_DPC_PARROT_OverlapRate 0xD219 -/* Panasonic does not have regular device properties, they use some 32bit values */ -#define PTP_DPC_PANASONIC_PhotoStyle 0x02000010 -#define PTP_DPC_PANASONIC_ISO 0x02000020 -#define PTP_DPC_PANASONIC_ShutterSpeed 0x02000030 -#define PTP_DPC_PANASONIC_Aperture 0x02000040 -#define PTP_DPC_PANASONIC_WhiteBalance 0x02000050 -#define PTP_DPC_PANASONIC_Exposure 0x02000060 -#define PTP_DPC_PANASONIC_AFArea 0x02000070 -#define PTP_DPC_PANASONIC_CameraMode 0x02000080 -#define PTP_DPC_PANASONIC_ImageFormat 0x020000A2 -#define PTP_DPC_PANASONIC_MeteringInfo 0x020000B0 -#define PTP_DPC_PANASONIC_IntervalInfo 0x020000C0 -#define PTP_DPC_PANASONIC_RecDispConfig 0x020000E0 -#define PTP_DPC_PANASONIC_RecInfoFlash 0x02000110 -#define PTP_DPC_PANASONIC_BurstBracket 0x02000140 -#define PTP_DPC_PANASONIC_RecPreviewConfig 0x02000170 -#define PTP_DPC_PANASONIC_RecInfoSelfTimer 0x020001A0 -#define PTP_DPC_PANASONIC_RecInfoFlash2 0x020001B0 -#define PTP_DPC_PANASONIC_MovConfig 0x06000010 -#define PTP_DPC_PANASONIC_08000010 0x08000010 -/* various modes of the camera, HDMI, GetDateTimeWorldTime Mode/Area, SetupCfgInfo, SetupConfig_DateTime, GetSystemFreq Mode, GetSetupConfig Info */ -/* -0000 54 00 00 00 02 00 0a 94-04 00 00 00 11 00 00 08 T............... -0010 0a 00 00 00 e2 07 07 00-10 00 11 00 09 00 12 00 ................ -0020 00 08 02 00 00 00 00 00-13 00 00 08 02 00 00 00 ................ -0030 00 00 14 00 00 08 04 00-00 00 00 00 00 00 15 00 ................ -0040 00 08 04 00 00 00 00 00-00 00 16 00 00 08 02 00 ................ -0050 00 00 01 00 - .... - -0000 d0 00 00 00 02 00 07 91-04 00 00 00 10 00 00 08 ................ -0010 14 00 00 00 14 00 00 00-01 00 01 00 00 00 00 00 ................ -0020 06 00 00 00 38 03 00 00-11 00 00 08 14 00 00 00 ....8........... -0030 14 00 00 00 01 00 01 00-00 00 00 00 05 00 00 00 ................ -0040 c8 00 00 00 12 00 00 08-14 00 00 00 14 00 00 00 ................ -0050 01 00 01 00 00 00 00 00-01 00 00 00 36 00 00 00 ............6... -0060 13 00 00 08 14 00 00 00-14 00 00 00 01 00 01 00 ................ -0070 00 00 00 00 01 00 00 00-2a 00 00 00 14 00 00 08 ........*....... -0080 14 00 00 00 14 00 00 00-01 00 01 00 00 00 00 00 ................ -0090 02 00 00 00 9e 00 00 00-15 00 00 08 14 00 00 00 ................ -00a0 14 00 00 00 01 00 01 00-00 00 00 00 02 00 00 00 ................ -00b0 9e 00 00 00 16 00 00 08-14 00 00 00 14 00 00 00 ................ -00c0 01 00 01 00 00 00 00 00-01 00 00 00 2c 00 00 00 ............,... - */ -#define PTP_DPC_PANASONIC_08000091 0x08000091 /* SetupFilesConfig_Set_Target */ -/* -0000 16 00 00 00 02 00 0a 94-04 00 00 00 91 00 00 08 ................ -0010 02 00 00 00 00 00 - ...... - -0000 44 00 00 00 02 00 07 91-04 00 00 00 90 00 00 08 D............... -0010 14 00 00 00 14 00 00 00-01 00 01 00 00 00 00 00 ................ -0020 01 00 00 00 48 00 00 00-91 00 00 08 14 00 00 00 ....H........... -0030 14 00 00 00 01 00 01 00-00 00 00 00 01 00 00 00 ................ -0040 2c 00 00 00 - ,... - */ - -#define PTP_DPC_PANASONIC_GetFreeSpaceInImages 0x12000010 -/* -0000 98 00 00 00 02 00 14 94-04 00 00 00 11 00 00 12 ................ -0010 04 00 00 00 4e 00 00 00-12 00 00 12 04 00 00 00 ....N........... -0020 00 00 00 00 13 00 00 12-02 00 00 00 00 00 14 00 ................ -0030 00 12 04 00 00 00 00 00-00 00 15 00 00 12 06 00 ................ -0040 00 00 02 00 01 00 00 00-16 00 00 12 3a 00 00 00 ............:... -0050 02 00 4e 00 00 00 00 00-00 00 4e 00 00 00 ff ff ..N.......N..... -0060 ff ff 00 00 00 00 ff ff-ff ff 00 00 00 00 00 00 ................ -0070 00 00 00 00 00 00 ff ff-ff ff 00 00 00 00 ff ff ................ -0080 ff ff 00 00 00 00 00 00-00 00 17 00 00 12 06 00 ................ -0090 00 00 00 00 00 00 00 00- ........ - */ -#define PTP_DPC_PANASONIC_GetBatteryInfo 0x16000010 -/* -0000 1c 00 00 00 02 00 14 94-04 00 00 00 11 00 00 16 ................ -0010 08 00 00 00 4b 00 00 00-4b 00 ff ff ....K...K... - */ -#define PTP_DPC_PANASONIC_LensGetMFBar 0x12010040 -/* 15c00010 GetSetupInfo Error */ -/* 18000010 GetUSBSpeed */ - /* MTP specific Object Properties */ #define PTP_OPC_StorageID 0xDC01 @@ -2666,7 +2397,6 @@ typedef uint16_t (* PTPIOGetResp) (PTPParams* params, PTPContainer* resp); typedef uint16_t (* PTPIOGetData) (PTPParams* params, PTPContainer* ptp, PTPDataHandler *putter); typedef uint16_t (* PTPIOCancelReq) (PTPParams* params, uint32_t transaction_id); -typedef uint16_t (* PTPIODevStatReq) (PTPParams* params); /* debug functions */ typedef void (* PTPErrorFunc) (void *data, const char *format, va_list args) @@ -2728,7 +2458,6 @@ struct _PTPParams { PTPIOGetResp event_check_queue; PTPIOGetResp event_wait; PTPIOCancelReq cancelreq_func; - PTPIODevStatReq devstatreq_func; /* Custom error and debug function */ PTPErrorFunc error_func; @@ -2839,8 +2568,6 @@ uint16_t ptp_usb_control_get_extended_event_data (PTPParams *params, char *buffe uint16_t ptp_usb_control_device_reset_request (PTPParams *params); uint16_t ptp_usb_control_get_device_status (PTPParams *params, char *buffer, int *size); uint16_t ptp_usb_control_cancel_request (PTPParams *params, uint32_t transid); -uint16_t ptp_usb_control_cancel_request (PTPParams *params, uint32_t transid); -uint16_t ptp_usb_control_device_status_request (PTPParams *params); int ptp_ptpip_connect (PTPParams* params, const char *port); @@ -2945,12 +2672,6 @@ uint16_t ptp_getthumb (PTPParams *params, uint32_t handle, uint16_t ptp_deleteobject (PTPParams* params, uint32_t handle, uint32_t ofc); -uint16_t ptp_moveobject (PTPParams* params, uint32_t handle, - uint32_t storage, uint32_t parent); - -uint16_t ptp_copyobject (PTPParams* params, uint32_t handle, - uint32_t storage, uint32_t parent); - uint16_t ptp_sendobjectinfo (PTPParams* params, uint32_t* store, uint32_t* parenthandle, uint32_t* handle, PTPObjectInfo* objectinfo); @@ -3000,7 +2721,7 @@ uint16_t ptp_generic_setdevicepropvalue (PTPParams* params, uint16_t propcode, PTPPropertyValue* value, uint16_t datatype); uint16_t ptp_getfilesystemmanifest (PTPParams* params, uint32_t storage, uint32_t objectformatcode, uint32_t associationOH, - uint64_t *numoifs, PTPObjectFilesystemInfo **oifs); + unsigned char** data); @@ -3210,9 +2931,8 @@ uint16_t ptp_canon_checkevent (PTPParams* params, #define CANON_EOS_OLC_APERTURE 0x0004 #define CANON_EOS_OLC_ISO 0x0008 -#define ptp_canon_eos_setrequestolcinfogroup(params,igmask) ptp_generic_no_data(params,PTP_OC_CANON_EOS_SetRequestOLCInfoGroup,1,igmask) -#define ptp_canon_eos_requestdevicepropvalue(params,prop) ptp_generic_no_data(params,PTP_OC_CANON_EOS_RequestDevicePropValue,1,prop) -#define ptp_canon_eos_setrequestrollingpitchinglevel(params,onoff) ptp_generic_no_data(params,PTP_OC_CANON_EOS_SetRequestRollingPitchingLevel,1,onoff) +#define ptp_canon_eos_setrequestolcinfogroup(params,igmask) ptp_generic_no_data(params,PTP_OC_CANON_EOS_SetRequestOLCInfoGroup,1,igmask) +#define ptp_canon_eos_requestdevicepropvalue(params,prop) ptp_generic_no_data(params,PTP_OC_CANON_EOS_RequestDevicePropValue,1,prop) uint16_t ptp_canon_eos_capture (PTPParams* params, uint32_t *result); uint16_t ptp_canon_eos_getevent (PTPParams* params, PTPCanon_changes_entry **entries, int *nrofentries); uint16_t ptp_canon_getpartialobject (PTPParams* params, uint32_t handle, @@ -3296,7 +3016,6 @@ uint16_t ptp_canon_getpairinginfo (PTPParams* params, uint32_t nr, unsigned char uint16_t ptp_canon_eos_getstorageids (PTPParams* params, PTPStorageIDs* storageids); uint16_t ptp_canon_eos_getstorageinfo (PTPParams* params, uint32_t p1, unsigned char**, unsigned int*); uint16_t ptp_canon_eos_getpartialobject (PTPParams* params, uint32_t oid, uint32_t off, uint32_t xsize, unsigned char**data); -uint16_t ptp_canon_eos_getpartialobjectex (PTPParams* params, uint32_t oid, uint32_t off, uint32_t xsize, unsigned char**data); uint16_t ptp_canon_eos_getobjectinfoex (PTPParams* params, uint32_t storageid, uint32_t objectid, uint32_t unk, PTPCANONFolderEntry **entries, unsigned int *nrofentries); uint16_t ptp_canon_eos_setdevicepropvalueex (PTPParams* params, unsigned char* data, unsigned int size); @@ -3596,9 +3315,6 @@ uint16_t ptp_olympus_opensession (PTPParams*, unsigned char**, unsigned int *); #define ptp_olympus_capture(params,p1) ptp_generic_no_data (params, PTP_OC_OLYMPUS_Capture, 1, p1) uint16_t ptp_olympus_getcameraid (PTPParams*, unsigned char**, unsigned int *); -uint16_t ptp_olympus_omd_capture (PTPParams* params); -uint16_t ptp_olympus_omd_move_focus (PTPParams* params, uint32_t direction, uint32_t step_size); - /* Non PTP protocol functions */ static inline int ptp_operation_issupported(PTPParams* params, uint16_t operation) @@ -3630,7 +3346,6 @@ void ptp_error (PTPParams *params, const char *format, ...); const char* ptp_get_property_description(PTPParams* params, uint16_t dpc); const char* ptp_get_opcode_name(PTPParams* params, uint16_t opcode); -const char* ptp_get_event_code_name(PTPParams* params, uint16_t event_code); int ptp_render_property_value(PTPParams* params, uint16_t dpc, @@ -3647,7 +3362,6 @@ uint16_t ptp_object_want (PTPParams *, uint32_t handle, unsigned int want, PTPOb void ptp_objects_sort (PTPParams *); uint16_t ptp_object_find (PTPParams *params, uint32_t handle, PTPObject **retob); uint16_t ptp_object_find_or_insert (PTPParams *params, uint32_t handle, PTPObject **retob); -uint16_t ptp_list_folder (PTPParams *params, uint32_t storage, uint32_t handle); /* ptpip.c */ void ptp_nikon_getptpipguid (unsigned char* guid); @@ -3709,35 +3423,11 @@ uint16_t ptp_chdk_get_script_status(PTPParams* params, unsigned *status); uint16_t ptp_chdk_write_script_msg(PTPParams* params, char *data, unsigned size, int target_script_id, int *status); uint16_t ptp_chdk_read_script_msg(PTPParams* params, ptp_chdk_script_msg **msg); uint16_t ptp_chdk_get_live_data(PTPParams* params, unsigned flags, unsigned char **data, unsigned int *data_size); -uint16_t ptp_chdk_parse_live_data (PTPParams* params, unsigned char *data, unsigned int data_size, - lv_data_header *header, lv_framebuffer_desc *vpd, lv_framebuffer_desc *bmd); uint16_t ptp_chdk_call_function(PTPParams* params, int *args, int size, int *ret); /*uint16_t ptp_chdk_get_script_output(PTPParams* params, char **output ); */ /*uint16_t ptp_chdk_get_video_settings(PTPParams* params, ptp_chdk_videosettings* vsettings);*/ -uint16_t ptp_fuji_getevents (PTPParams* params, uint16_t** events, uint16_t* count); - -#define ptp_panasonic_liveview(params,enable) ptp_generic_no_data(params,PTP_OC_PANASONIC_Liveview,1,enable?0xD000010:0xD000011) -uint16_t ptp_panasonic_liveview_image (PTPParams* params, unsigned char **data, unsigned int *size); - -uint16_t ptp_panasonic_setdeviceproperty (PTPParams* params, uint32_t propcode, unsigned char *value, uint16_t valuesize); -uint16_t ptp_panasonic_getdeviceproperty (PTPParams *params, uint32_t propcode, uint16_t *valuesize, uint32_t *currentValue); -uint16_t ptp_panasonic_getdevicepropertydesc (PTPParams *params, uint32_t propcode, uint16_t valuesize, uint32_t *currentValue, uint32_t **propertyValueList, uint32_t *propertyValueListLength); -uint16_t ptp_panasonic_getdevicepropertysize (PTPParams *params, uint32_t propcode); - - - -uint16_t ptp_olympus_liveview_image (PTPParams* params, unsigned char **data, unsigned int *size); -#define ptp_olympus_omd_move_focus(params,direction,step_size) ptp_generic_no_data(params,PTP_OC_OLYMPUS_OMD_MFDrive,2,direction,step_size) -uint16_t ptp_olympus_omd_capture (PTPParams* params); -uint16_t ptp_olympus_init_pc_mode (PTPParams* params); -uint16_t ptp_olympus_sdram_image (PTPParams* params, unsigned char **data, unsigned int *size); - - - -#define ptp_panasonic_capture(params) ptp_generic_no_data(params,PTP_OC_PANASONIC_InitiateCapture,1,0x3000011) - #ifdef __cplusplus } #endif /* __cplusplus */ |