Open djbx83 opened 1 year ago
Hello, NDI SDK supports arm on Linux, did you try compiling it?
Honestly not, I haven't tried. I tried to build up Countdown on Raspberry Pi OS latest version, and failed on Grandiose library. So I suppose that this issue is caused by NDI libraries not available for ARM.
What do you suggest?
Unfortunately i haven't got any raspberry to try the build. I can try checking grandiose. Could you post the build log?
Yes I could. I will retry to build on Raspi3 and post logs in the next days.
Thank you
Thank you. Is RPi 3 arm64?
Thank you. Is RPi 3 arm64?
Yes it is. https://www.raspberrypi.com/news/raspberry-pi-os-64-bit/
@djbx83 i tried build on a arm64 Ubuntu VM and it works correctly
Ok. I will upload build trace in the next days, so you can see the error.
I can try adding an automatic build of arm64 targets in the mean time
Thank you. It is not urgent, because if I use an older release, such as the last w/o NDI support, it works perfectly.
@djbx83 any news of your attempts?
Sorry, but unfortunately I still haven't managed these days. I should be able to re-take a test tomorrow. Thank you!
Hello cipi1965, today I've decided to test on a Raspberry PI 4 8GB with the latest Raspberry PI OS 64bit and every upgrades done. I'm happy to announce that it works! I've followed these steps below:
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt install -y yarn
fabrizio@raspberrypi:~/Desktop/Countdown $ yarn --version
1.22.19
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
NODE_MAJOR=20
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt-get update
sudo apt-get install nodejs -y
Git clone Countdown latest sources (0.0.33)
Launch Yarn
fabrizio@raspberrypi:~/Desktop/Countdown $ yarn
yarn install v1.22.19
$ node -p "'export const APP_VERSION = ' + JSON.stringify(require('./package.json').version) + ';'" > src/version.ts
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
Done in 63.15s.
Lauch "yarn start"
fabrizio@raspberrypi:~/Desktop/Countdown $ yarn start
yarn run v1.22.19
$ electron-forge start
✔ Checking your system
✔ Locating application
✔ Loading configuration
✔ Preparing native dependencies: 1 / 1 [13s]
✔ Running generateAssets hook
✔ [plugin-webpack] Compiling main process code [15s]
✔ [plugin-webpack] Launching dev servers for renderer process code [0.9s]
› Output Available: http://localhost:9050
update-electron-app config looks good; aborting updates since app is in development mode MESA-LOADER: failed to retrieve device information MESA-LOADER: failed to retrieve device information MESA-LOADER: failed to retrieve device information MESA-LOADER: failed to open kms_swrast: /usr/lib/dri/kms_swrast_dri.so: impossibile aprire il file oggetto condiviso: Permesso negato (search paths /usr/lib/aarch64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri) failed to load driver: kms_swrast MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: impossibile aprire il file oggetto condiviso: Permesso negato (search paths /usr/lib/aarch64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri) failed to load swrast driver (node:6073) ExtensionLoadWarning: Warnings loading extension at /home/fabrizio/.config/countdown/extensions/nhdogjmejiglipccpnnnanhbledajbpd: Manifest version 2 is deprecated, and support will be removed in 2023. See https://developer.chrome.com/blog/mv2-transition/ for more details.
(Use electron --trace-warnings ...
to show where the warning was created)
Added Extension: Vue.js devtools
[6073:0924/110807.952802:ERROR:CONSOLE(2)] "Electron sandboxed_renderer.bundle.js script failed to run", source: node:electron/js2c/sandbox_bundle (2)
[6073:0924/110807.952934:ERROR:CONSOLE(2)] "TypeError: object null is not iterable (cannot read property Symbol(Symbol.iterator))", source: node:electron/js2c/sandbox_bundle (2)
As you can see, there are some errors but it works. After a couple of second it appear.
- Install RPM
`sudo apt install rpm`
- Lauch "yarn make"
fabrizio@raspberrypi:~/Desktop/Countdown $ yarn make yarn run v1.22.19 $ cross-env NODE_ENV=production electron-forge make ✔ Checking your system ✔ Loading configuration ✔ Resolving make targets › Making for the following targets: rpm, deb ✔ Running package command ✔ Preparing to package application ✔ Running packaging hooks ✔ Running generateAssets hook ✔ Running prePackage hook ✔ [plugin-webpack] Preparing native dependencies: 1 / 1 ✔ [plugin-webpack] Building webpack bundles ✔ Packaging application ✔ Packaging for arm64 on linux [26s] ✔ Running postPackage hook ✔ Running preMake hook ✔ Making distributables ✔ Making a rpm distributable for linux/arm64 [3m25s] ✔ Making a deb distributable for linux/arm64 [3m11s] ✔ Running postMake hook › Artifacts available at: /home/fabrizio/Desktop/Countdown/out/make Done in 525.13s.
I don't know if the issue was caused by RaspberryPI 3... I will try next week when my Raspis 3 return to home (now are deployed on an event)
Do you use 32 bit RPi OS on RPi 3? It could be the difference with your RPi 4
No, I don't. I've used same 64bit OS on Raspberry PI 3
Let's see with your RPi 3.
When did you try last time? There was a compile issue because of NDI SDK was updated and Grandiose not.
Last time was the same day I opened the issue, September 13.
Is you used 0.0.32 it should have worked
Yes, 2 weeks ago I've tested 0.0.32
Hello CVMEventi, as I wrote in subject, it is convenient to disable NDI support when build executables on ARM SoC processors, because NewTek does not support NDI SDK on ARM CPUs. Indeed, when I trying to run and/or build on RaspberryPI, lasts versions with NDI failed to build up.
Thank you