About the CAP (Camera API Package)
CAP is a digital camera development support package that provides a free software development kit (SDK), application programming interface (API) and other programming reference with sample programs for select Canon cameras. It enables users to control Canon's cameras remotely from the products or services they have developed.
CAP: EDSDK & CCAPI
EDSDK & CCAPI are jointly referred to as CAP. EDSDK and CCAPI provide the same functions in principle but differ in connection methods and compatibility of cameras and operating systems. Users can choose the one that best suits their system environment.
EDSDK (EOS Digital Camera SDK)
Secure, high-speed data transfer from a wired connection
| Camera Connection | USB wired control |
| Supported Cameras | 60 types or more in the EOS/PowerShot Series |
| Supported OS |
|
Updated as of April 2025
CCAPI (Camera Control API)
Diverse operating system support for a wide range of users
| Camera Connection | Wi-Fi, Wireless control Note: Only EOS-1D X Mark III and EOS R3 can be controlled via wired LAN |
| Supported Cameras | 15 types or more in the EOS/PowerShot Series |
| Supported OS | No dependence on OS Along with Windows/macOS, it also supports Android, iOS, and Linux |
Updated as of February 2022
Main Functions
Use Cases
SDK Package
Apply SDK
Main Functions
CAP provides a variety of functions that let users remotely operate or configure settings on the camera once it is in a fixed position without having to move it or control it directly. This offers dramatic improvements in freedom and efficiency for system development.
Note: EDSDK and CCAPI provide the same functions in principle but differ in connection methods and compatibility of cameras and operating systems. Users can choose the one that best suits their system environment
Remote Shooting
Enables remote shooting from a distance
It enables advanced remote shooting with freely configurable settings for AF mode and position.
Main Function List
- Still image shooting
- Video recording
- AF (auto focus)/AE (auto exposure)/AWB (auto white balance)
- Focus position adjustment
- Zoom control*
*Only supported for PowerShot (integrated lens models)
Live View Monitor
Enables live view monitor with various information displays
Shots can be taken with clear and convenient displays including zoom and level confirmation.
Main Function List
- Acquisition of live view images for remote use
- Live view display information (AF position, AF results, histogram, electronic level information, etc.)
- Live view image size change
- AF focus position setting from specified position on live view*
- AWB setting from specified position on live view
*Only supported for models with touch panel
Image Transfer
Enables transfer and deletion of images on storage media
Play, transfer, and delete images without having to remove the camera.
Main Function List
- Transfer of images on media to other device (computer, etc.)
- Deletion of images on media
- Acquisition of image data (height, width, tone resolution, etc.)
- Acquisition of image thumbnails
- Changes to image attributes (file size, last update date, rating, etc.)
Camera Settings
Remote setting of shooting parameters and camera status
Freely adjust the shutter speed, aperture, and other settings to best suit the subject.
Main Function List
- Changes to shooting parameters (Tv, Av, ISO, WB, etc.)
- Changes to shooting quality (recording quality, image size, aspect ratio, etc.)
- Changing mode for built-in flash* (auto, off, slow sync)
- Acquisition of camera status information (battery, recording media available, attached lens, etc.)
- Acquisition of camera information (model name, serial number, etc.)
*Only supported for PowerShot (integrated lens models)
EDSDK
| API Specification | Gives an overview of EDSDK, explains the controllable API commands, and more |
| Sample Program | An example of implemented camera controls with EDSDK based on descriptions in the API specifications Windows: VB, C++, C# |
| Library (Main) | The library lists control programs for individual functions (ex. shutter release), and these are recalled from the sample program side |
CCAPI
| API Specification | Gives an overview of CCAPI, explains the controllable API commands, and more |
| Sample Program | This software is for activating the camera’s CCAPI function. Windows |
| Sample Program (JAVA) | An example of implemented camera controls with CCAPI based on descriptions in the API specifications |
*Firmware for camera is provided separately
Software Development Kits Application
Submit Application
Eligibility
- Applications are accepted only from Singapore, Malaysia, Thailand, Hong Kong, Taiwan, Philippines, Indonesia, Brunei, Sri Lanka, Cambodia, Vietnam, Myanmar, Nepal, India, Pakistan, Maldives and Mongolia.
- The Applicant must be a legally registered entity, operating under the laws of the country/region in which it is established.
- Applications from academic institutions or organisations (e.g. a university, college, polytechnic or school) may be considered only if they are made by the academic institution or organisation itself (and not by students or academic personnel in their personal capacity).
- For all other applicants, please contact your local Canon Sales Companies for more information.
Important Notes
- The annexures (if any) is to be scanned in PDF/JPG file format attached to the application form.
- Submission of an Application does not guarantee its acceptance. Canon Singapore Pte. Ltd. may reject an Application without providing reasons.
- A response to the application will typically be provided within 2-4 weeks from date of submission.
- Terms and Conditions apply.