Bug#272259: asterisk: No sound when using H.323 channel

Florian Weimer Florian Weimer <fw@deneb.enyo.de>, 272259@bugs.debian.org
Sun, 19 Sep 2004 22:28:21 +0200


* Kilian Krause:

> Hi Hendrik,
>
> i had also encountered codec issues with asterisk and leaving only gsm
> on the asterisk side gave the intended results. I guess i'll have to
> speak to upstreams about this after we make it into sarge. 
>
> Can you verify that using a gsm-only equipped h323.conf works ok with
> GnomeMeeting (very likely GM is refusing G711 over DSL for bandwidth
> settings)?

Here's the last part of a H.323 trace from Asterisk 0.9.1+1.0RC1-8.
It was generated with the default settings, i.e.:

; You can fine tune codecs here using "allow" and "disallow" clauses
; with specific codecs.  Use "all" to represent all formats.
;
disallow=all
;allow=all              ; turns on all installed codecs
;disallow=g723.1        ; Hm...  Proprietary, don't use it...
allow=gsm               ; Always allow GSM, it's cool :)

in /etc/asterisk/h323.conf.

  0:40.695                 H245:813d2d8      h323neg.cxx(835)   H245    Received open channel: R-101, state=Released
  0:40.695                 H245:813d2d8         h323.cxx(4247)  H323    CreateLogicalChannel - forward channel
  0:40.696                 H245:813d2d8     h323caps.cxx(1877)  H323    FindCapability: audioData
  0:40.696                 H245:813d2d8     h323caps.cxx(836)   H323    Capability tx frames left at 4 as remote allows 4
  0:40.696                 H245:813d2d8     h323caps.cxx(1924)  H323    Found capability: GSM-06.10{sw} <1>
  0:40.696                 H245:813d2d8     h323caps.cxx(831)   H323    Capability rx frames reduced from 7 to 4
  0:40.696                 H245:813d2d8          rtp.cxx(1387)  RTP     Found existing session 1
  0:40.698                 H245:813d2d8     channels.cxx(1048)  H323RTP Receiver created using session 1
  0:40.699                 H245:813d2d8     gsmcodec.cxx(197)   Codec   GSM decoder created
  0:40.699                 H245:813d2d8     channels.cxx(777)   LogChan Bandwidth requested/used = 13.2/0.0 kb/s
  0:40.699                 H245:813d2d8         h323.cxx(4488)  H323    Bandwidth request: -0.0kb/s, available: 10000.0kb/s
  0:40.699                 H245:813d2d8         h323.cxx(4488)  H323    Bandwidth request: +13.2kb/s, available: 10000.0kb/s
  0:40.699                 H245:813d2d8     channels.cxx(952)   H323RTP OnReceivedPDU for channel: R-101
  0:40.699                 H245:813d2d8     h323caps.cxx(836)   H323    Capability rx frames left at 4 as remote allows 4
  0:40.699                 H245:813d2d8          rtp.cxx(1660)  RTP_UDP SetRemoteSocketInfo: session=1 control channel, new=212.9.189.172:5001, local=212.9.189.171:5000-5001, remote=0.0.0.0:0-0
  0:40.700                 H245:813d2d8     channels.cxx(921)   H323RTP OnSendOpenAck
  0:40.700                 H245:813d2d8      h323rtp.cxx(235)   RTP     OnSendingAckPDU
  0:40.700                 H245:813d2d8     channels.cxx(942)   H323RTP Sending open logical channel ACK: sessionID=1
  0:40.700                 H245:813d2d8       h323ep.cxx(2143)  Codec   Could not open sound channel "" for playing: 
  0:40.700                 H245:813d2d8     channels.cxx(1096)  LogChan Receive thread aborted (open fail) for GSM-06.10{sw} <1>
  0:40.701                 H245:813d2d8     channels.cxx(1065)  H323RTP Cleaning up RTP R-101
  0:40.701                 H245:813d2d8          rtp.cxx(1409)  RTP     Releasing session 1
  0:40.701                 H245:813d2d8         h323.cxx(4488)  H323    Bandwidth request: -13.2kb/s, available: 9986.8kb/s
  0:40.701                 H245:813d2d8      h323pdu.cxx(501)   H245    Sending PDU:
  response openLogicalChannelReject {
    forwardLogicalChannelNumber = 101
    cause = masterSlaveConflict <<null>>
  }

Earlier, there's the following data in the log:

  0:40.141                 H245:813d2d8     h323caps.cxx(2139)  H245    Capability merge result:
  Table:
    G.711-ALaw-64k{sw} <7>
    SpeexNarrow-15k{sw} <3>
    iLBC-13k3{sw} <1>
    GSM-06.10{sw} <8>
    MS-GSM{sw} <5>
    iLBC-15k2{sw} <2>
    SpeexNarrow-8k{sw} <4>
    G.726-32k{sw} <9>
    G.711-uLaw-64k{sw} <6>
    UserInput/hookflash <12>
    UserInput/basicString <13>
    UserInput/dtmf <14>
    UserInput/RFC2833 <15>
  Set:
    0:
      0:
        G.711-ALaw-64k{sw} <7>
        SpeexNarrow-15k{sw} <3>
        iLBC-13k3{sw} <1>
        GSM-06.10{sw} <8>
        MS-GSM{sw} <5>
        iLBC-15k2{sw} <2>
        SpeexNarrow-8k{sw} <4>
        G.726-32k{sw} <9>
        G.711-uLaw-64k{sw} <6>
      1:
      2:
        UserInput/hookflash <12>
      3:
        UserInput/basicString <13>
        UserInput/dtmf <14>
        UserInput/RFC2833 <15>

So it seems that there are some matching codecs.