Posted: Thu Apr 10, 2008 6:44 am Post subject: [Asterisk-video] 3G phone -> PRI -> asterisk :: cannot get h
Hi Leonid!
Could you try if h234m_gw() and echo() works?
regards
klaus
Leonid Berson schrieb:
Quote:
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).
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@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@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.
*CLI> -- Accepting call from '0546394390' to '5650200' on channel 0/1, span 1
-- Executing [5650200@from-video:1] Answer("Zap/1-1", "") in new stack
-- Executing [5650200@from-video:2] h324m_gw("Zap/1-1", "chicken@3gp_videos") in new stack
[Apr 13 13:43:57] WARNING[3978]: channel.c:752 ast_best_codec: Don't know any of 0x2000 formats
-- Executing [chicken@3gp_videos:1] Echo("Local/chicken@3gp_videos-b3ce;2", "") in new stack
On Thu, Apr 10, 2008 at 10:35 AM, Klaus Darilion <klaus.mailinglists@pernau.at (klaus.mailinglists@pernau.at)> wrote:
Quote:
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@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@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@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
>
>
>
You can post new topics in this forum You can reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum