ImageCapture (Camera) not working in 10.15.2 Beta (19C32e)

I have some ImageCapture software (connects to an external Canon Camera) that is not working under 10.15.

Now under 10.15.2 Beta (19C32e) a call to requestOpenSession does not respond with device:didOpenSessionWithError:


To be clear...

the software runs under 10.14... camera connects, can take pictures on the camera and via the macOS software.

the software does not run under 10.15 (from the earlier OS build) or out of xocde directly on 10.15. In addition looking through the viewfinder of my camera (Canon D650) it says "busy"... and the rear display is off (this is different to 10.14).


Observation under 10.15.2 Beta (19C32e)... deviceDidBecomeReady is no called either... probably a sympton of the Open not working?


I can see the device from the device browser...


ICCameraDevice <0x101d4ae80>:
  delegate                      : <0x0>
  deviceRef                     : 0x10000024
  connectionID                  : 0x00000000
  deviceID                      : 0x00000000
  name                          : Canon EOS Kiss X6i
  locationDescription           : ICDeviceLocationDescriptionUSB
  iconPath                      : /System/Library/Image Capture/Support/Icons/GenericCamera.png
  softwareInstallPercentDone    : 100.000000
  modulePath                    : /System/Library/Image Capture/Devices/PTPCamera.app
  moduleVersion                 : (null)
  moduleExecutableArchitecture  : 0
  type                          : 0x00000101
  UUIDString                    : 00000000-0000-0000-0000-000004A9323B
  persistentIDString            : 00000000-0000-0000-0000-000004A9323B
  autolaunchApplicationPath     : 
  capabilities                  : ICCameraDeviceCanAcceptPTPCommands
  shared                        : NO
  transportType                 : ICTransportTypeUSB
    usbLocationID               : 0x14500000
    usbProductID                : 0x323b
    usbVendorID                 : 0x04a9
    usbIntefaceClass            : 0x00
    usbInterfaceSubClass        : 0x00
    usbInterfaceProtocol        : 0x00
  timeOffset                    : 0.000000
  hasConfigurableWiFiInterface  : N/A
  isAccessRestrictedAppleDevice : NO



Interestingly running the ImageCapture software built into macOS does show the camera and lists the images on the camera.


Posting message here because I don't know what to do next. Any clues or advice welcome.

Thank you in advance for suggestions.


- David

Replies

Update.


I have subsequently performed a build for 10.15... this has changed the behaviour of the application and deviceDidBecomeReady: is now called.


2019-11-10 20:15:41.988835+1300 Moments[39041:357763] deviceDidBecomeReady: 
ICCameraDevice <0x10065c160>:
  delegate                      : <0x600003901110>
  deviceRef                     : 0x10000035
  connectionID                  : 0xe3440b0c
  deviceID                      : 0x0200000c
  name                          : Canon EOS Kiss X6i
  locationDescription           : ICDeviceLocationDescriptionUSB
  iconPath                      : /System/Library/Image Capture/Support/Icons/GenericCamera.png
  softwareInstallPercentDone    : 100.000000
  modulePath                    : /System/Library/Image Capture/Devices/PTPCamera.app
  moduleVersion                 : (null)
  moduleExecutableArchitecture  : 0
  type                          : 0x00000101
  UUIDString                    : 00000000-0000-0000-0000-000004A9323B
  persistentIDString            : 00000000-0000-0000-0000-000004A9323B
  autolaunchApplicationPath     : 
  capabilities                  : ICCameraDeviceCanTakePictureUsingShutterReleaseOnCamera
                                  ICCameraDeviceCanTakePicture
                                  ICCameraDeviceCanDeleteOneFile
                                  ICCameraDeviceCanAcceptPTPCommands
  shared                        : NO
  transportType                 : ICTransportTypeUSB
    usbLocationID               : 0x14500000
    usbProductID                : 0x323b
    usbVendorID                 : 0x04a9
    usbIntefaceClass            : 0x00
    usbInterfaceSubClass        : 0x00
    usbInterfaceProtocol        : 0x00
  timeOffset                    : 0.000000
  hasConfigurableWiFiInterface  : N/A
  isAccessRestrictedAppleDevice : NO


The call to "requestTakePicture" seems to have no affect. I am teathered to the camera.


2019-11-10 20:16:25.322309+1300 Moments[39041:357763] takePicture: Canon EOS Kiss X6i hasOpenSession                            = 1
2019-11-10 20:16:25.322342+1300 Moments[39041:357763] takePicture: Canon EOS Kiss X6i isTeathered                               = 1
2019-11-10 20:16:25.322377+1300 Moments[39041:357763] takePicture: Canon EOS Kiss X6i canTakePicture                            = 1
2019-11-10 20:16:25.322411+1300 Moments[39041:357763] takePicture: Canon EOS Kiss X6i canTakePictureUsingShutterReleaseOnCamera = 1

- David