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

Change libcamera-apps headers to rpicam-apps for Bookworm support #75

Open
wants to merge 18 commits into
base: main
Choose a base branch
from

Conversation

SBCV-apegram
Copy link
Contributor

The libcamera-apps headers have been renamed to rpicam-apps in Raspberry Pi OS Bookworm. This has been tested on a Raspberry Pi 4 running Bookworm with all updates.

@rf152
Copy link
Member

rf152 commented Jan 15, 2024

This one doesn't autobuild, which I think may be because of missing headers within the build environment. Are you able please to add the build.yaml file to fix the checks?

@SBCV-apegram
Copy link
Contributor Author

I think it's because the build tool is running against vanilla Debian, not Raspberry Pi OS. I don't know if the updated library will be added to Debian. I was looking into a different build tool that builds against Raspberry Pi OS, bit work caught up to me. The patch does build on Raspberry Pi OS.

@rf152
Copy link
Member

rf152 commented Jan 15, 2024

Lines 43 and 44 of .github/workflows/build.yml adds the raspberry pi repo to the vm, and pulls in a load of the raspberry pi requirements. You should be able to pull in the required header package in there.

@SBCV-apegram
Copy link
Contributor Author

The rename hasn't made it to Bullseye yet, maybe it won't (I've asked on the RPi forum). The package changed from libcamera-apps-lite to rpicam-apps-lite. It's supposed to symlink between the names, but it doesn't seem to work.

@SBCV-apegram
Copy link
Contributor Author

SBCV-apegram commented Jan 19, 2024

Confirmed from Raspberry Pi, they will not backport the name change to Bullseye.
https://forums.raspberrypi.com/viewtopic.php?p=2181097#p2181097

On my fork, I created a Bullseye branch with the old names, and set it so that the main branch supports Bookworm.

@rf152
Copy link
Member

rf152 commented Jan 19, 2024

Interesting.

Given the devices themselves are pretty static (once set up), I can see a way forward by changing the naming to the new version, and in effect removing support for bullseye. Bookworm has been about for a while now!

I'll try to have a look at this over the next week or so, or feel free to adjust the build script to build against bookworm rather than bullseye!

@SBCV-apegram
Copy link
Contributor Author

I will as soon as the tool the build script uses has an image for Bookworm on ARM (or any arch, for that matter). I'll looking up how to send that pull request.

@ETE-Design
Copy link

@SBCV-apegram Any news on this one? Would like to run it on bookworm

@rf152 Will it run on Raspberry PI OS Lite? And have ypu tryed it on an Raspberry PI 5?

@SBCV-apegram
Copy link
Contributor Author

@SBCV-apegram Any news on this one? Would like to run it on bookworm

@rf152 Will it run on Raspberry PI OS Lite? And have ypu tryed it on an Raspberry PI 5?

I can confirm it works on the Raspberry Pi 5, and Raspberry Pi OS Lite is the recommended OS.

As for Bookworm compatibility, I haven't had a chance to submit a patch for the verification checks on this repo. On my fork, the main branch is based on Bookworm, but with a few modifications and no verification checks. You would have to clone the repo and run the build script on your Pi. That means the build may fail if upstream libraries have breaking changes.

@ETE-Design
Copy link

ETE-Design commented Feb 18, 2024

@SBCV-apegram So to understand it correct, I just follow the guide here but just clone your repo instead? What modification have you made else than make it work with Bookworm?

@SBCV-apegram
Copy link
Contributor Author

@SBCV-apegram So to understand it correct, I just follow the guide here but just clone your repo instead? What modification have you made else than make it work with Bookworm?

My fork has a toggle between NDI and HDMI output using a button on the GPIO pins. The raspindi binary is unchanged from this repo (except for for the changes to get it to run on Bookworm). You can check the README on my repo for more information.

@ETE-Design
Copy link

@SBCV-apegram NDI 6.0 Support? 🙈

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants