With the Camera Remote API it is possible to control a number of Sony Cameras from your phone or tablet. Functions like zoom control, remote viewfinder, self-timer settings, still image capture and recording start and stop are available.
These functions have enabled a whole new way of taking pictures. Imagine being able to use the remote view finder on your phone to organize a group shot with yourself in the picture, or to create security apps that can snap pictures based on external events.
This tutorial will explain how the Camera Remote APIs work and how you can add support for this API to your own app by using the Camera Remote API beta SDK. Please note only a selected number of Sony Cameras support the Camera Remote API. Please see the Camera Remote API Supported devices page for a full list of supported cameras. For information about the API specifications, please see the API Reference document provided in the Camera Remote API beta SDK.
How to get started
The Camera Remote API uses JSON-RPC over HTTP. You can therefore use the Camera Remote APIs with any operating system, such as Android, iOS or Microsoft® Windows®.
There are three main steps to get started:
- Download the Camera Remote API beta SDK and unzip it on your computer. Bring up the sample code provided and connect the remote device (for example a phone) to the camera over via Wi-Fi®.
- In your app you need to use SSDP (Simple Service Discovery Protocol) to discover the camera and get the endpoint URL needed to call the API, as well as information about the supported functionality in the camera.
- You can now call the APIs by HTTP POST with JSON.
In the following sections, you’ll get to learn all the details involved.
Step 1. Connect the remote device to the camera over Wi-Fi®
First, you need to enable the remote control function on your camera. The camera will then act as an access point.
Then you should connect your phone or tablet to the camera access point. On the phone or tablet, select the camera access point and input the password displayed on the camera or described in the manuals.
The remote device, for example your smartphone or tablet can now establish a one-to-one connection with the camera via Wi-Fi®. Your application is now be ready to work as a client.
Step 2. Use SSDP to discover the camera
Any camera supporting the Camera Remote API can be discovered using SSDP. The smartphone or tablet can get the endpoint URL of the API, and information about supported functionalities, over device discovery according to the below illustration. For details please see the development guide and the sample code included in the Camera Remote API beta SDK.
Step 3. Call the APIs
After the device discovery, the client can now send JSON data to the endpoint URL of the camera by HTTP POST. After calling an API, the client will get the response from the camera. For more information about the APIs, please see the API Reference document in the Camera Remote API beta SDK. Why not check out the sample code which includes Java wrappers that you can use in your own app, to simplify your app development?
Add a description for your app when publishing
Once you have created your app and are about to upload it to Google Play™, Apple App Store, or any other app store, please include the following string in your description (for example, in the bottom, on its own line):
Camera Remote API by Sony
If you have any questions, feel free to leave to a comment below or check out the Support section. Here you will find all previous questions and answers about the Camera Remote API beta SDK, and you can learn how to tag a question so that a Sony engineer will find it. We have Sony engineers scanning Stack Overflow daily!