I don't actually have a problem with the new audio API and my own audio driver, the only thing I wanted was to avoid having to modify code in pjproject. But here's what I did: 1. Use the parameter '--enable-ext-sound' when running the configure script. 2. Add the following to config_site.h: "#define PJMEDIA_AUDIO_DEV_HAS_EXTAUDIO 1" 3. Edit user.mak to build the source code for my audio implementation (implementing the function 'pjmedia_ext_factory'). 4. Apply the following patch: --- pjmedia/src/pjmedia-audiodev/audiodev.c (revision 2945) +++ pjmedia/src/pjmedia-audiodev/audiodev.c (working copy) @@ -86,6 +86,10 @@ pjmedia_aud_dev_factory* pjmedia_symb_mda_factory(pj_pool_factory *pf); #endif +#if PJMEDIA_AUDIO_DEV_HAS_EXTAUDIO +pjmedia_aud_dev_factory* pjmedia_ext_factory(pj_pool_factory *pf); +#endif + #define MAX_DRIVERS 16 #define MAX_DEVS 64 @@ -383,6 +387,9 @@ #if PJMEDIA_AUDIO_DEV_HAS_SYMB_MDA aud_subsys.drv[aud_subsys.drv_cnt++].create = &pjmedia_symb_mda_factory; #endif +#if PJMEDIA_AUDIO_DEV_HAS_EXTAUDIO + aud_subsys.drv[aud_subsys.drv_cnt++].create = &pjmedia_ext_factory; +#endif /* Initialize each factory and build the device ID list */ for (i=0; i<aud_subsys.drv_cnt; ++i) { Regards, Dan Shayne O'Neill wrote: > > Sorry for the double mail > > As an alternative, is there a good template driver that a new iphone > driver can be built from. Like a stub with all the callbacks , or > something like that. I might have some time next week I could have try > at at it. > I'm not a great coder (samuels a better coder than I , likely) but I > could at least get a head start on it. > > Note that this would still not solve the problem for 'oddball' platforms > with custom old-school audio drivers. > > Shayne. > > On 15/10/2009, at 12:44 AM, samuel.vinson wrote: > >> >> Hello, >> >> I posted a patch here to resolve your problem, few weeks ago. >> Because in 1.4 branch, the legacy disapeared :-( >> >> Benny could you integrate this patch or fixe the problem, pls. >> >> Regards >> >> Samuel >> >> >> > Message du 14/10/09 17:21 >> > De : "Dan Arrhenius" >> > A : "pjsip list" >> > Copie ? : >> > Objet : Re: [pjsip] Replacing the audio backend in pjsua >> > >> > >> > It didn't work for me to define PJMEDIA_AUDIO_DEV_HAS_LEGACY_DEVICE. >> I should probably >> > make it clear that I'm using pjsua-lib, so I don't initialize the >> audio directly in my code. >> > >> > In audiodev.c there is support for maximum 16(MAX_DRIVERS) audio >> device factories, but >> > they are added and initialized statically, and in my case no driver >> at all is added :-( >> > Might I suggest the ability to dynamically add audio device >> factories, for example >> > 'pjmedia_aud_subsys_add_driver(...)'. >> > >> > Best regards, >> > Dan >> > >> > >> > Benny Prijono wrote: >> > > On Wed, Oct 14, 2009 at 5:45 PM, Dan Arrhenius wrote: >> > >> Hello, >> > >> I've been working with pjproject 1.0.x and want to upgrade to the >> latest >> > >> version. >> > >> How can I replace the audio back-end in pjsua with my own using >> the new >> > >> audio subsystem? With the old version I configured pjproject with >> > >> '--enable-ext-sound' and supplied rules to build the audio >> back-end in >> > >> user.mak. >> > >> >> > >> As I understand it all available audio back-ends are hard-coded in >> > >> audiodev.c (PORTAUDIO, WMME, SYMB_VAS, SYMB_APS, and SYMB_MDA), >> and there is >> > >> no way of dynamically add a new audio driver. Or am I missing >> something? >> > >> Do I have to modify audiodev.c to get my own audio back-end in >> pjsua? I want >> > >> to modify as little code in pjproject as possible to ease >> maintenance. >> > >> >> > >> >> > > >> > > In http://trac.pjsip.org/repos/wiki/Audio_Dev_API there is a guide on >> > > how to access legacy device using the new API (see under >> > > PJMEDIA_AUDIO_DEV_HAS_LEGACY_DEVICE). I have not tested it with >> > > --enable-ext-sound, but it's supposed to work. :) >> > > >> > > Cheers >> > > Benny >> > > >> > > _______________________________________________ >> > > Visit our blog: http://blog.pjsip.org >> > > >> > > pjsip mailing list >> > > pjsip at lists.pjsip.org >> > > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> > > >> > >> > _______________________________________________ >> > Visit our blog: http://blog.pjsip.org >> > >> > pjsip mailing list >> > pjsip at lists.pjsip.org >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> > >> > >> >> >> >> Gratuite, garantie ? vie et d?j? utilis?e par des millions >> d'internautes... >> vous aussi, pour votre adresse e-mail, choisissez laposte.net. >> >> Laposte.net, bien + qu'une messagerie >> >> _______________________________________________ >> Visit our blog: http://blog.pjsip.org >> >> pjsip mailing list >> pjsip at lists.pjsip.org >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > =================================== > Shayne O'Neill Development > Mobile, Web and Business process integration. > shayne.oneill at gmail.com 0400247091 > Ask me about how Alfresco can help your business grow. > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >