[pjsip] Porting to Maemo

Mathieu Monney zittix_all at xwaves.net
Wed Apr 2 13:14:58 EDT 2008


I'm using the latest Chinook SDK from Nokia and there is Alsa support in 
it. I'm actually using the Nokia N810 and there is precompiled alsa 
libraries in it.
I'm currently using release 0.8 of PJSIP. The audio problem of maemo is 
that Alsa driver for maemo device is an alsa plugin which is very bad 
written and it doesn't support mmap'ing and PortAudio is using mmap'ing. 
That's why when you launch PJSIP there is no audio device found !
I have attached my current very draft driver.
To compile PJSIP for maemo just log in into scratchbox. Extract the 
attached file in a folder and do 'make'. It will download the necessary 
file and apply the patch and configure PJSIP for Maemo device.
There is a problem if you try to compile the Maemo sound driver for a 
standard host linux system. It will compile just fine but you will 
experiment some segfault due to error in some buffer part of my code. I 
warn it's a very drafty driver which I am currently developing for a 
project at my university. It should be improved in the following month. 
My goal is to use gstreamer instead of alsa but it is not very handy for 
this kind of operation.

Please report if it is working for your device (if it is different than 
810) :-)..

Thank you


Michael CHRISTOPHER a écrit :
> Hello Mathieu,
> An Wed, Apr 02, 2008, Mathieu MONNEY schrieb:
>> An Wed, Apr 02, 2008, Michael CHRISTOPHER schrieb:
>>> An Wed, Apr 02, 2008, Benny PRIJONO schrieb:
>>>> On Tue, Apr 1, 2008 at 10:18 PM, Michael CHRISTOPHER wrote:
>>>>>  [...]
>>>>>  I'm wondering if its worth the effort to port portaudio to
>>>>>  gstreamer (without OSS/ALSA) and debug the TCP transport. The
>>>>>  registrar problem could be easier, namely...
>>>> No OSS/ALSA? Sounds like trouble indeed. Rather than porting
>>>> PortAudio, I think it would be lot easier to create a sound device
>>>> abstraction for pjmedia. The API is whole lot simpler, and there is a
>>>> ready to use template for new implementation (namely nullsound.c).
>>> Although it appeals to have portaudio for other projects as well,
>>> I'll look into abandoning it and developing nullsound.c instead.
>>> With some luck I'll have a gstreamified audio device when finished.
>> I'm currently porting PJSIP to maemo too. I have written an ALSA
>> driver using read/write mode (because PortAudio doesn't support
>> read/write mode on alsa) for PJMEDIA it is quite stable now but I
>> have still some huge latency problem (like 400ms) but I haven't
>> experimented any network problem ! It compiles just fine ! My first
>> goal was to try to develop a GStreamer driver for PJMedia but I have
>> no idea how exactly gstreamer work and how to get/put raw data
>> to/from gstreamer. If you need my very drafty alsa driver code I
>> can send it to you.
> At first I though the Maemo framework supported ALSA and ESD, but
> somebody wrote that Nokia had dropped ALSA support in Maemo 2.2.
> I don't see any ALSA libraries libasound.* on the Maemo 2.2 or the
> Nokia 770 tablet with the latest OS either, so my question for you
> is how did you manage to use ALSA at all? When I run pjsua it fails
> with messages such as 'no audio device found'. The pa_devs(1) test
> from PortAudio reports no available devices as well.
> In any case, I'd be happy to see your work. If it works on my
> tablet, I could go on to port other parts of the PJProject. If you
> send your code, indicate which version of PJProject you are working
> with, and how to apply the patch (patch -p0?).
> If you like, you could upload your code or paste it on a message
> to this list so that others can enjoy PJSua on Maemo. Whatever the
> case, please avoid posting HTML if you can.
> Regards,
> Michael
> _______________________________________________
> 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

-------------- next part --------------
A non-text attachment was scrubbed...
Name: maemo_driver.tar.gz
Type: application/x-gzip
Size: 8620 bytes
Desc: not available
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080402/2b9bd542/attachment.gz>

More information about the pjsip mailing list