-
Notifications
You must be signed in to change notification settings - Fork 533
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
Building on iOS/ARM mobile platforms #11
Comments
Essentia compiles just fine as a C++ library, the python bindings are optional (as is TagLib, btw), so this should be no problem. As for compiling on iOS, it hasn't been tried yet, but the code is standard C++ so there should be no major issue. Any input on the subject is welcome! |
I was able to build against armv7 / iOS6.0 - iOS 7.0 stripping down dependencies like
Now the issue is related to the TNT library and it is described here: |
I added the Essentia iOS framework here: https://github.com/loretoparisi/EssentiaTouch The project need the XCode Universal Framework to build: https://github.com/kstenerud/iOS-Universal-Framework So far the framework builds, but it is far to be complete, since too many dependencies are missing. |
I was able to compile and run the library on armv7 / armv7s: A algorithm run is like void Melody::calculatePredominantMelody(float* _audio, float* output) {
} So far the result is the the arrays pitchesR and confidenceR have no elements. |
You are adding empty vectors to pool before they were actually updated by compute() method //pool.add("tonal.predominant_melody.pitch",pitches); predominantMelody->compute(); |
That makes sense. Is there any way to do not use the pool? Il giorno martedì 19 novembre 2013, Dmitry Bogdanov ha scritto:
Dott. Ing. Loreto Parisi Email: loretoparisi@gmail.com |
I tried to add de commenting lines pool.add("tonal.predominant_melody.pitch",pitches); but I have an error libc++abi.dylib: terminating with uncaught exception of type essentia::EssentiaException: Descriptor name 'tonal.predominant_melody.pitch' of type std::vector not found The code modified was
} |
again, you are adding values to pool before computing them.
should be
|
The advantage of pool is that it can be used to store different variables of different types just like a dictionary in Python. However, there is little sense to use it in the standard mode in the case if you simply want to compute one output of an algorithm. Your original code without pool was ok for that. |
Any project to run the whole library on mobile iOS ?
FFWT
TagLib
LibYAML
should be compilable on iOS easily.
An idea could be to make a lightweight release of the library without the Python wrappers.
The text was updated successfully, but these errors were encountered: