[Gta04-owner] QtMoko mic volume

Neil Jerram neil at ossau.homelinux.net
Thu Aug 23 00:50:07 CEST 2012


Radek Polak <psonek2 at seznam.cz> writes:

> On Friday, August 10, 2012 11:35:26 PM Boudewijn wrote:
>
>> I did and made a call from another device to GTA04 (A3, so software
>> routing). I echo'd some hints about what was happening in between; the
>> first few lines are the last bit from a previous call
>> 
>> Aug 10 20:37:11 neo Qtopia: AudioState :  SpeakerAudioState::leave()
>> Aug 10 20:37:11 neo Qtopia: AudioState :  SpeakerAudioState::enter()
[...]

> The log looks ok - it works as supposed. So i can imagine only some HW problem 
> or wrong state file.

I also have A3 and am seeing that my voice does not get to the other end
of a phone call.  I just captured a log and see something slightly
different from Boudewijn:

Aug 22 23:32:05 neo Qtopia: AudioState :  Finding highest priority state for domain: "Phone" and capability: 2 
Aug 22 23:32:05 neo Qtopia: AudioState :  AudioState found was: QAudioStateInfo( true , "Phone" , "PhoneEarpiece" , "Earpiece" , 100 ) 
Aug 22 23:32:05 neo Qtopia: AudioState :  SpeakerAudioState::leave() 
Aug 22 23:32:05 neo Qtopia: AudioState :  EarpieceAudioState::enter() isPhone true 
Aug 22 23:32:05 neo Qtopia: AudioState :  alsactl  ("-f", "/opt/qtmoko/etc/alsa/gsmearpiece.state", "restore") 
Aug 22 23:32:05 neo Qtopia: AudioState :  starting gsm-voice-routing pid  1656 
Aug 22 23:32:05 neo Qtopia: AudioState :  QAudioStateManager::stateChanged 
Aug 22 23:32:05 neo Qtopia: AudioState :  From State: QAudioStateInfo( true , "Media" , "MediaSpeaker" , "Speaker" , 100 ) QFlags(0x2) 
Aug 22 23:32:05 neo Qtopia: AudioState :  To State: QAudioStateInfo( true , "Phone" , "PhoneEarpiece" , "Earpiece" , 100 ) QFlags(0x2) 
Aug 22 23:32:05 neo Qtopia: gsm-voice-routing started
Aug 22 23:32:08 neo Qtopia: voice routing started
Aug 22 23:32:08 neo Qtopia: r0 (default): overrun occured: Broken pipe
Aug 22 23:32:08 neo Qtopia: p0 (default): underrun occured: Broken pipe
Aug 22 23:33:03 neo Qtopia: AudioState :  Finding highest priority state for domain: "Media" and capability: 2 
Aug 22 23:33:03 neo Qtopia: AudioState :  AudioState found was: QAudioStateInfo( true , "Media" , "MediaSpeaker" , "Speaker" , 100 ) 
Aug 22 23:33:03 neo Qtopia: AudioState :  EarpieceAudioState::leave() 
Aug 22 23:33:03 neo Qtopia: AudioState :  terminating gsm-voice-routing pid  1656 
Aug 22 23:33:03 neo Qtopia: gsm-voice-routing ending - signal 15
Aug 22 23:33:03 neo Qtopia: AudioState :  SpeakerAudioState::enter() isPhone false 
Aug 22 23:33:03 neo Qtopia: AudioState :  alsactl  ("-f", "/opt/qtmoko/etc/alsa/speaker.state", "restore") 
Aug 22 23:33:03 neo Qtopia: AudioState :  QAudioStateManager::stateChanged 
Aug 22 23:33:03 neo Qtopia: AudioState :  From State: QAudioStateInfo( true , "Phone" , "PhoneEarpiece" , "Earpiece" , 100 ) QFlags(0x2) 
Aug 22 23:33:03 neo Qtopia: AudioState :  To State: QAudioStateInfo( true , "Media" , "MediaSpeaker" , "Speaker" , 100 ) QFlags(0x2) 

I think what's different here are the "r0 overrun" and "p0 underrun"
lines.  Is the implication of these lines that microphone capture stops
3 seconds into the call?  What could cause that overrun/underrun?

> Maybe you can now try to restore the recording alsa state and try arecord 
> capture some sound if that works.

It looks like this works fine, as the recording level meter clearly
indicates sound:

root at neo:/var/log# alsactl -f /opt/qtmoko/etc/alsa/gsmearpiece.state restore
root at neo:/var/log# arecord -vv -fdat foo.wav
Recording WAVE 'foo.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
Plug PCM: Hardware PCM card 0 'gta04' device 0 subdevice 0
Its setup is:
  stream       : CAPTURE
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 24000
  period_size  : 6000
  period_time  : 125000
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6000
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 24000
  silence_threshold: 0
  silence_size : 0
  boundary     : 1572864000
  appl_ptr     : 0
  hw_ptr       : 0
#################             +                    | 59%^C
Aborted by signal Interrupt...

In summary, on my A3, and with v47,

- the state file looks good

- the overrun and underrun logs look as though they might be the
  culprit.

Any ideas?

Thanks,
        Neil


More information about the Gta04-owner mailing list