linphone 分析2 接电话的过程1(mediastream角度解析)
来源:互联网 发布:js隐藏显示div 编辑:程序博客网 时间:2024/05/29 04:01
做楼宇对讲的项目,需求电话来了直接看到视频,接听后产生语音。于是研究了下liphone接电话的过程
函数调用为:
lpc_cmd_answer
接到电话以后,answer命令接听
linphone_core_accept_call
linphone_core_accept_call_with_params
if (call==NULL){
//if just one call is present answer the only one ...
if(linphone_core_get_calls_nb (lc) != 1)
return -1;
else
call = (LinphoneCall*)linphone_core_get_calls(lc)->data;
}
先拿到这个call,然后各种检测
if (lc->ringstream!=NULL) {
ms_message("stop ringing");
ring_stop(lc->ringstream);
ms_message("ring stopped");
lc->ringstream=NULL;
was_ringing=TRUE;
}
if (call->ringing_beep){
linphone_core_stop_dtmf(lc);
call->ringing_beep=FALSE;
}
关闭振铃
new_md=sal_call_get_final_media_description(call->op);
拿sdp的协商
linphone_core_update_streams
if (lc->ringstream!=NULL){
ring_stop(lc->ringstream);
lc->ringstream=NULL;
}
再次确定铃声关闭
linphone_call_start_media_streams
linphone_call_start_audio_stream(call,cname,all_inputs_muted,send_ringbacktone,use_arc);
audio_stream_start_full()
音频filter的连接和开始
linphone_call_start_video_stream(call,cname,all_inputs_muted);
video_stream_start()
视频filter的连接和开始
这个过程是从mediastream角度解析去分析 linphone接电话的过程 看它如何调用到filter的连接 和开始。
下面还将以sip库和rtp库的角度分析接电话的过程。
- linphone 分析2 接电话的过程1(mediastream角度解析)
- linphone 分析4 接电话分析
- linphone 分析1 linphone的架构和初始化
- linphone-linphone没有视频H264编码分析过程-正确分析正确的方法
- linphone函数拨号过程分析
- CDN/P2P/Mediastream 相关的资料搜集分析
- linphone-编译过程的bug
- 记录编译linphone的过程
- MediaStream,AudioTrack,VideoTrack的关系
- 从汇编角度来解析c程序的运行过程
- 从源码角度解析View的绘制过程
- 从源码的角度分析Volley加载数据的过程
- 拒接电话流程分析
- 从源码角度分析view的layout过程
- 从源码角度分析view的draw过程
- linphone-LinphoneCallStatsImpl文件对应的JNI分析
- Linphone录音器的初始化流程分析
- Linphone-android 登录过程增加自定义消息头流程分析
- rotateAnimation 动画效果(转载)
- 浅谈并发与并行
- Android中自动连接到指定SSID的Wi-Fi
- CentOS环境变量设置
- Android常用开源工具(2)-Dagger2进阶
- linphone 分析2 接电话的过程1(mediastream角度解析)
- 【cdq分治】[HYSBZ/BZOJ3295]动态逆序对
- 安卓内存泄露成因和解决办法
- android之wifi开发
- 解决!HTML中head里的内容经浏览器解析后全到body里了
- css srpites css精灵
- perl 对象 通过bless实现
- windows下gitbash可以连接但是idea无法连接的问题
- 三层-架构星星之火