[Asterisk-video] 3G phone -> PRI -> asterisk :: cannot get h324m_loopback to work.
Klaus Darilion
klaus.mailinglists at pernau.at
Thu Apr 10 02:35:59 CDT 2008
Hi Leonid!
Could you try if h234m_gw() and echo() works?
regards
klaus
Leonid Berson schrieb:
> Dear team,
>
> I'm a new user on this forum, and I'm tring to test video loopback from
> 3G phone -> PRI -> asterisk. I've started with h324m_loopback()
> feature of app_h324m from sip.fontventa.com <http://sip.fontventa.com>
> intalled in Asterisk SVN-oej-videocaps-r111931M-/trunk ( on Centos 5.1
> i386).
>
> I've successfully compiled libh324m.so and all it's prerequisites.
> Whenever i make a 3G call I've get connected but did not get any
> video/audio back (the mobile phone is freeses on "getting video.."), and
> after ~10 seconds get disconnected. On my CentOS box i'm using Sangoma
> a104d PRI card (wanrouter drives).
>
> Need you help :)
>
> Below please find my debug info:
>
> [root at test2 src]# ldd /usr/local/lib/libh324m.so
> linux-gate.so.1 => (0x0074f000)
> libldap-2.3.so.0 => /usr/lib/libldap-2.3.so.0 (0x00895000)
> liblber-2.3.so.0 => /usr/lib/liblber-2.3.so.0 (0x00623000)
> libldap_r-2.3.so.0 => /usr/lib/libldap_r-2.3.so.0 (0x005b0000)
> libpthread.so.0 => /lib/libpthread.so.0 (0x00faa000)
> libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x002f1000)
> libssl.so.6 => /lib/libssl.so.6 (0x00110000)
> libcrypto.so.6 => /lib/libcrypto.so.6 (0x00e10000)
> libexpat.so.0 => /lib/libexpat.so.0 (0x00155000)
> libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0x00176000)
> libresolv.so.2 => /lib/libresolv.so.2 (0x0021f000)
> libdl.so.2 => /lib/libdl.so.2 (0x00a79000)
> libpt_linux_x86_r.so.1.12.0 =>
> /usr/local/lib/libpt_linux_x86_r.so.1.12.0 (0x0030a000)
> libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00631000)
> libm.so.6 => /lib/libm.so.6 (0x00232000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00259000)
> libc.so.6 => /lib/libc.so.6 (0x00750000)
> /lib/ld-linux.so.2 (0x00aab000)
> libcrypt.so.1 => /lib/libcrypt.so.1 (0x0027d000)
> libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x002ab000)
> libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x008cf000)
> libcom_err.so.2 => /lib/libcom_err.so.2 (0x00265000)
> libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x005f5000)
> libz.so.1 => /usr/lib/libz.so.1 (0x00268000)
> libesd.so.0 => /usr/lib/libesd.so.0 (0x0097f000)
> libaudiofile.so.0 => /usr/lib/libaudiofile.so.0 (0x0071c000)
> libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x002d9000)
> libkeyutils.so.1 => /lib/libkeyutils.so.1 (0x002e2000)
> libasound.so.2 => /lib/libasound.so.2 (0x00989000)
> libselinux.so.1 => /lib/libselinux.so.1 (0x00962000)
> libsepol.so.1 => /lib/libsepol.so.1 (0x00ac6000)
>
> and setup a dialplan in extenstions.conf:
>
> [from-video]
> exten => _.X,1,Answer
> exten => _X.,n,h324m_loopback()
>
>
> In debug i see:
> *CLI> < Protocol Discriminator: Q.931 (8) len=45
> < Call Ref: len= 2 (reference 4330/0x10EA) (Originator)
> < Message type: SETUP (5)
> < [04 03 88 90 a6]
> < Bearer Capability (len= 5) [ Ext: 1 Q.931 Std: 0 Info transfer
> capability: Unrestricted digital information (8)
> < Ext: 1 Trans mode/rate: 64kbps,
> circuit-mode (16)
> < Ext: 1 User information layer 1: H.223
> and H.245 (38)
> < [18 03 a1 83 81]
> < Channel ID (len= 5) [ Ext: 1 IntID: Implicit PRI Spare: 0
> Preferred Dchan: 0
> < ChanSel: Reserved
> < Ext: 1 Coding: 0 Number Specified Channel Type: 3
> < Ext: 1 Channel: 1 ]
> < [6c 0c 01 83 30 35 34 36 33 39 34 33 39 30]
> < Calling Number (len=14) [ Ext: 0 TON: Unknown Number Type (0) NPI:
> ISDN/Telephony Numbering Plan (E.164/E.163) (1)
> < Presentation: Presentation allowed of
> network provided number (3) '0546394390' ]
> < [70 08 c1 35 36 35 30 32 30 30]
> < Called Number (len=10) [ Ext: 1 TON: Subscriber Number (4) NPI:
> ISDN/Telephony Numbering Plan (E.164/E.163) (1) '5650200' ]
> < [7c 03 88 90 a6]
> < IE: Low-layer Compatibility (len = 5)
> < [a1]
> < Sending Complete (len= 1)
> -- Making new call for cr 4330
> -- Processing Q.931 Call Setup
> -- Processing IE 4 (cs0, Bearer Capability)
> -- Processing IE 24 (cs0, Channel Identification)
> -- Processing IE 108 (cs0, Calling Party Number)
> -- Processing IE 112 (cs0, Called Party Number)
> -- Processing IE 124 (cs0, Low-layer Compatibility)
> -- Processing IE 161 (cs0, Sending Complete)
> q931.c:3353 q931_receive: call 4330 on channel 1 enters state 6 (Call
> Present)
> q931.c:2620 q931_call_proceeding: call 4330 on channel 1 enters state 9
> (Incoming Call Proceeding)
> > Protocol Discriminator: Q.931 (8) len=10
> > Call Ref: len= 2 (reference 4330/0x10EA) (Terminator)
> > Message type: CALL PROCEEDING (2)
> > [18 03 a9 83 81]
> > Channel ID (len= 5) [ Ext: 1 IntID: Implicit PRI Spare: 0
> Exclusive Dchan: 0
> > ChanSel: Reserved
> > Ext: 1 Coding: 0 Number Specified Channel
> Type: 3
> > Ext: 1 Channel: 1 ]
> -- Accepting call from '0546394390' to '5650200' on channel 0/1, span 1
> -- Executing [5650200 at from-video:1] Answer("Zap/1-1", "") in new stack
> q931.c:2755 q931_connect: call 4330 on channel 1 enters state 8 (Connect
> Request)
> > Protocol Discriminator: Q.931 (8) len=10
> > Call Ref: len= 2 (reference 4330/0x10EA) (Terminator)
> > Message type: CONNECT (7)
> > [18 03 a9 83 81]
> > Channel ID (len= 5) [ Ext: 1 IntID: Implicit PRI Spare: 0
> Exclusive Dchan: 0
> > ChanSel: Reserved
> > Ext: 1 Coding: 0 Number Specified Channel
> Type: 3
> > Ext: 1 Channel: 1 ]
> -- Executing [5650200 at from-video:2] h324m_loopback("Zap/1-1", "") in
> new stack
> < Protocol Discriminator: Q.931 (8) len=5
> < Call Ref: len= 2 (reference 4330/0x10EA) (Originator)
> < Message type: CONNECT ACKNOWLEDGE (15)
> q931.c:3513 q931_receive: call 4330 on channel 1 enters state 10 (Active)
> < Protocol Discriminator: Q.931 (8) len=9
> < Call Ref: len= 2 (reference 4330/0x10EA) (Originator)
> < Message type: DISCONNECT (69)
> < [08 02 80 90]
> < Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) Spare: 0
> Location: User (0)
> < Ext: 1 Cause: Normal Clearing (16), class = Normal
> Event (1) ]
> -- Processing IE 8 (cs0, Cause)
> q931.c:3620 q931_receive: call 4330 on channel 1 enters state 12
> (Disconnect Indication)
>
>
>
>
>
> I've made further debuggings and have found that :
>
> 1. Frame* H245ChannelsFactory::GetFrame() in
> src/H245ChannelsFactory.cpp:298 returns NULL
> thus no frame has been procceded by:
> while ((frame=H324MSessionGetFrame(id))!=NULL) in app_h324m_loopback
> in app_h324m.c:572.
>
> this means that:
>
> chan->remoteChannel is not set in H245ChannelsFactory::OnEstablishIndication
> in src/H245ChannelsFactory.cpp.
>
> I think that somehow connected to that - no h245m event has been
> triggered on PRI.
>
> Please, let me know if you find anything on this issue.
>
>
> Thank you in advance.
> Leonid
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-video mailing list
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-video
More information about the asterisk-video
mailing list