Skip to content

qualcomm/camera-service

Camera Service

The camera-service is a fundamental component in Qualcomm Linux that operates as a daemon, providing RPC (Remote Procedure Call) APIs for camera control. It exposes helper client APIs that handle RPC between client and server, utilizing HAL3 API to interact with the camera backend (CamX) and camera driver for hardware configuration.

The camera-service supports multiple clients and cameras simultaneously.

The camera-service provides client APIs for communication with the service. Applications such as GStreamer-based apps can use these client APIs to access the camera feed and build end-user solutions.

Compilation Instructions

Download and install the toolchain

Follow the steps below to obtain the cross-compilation toolchain required to build this project.

  1. Get the latest Nightly Build (wrynose) from the below link:

    https://github.com/qualcomm-linux/meta-qcom/actions/workflows/nightly-build.yml

  2. Locate the "build-nightly / publish_summary summary" section within the workflow results.

  3. Expand the "Download URLs Details" section to reveal the available build artifacts.

  4. Under the qcom-distro-sdk distribution for the qcom-armv8a target, click on the "Files" link.

  5. In the file list, use the "Type" filter to select .sh files, then download the following toolchain installer:

    qcom-distro-x86_64-qcom-multimedia-proprietary-image-armv8a-qcom-armv8a-toolchain-2.0.sh
    
  6. Extract and install the toolchain.

    bash qcom-distro-x86_64-qcom-multimedia-proprietary-image-armv8a-qcom-armv8a-toolchain-2.0.sh -d <path_to_install_toolchain> -y
    
  7. Source the cross-compilation toolchain environment.

    source <path_to_install_toolchain>/environment-setup-armv8a-qcom-linux
    

    Note: This environment must be sourced for every new shell session before building the project.

Download source code

Clone the source code from Github:

git clone https://github.com/qualcomm/camera-service.git
cd camera-service

Build the source code

Run CMake to generate the Makefile and build

cmake -B build -S . -DCMAKE_INSTALL_PREFIX=/usr && cmake --build build

Resources

Development

Contributions are welcome! Please refer to the CONTRIBUTING.md file for full details on how to contribute to this project, including:

License

camera-service is licensed under the BSD-3-Clause-Clear License. See LICENSE.txt for the full license text.

About

Camera Service : It provides a camera service that loads the CamX libraries to interact with the camera hardware module. Additionally, it offers client APIs for communication with the service. Applications such as GStreamer-based apps can use these client APIs to access the camera feed and build end-user solutions.

Resources

License

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors