Hi,

I just bought a bluetooth headset (Logitech mobile freedom) and tried to use 
it with openwengophone. My current efforts resulted in a segfault of 
wengophone, but I'm not sure if I made a mistake.

So my current configuration looks like this:

I added the following to my alsa config (.asoundrc):
===8<===
pcm.headset {
    @args [BDADDR TIMEOUT]

    @args.BDADDR {
        type string
        default "00:0D:44:38:10:2A"
    }

    @args.TIMEOUT {
        type integer
        default 6000
    }

    type        sco
    bdaddr      $BDADDR
    timeout     $TIMEOUT
}

ctl.headset {
    type sco
}
===8<===

I paired my bluetooth adapter with the headset and started headsetd which 
registers the headset as an alsa device (I'm using Debian bluetoth-alsa 
0.5cvs20070908-1). With this configuration I'm able to hear sounds played 
with mplayer, when I explicitly select the headset as the output 
device; e.g. "mplayer -ao alsa:device=headset foo.wav".

As I didn't find the headset as an option in the wengophone config dlg ...
(I think it doesn't show up as with the new kernel (I'm using 2.6.23) the 
headset isn't "advertised" anymore, e.g. cat /proc/asound/cards only outputs 
my on-board sound-card:
===8<===
 0 [I82801DBICH4   ]: ICH4 - Intel 82801DB-ICH4
                      Intel 82801DB-ICH4 with AD1981B at irq 11
 1 [Modem          ]: ICH-MODEM - Intel 82801DB-ICH4 Modem
                      Intel 82801DB-ICH4 Modem at irq 11
===8<===
)
... I tried to set the audio device in the wengophone config file. I a head a 
short look in the source code and tried the following config:
===8<===
<audio.input.deviceid><stringlist>
<elt>ALSA: headset</elt>
<elt>headset</elt>
<elt>DeviceTypeMicrophoneIn</elt>
</stringlist>
</audio.input.deviceid>
<audio.output.deviceid><stringlist>
<elt>ALSA: headset</elt>
<elt>headset</elt>
 <elt>DeviceTypeWaveOut</elt>
</stringlist>
</audio.output.deviceid>
<audio.ringer.deviceid><stringlist>
<elt>ALSA: headset</elt>
<elt>default</elt>
<elt>DeviceTypeWaveOut</elt>
</stringlist>
</audio.ringer.deviceid>
===8<===

When I now try to make a test call (the option in the config dlg) I hear a 
short sound on my headset and then get a segfault.

headsetd-output:
===8<===
headsetd[5077]: Changing state: Connected-->Ready
headsetd[5077]: Changing state: Ready-->Opening
headsetd[5077]: SCO channel opened handle=0x002c mtu=64
headsetd[5077]: Changing state: Opening-->Streaming
headsetd[5077]: Headset disconnected as SCO socket died
headsetd[5077]: Changing state: Streaming-->ZombieAppl
===8<===
wengophone-output (gdb bt):
===8<===
sVoIP_phapi_handle_ok_in
incoming OK message 1 0 (nil) 0
rtp_session_new: LITTLEENDIAN
Jitter in ts units 480:
[New Thread 0xafcc2b90 (LWP 10005)]
Timer: pthread_create: Success
Couldn't find coded with id 20
(debug) 16:27:37 void 
SipCallbacks::phoneCallStateChangedEventHandler(SipWrapper&, int, 
EnumPhoneCallState::PhoneCallState, const std::string&): callProgress: 
callId=1 state=3 from=<sip:[EMAIL PROTECTED]>;tag=as5c9e0695
(debug) 16:27:37 virtual void PhoneLine::setPhoneCallState(int, 
EnumPhoneCallState::PhoneCallState, const SipAddress&): call state changed 
callId=1 state=PhoneCallStateTalking from=sip:[EMAIL PROTECTED]
(debug) 16:27:37 void PhoneCall::setState(EnumPhoneCallState::PhoneCallState): 
PhoneCallState=3
(debug) 16:27:37 void PhoneCall::setState(EnumPhoneCallState::PhoneCallState): 
call state changed callId=1 state=PhoneCallStateTalking

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xafcc2b90 (LWP 10005)]
0xb77265cb in ph_downsample (rctx=0x0, framebuf=0xafcc1b30, framesize=160)
    at /tmp/buildd/wengophone-2.1.2.dfsg0/wifo/phapi/phresample.c:122
122     /tmp/buildd/wengophone-2.1.2.dfsg0/wifo/phapi/phresample.c: No such 
file or directory.
        in /tmp/buildd/wengophone-2.1.2.dfsg0/wifo/phapi/phresample.c
Current language:  auto; currently c
(gdb) bt
#0  0xb77265cb in ph_downsample (rctx=0x0, framebuf=0xafcc1b30, framesize=160)
    at /tmp/buildd/wengophone-2.1.2.dfsg0/wifo/phapi/phresample.c:122
#1  0xb7722bc6 in ph_encode_and_send_audio_frame (stream=0x8a7e918, 
recordbuf=0xafcc1b30, framesize=320)
    at /tmp/buildd/wengophone-2.1.2.dfsg0/wifo/phapi/phmedia-audio.c:1380
#2  0xb772542d in ph_audio_rec_cbk (stream=0x8a7e918, buf_dataleft=0xafcc1b30, 
size_dataleft=640)
    at /tmp/buildd/wengophone-2.1.2.dfsg0/wifo/phapi/phmedia-audio.c:1573
#3  0xb7725648 in ph_audio_io_thread (p=0x8a7e918)
    at /tmp/buildd/wengophone-2.1.2.dfsg0/wifo/phapi/phmedia-audio.c:1639
#4  0xb777fd15 in cgt_timer_thread (parg=0x8a8a2b0)
    
at 
/tmp/buildd/wengophone-2.1.2.dfsg0/libs/timer/src/clock_gettime/impl_timer.c:122
#5  0xb6d1146b in start_thread () from /lib/i686/cmov/libpthread.so.0
#6  0xb67dd4de in clone () from /lib/i686/cmov/libc.so.6
(gdb)   
===8<===

Now I'm stuck, so thanks for any hint you can give me how to proceed.

Cheers,
Johannes
_______________________________________________
Wengophone-devel mailing list
[email protected]
http://dev.openwengo.com/mailman/listinfo/wengophone-devel

Reply via email to