MyJingle编译文档

MyJingle是基于LibJingle的Win/MFC示例应用,用于实现P2P语音通讯。本文档详细介绍了如何编译MyJingle,包括安装VC 8、DirectX SDK和Platform SDK,设置编译环境,并解决LIBCMT库冲突问题。同时,还提到MyJingle仅能连接Gmail,若要连接其他XMPP服务端,需要修改saslplainmechanism.h文件。
摘要由CSDN通过智能技术生成

1.MyJingle简介

MyJingle只是一个LibJingle的Win/MFC的DEMO.LibJingle又是什么?LibJingle是GOOGLE的一个开源项目.用于GOOGLE TALK的语音和P2P库.

简单来说,MyJingle利用LibJingle和一个叫Speex的音频编码,组成一个P2P的语音通讯软件.当然他还依赖XMPP作为服务端进行一些连接通讯.详细介绍可以上官方网站.

MyJingle:http://www.bluehands.de/software/beat/myjingle/

 LibJingle:http://code.google.com/apis/talk/index.html

2.准备工作

  1. 安装VC 8(在VS2005里面).
  2. 安装Microsoft DirectX SDK (February 2006)
  3. 安装Microsoft Platform SDK for Windows Server 2003 R2

3.设置,编译

用VC打开MyJingle.sln,需要先设置两个lib和inclue
工具-选项-项目和解决方案,
选择"包含文件"添加
E:/Microsoft DirectX SDK (February 2006)/Include
E:/Microsoft Platform SDK for Windows Server 2003 R2/Include
选择"库文件"添加
E:/Microsoft DirectX SDK (February 2006)/Lib/x86
E:/Microsoft Platform SDK for Windows Server 2003 R2/Lib

好了,现在可以编译通过了.
但是会提示LIBCMT库冲突.
然后在MyJingle项目右键-属性-配置属性-链接器-输入,"忽略特定库"那里输入LIBCMT

4.修改

MyJingle只能连上Gmail,其他XMPP的服务端连不上,需要修改一下代码.

修改  saslplainmechanism.h文件

  virtual XmlElement * StartSaslAuth() {
 std::string  sUser;
    int i = user_jid_.Str().find("@");
    sUser = user_jid_.Str().substr(0,i);

    // send initial request
    XmlElement * el = new XmlElement(QN_SASL_AUTH, true);
    el->AddAttr(QN_MECHANISM, "PLAIN");

    FormatXmppPassword credential;
    credential.Append("/0", 1);
    //credential.Append(user_jid_.Str());
 credential.Append(sUser);
    credential.Append("/0", 1);
    credential.Append(&password_);
    el->AddText(Base64EncodeFromArray(credential.GetData(), credential.GetLength()));
    return el;
  }

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值