環境:
windows10_x64
python3.9_x64
pjsua-2.10
vs2015
pjsua編譯參考這里: https://www.cnblogs.com/MikeZhang/p/pjsip20210116.html
pjsua默認系結的python版本是python 2.4,使用起來有諸多限制,希望可以使用python3呼叫pjsua的庫實作軟電話的基礎功能,
編譯python_pjsua
1、替換代碼
官方給的代碼不支持python3,需要使用第三方代碼:
https://github.com/mgwilliams/python3-pjsip.git
下載之后,替換該目錄 pjsip-apps/src/python
2、修改配置
為防止后續報錯,打開 pjsip-apps\src\python\_pjsua.def檔案,將init_pjsua改為PyInit__pjsua
3、添加python3編譯依賴
打開專案選擇,python_pjsua 右鍵-屬性
添加include路徑

添加lib依賴

修改依賴項 python24.lib 為python39.lib

4、如果報錯LNK1112: 模塊計算機型別“x64”與目標計算機型別“x86”沖突
修改聯結器里面的Target Machine為X64,需要注意同步修改依賴,

5、添加額外lib庫,防止鏈接出錯
檔案 : _pjsua.c
添加代碼:
#pragma comment(lib, "msvcrtd.lib")
#pragma comment(lib, "vcruntimed.lib")
#pragma comment(lib, "ucrtd.lib")
#pragma comment(lib, "ole32.lib")
6、執行編譯
成功后再pjsip-apps/lib目錄下有_pjsua.pyd檔案,將其與pjsip-apps/src/python/pjsua.py檔案一起放到python3.9 目錄下/Lib/site-packages目錄下
或者放在需要參考的目錄里面

7、測驗



8、相關資源
python3.9_x64
python3-pjsua.7z
原始碼及預編譯檔案


本文涉及完整代碼及資源下載地址:
https://pan.baidu.com/s/1n3xcEIZYtPQt9cv70Loffw
可關注微信公眾號(聊聊博文)后回復 2021101001 獲得提取碼,
微信公眾號:
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/308240.html
標籤:其他
