关于在pjsip中添加视频的流程说明
1. 在sdp中添加视频信息
添加sdp信息中的视频部分主要通过下面两个步骤处理。
1.1 在Invite消息的sdp中添加视频信息
主要在endpoint.c的pjmedia_endpt_create_sdp()函数中添加。具体的可以看其中的代码,以及代码中的注释。
注意pjmedia_endpt_create_sdp( pjmedia_endpt *endpt,
const pjmedia_sock_info sock_info[2],
1.2 sdp信息中视频的rtp端口的生成
2. 视频处理模块的添加
视频处理模块主要完成视频的采集、编码、解码、回放、以及将数据送给rtp或者从rtp获取到数据的功能。其工程为pjmedia-videodev。
CCameraMgr主要实现摄像头的管理功能。如果移植mobile可以考虑修改这部分。
CCodecVideo主要实现视频编解码的功能。如果添加H.263、H.264编解码可以直接修改这部分代码。
CCodecDataChannel主要实现整个视频模块的管理功能。视频的采集、编码、解码、回放、以及将数据送给rtp或者从rtp获取到数据的功能。
Videodev主要实现pjmedia-videodev对Pjsip的外部接口功能。这些接口可以根据需要继续添加。目前应该够用。具体实现见注释。
3. 视频收发以及回放
3.1 rtp发送
3.2 Rtp接收
3.3 远端视频回放
3.4 本地视频回放
这个简单,也就是直接获取到摄像头的数据,在本地显示的过程。主要通过CCodecDataChannl:: ShowLocalVideo来实现。
4. 视频工作线程
4.1 发送线程
//add with lianhy in 20090902 创建视频工作线程
status = pj_thread_create( endpt->pool, "video", &worker_proc_video,
endpt, 0, 0, &endpt->thread_video);
4.2 接收以及回放线程
主要通过Pjmedia-vidodev的接口pjmedia_video_query_frame_start来启动。当然对应的停止应该是pjmedia_video_query_frame_stop。
对于以上说的线程以及socket、session、mediapoint的创建,注意一定要释放(销毁)。
关于在pjsip中添加视频的流程说明相关推荐
- 2020-04-19-如何在博客中添加视频链接
layout title subtitle date author preview-img header-img catalog istop music-id music-idfull apserve ...
- 在HTML中添加视频的代码
在HTML中添加视频的代码 自动载入视频 与音乐的播放一样,我们可以使用EMBED标签播放视频, <EMBED SRC="http://blog.163.com/qianxue126@ ...
- 【杂志制作软件】名编辑电子杂志大师教程 | 如何在电子杂志中添加视频?
名编辑电子杂志大师可以轻松的在电子杂志页面中添加您想添加的视频或者Flash文件. 在此给您介绍下如何一步一步的完成在电子杂志中添加视频: 第一步:打开名编辑电子杂志大师,导入您需要编辑的PDF杂志文 ...
- 名编辑电子杂志大师教程 | 如何在电子宣传册中添加视频按钮
使用名编辑电子杂志大师,您可以轻松的在电子杂志页面中添加您想添加的视频或者Flash文件. 在此给您介绍下如何一步一步的完成在电子杂志中添加视频: 第一步:打开名编辑电子杂志大师,导入您需要编辑的PD ...
- 名编辑电子杂志大师教程 | 如何在电子宣传册中添加视频按钮?
名编辑电子杂志大师具有视频按钮功能,您可以够在您的电子宣传册任何一个页面中嵌入视频按钮来播放安全视频. 点击视频按钮之后,您的安全视频将会以弹窗的形式展示出来! 下面就给您介绍下如何在电子宣传册中添加 ...
- 在verto_communicator中添加视频floor轮询功能
只是实现了简单的视频轮询功能,还需要修改完善!!! 1.在src/partials/chat.html中添加 <div><p>{{num}}</p><butt ...
- 如何在word中添加视频
这两天由于工作需要,要写一关于gis功能的说明文档,为了能够更加形象,想要将一些操作过程录制为视频添加到word文档中. 刚开始的做法是将视频文件拖到word文档中,实践证明该视频确实可以在word中 ...
- html添加背景音乐记事本,肿么在用记事本写的html网页中添加视频
HTML网页中插入视频方法: 1.用object 标签 objecthttp://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf. ...
- 使用Markdown语言在博客的文章中添加视频
注:此博文来自转载, 在此对原作者表示感谢. 不论你是用的是什么博客系统,WP也好,Typecho也罢,甚至是静态博客,就像我的博客,绕不开的是两种书写语言,一种称之为富文本,一种叫做Markdown ...
最新文章
- Element 2.6.0 发布,基于 Vue 2.0 的桌面端组件库
- python scipy卷积 图像卷积
- Oracel 修改约束命令
- jquery.easyui常用示例
- 程序员想趁头发还在找个女友,标准:是女的就行
- c语言编写弹窗提示是否确认退出_弹窗设计的5条基本原则
- 150家通用经销商决定退出凯迪拉克品牌 因不愿投资于销售电动车
- c语言链表二路归并排序,链表的二路归并排序 Sort List
- linux 终止一个前台进程,Linux中前台起动的进程怎么结束?
- Microsoft Visual C++ 6.0预处理器参考手册
- 【Babel】1145- 非常不错的 Babel 插件开发教程
- 玩客云小盒子安装点心云,实现闲置宽带共享。
- Java Pair类的使用
- Java读取数据库的数据并转换为json数据
- Opencv Surf特征实现图像无缝拼接生成全景图像(三)
- 人生总在不断的折腾,你不折腾,就要被折腾......
- OpenCV入门——基本图像操作
- My97DatePicker 日期控制,开始时间不能大于结束时间,结束时间不能小于开始时间
- 淘客是什么 淘客怎么做
- hadoop之使用LZO压缩文件并支持分片