1、windows下编译什么的,网上已经一大把了
2、demo的话,最好参考源码工程,有个samples工程,里面的每一个*.c文件都是一个单独的测试例子,在sample_debug工程的debug.cpp文件中,将samples工程下的.c文件include进来就可以进行demo的演示和调试了
3、视频对话需要注意:通话双方必须指定好视频编码格式(目前我还不清楚原理,在测试时发现,两边通信的编码会不一致,所以我暂时的方案是固定一个编码格式H263,然后将H264禁止,不禁止的话会导致双方编码格式不一致)
由于pjsip底层的视频采集是用directshow实现的,在配置视频分辨率时,并不是所有分辨率都可用的(若配置不正确,底层会采用默认分辨率,如640 X 480进行编码)。
可以使用amcap测试当前摄像头支持的分辨率和帧频(帧频也是有限制的)
#define ENABLE_VIDEO_CODEC "H263"
#define DISABLE_VIDEO_CODEC "H264"
static void SetVideoCodec()
{
pjsua_vid_codec_set_priority(&pj_str(DISABLE_VIDEO_CODEC), 0);
const pj_str_t codec_id = { ENABLE_VIDEO_CODEC, sizeof(ENABLE_VIDEO_CODEC) };
pjmedia_vid_codec_param param;
pjsua_vid_codec_get_param(&codec_id, ¶m);
//解码分辨率必须设置最大值,否则会因为解码