====== PTP ====== Known PTP commands: typedef enum PtpCmdId_t { PTP_OC_Undefined = 0x1000, PTP_OC_GetDeviceInfo = 0x1001, PTP_OC_OpenSession = 0x1002, PTP_OC_CloseSession = 0x1003, PTP_OC_GetStorageIDs = 0x1004, PTP_OC_GetStorageInfo = 0x1005, PTP_OC_GetNumObjects = 0x1006, PTP_OC_GetObjectHandles = 0x1007, PTP_OC_GetObjectInfo = 0x1008, PTP_OC_GetObject = 0x1009, PTP_OC_GetThumb = 0x100a, PTP_OC_DeleteObject = 0x100b, PTP_OC_SendObjectInfo = 0x100c, PTP_OC_SendObject = 0x100d, PTP_OC_InitiateCapture = 0x100e, // not verified PTP_OC_FormatStore = 0x100f, PTP_OC_ResetDevice = 0x1010, // not verified PTP_OC_SelfTest = 0x1011, // not verified PTP_OC_SetObjectProtection = 0x1012, // not verified PTP_OC_PowerDown = 0x1013, // not verified PTP_OC_GetDevicePropDesc = 0x1014, PTP_OC_GetDevicePropValue = 0x1015, // not verified PTP_OC_SetDevicePropValue = 0x1016, PTP_OC_ResetDevicePropValue = 0x1017, // not verified PTP_OC_TerminateOpenCapture = 0x1018, // not verified PTP_OC_MoveObject = 0x1019, // not verified PTP_OC_CopyObject = 0x101a, // not verified PTP_OC_GetPartialObject = 0x101b, PTP_OC_InitiateOpenCapture = 0x101c, // not verified PTP_OC_CANON_Undefined = 0x9000, // not verified PTP_OC_CANON_GetPartialObjectInfo = 0x9001, // not verified PTP_OC_CANON_SetObjectArchive = 0x9002, // not verified PTP_OC_CANON_KeepDeviceOn2 = 0x9003, // not verified PTP_OC_CANON_GetObjectHandleByName = 0x9006, // not verified PTP_OC_CANON_InitiateReleaseControl = 0x9008, // not verified PTP_OC_CANON_TerminateReleaseControl = 0x9009, // not verified PTP_OC_CANON_TerminatePlayBackMode = 0x900a, // not verified PTP_OC_CANON_RC_InitiateViewFinder = 0x900b, // not verified PTP_OC_CANON_RC_TerminateViewFinder = 0x900c, // not verified PTP_OC_CANON_RC_DoAeAfAeb = 0x900d, // not verified PTP_OC_CANON_GetCustomaizeSpec = 0x900e, // not verified PTP_OC_CANON_GetCustomaizeItemInfo = 0x900f, // not verified PTP_OC_CANON_GetCustomaizeData = 0x9010, // not verified PTP_OC_CANON_SetCustomaizeData = 0x9011, // not verified PTP_OC_CANON_RC_GetCaptureStatus = 0x9012, // not verified PTP_OC_CANON_GetEvent = 0x9013, // not verified PTP_OC_CANON_RC_FocusLock = 0x9014, // not verified PTP_OC_CANON_RC_FocusUnlock = 0x9015, // not verified PTP_OC_CANON_RC_AskAboutPcEvf = 0x9018, // not verified PTP_OC_CANON_SendPartialObject = 0x9019, // not verified PTP_OC_CANON_RC_Capture = 0x901a, // not verified PTP_OC_CANON_GetPartialObjectEx2 = 0x901b, // not verified PTP_OC_CANON_SetObjectTime = 0x901c, // not verified PTP_OC_CANON_RC_GetViewFinderData = 0x901d, // not verified PTP_OC_CANON_GetObjectAttributes = 0x901e, // not verified PTP_OC_CANON_ChangeUSBProtocol = 0x901f, // not verified PTP_OC_CANON_RC_GetChangedReleaseParamsList = 0x9020, // not verified PTP_OC_CANON_GetObjectInfoEx2 = 0x9021, // not verified PTP_OC_CANON_PingRequest = 0x902f, PTP_OC_CANON_GetMACAddress = 0x9033, PTP_OC_CANON_InitiateEventProc0 = 0x9050, PTP_OC_CANON_TerminateEventProc_051 = 0x9051, PTP_OC_CANON_ExecuteEventProc = 0x9052, PTP_OC_CANON_GetEventProcReturnData = 0x9053, PTP_OC_CANON_IsEventProcRunning = 0x9057, PTP_OC_CANON_QuerySizeOfTransparentMemory = 0x9058, PTP_OC_CANON_LoadTransparentMemory = 0x9059, PTP_OC_CANON_SaveTransparentMemory = 0x905a, PTP_OC_CANON_QuickLoadTransparentMemory = 0x905b, PTP_OC_CANON_InitiateEventProc1 = 0x905c, PTP_OC_CANON_TerminateEventProc_05D = 0x905d, PTP_OC_CANON_IsNeoKabotanProcMode = 0x9060, PTP_OC_CANON_GetWebServiceSpec = 0x9068, PTP_OC_CANON_GetWebServiceData = 0x9069, PTP_OC_CANON_SetWebServiceData = 0x906a, PTP_OC_CANON_DeleteWebServiceData = 0x906b, PTP_OC_CANON_GetRootCertificateSpec = 0x906c, PTP_OC_CANON_GetRootCertificateData = 0x906d, PTP_OC_CANON_SetRootCertificateData = 0x906e, PTP_OC_CANON_DeleteRootCertificateData = 0x906f, PTP_OC_CANON_GET_GPSMOBILELINKOBJECTINFO = 0x9075, // not verified PTP_OC_CANON_SET_SENDGPSTAGINFO = 0x9076, // not verified PTP_OC_CANON_GetTranscodeApproxSize = 0x9077, PTP_OC_CANON_RequestTranscodeStart = 0x9078, PTP_OC_CANON_RequestTranscodeCancel = 0x9079, PTP_OC_CANON_SETREMOTESHOOTINGMODE = 0x9086, // not verified PTP_OC_CANON_GetStorageIDs_101 = 0x9101, PTP_OC_CANON_GetStorageInfo = 0x9102, PTP_OC_CANON_GetStorageIDs = 0x9103, PTP_OC_CANON_GetObject = 0x9104, PTP_OC_CANON_DeleteObject = 0x9105, PTP_OC_CANON_FormatStore = 0x9106, PTP_OC_CANON_GetPartialObject = 0x9107, PTP_OC_CANON_GetDeviceInfoEx = 0x9108, PTP_OC_CANON_GetObjectInfoEx = 0x9109, PTP_OC_CANON_GetThumbEx = 0x910a, PTP_OC_CANON_SEND_PARTIAL_OBJECT = 0x910b, // not verified PTP_OC_CANON_SetObjectAtributes = 0x910c, PTP_OC_CANON_GET_OBJECTTIME = 0x910d, // not verified PTP_OC_CANON_SET_OBJECTTIME = 0x910e, // not verified PTP_OC_CANON_RemoteRelease = 0x910f, PTP_OC_CANON_SetDevicePropValueEx = 0x9110, PTP_OC_CANON_SEnd_ObjectEX = 0x9111, PTP_OC_CANON_CreageObject = 0x9112, PTP_OC_CANON_GET_REMOTEMODE = 0x9113, // not verified PTP_OC_CANON_SetRemoteMode = 0x9114, PTP_OC_CANON_SetEventMode = 0x9115, PTP_OC_CANON_GetEvent2 = 0x9116, PTP_OC_CANON_TransferComplete = 0x9117, PTP_OC_CANON_CancelTransfer = 0x9118, PTP_OC_CANON_RESETTRANSFER = 0x9119, // not verified PTP_OC_CANON_PCHDDCapacity = 0x911a, PTP_OC_CANON_SetUiLock = 0x911b, PTP_OC_CANON_ResetUiLock = 0x911c, PTP_OC_CANON_KeepDeviceOn = 0x911d, PTP_OC_CANON_SetNullPacketMode = 0x911e, PTP_OC_CANON_UpdateFirmware = 0x911f, PTP_OC_CANON_TRANFERCOMPLETE_DT = 0x9120, // not verified PTP_OC_CANON_CANCELTRANSFER_DT = 0x9121, // not verified PTP_OC_CANON_SetWftProfile = 0x9122, PTP_OC_CANON_GetWftProfile = 0x9123, PTP_OC_CANON_SetProfileToWft = 0x9124, PTP_OC_CANON_BULB_START = 0x9125, // not verified PTP_OC_CANON_BULB_END = 0x9126, // not verified PTP_OC_CANON_RequestDevicePropValue = 0x9127, PTP_OC_CANON_RemoteReleaseON = 0x9128, PTP_OC_CANON_RemoteReleaseOFF = 0x9129, PTP_OC_CANON_REGISTBACKGROUNDIMAGE = 0x912a, // not verified PTP_OC_CANON_ChangePhotoStudioMode = 0x912b, PTP_OC_CANON_GetPartialObjectEx = 0x912c, PTP_OC_CANON_ReSizeImageData = 0x912d, PTP_OC_CANON_GetReSizeData = 0x912e, PTP_OC_CANON_ReleaseReSizeData = 0x912f, PTP_OC_CANON_ResetMirrorLockUpState = 0x9130, PTP_OC_CANON_PopUpBuiltInFlash = 0x9131, PTP_OC_CANON_EndGetPartialObjectEx = 0x9132, PTP_OC_CANON_LvMovieSelectOn = 0x9133, PTP_OC_CANON_LvMovieSelectOff = 0x9134, PTP_OC_CANON_GetCtgInfo = 0x9135, PTP_OC_CANON_GetLensAdjust = 0x9136, PTP_OC_CANON_SetLensAdjust = 0x9137, PTP_OC_CANON_GetMusicInfo = 0x9138, PTP_OC_CANON_CreateHandle = 0x9139, PTP_OC_CANON_SendPartialObjectEx = 0x913a, PTP_OC_CANON_EndSendPartialObjectEx = 0x913b, PTP_OC_CANON_SetCtgInfo = 0x913c, PTP_OC_CANON_SetRequestOlcInfoGroup = 0x913d, PTP_OC_CANON_SetRequestRollingPitching = 0x913e, PTP_OC_CANON_GetCameraSupport = 0x913f, PTP_OC_CANON_SetRating = 0x9140, PTP_OC_CANON_RequestDevelopStart = 0x9141, PTP_OC_CANON_RequestDevelopEnd = 0x9143, PTP_OC_CANON_GetGpsLoggingData = 0x9144, PTP_OC_CANON_GetGpsLogCurrentHandle = 0x9145, PTP_OC_CANON_SetImageRecoveryData = 0x9146, PTP_OC_CANON_GetImageRecoveryList = 0x9147, PTP_OC_CANON_FormatRecoveryData = 0x9148, PTP_OC_CANON_GetPresetLensAdjustParam = 0x9149, PTP_OC_CANON_GetRawDispImage = 0x914a, PTP_OC_CANON_SaveImageRecoveryData = 0x914b, PTP_OC_CANON_BLERequest = 0x914c, PTP_OC_CANON_DrivePowerZoom = 0x914d, PTP_OC_CANON_SendTimeSyncMessage = 0x914e, PTP_OC_CANON_GetIptcData = 0x914f, PTP_OC_CANON_SetIptcData = 0x9150, PTP_OC_CANON_INITIATEVIEWFINDER = 0x9151, // not verified PTP_OC_CANON_TERMINATEVIEWFINDER = 0x9152, // not verified PTP_OC_CANON_GetViewFinderData = 0x9153, PTP_OC_CANON_DoAf = 0x9154, PTP_OC_CANON_DriveLens = 0x9155, PTP_OC_CANON_DEPTHOFFIELDPREVIEW = 0x9156, // not verified PTP_OC_CANON_ClickWB = 0x9157, PTP_OC_CANON_Zoom = 0x9158, PTP_OC_CANON_ZoomPosition = 0x9159, PTP_OC_CANON_SetLiveAFFrame = 0x915a, PTP_OC_CANON_TouchAfPosition = 0x915b, PTP_OC_CANON_SetLvPcFlavoreditMode = 0x915c, PTP_OC_CANON_SetLvPcFlavoreditParam = 0x915d, PTP_OC_CANON_AfCancel = 0x9160, PTP_OC_CANON_SetImageRecoveryDataEx = 0x916b, PTP_OC_CANON_GetImageRecoveryListEx = 0x916c, PTP_OC_CANON_CompleteAutoSendImages = 0x916d, PTP_OC_CANON_NotifyAutoTransferStatus = 0x916e, PTP_OC_CANON_GetReducedObject = 0x916f, PTP_OC_CANON_GetObjectInfo64 = 0x9170, PTP_OC_CANON_GetObject64 = 0x9171, PTP_OC_CANON_GetPartialObject64 = 0x9172, PTP_OC_CANON_GetObjectInfoEx64 = 0x9173, PTP_OC_CANON_GetPartialObjectEx64 = 0x9174, PTP_OC_CANON_CREATEHANDLE64 = 0x9175, // not verified PTP_OC_CANON_NotifySaveComplete = 0x9177, PTP_OC_CANON_GetTranscodedBlock = 0x9178, PTP_OC_CANON_TransferCompleteTranscodedBlock = 0x9179, PTP_OC_CANON_Unknown_9180 = 0x9180, PTP_OC_CANON_Unknown_9181 = 0x9181, PTP_OC_CANON_NotifyEstimateNumberofImport = 0x9182, PTP_OC_CANON_NotifyNumberofImported = 0x9183, PTP_OC_CANON_NotifySizeOfPartialDataTransfer = 0x9184, PTP_OC_CANON_NotifyFinish = 0x9185, PTP_OC_CANON_GetObjectUrl = 0x91ab, PTP_OC_CANON_SetFELock = 0x91b9, PTP_OC_CANON_GETAEDATA = 0x91bf, // not verified PTP_OC_CANON_ceresOpenFileValue = 0x91c0, PTP_OC_CANON_ceresCreateFileValue = 0x91c1, PTP_OC_CANON_ceresRemoveFileValue = 0x91c2, PTP_OC_CANON_ceresCloseFileValue = 0x91c3, PTP_OC_CANON_ceresGetWriteObject = 0x91c4, PTP_OC_CANON_ceresSEndReadObject = 0x91c5, PTP_OC_CANON_ceresFileAttributesValue = 0x91c6, PTP_OC_CANON_ceresFileTimeValue = 0x91c7, PTP_OC_CANON_ceresSeekFileValue = 0x91c8, PTP_OC_CANON_ceresCreateDirectoryValue = 0x91c9, PTP_OC_CANON_ceresRemoveDirectoryValue = 0x91ca, PTP_OC_CANON_ceresSEndFileInfo = 0x91cb, PTP_OC_CANON_ceresSEndFileInfoListEx = 0x91cc, PTP_OC_CANON_ceresSEndDriveInfo = 0x91ce, PTP_OC_CANON_ceresNotifyDriveStatus = 0x91cf, PTP_OC_CANON_ceresSplitFileValue = 0x91d0, PTP_OC_CANON_ceresRenameFileValue = 0x91d1, PTP_OC_CANON_ceresTruncateFileValue = 0x91d2, PTP_OC_CANON_Unknown_91d3 = 0x91d3, PTP_OC_CANON_SendCertData = 0x91d4, PTP_OC_CANON_Unknown_91d5 = 0x91d5, PTP_OC_CANON_DistinctionRTC = 0x91d7, PTP_OC_CANON_NotifyGpsTimeSyncStatus = 0x91d8, PTP_OC_CANON_Unknown_91d9 = 0x91d9, PTP_OC_CANON_Unknown_91da = 0x91da, PTP_OC_CANON_Unknown_91db = 0x91db, PTP_OC_CANON_Unknown_91dc = 0x91dc, PTP_OC_CANON_Unknown_91dd = 0x91dd, PTP_OC_CANON_Unknown_91de = 0x91de, PTP_OC_CANON_GetAdapterFirmData = 0x91df, PTP_OC_CANON_Unknown_91e1 = 0x91e1, PTP_OC_CANON_Unknown_91e2 = 0x91e2, PTP_OC_CANON_ceresSEndScanningResult = 0x91e3, PTP_OC_CANON_SendHostInfo = 0x91e4, PTP_OC_CANON_NotifyAdapterStatus = 0x91e6, PTP_OC_CANON_Unknown_91e7 = 0x91e7, PTP_OC_CANON_NotifyNetworkError = 0x91e8, PTP_OC_CANON_AdapterTransferProgress = 0x91e9, PTP_OC_CANON_ceresRequestAdapterProperty = 0x91ea, PTP_OC_CANON_Unknown_91eb = 0x91eb, PTP_OC_CANON_SendWpsPinCode = 0x91ec, PTP_OC_CANON_ceresSEndWizardInfo = 0x91ed, PTP_OC_CANON_Unknown_91ee = 0x91ee, PTP_OC_CANON_ceresSEndBtSearchResult = 0x91ef, PTP_OC_CANON_TransferComplete2 = 0x91f0, PTP_OC_CANON_CancelTransfer2 = 0x91f1, PTP_OC_CANON_GetUpdateFileData = 0x91f2, PTP_OC_CANON_NotifyUpdateProgress = 0x91f3, PTP_OC_CANON_Unknown_91f4 = 0x91f4, PTP_OC_CANON_ceresSEndFactoryProperty = 0x91f5, PTP_OC_CANON_Unknown_91f6 = 0x91f6, PTP_OC_CANON_ceresSEndGpsInfo = 0x91f7, PTP_OC_CANON_ceresSEndBtPairingResult = 0x91f8, PTP_OC_CANON_ceresNotifyBtStatus = 0x91f9, PTP_OC_CANON_Unknown_91fb = 0x91fb, PTP_OC_CANON_SendTimeSyncInfo = 0x91fc, PTP_OC_CANON_SetAdapterBatteryReport = 0x91fd, PTP_OC_CANON_FapiMessageTx = 0x91fe, PTP_OC_CANON_FapiMessageRx = 0x91ff, };