• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            老大不傷悲

             

            最近研究libjingle的經驗總結

            最近有一個語言項目方面的調研,需要評估一下libjingle,所以研究了半個月的libjingle,現在把經驗總結如下(如有不對,請不吝賜教):
            1、libjingle庫所帶例子只支持rtpdump文件傳遞語音,不支持實時語音通話;
            2、最新的幾個版本的libjingle庫去掉了GIPS voiceEngine的相關部分(可能是因為google收購了GIPS);
            3、那么在windows下要支持實時語音通話,可以用linphone media engine,不過這個庫是linux下的,所以遷移過來會費不少精力(不知有沒有更好的方法):
            要想在windows下用linphone media engine, 首先,按照README的說明添加如下代碼:
            Add the following lines into the libjingle.scons file.
                In the "talk.Library(env, name = "libjingle",..." section, you need to add:
                  "HAVE_LINPHONE",
                  "HAVE_SPEEX",
                  "HAVE_ILBC",
                to the "cppdefines = [".
                add:
                 "session/phone/linphonemediaengine.cc",
                to the "srcs = [ ..."

                add:     
                  "third_party/mediastreamer/include",
                  "third_party/ortp/include"
                to the "includedirs = [ ..."

                In the "talk.App(env, name = "call",..." section, you need to add:
                  "ortp"
                  "mediastreamer",
                to the "libs = [".
             
            然后,
            訪問http://download.savannah.gnu.org/releases-noredirect/linphone/ortp/sources/下載ortp代碼,
            訪問http://download.savannah.gnu.org/releases-noredirect/linphone/mediastreamer/下載mediastreamer,
            并復制到libjingle庫的third_party中,文件夾名需與上一步添加的路徑名一致。

            在windows下需要dll,所以還得編譯兩個庫的dll,方法轉自:
            http://www.cnblogs.com/joiner/archive/2010/06/18/1759941.html Mingw&msys的手動安裝;
            http://www.cnblogs.com/joiner/archive/2010/06/18/1759943.html Mingw&msys環境中編譯mediastreamer2和ortp。
            接著,
            copy .lib文件到talk\build\dbg\lib目錄,
            copy .dll到talk\build\dbg\staging目錄。

            然后,修改libjingle庫的socketaddress.cc里的一個bug,參考http://mysuperbaby.iteye.com/blog/910830
            增加紅色,解決域名轉IP的問題:
            bool SocketAddress::StringToIP(const std::string& hostname, uint32* ip) {
              in_addr addr;
              struct hostent *host;
              if (isalpha(hostname.c_str()[0]))
              {
                        host = gethostbyname(hostname.c_str());
                        if (host == NULL)
                        {
                            printf("gethostbyname error\n");
                            return false;
                        }
                        memcpy(&addr.s_addr,   host->h_addr_list[0],host->h_length);
              }
              else if (inet_aton(hostname.c_str(), &addr) == 0)
              {  
                  return false;
              }
              *ip = NetworkToHost32(addr.s_addr);
              return true;
            }

            按照README的方法,編譯。

            通過后運行call.exe,與Gtalk通話。

            如果音質不好,斷斷續續,可以在mingw&msys下,
            移除 winsnd2.c 添加winsnd3.c 重新編譯ortp庫。

            還有就是關于receiving RTCP packet: Connection reset by peer. 參考http://mysuperbaby.iteye.com/blog/911159
            這篇文章,也沒有解決,不過不影響音質。

            posted on 2011-08-04 11:59 長風 閱讀(7239) 評論(10)  編輯 收藏 引用

            評論

            # re: 最近研究libjingle的經驗總結[未登錄] 2011-10-08 21:55 思琦

            您好,想請教您關于libjingle的問題,qq號398899714,希望可以聯系您  回復  更多評論   

            # re: 最近研究libjingle的經驗總結 2011-10-09 15:45 長風

            @思琦
            什么問題??  回復  更多評論   

            # re: 最近研究libjingle的經驗總結 2011-10-09 21:16 思琦

            @長風
            就是編譯出來的不能用,出現無法定位程序輸入點PropVariantClear于動態鏈接庫libortp-8.dll,然后查找了libortp-8.dll,并沒有PropVariantClear,不知道該怎么辦,還有,能不能將您編譯好的libjingle,windows下用linphone media engine的代碼發給我  回復  更多評論   

            # re: 最近研究libjingle的經驗總結 2011-10-17 14:11 長風

            @思琦
            你用的是哪個版本?
            我用的是0.5.7,我改的就是上面寫的這些啊  回復  更多評論   

            # re: 最近研究libjingle的經驗總結[未登錄] 2011-10-18 08:39 思琦

            哦,我用的是0.5.8  回復  更多評論   

            # re: 最近研究libjingle的經驗總結[未登錄] 2011-11-03 09:35 思琦

            @思琦
            那你能把你改的0.5.8的代碼發給我么  回復  更多評論   

            # re: 最近研究libjingle的經驗總結[未登錄] 2011-11-04 15:39 思琦

            發錯了,是0.5.7版本的代碼  回復  更多評論   

            # re: 最近研究libjingle的經驗總結 2011-12-25 16:09 MengQiang

            您好!我編譯成功了libjingle + linphone,現在call端說話,gTalk端可以聽到,但是gTalk端說話,call端聽不到。如果是兩個call端互相說話,兩方都聽不到,請問,這可能是什么原因?非常感謝!!  回復  更多評論   

            # re: 最近研究libjingle的經驗總結[未登錄] 2013-05-14 12:20 zzz

            您好,windows下可用GIPS VioceEngine Lite~官網說的,我現在編譯出現MediaEngineFactory的Create出錯,這個方法是要自己實現嗎?麻煩加下我的QQ:173613191.因為我沒有注冊這個網站~看不到您的回復~  回復  更多評論   

            # re: 最近研究libjingle的經驗總結 2013-09-16 18:16 jin

            您好,我調試了好久,還是報各種錯誤,你發一個可運行的工程給我嗎?謝謝!
            郵箱:jinhailang2008@gmail.com  回復  更多評論   

            導航

            統計

            常用鏈接

            留言簿(2)

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            精品久久久久中文字| 国产成人久久777777| 日韩AV无码久久一区二区| 久久精品国产99国产精品亚洲| 中文字幕无码av激情不卡久久| 一本色道久久综合亚洲精品| 久久精品男人影院| 久久综合亚洲鲁鲁五月天| 欧美激情精品久久久久| 99久久夜色精品国产网站 | 国产国产成人久久精品| 一本久道久久综合狠狠躁AV| 久久66热人妻偷产精品9| 一级做a爰片久久毛片免费陪| 99久久国语露脸精品国产| 99久久精品免费看国产一区二区三区| 久久A级毛片免费观看| av色综合久久天堂av色综合在| 久久免费精品视频| 国内精品久久久久伊人av| 囯产极品美女高潮无套久久久| 久久本道久久综合伊人| 亚洲国产精品久久久久网站 | 18禁黄久久久AAA片| 久久精品18| 成人a毛片久久免费播放| 久久精品人人做人人爽97| 久久精品国产日本波多野结衣| 久久夜色撩人精品国产| 久久国产精品一区| 久久久WWW成人| 久久AⅤ人妻少妇嫩草影院| 国产福利电影一区二区三区久久久久成人精品综合 | 一本一本久久A久久综合精品 | 久久精品国产2020| 色综合久久久久无码专区| 亚洲国产另类久久久精品小说 | 久久久久国产精品人妻| 伊人久久亚洲综合影院| 久久天天躁狠狠躁夜夜不卡| 久久久国产打桩机|