Thanks for the feedback guys!

I've started digging into the faust2api code, reviewing small pieces of the
Faust Whitepaper and looking at the Faust Android Tutorial.  Since I am
integrating these effects into all audio sessions (not just the audio
sessions for my app) I don't think that OpenSL will work for me.  Instead I
think my path forward is implementing a new audio layer to either integrate
directly with my Engine implementation or simply allow me to provide the
inputs and outputs as parameters.

I'll post updates to a dedicated chain as I make progress.  My codebase is
hosted on GitHub (https://github.com/Jman420/menrva) if anyone wants to
follow more closely.  I've recently started working with a DSP Dev that
created JamesDSP (https://github.com/james34602/JamesDSPManager) and have
started working towards a way to leverage Faust to allow Users to easily
add new effects to the Engine.


On Tue, Jun 4, 2019 at 4:23 AM Stéphane Letz <l...@grame.fr> wrote:

> Hi Justin,
>
> To complete Romain's answer, you can have a look ad the following paper
> that explains the architecture files system, in particular the « Figure 1 »
>
> http://www.grame.fr/ressources/publications/09_C_B_137724.pdf
>
> Basically faus2api allows you to combine the blue part (that Faust
> compiler generated dsp class) and the red part (the audio driver) in a
> unique DspFaust object. Then the green part (controller) can be coded using
> a JSON (to get a full description of the UI) + setParam/getParam model. The
> audio communication between the audio driver and the Faust dsp object is
> already in place. Audio buffers from inputs are given to the dsp « compute
> » method, that process them, and produces outputs buffers to be given back
> to the audio layer. The Android specific code using the OpenSL API is
> there:
> https://github.com/grame-cncm/faust/blob/master-dev/architecture/faust/audio/android-dsp.h
>
> If faus2api fits you needs, then it will greatly simplify your design.
> Otherwise you may have to recode a new audio layer yourself (the red part)
> to plug the dsp « compute » method at the appropriate place in the audio
> processing chain.
>
> Stéphane
>
> > Le 4 juin 2019 à 08:37, Romain Michon <rmnmic...@gmail.com> a écrit :
> >
> > Hi Justin,
> >
> > faust2api is your friend:
> https://ccrma.stanford.edu/~rmichon/faustTutorials/#adding-faust-real-time-audio-support-to-android-apps
> >
> > This tutorial is probably slightly outdated but it should help you get
> started. You can also generate APIs for Android using the online editor (
> https://faust.grame.fr/tools/editor/index.html) by choosing the "source"
> target in the export function (click on the truck).
> >
> > Cheers,
> >
> > Romain
> >
> > On Mon, Jun 3, 2019 at 5:54 PM Justin Giannone <jman.giann...@gmail.com>
> wrote:
> > Hey Guys,
> >
> > I am working on a project to integrate generic tunable audio effects
> into Android's AudioFlinger layer for System-wide effects.  I've noticed
> that there are a few off-the-shelf options for generating Android code, but
> I was wondering if anyone had any advice for using Faust in relation to
> AudioFlinger.
> >
> > Is there a way that I can manually call an API for a Faust Effect and
> provide a signal for it to execute on?
> >
> > Thanks - J
> > _______________________________________________
> > Faudiostream-devel mailing list
> > Faudiostream-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/faudiostream-devel
> >
> >
> > --
> > Romain Michon
> > +33 (0)7 67 39 72 40
> >
> > http://grame.fr/~michon
> > _______________________________________________
> > Faudiostream-devel mailing list
> > Faudiostream-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/faudiostream-devel
>
>
_______________________________________________
Faudiostream-devel mailing list
Faudiostream-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel

Reply via email to