本文目錄一覽:
pjsip庫的sample怎麼用
第一步是生成 pjsip 為 Android (步驟為 Ubuntu Linux) 的源代碼:
1.設置 ANDROID_NDK_ROOT 環境變量設置為您 NDK 根文件夾。
2.轉到 pjsip 2.x 文件夾並創建 pjlib/include/pj/config_site.h 包括 config_site_sample.h ( #include pj/config_site_sample.h )
3.運行./configure-android
4.運行make clean make depend make
之後這些步驟,你將有幾個靜態庫中的幾個文件夾。我建議將它們分組相同的文件夾 (最好在您的項目中) 中的:
mkdir your_project_path/pjsip_libs
find . -name *.a | xargs -I % cp % your_project_path/pjsip_libs/
一旦你的所有庫,您需要將這些庫添加到您的項目 Android.mk 文件,這是由包括一個新的模塊節每個圖書館。此模塊部分應該是一樣的東西:
include $(CLEAR_VARS)
LOCAL_MODULE := pjsua-arm-unknown-linux-androideabi
LOCAL_SRC_FILES := $(MY_PJLIB_PATH)/libpjsua-arm-unknown-linux-androideabi.a
include $(PREBUILT_STATIC_LIBRARY)
,你其實是一節中構建您的 JNI 項目的源代碼,所有模塊都添加到您的靜態庫的引用:
LOCAL_STATIC_LIBRARIES := pjsua-arm-unknown-linux-androideabi …
這將包括 pjsip 的引用加入您的 JNI 庫。現在,您需要配置 pjsip UA 實例。
你有一個關於 init 和開始的解釋 pjsip 的 UA (pjsua) 在 pjsip/include/pjsua-lib/pjsua.h 但要遵循的主要步驟是:
1.創建一個具有 UA 實例pjsua_create
2.創建一個工作線程與pj_thread_create
3.UA 實例的設置的默認配置:
pjsua_config cfg 樁 ;pjsua_logging_config log_cfg ;pjsua_media_config media_cfg ;
pj_cli_cfg_default(app_config.cli_cfg.cfg) ;pjsua_logging_config_default(log_cfg) ;pjsua_media_config_default(media_cfg) ;
4.初始化堆棧與pjsua_init
5.啟動與堆棧pjsua_start
從這裡,你有充足的配置選項 (日誌、 媒體、 交通工具等)
您可以找到基本 PJSIP 教程在這裡,和裏面 pjsip 的源的根路徑,你有一個基本 (但不夠完整,基本的 SIP 使用情況) 在:pjsip-apps/src/samples/simple_pjsua.c
編輯:在生成時在 pjsip 應用程序的 android 項目,你可以面臨一個問題,因為 pjsua app 不生成默認情況下,對一般生成 (更具體地說,pjsua: 目標不包括所有上: 在 pjsip-應用程序/生成/生成文件的目標)。若要修復這只是轉到 pjsip-應用程序/創建和運行:
使 pjsua
這將創建在正確的對象文件: pjsip-apps/build/output/pjsua-arm-unknown-linux-androideabi/ (需要構建 android 樣本時)。
一旦你所有相應的對象文件,您可以在 pjsip-應用程序/src/pjsua/android 系統再次運行 ndk 生成
linux 中pjsip中怎麼增加音頻編碼方式g729
第一步是生成 pjsip 為 Android (步驟為 Ubuntu Linux) 的源代碼:
設置 ANDROID_NDK_ROOT 環境變量設置為您 NDK 根文件夾。
2.轉到 pjsip 2.x 文件夾並創建 pjlib/include/pj/config_site.h 包括 config_site_sample.h ( #include pj/config_site_sample.h )
3.運行./configure-android
4.運行make clean make depend make
之後這些步驟,將有幾個靜態庫中的幾個文件夾。建議將它們分組相同的文件夾 (最好在您的項目中) 中的:
mkdir your_project_path/pjsip_libs
find . -name *.a | xargs -I % cp % your_project_path/pjsip_libs/
一旦自己的所有庫,您需要將這些庫添加到您的項目 Android.mk 文件,這是由包括一個新的模塊節每個圖書館。此模塊部分應該是一樣的東西:
include $(CLEAR_VARS)
LOCAL_MODULE := pjsua-arm-unknown-linux-androideabi
LOCAL_SRC_FILES := $(MY_PJLIB_PATH)/libpjsua-arm-unknown-linux-androideabi.a
include $(PREBUILT_STATIC_LIBRARY)
,其實是一節中構建您的 JNI 項目的源代碼,所有模塊都添加到您的靜態庫的引用:
LOCAL_STATIC_LIBRARIES := pjsua-arm-unknown-linux-androideabi
這將包括 pjsip 的引用加入您的 JNI 庫。現在,您需要配置 pjsip UA 實例。
有一個關於 init 和開始的解釋 pjsip 的 UA (pjsua) 在 pjsip/include/pjsua-lib/pjsua.h 但要遵循的主要步驟是:
創建一個具有 UA 實例pjsua_create
2.創建一個工作線程與pj_thread_create
3.UA 實例的設置的默認配置:
pjsua_config cfg 樁 ;pjsua_logging_config log_cfg ;pjsua_media_config media_cfg ;
pj_cli_cfg_default(app_config.cli_cfg.cfg) ;pjsua_logging_config_default(log_cfg) ;pjsua_media_config_default(media_cfg) ;
4.初始化堆棧與pjsua_init
5.啟動與堆棧pjsua_start
從這裡,有充足的配置選項 (日誌、 媒體、 交通工具等)
您可以找到基本 PJSIP 教程在這裡,和裏面 pjsip 的源的根路徑,有一個基本 (但不夠完整,基本的 SIP 使用情況) 在:pjsip-apps/src/samples/simple_pjsua.c
編輯:在生成時在 pjsip 應用程序的 android 項目,可以面臨一個問題,因為 pjsua app 不生成默認情況下,對一般生成 (更具體地說,pjsua: 目標不包括所有上: 在 pjsip-應用程序/生成/生成文件的目標)。若要修復這只是轉到 pjsip-應用程序/創建和運行:
使 pjsua
這將創建在正確的對象文件: pjsip-apps/build/output/pjsua-arm-unknown-linux-androideabi/ (需要構建 android 樣本時)。
一旦所有相應的對象文件,您可以在 pjsip-應用程序/src/pjsua/android 系統再次運行 ndk 生成
pjsua和pjsua2的區別
PJSUA是一個開源的命令行SIP用戶代理(軟電話),用PJSIP協議,PJNATH,和PJMEDIA實現。 它雖然只有很簡單的命令行界面,但是功能齊全。
PJSUA2是PJSUA API以上的面向對象抽象。
它為構建會話發起協議(SIP)多媒體用戶代理應用程序(也稱為IP / VoIP軟電話)提供高級API。它將信令,媒體和NAT穿越功能結合到易於使用的呼叫控制API,帳戶管理,好友列表管理,在線狀態和即時消息中,以及多媒體功能,如本地會議,文件流,本地播放和語音錄製和強大的NAT穿越技術,利用STUN,TURN和ICE。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/237249.html
微信掃一掃
支付寶掃一掃