OVOS camera skill
Project description
Camera Skill
Camera skill for OpenVoiceOS
Description
This skill allows you to take pictures using a connected webcam. You can configure various settings to customize its behavior.
Examples
- "Take a picture"
Settings
The settings.json
file allows you to configure the behavior of the Camera Skill. Below are the available settings:
Setting Name | Type | Default | Description |
---|---|---|---|
video_source |
Integer | 0 |
Specifies the camera to use. 0 is the default system webcam. |
play_sound |
Boolean | true |
Whether to play a sound when a picture is taken. |
camera_sound_path |
String | camera.wav |
Path to the sound file to play when taking a picture. |
pictures_folder |
String | ~/Pictures |
Directory where pictures are saved. |
Example settings.json
{
"video_source": 0,
"play_sound": true,
"camera_sound_path": "/path/to/camera.wav",
"pictures_folder": "/home/user/Pictures",
"keep_camera_open": false
}
Additional Steps for Raspberry Pi Users
If you plan to use this skill on a Raspberry Pi, it requires access to the libcamera
package for the Picamera2 library to function correctly. Due to how libcamera
is installed on the Raspberry Pi (system-wide), additional steps are necessary to ensure compatibility when using a Python virtual environment (venv).
In these examples we use the default .venv location from ovos-installer, ~/.venvs/ovos
, adjust as needed
Steps to Enable libcamera
in Your Virtual Environment
-
Install Required System Packages
Before proceeding, ensure thatlibcamera
and its dependencies are installed on your Raspberry Pi. Run the following commands:sudo apt install -y python3-libcamera python3-kms++ libcap-dev
-
Modify the Virtual Environment Configuration
If you already have a virtual environment set up, enable access to system-wide packages by modifying thepyvenv.cfg
file in the virtual environment directory:nano ~/.venvs/ovos/pyvenv.cfg
Add or update the following line:
include-system-site-packages = true
Save the file and exit.
-
Verify Access to
libcamera
Activate your virtual environment:source ~/.venvs/ovos/bin/activate
Check if the
libcamera
package is accessible:python3 -c "import libcamera; print('libcamera is accessible')"
Why Are These Steps Necessary?
The libcamera
package is not available on PyPI and is installed system-wide on the Raspberry Pi. Virtual environments typically isolate themselves from system-wide Python packages, so these adjustments allow the skill to access libcamera
while still benefiting from the isolation provided by a venv.
Notes
- These steps are specific to Raspberry Pi users who want to utilize the Picamera2 library for camera functionality. On other platforms, the skill defaults to using OpenCV, which does not require additional configuration.
- Ensure that
libcamera
is installed on your Raspberry Pi before attempting these steps. You can test this by running:libcamera-still --version
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ovos-skill-camera-0.0.3a1.tar.gz
.
File metadata
- Download URL: ovos-skill-camera-0.0.3a1.tar.gz
- Upload date:
- Size: 16.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a263e31acc8548eceb0d460ba7f1b88bc04c3bcb749b17e82df2f1db83d6be6 |
|
MD5 | 5977213becb5ced30ecaa8142696b28f |
|
BLAKE2b-256 | d5ec5ee454ed7f6a670b33b45e34b5ad37bd43036df827872da656c58517d818 |
File details
Details for the file ovos_skill_camera-0.0.3a1-py3-none-any.whl
.
File metadata
- Download URL: ovos_skill_camera-0.0.3a1-py3-none-any.whl
- Upload date:
- Size: 24.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3593573f2524f67ae2fca1d97fbf3fb6c7fcf402561478bdd7d097aeab2f7f3e |
|
MD5 | 35fdb66698956a32a7926647b6054715 |
|
BLAKE2b-256 | d3b71a768944bb4afde169ac06948cb8412a4e170a303e761a1da2fcff4fd528 |