Closed w0r1d-d43m0n closed 5 days ago
The package pvporcupine
is providing a none-any
wheel that contains compiled libraries for select platforms:
pvporcupine/
├── lib
│ ├── beaglebone
│ ├── common
│ ├── jetson
│ │ └── cortex-a57-aarch64
│ ├── linux
│ │ └── x86_64
│ ├── mac
│ │ ├── arm64
│ │ └── x86_64
│ ├── raspberry-pi
│ │ ├── arm11
│ │ ├── cortex-a53
│ │ ├── cortex-a53-aarch64
│ │ ├── cortex-a7
│ │ ├── cortex-a72
│ │ ├── cortex-a72-aarch64
│ │ ├── cortex-a76
│ │ └── cortex-a76-aarch64
│ └── windows
│ └── amd64
└── resources
└── keyword_files
├── beaglebone
├── jetson
├── linux
├── mac
├── raspberry-pi
└── windows
This almost certainly isn't how this wheel should be packaged since the wheel specification contains an extensive methodology for targeting specific platforms. That would avoid this entire situation since pip
would tell you the package cannot be installed on an incompatible platform.
At any rate, this package would need to be built specifically for Android...or perhaps in the way this package is created, their library would need to be explicitly built for Android and they'd need logic to detect Android at runtime and load it.
I'll close this issue for now but feel free to post any follow up questions if you have here or in the discord. More general details about support for third-party libraries is here.
As a follow up, since the porcupine project advertises compatibility with Android:
The project can be used with Android...but not via their package on PyPI. They have a sample Gradle project demonstrating its use....so, it may still be possible to use this with Briefcase by integrating the necessary configuration in to the Gradle project that Briefcase creates.
Ok thank you :)
Describe the bug
When trying to use pvporcupine's wake word, briefcase fails with
←[31mE/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.vocalix.vocalixai/org.beeware.android.MainActivity}: com.chaquo.python.PyException: OSError: Couldn't find Porcupine's dynamic library at '/data/data/com.vocalix.vocalixai/files/chaquopy/AssetFinder/requirements/pvporcupine/lib/linux/x86_64/libpv_porcupine.so'.←[0m
.Steps to reproduce
Expected behavior
When porcupine detects wake word, code changes Label() to "active!" and then back to "inactive" after 3 seconds.
Screenshots
No response
Environment
Logs
Additional context
No response