Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Libcamera apps improvements #1205

Merged
merged 10 commits into from
Aug 8, 2023
Merged

Libcamera apps improvements #1205

merged 10 commits into from
Aug 8, 2023

Commits on Aug 2, 2023

  1. rpi-libcamera-apps: fix Illegal Instruction

    With armv8-neon being enforced for all ARM based machines, running
    any libcamera app on raspberrypi (e.g. Raspberry Pi B Rev 2) results
    in Illegal Instruction.
    
    To fix this, set armv8-neon for 32bit raspberrypi3 and raspberrypi4
    but defaults to TARGET_ARCH for other non-aarch64 machines.
    
    Fixes: f162192 ("rpi-libcamera-apps: fix flags used in aarch64 builds")
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    6390e84 View commit details
    Browse the repository at this point in the history
  2. rpi-libcamera-apps: add opencv build dependency

    The 'opencv' PACKAGECONFIG entry was missing the build dependency.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    1b0586a View commit details
    Browse the repository at this point in the history
  3. rpi-libcamera-apps: add drm support

    Add a 'drm' PACKAGECONFIG entry in order to provide support for a
    DRM preview window while running the libcamera apps.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    5f929ef View commit details
    Browse the repository at this point in the history
  4. rpi-libcamera-apps: replace tensorflow config

    The 'tensorflow-lite' PACKAGECONFIG entry was missing the corresponding
    build dependency. In order to be consistent with the build macros,
    replace the feature with a 'tflite' package config entry.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    65b01c6 View commit details
    Browse the repository at this point in the history
  5. rpi-libcamera-apps: don't force COMPATIBLE_MACHINE

    Even though the libcamera apps are a rewrite of the rpicam apps and
    maintained by the raspberry folks, switching to libcamera makes the
    code hardware agnostic and thus could be compiled and used on various
    machines featuring a camera device supported by a libcamera pipeline.
    
    For this reason, do not enforce COMPATIBLE_MACHINE.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    c90d38b View commit details
    Browse the repository at this point in the history
  6. rpi-libcamera-apps: rename to libcamera-apps

    The libcamera-apps project is written in a hardware-agnostic manner
    thanks to libcamera, and thus isn't specific to the rpi SoC family.
    
    Moreover, the project is correctly named libcamera-apps and not
    rpi-libcamera-apps, so rename the recipe in order to reflect that.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    24f570d View commit details
    Browse the repository at this point in the history
  7. libcamera-apps: move recipe to dynamic-layers

    Move the libcamera-apps recipe to dynamic-layers/multimedia-layer
    alongside with its libcamera dependency.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    8320e79 View commit details
    Browse the repository at this point in the history
  8. libcamera-apps: bump to 3d9ac10

    Bump libcamera to 3d9ac10 to get a fix for the current libcamera from
    meta-openembedded/meta-multimedia for the following issue:
    
        error: 'StreamRoles' in namespace 'libcamera' does not name a type; did you mean 'StreamRole'?
           55 |         using StreamRoles = libcamera::StreamRoles;
              |                                        ^~~~~~~~~~~
              |                                        StreamRole
    
    Reported-by: Martin Jansa <[email protected]>
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    ffc5345 View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2023

  1. libcamera-apps: switch from CMake to meson

    CMake is removed in upstream libcamera-apps as of 9e17265,
    thus switch to meson to build the package from now on.
    
    Add PACKAGECONFIG entries and neon flags matching the settings
    project meson.build as described in the official documentation
    https://www.raspberrypi.com/documentation/computers/camera_software.html#building-libcamera-apps
    
    Default to "drm" for PACKAGECONFIG as it is the only option enabled
    in both recommended meson setup for Raspberry Pi OS and Raspberry Pi
    OS Lite.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 3, 2023
    Configuration menu
    Copy the full SHA
    76263ba View commit details
    Browse the repository at this point in the history
  2. libcamera-apps: bump to latest main

    Now that the libcamera package from meta-multimedia has support
    for flicker controls and libcamera-apps uses meson, we can bump the
    package to its latest revision.
    
    Signed-off-by: Vivien Didelot <[email protected]>
    vivien committed Aug 3, 2023
    Configuration menu
    Copy the full SHA
    bec7182 View commit details
    Browse the repository at this point in the history