ios - PJSIP IOS 视频通话窗口 ID 始终为 PJSUA_INVALID_ID
问题描述
我是 PJSIP 的新手,我想在 IOS 设备上实现 PJSIP。我确实成功连接了来电和去电。但我的视频流的窗口 ID 始终是 PJSUA_INVALID_ID。这是我的示例快速代码:
//on init() function
acc_cfg.vid_in_auto_show = pj_true
acc_cfg.vid_out_auto_transmit = pj_true
acc_cfg.vid_cap_dev = PJMEDIA_VID_DEFAULT_CAPTURE_DEV.rawValue
acc_cfg.vid_rend_dev = PJMEDIA_VID_DEFAULT_RENDER_DEV.rawValue
var orient = PJMEDIA_ORIENT_ROTATE_90DEG;
pjsua_vid_dev_set_setting(
PJMEDIA_VID_DEFAULT_CAPTURE_DEV.rawValue,
PJMEDIA_VID_DEV_CAP_ORIENTATION,
&orient,
pj_true
)
// Add account
pjsua_acc_add(&acc_cfg, pj_true, nil);
private func on_call_media_state(call_id: pjsua_call_id) {
var call_info = pjsua_call_info();
guard pjsua_call_get_info(call_id, &call_info) == PJ_SUCCESS.rawValue else {return}
let video_index = pjsua_call_get_vid_stream_idx(call_id)
let medias: [pjsua_call_media_info] = tupleToArray(tuple: call_info.media);
if video_index >= 0 {
let media = medias[Int(video_index)]
let window_id = media.stream.vid.win_in
if window_id == PJSUA_INVALID_ID.rawValue {
print("Invalid Window id...")
}
}
}
解决方案
推荐阅读
- dialog - 显示工作表时,NSheet 控制器不会运行。
- html - 使用 flexbox 将我的徽标设置在左侧,将导航菜单设置在右侧
- python - Keras 模型溢出未知错误 | (IndexError:列表索引超出范围)
- elasticsearch - 在嵌套对象中追加数据
- regex - 从一个元素中获取文本,在另一个元素中显示
- c# - 将登录页面添加到 Swagger
- mysql - 占用所有 CPU 的 ubuntu .syslogs 后台进程
- javascript - 函数的 QUnit 测试
- unicode - PDFBox:如何设置文本书写的后备字体
- .net - 是否有具有相同公共界面的 System.Drawing.Graphics 的替代品?