For anyone who may have the same issue in the future, I did finally get it to work.

I had to not only add the codecs to global_codec_prefs, but add it to outbound_codec_prefs as well (then I restarted FS -- don't know if a reloadxml would have worked or not).  Here's mine now:

 <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM,H263,H264,H263-1998"/>
 <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM,H263,H264,H263-1998"/>

That got me a video call between registered extensions.  However, the video was blank even though I had full audio.  tcpdump showed that video data was being sent and received, but both video screens said: "Waiting for video".  I tried a couple things like firewalls and NAT ICE/STUN on my own side, then finally tried removing H.263-1998 from both X-Lites to force H.263, and that worked. I had two-way video at that point.  My X-Lite 4 generic doesn't have H.264 support, so I haven't tested that.



--- On Wed, 1/4/12, peter@uringme.com <peter@uringme.com> wrote:

From: peter@uringme.com <peter@uringme.com>
Subject: [Freeswitch-users] X-Lite and Video
To: freeswitch-users@lists.freeswitch.org
Date: Wednesday, January 4, 2012, 2:52 PM

(Apologies to the list owner for originally sending this to the wrong address)


I have two laptops running X-Lite 4.  I have them registered to a FreeSwitch server (latest git) as extensions 7777 and 7778.  I have a dialplan for each (quick and dirty) that just bridges them when one is dialed from the other:

 <extension name="7777">
          <condition field="destination_number" expression="^7777$">
          <action application="bridge" data="sofia/external/7777%test"/>
          </condition>
    </extension>
(and vice-versa for 7778).

I can dial between them just fine for audio calls -- bidirectional audio, etc, no problem.

I'm trying to get video going.  Both X-Lites have H.263 and H.263-1998 enabled in their settings.  Freeswitch has the following in vars.xml:
  <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM,H263,H264,H263-1998"/>

When I try to make a video call from one extension to the other, the calling extension seems to think it's in video, but the called extension doesn't.

INVITE from freeswitch console:
   ------------------------------------------------------------------------
   INVITE sip:7778@test SIP/2.0
   Via: SIP/2.0/UDP 192.168.1.7:50350;branch=z9hG4bK-d8754z-9ea3618224c5cf23-1---d8754z-;rport
   Max-Forwards: 70
   Contact: <sip:7777@68.202.69.172:50350>
   To: <sip:7778@test>
   From: "Peter Test"<sip:7777@test>;tag=a7031d83
   Call-ID: ZDUzZGE1YjUyOTQ2ZGNmZTY0Yjc5ODA5NTE4NDAzMGQ.
   CSeq: 1 INVITE
   Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO
   Content-Type: application/sdp
   Supported: replaces
   User-Agent: X-Lite 4 release 4.1 stamp 63214
   Content-Length: 681

   v=0
   o=- 12970176286658638 1 IN IP4 192.168.1.7
   s=CounterPath X-Lite 4.1
   c=IN IP4 192.168.1.7
   t=0 0
   a=ice-ufrag:20fef6
   a=ice-pwd:0a03863684bc5f16a9c862dcdccdd8eb
   m=audio 58632 RTP/AVP 107 0 8 101
   a=rtpmap:107 BV32/16000
   a=rtpmap:101 telephone-event/8000
   a=fmtp:101 0-15
   a=sendrecv
   a=candidate:1 1 UDP 659136 192.168.1.7 58632 typ host
   a=candidate:1 2 UDP 659134 192.168.1.7 58633 typ host
   m=video 50994 RTP/AVP 34 115
   a=rtpmap:34 H263/90000
   a=fmtp:34 QCIF=2;CIF=2;VGA=2
   a=rtpmap:115 H263-1998/90000
   a=fmtp:115 QCIF=2;CIF=2;VGA=2;I=1;J=1;T=1
   a=sendrecv
   a=candidate:1 1 UDP 659136 192.168.1.7 50994 typ host
   a=candidate:1 2 UDP 659134 192.168.1.7 50995 typ host

I do see freeswitch seeing the audio and video codecs:
2012-01-04 13:44:37.188657 [DEBUG] sofia_glue.c:4683 Audio Codec Compare [PCMU:0:8000:20:64000]/[PCMU:0:8000:20:64000]
2012-01-04 13:44:37.188657 [DEBUG] sofia_glue.c:2800 Set Codec sofia/external/7777@test PCMU/8000 20 ms 160 samples 64000 bits
2012-01-04 13:44:37.188657 [DEBUG] switch_core_state_machine.c:343 (sofia/external/7777@test) State NEW
2012-01-04 13:44:37.188657 [DEBUG] sofia_glue.c:4797 Set 2833 dtmf send/recv payload to 101
2012-01-04 13:44:37.188657 [DEBUG] sofia_glue.c:4856 Video Codec Compare [H263:34]/[H263:34]

However, when freeswitch starts the bridge and calls the far-end party, it doesn't send along video information in the INVITE:

   INVITE sip:7778@68.202.69.172:32834;transport=udp;rinstance=677b87c43ee7970a SIP/2.0
   Via: SIP/2.0/UDP 204.13.175.89:5080;rport;branch=z9hG4bK8jm56tcmZ6p6j2012-01-04
   Max-Forwards: 69
   From: "Peter Test" <sip:7777@204.13.175.89>;tag=ZeZUav5XXat5e
   To: <sip:7778@68.202.69.172:32834;transport=udp;rinstance=677b87c43ee7970a>
   Call-ID: fe64b2f5-b1a6-122f-a187-00144f49eecc
   CSeq: 22515274 INVITE
   Contact: <sip:mod_sofia@204.13.175.89:5080>
   User-Agent: FreeSWITCH-mod_sofia/1.0.head-git-1086cba 2011-05-23 22-51-43 -0500
   Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY
   Supported: timer, precondition, path, replaces
   Allow-Events: talk, hold, refer
   Content-Type: application/sdp
   Content-Disposition: session
   Content-Length: 207
   X-FS-Support: update_display
   Remote-Party-ID: "Peter Test" <sip:7777@204.13.175.89>;party=calling;screen=yes;privacy=off

   v=0
   o=FreeSWITCH 1325690959 1325690960 IN IP4 204.13.175.89
   s=FreeSWITCH
   c=IN IP4 204.13.175.89
   t=0 0
   m=audio 11718 RTP/AVP 0 8 3 101 13
   a=rtpmap:101 telephone-event/8000
   a=fmtp:101 0-16
   a=ptime:20


So, am I missing something?  Do I need to use something other than "bridge" in the dialplan, or do I need to add some variables to be able to pass on the video?  All I'm trying to do is make a video call between two X-Lites that are locally SIP registered to freeswitch.  Because I want to record the video at some point in the future, I don't want to divert the media -- I want it streaming/passing through freeswitch.

When the call is connected, the caller shows a "Waiting for video", but the called doesn't show this.  When I try to start the video, it says "Failed to Start Video".

-----Inline Attachment Follows-----

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
http://www.cudatel.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org