OK, thanks - it's certainly easier to build, but I'm really not clear where I should be calling fluid_synth_write_* - in a driver I've written myself? Are there any examples I can follow?
On 18 January 2018 at 09:14, Philippe Simons <simons.phili...@gmail.com> wrote: > The issue I have with an audio driver on Android, is that it will never > cover all the uses cases that a dev might need. > > For ex: > OpenSL is great for real-time MIDI rendering because it allows to work > with very small buffers. (15ms) > But for a MIDI player, working with small buffer is not a option (if the > devices goes to sleep, it wont be able to catchup with the required speed > to fill the buffer) and you need to work with buffers in the 500ms range or > more with and AudioTrack object. > OpenSL is also old tech on Android, while not deprecated, it's recommended > to use AAudio starting with Android 8.0 > > So my idea was to left that to the dev, it's really no big deal to call > the fluid_synth_write_*() function to pull the audio, it also allows you > to modify it before rendering (mixing, filtering, effects,...) > > Being free from the glib dep, my fork is also very light (+/- 250kb for > each CPU arch), and almost up-to-date with https://github.com/ > FluidSynth/fluidsynth > > Now it's up to you to use whatever solution fits your needs. > Just my two cents. > > Philippe > > On Thu, Jan 18, 2018 at 5:29 AM, Phil Blandford < > philip.blandf...@gmail.com> wrote: > >> >> Ok, further progress, once I sorted out my own dumb JNI bugs.. >> >> I can load a soundfont, play a MIDI file, but it rarely gets to the end - >> it stops, and won't start again until I restart the test app. The logcat is >> full of: >> >> [ 01-17 22:50:13.890 2651: 2717 D/ ] >> PlayerBase::stop() from >> IPlayer >> >> once every millisecond (give or take), regardless of whether a file is >> playing or not. >> >> I'm slowly getting up to speed on both fluidsynth architecture and the >> Android audio subsystem, but it may be someone who knows more about either >> or both could make better progress. >> >> The git log on the fluid_opensles.c file seems to indicate it hasn't been >> touched in 2 years. But it does seem tantalisingly close, just a few fixes >> away from being a real boon to Android developers who want to use >> soundfonts in their apps and have a more flexible MIDI than the native >> Mediaplayer gives them. >> >> >> >> >> > Hi, this is also my first post to the fluidsynth list, so apologies in >> advance for any inadvertent breaches of etiquette! >> >> > I've been struggling to build that same fork for a few days, and did >> manage it in the end. The problems came down to: >> >> <snip> >> >> > Anyway, I've managed to create a basic JNI wrapper and got it working >> in an app - sort of. I can load a soundfont, play a note with >> fluid_synth_note_on/off, but the sound is rather distorted. I can tell it >> to play a file - the logcat shows something is happening, but no sound is >> produced. I'm a bit stuck now as I don't know enough about low-level audio >> to debug. >> >> > I'd really like to hear if anyone has got this up and running. >> >> >> _______________________________________________ >> fluid-dev mailing list >> fluid-dev@nongnu.org >> https://lists.nongnu.org/mailman/listinfo/fluid-dev >> >> > > _______________________________________________ > fluid-dev mailing list > fluid-dev@nongnu.org > https://lists.nongnu.org/mailman/listinfo/fluid-dev > >
_______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/fluid-dev