Skip to content

Commit f773c0f

Browse files
authored
Merge pull request #24 from hamishwillee/image_capture
Update information about support for image and video capture
2 parents 7a9bc35 + f54c5b3 commit f773c0f

File tree

2 files changed

+43
-5
lines changed

2 files changed

+43
-5
lines changed

en/guide/configuration_file.md

Lines changed: 38 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,18 +109,54 @@ Example (Ubuntu):
109109
video0=http://127.0.0.1:8000/camera-def-uvc.xml
110110
```
111111

112-
### [imgcap]
112+
### [imgcap] {#imgcap}
113+
114+
This section defines the *default* values used for image capture. With the exception of `location` it should be possible override the values over MAVLink using parameters defined in the [Camera Definition File](../guide/camera_definition_file.md).
115+
116+
> **Note** At time of writing these default values cannot yet be overridden (see [#161](https://github.com/Dronecode/camera-streaming-daemon/issues/161)).
113117
114118
Key | Description | Default
115119
-- | --- | ---
116-
`location` | The local path with write permission where captured images will be saved (usually the system-standard "Temp" directory) | -
120+
`width` | Width of the image to be captured in pixels. | Full width of camera frame for sensor type (i.e 1080P - 1920, 720P - 1280, etc.)
121+
`height` | Height of the image to be captured in pixels. | Full height of camera frame for sensor type (i.e 1080P - 1080, 720P - 720, etc).
122+
`format` | Image format (number). <br>Possible values:<ul><li>2 (Jpeg/<code>IMAGE_FILE_JPEG</code>)</li></ul>Notes:<ul><li>Currently only Jpeg is <a href="https://github.com/Dronecode/camera-streaming-daemon/issues/163">supported for image capture</a>.</li></ul> | 2 (JPEG).
123+
`location` | The local path with write permission where captured images will be saved (usually the system-standard "Temp" directory). The path should be accessible and writeable. | /tmp/
117124

118125
Example:
119126
```
120127
[imgcap]
121128
location=~/Temp/
122129
```
123130

131+
### [vidcap] {#vidcap}
132+
133+
This section defines the *default* values used for video capture. With the exception of `location` it should be possible override the values over MAVLink using parameters defined in the [Camera Definition File](../guide/camera_definition_file.md).
134+
135+
> **Note** At time of writing these default values cannot yet be overridden (see [#161](https://github.com/Dronecode/camera-streaming-daemon/issues/161)).
136+
137+
Key | Description | Default
138+
--- | --- | ---
139+
`width` | Width of the video to be captured in pixels. | Full width of camera frame for sensor type (i.e 1080P - 1920, 720P - 1280, etc).
140+
`height` | Height of the video to be captured in pixels. | Full height of camera frame for sensor type (i.e 1080P - 1080, 720P - 720, etc).
141+
`framerate` | Camera framerate for video capture. | Default framerate queried from camera sensor (e.g. 25).
142+
`bitrate` | Bitrate of the encoded video data in KBps. Supported values: 1 - 2048000. | 512
143+
`encoder` | Encoder (number). <br>Possible values:<ul><li>3 (H.264/<code>VIDEO_CODING_AVC</code>)</li></ul>Notes:<ul><li>Currently only H.264 is <a href="https://github.com/Dronecode/camera-streaming-daemon/issues/168">supported for video capture</a>.</li></ul> | 3 (AVC).
144+
`format` | Video file format (number). <br>Possible values:<ul><li>1 (Moving Pictures Expert Group 4/<code>VIDEO_FILE_MP4</code>)</li></ul>Notes:<ul><li>Currently only MP4 is <a href="https://github.com/Dronecode/camera-streaming-daemon/issues/169">supported for video capture</a>.</li></ul> | 1 (MP4)
145+
`location` | The local path with write permission where captured videos will be saved (usually the system-standard "Temp" directory). | -
146+
147+
148+
Example (Ubuntu):
149+
```
150+
[vidcap]
151+
width=640
152+
height=480
153+
framerate=25
154+
bitrate=1000
155+
encoder=3
156+
format=1
157+
location=/tmp/
158+
```
159+
124160

125161
### [gazebo]
126162

en/guide/overview.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ CSD supports the following key features:
1616
* Automatically attaches [compatible cameras](#supported_cameras) connected to the Linux computer when it is started.
1717
* RTSP video streaming from *all* connected cameras (for consumption by GCS or other video players).
1818
* RTSP video stream advertising/discovery using Avahi.
19-
* [MAVLink Camera Protocol](#mavlink_support) support for up to 5 cameras, enabling image capture and storage, and querying/setting camera options. <!-- but not yet video capture - Mar 2018 -->
19+
* [MAVLink Camera Protocol](#mavlink_support) support for up to 5 cameras, enabling image/video capture and storage, and querying/setting camera options.
2020
* Gazebo simulated camera backend (so you can view video streams from within a simulated environment)!
2121
* Configurable back-end that can be extended to interface with new types of cameras and new front-end protocols.
2222

@@ -42,16 +42,18 @@ Advanced configuration information about individual cameras is specified in [Cam
4242

4343
## MAVLink Camera Protocol Implementation {#mavlink_support}
4444

45-
CSD implements the [MAVLink Camera Protocol](https://mavlink.io/en/protocol/camera.html) for image capture and getting/setting camera parameters and options. At time of writing (March 2018) video capture is not yet supported.
45+
CSD implements the [MAVLink Camera Protocol](https://mavlink.io/en/protocol/camera.html) for image and video capture and storage, and for getting/setting camera parameters and options.
4646

4747
The MAVLink properties of CSD are specified in the *CSD Configuration File*:
4848
* The [\[mavlink\]](../guide/configuration_file.md#mavlink) section is used to specify the MAVLink destination UDP port, the broadcast address for heartbeat messages, and the system id (which should be set to match the autopilot).
4949
* The [\[uri\]](../guide/configuration_file.md#uri) section specifies the device to URI mapping for [Camera Definition File](../guide/camera_definition_file.md).
50+
* The [\[imgcap\]](../guide/configuration_file.md#imgcap) and [\[vidcap\]](../guide/configuration_file.md#vidcap) sections specify the *default settings* for image and video capture, respectively.
5051

5152
Component IDs for each camera are allocated automatically and sequentially from [MAV_COMP_ID_CAMERA2](https://mavlink.io/en/messages/common.html#MAV_COMP_ID_CAMERA2) to [MAV_COMP_ID_CAMERA6](https://mavlink.io/en/messages/common.html#MAV_COMP_ID_CAMERA6) (inclusive) as cameras are connected (once all component ids are allocated further cameras are not addressable).
5253

5354
**Limitations:**
5455

5556
* At time of writing (March 2018) the camera protocol, and hence CSD, do not yet include a formal specification for managing or advertising RTSP video streams.
5657
* The MAVLink protocol supports up to 6 cameras in a single system (only 6 `component_id` values are defined). Currently only 5 cameras can be accessed via CSD (see [#142](https://github.com/intel/camera-streaming-daemon/issues/142)).
57-
* Video capture is not supported.
58+
* The default [image](../guide/configuration_file.md#imgcap) and [video](../guide/configuration_file.md#vidcap)
59+
capture settings cannot (yet) be overwritten using parameters/via a [Camera Definition File](../guide/camera_definition_file.md) (see [#161](https://github.com/Dronecode/camera-streaming-daemon/issues/161)).

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy