Skip to content

pizthewiz/Cinder-EDSDK

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cinder-EDSDK

Cinder-EDSDK is a CinderBlock to interact with Canon cameras. See Canon's compatibility chart for a list of cameras supported in their EDSDK.

FEATURES

Image capture to memory or on-disk, camera keep-alive, simultaneous control of multiple cameras, Live View and camera connect and disconnect handling.

EXAMPLE

void CaptureApp::setup() {
    CameraBrowser::instance()->connectAddedHandler(&CaptureApp::browserDidAddCamera, this);
    CameraBrowser::instance()->start();
}

void CaptureApp::browserDidAddCamera(CameraRef camera) {
    mCamera = camera;
    mCamera->connectFileAddedHandler(&CaptureApp::didAddFile, this);
    EdsError error = mCamera->requestOpenSession();
    if (error == EDS_ERR_OK) {
        mCamera->requestTakePicture();
    }
}

void CaptureApp::didAddFile(CameraRef camera, CameraFileRef file) {
    fs::path destinationFolderPath = expandPath(fs::path("~/Desktop/Captures"));
    camera->requestDownloadFile(file, destinationFolderPath, [this](EdsError error, fs::path outputFilePath) {
        if (error == EDS_ERR_OK) {
            console() << "downloaded image to: " << outputFilePath << endl;
        }
    });
}

INTEGRATION

  1. Apply for EDSDK access from Canon USA or Canon Europa (serving Europe, Africa and The Middle East)
  2. Wait hours / days / weeks / months
  3. Download the EDSDK
  4. Unarchive
  5. Move the EDSDK folder into Cinder-EDSDK/lib
  6. Replace Cinder-EDSDK/lib/EDSDK/Framework/EDSDK.framework with EDSDK vX.Y.Z/EDSDK_64/EDSDK.framework to allow applications to be built x86_64

NOTE - Due to a bug introduced in EDSDK v2.10, the CameraBrowser will only call the camera removed handler for cameras with an open session.

GREETZ

About

CinderBlock for Canon camera control

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published