Regarding packaging MobMuPlat/PdParty as a standalone application: it is technologically straightforward since they are open source , you'd have to hack a few lines and re-build the app and sign it. The license for MobMuPlat allows it, I'm assuming that PdParty/PdDroidParty does as well but you'd have to check that. See my notes at the very last post here: https://cycling74.com/forums/topic/running-max-map-on-a-tablet/.
On Nov 16, 2015, at 9:21 AM, pd-list-request@lists.iem.at wrote:Hi, there. I would appreciate so much your help for me to decide if I will accept a job and how to go on with it.
I have a customer who needs an Android/iOS app that they will give to his customer who buys them a "device" (this customer of mine is not a multimillonaire company. It's far away from being like that)
The app would be something like the mockup.png attached and will do something like this:
First instance:
- It opens a wav/mp3 (max: 1 hour).
- You will see the soundwave and will can make zoom in/out to be precise (if with gestures, much better).
- You will can play/pause/stop the audio from any place in the timeline.
- You set up to 256 markers/labels in the timeline.
- When you click/tap a marker/label, a new window appears to modify its information (time/color/type/etc).
- It will convert each mark to a 6 bytes group.
- It save/load files with all this markers (in binary).
- It will send this file, by Bluetooth through the serial port, to the "device”.
Second instance:
- The app will start playing the wav/mp3 file.
- It will send (by Bluetooth) the "start" command to the device.
- (The device starts its timer and already has the sequence file).
- For a perfect syncrhonizing, every second, the app will send the actual time (by Bluetooth).
I have several options to do this. I ask you if they are possibles and how difficult are they... and the final decision owns to the customer. My skills are: I know PureData and Python. So:Using MobMuPlat (http://mobmuplat.com/)
I know it is not a framework. I would make a PureData patch and the MobMuPlat interface. My customer would tell their customers to download MobMuPlat (Android: https://play.google.com/store/apps/details?id=com.iglesiaintermedia.mobmuplat, iOS: https://itunes.apple.com/ar/app/mobmuplat/id597679399?mt=8) and give them the file that I build.
Pros:
- It's the easiest-way.
- MobMuPlat is already in Google Market and iTunes.
Contras:
- It is not a standalone app, as they would like.
Doubt (and it's important):
- Could libpd send messages to serial port? There's [comport], but it is an external. Is it already compiled for Android/iOS?
Using Kivy (http://kivy.org)
This is a more difficult option. It uses Python to make the app. And there's Kivy/audiostream (https://github.com/kivy/audiostream) that gives the phone a access to the speaker and mic. In its example/ folder, there are puredata examples. Obviously, using libpd.
Pros:
- I would also make the patch in PureData.
- It would make a standalone app (with own name, splash screen, etc).
- It would works in Android, iOS, Windows, Linux, OSX.Contras:
- I've never used Kivy.
- I've never used any framework.
- I've never used libpd.
- I should build almost from scratch an application.
- I should compile for most Android and iOS versions...
- The difficulty of uploading an app to Google Market and iTunes.
This will work out of the box for both iOS and Android with the same core code. You just need to use the Project Generator to create different built files for each platform. It’s perfect for simple things but you will *have* to use native code in order to create native GUIS.Using OpenFrameWorks (http://openframeworks.cc/)
Well... I don't know coding C++. I know that this would be the best framework to do something like this... but it's furthest away from me. There's ofxPd (https://github.com/danomatika/ofxPd).
DroidParty supports this. PdParty does not currently. I’ll be working on it in the coming weeks, so we’ll see.Using PdDroidParty and PdParty
Now, I'm seeing their webpages/githubs. I didn't think in this possibility... Could it become one more?
Pros:
- Another easiest way.
- It could compile a standalone app (???)
Contras:
- As other frameworks: What about compiling for most Android and iOS versions…?
- Uploading to markets...?