CN103023880B - 视频通信业务与dlna业务融合的装置及方法 - Google Patents

视频通信业务与dlna业务融合的装置及方法 Download PDF

Info

Publication number
CN103023880B
CN103023880B CN201210486863.5A CN201210486863A CN103023880B CN 103023880 B CN103023880 B CN 103023880B CN 201210486863 A CN201210486863 A CN 201210486863A CN 103023880 B CN103023880 B CN 103023880B
Authority
CN
China
Prior art keywords
message
dlna
type
module
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210486863.5A
Other languages
English (en)
Other versions
CN103023880A (zh
Inventor
胡琴
周琴
李璐
郭洲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Fiberhome Telecommunication Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201210486863.5A priority Critical patent/CN103023880B/zh
Publication of CN103023880A publication Critical patent/CN103023880A/zh
Application granted granted Critical
Publication of CN103023880B publication Critical patent/CN103023880B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种视频通信业务与DLNA业务融合的装置及方法,涉及DLNA领域,该装置包括视频通信模块、DLNA模块、消息通道建立模块,消息通道建立模块建立切换业务的消息通道;视频通信模块与IMS服务器交互进行登记,实现音频、视频的编码、传输、解码播放,通过消息通道发送数据包到Qt服务器,接收Qt服务器发来的消息并处理;DLNA模块实现数字媒体的记录、存储、查找、播放、渲染,通过消息通道发送数据包到Qt服务器,接收Qt服务器发来的消息并处理。本发明使用嵌入式QT特有的进程间通信机制建立切换业务的消息通道,实现视频通信业务与DLNA业务的平滑切换。<!--1-->

Description

视频通信业务与DLNA业务融合的装置及方法
技术领域
本发明涉及DLNA(Digital Living Network Alliance,家庭娱乐网络接入协议)领域,特别是涉及一种视频通信业务与DLNA业务融合的装置及方法。
背景技术
DLNA(Digital Living Network Alliance,家庭娱乐网络接入协议)是一种个人PC、消费电器、移动设备在内的无线网络和有线网络的互联互通,实现数字媒体和内容服务的无限制的共享和增长的方案。视频通信是集通信技术、计算机技术、音视频处理技术等为一体的业务,是信息技术发展的方向。目前视频通信业务主要依存于个人电脑上的IM(Instant Messenger,即时通讯)工具,还没有与DLNA业务融合在一起。随着家庭数字娱乐的蓬勃发展,将视频通信业务与DLNA业务融合在一起成为发展趋势,因此如何将视频通信业务与DLNA业务融合在一起是目前亟待解决的技术问题。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种视频通信业务与DLNA业务融合的装置及方法,使用嵌入式QT特有的进程间通信机制建立切换业务的消息通道,实现视频通信业务与DLNA业务的平滑切换,完善了智能机顶盒的服务功能。
本发明提供的视频通信业务与DLNA业务融合的装置,包括视频通信模块、DLNA模块、消息通道建立模块,所述视频通信模块和DLNA模块都是基于嵌入式Qt的客户端,其中:
所述消息通道建立模块,用于:通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
所述视频通信模块,用于:与IMS服务器交互进行登记,实现音频、视频的编码、传输、解码播放;采用二进制数据流保存数据,生成DLNA业务参数,所述DLNA业务参数包括回到导航页面参数、停止DLNA业务参数、拒接来电继续DLNA业务参数、恢复DLNA业务参数;再根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,再将DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,通过切换业务的消息通道将该带有DLNA业务参数和消息类型的数据包发送到Qt服务器;以及收到Qt服务器转发来的带有视频业务参数和消息类型的数据包时,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的视频业务参数,根据视频业务参数的种类进行处理;
所述DLNA模块,用于:实现数字媒体的记录、存储、查找、播放、渲染;采用二进制数据流保存数据,生成视频业务参数,所述视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数、停止视频通信业务参数;再根据视频业务参数生成从DLNA模块发往视频通信模块的消息类型,并该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;以及收到Qt服务器发来的带有DLNA业务参数和消息类型的数据包时,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的DLNA业务参数,根据DLNA业务参数的种类进行处理。
在上述技术方案中,所述视频通信模块包括第一参数生成单元、第一消息类型生成单元、第一封装单元、第一发送单元、第一接收单元、第一解析单元、第一处理单元;
所述第一参数生成单元,用于:采用二进制数据流保存数据,生成DLNA业务参数,并将DLNA业务参数发送到第一消息类型生成单元;
所述第一消息类型生成单元,用于:收到第一参数生成单元发来的DLNA业务参数后,根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,并将该DLNA业务参数和消息类型一起发送到第一封装单元;
所述第一封装单元,用于:收到第一消息类型生成单元发来的DLNA业务参数和消息类型后,将DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,再将该带有DLNA业务参数和消息类型的数据包发送到第一发送单元;
所述第一发送单元,用于:收到第一封装单元发来带有DLNA业务参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将该带有DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;
所述第一接收单元,用于:收到Qt服务器转发给视频通信模块的带有视频业务参数和消息类型的数据包时,生成第一解析触发信号,并将接收到的带有视频业务参数和消息类型的数据包和第一解析触发信号一起发送到第一解析单元;
所述第一解析单元,用于:接收到第一接收单元发来的带有视频业务参数和消息类型的数据包和第一解析触发信号时,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则生成第一处理触发信号,并将该带有视频业务参数和消息类型的数据包和第一处理触发信号一起发送到第一处理单元;
所述第一处理单元,用于:收到第一解析单元发来的带有视频业务参数和消息类型的数据包和第一处理触发信号时,取出该数据包中的视频业务参数,根据视频业务参数的种类进行处理。
在上述技术方案中,所述DLNA模块包括第二参数生成单元、第二消息类型生成单元、第二封装单元、第二发送单元、第二接收单元、第二解析单元、第二处理单元;
所述第二参数生成单元,用于:采用二进制数据流保存数据,生成视频业务参数,并将视频业务参数发送到第二消息类型生成单元;
所述第二消息类型生成单元,用于:收到第二参数生成单元发来的视频业务参数时,根据该视频业务参数生成从DLNA模块发往视频通信模块的消息类型,并将该视频业务参数和消息类型一起发送到第二封装单元;
所述第二封装单元,用于:收到第二消息类型生成单元发来的视频业务参数和消息类型后,将该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,并将该带有视频业务参数和消息类型的数据包发送到第二发送单元;
所述第二发送单元,用于:收到第二封装单元发来的带有视频业务参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;
所述第二接收单元,用于:收到Qt服务器转发给DLNA模块的带有DLNA业务参数和消息类型的数据包时,生成第二解析触发信号,并将接收到的带有DLNA业务参数和消息类型的数据包和第二解析触发信号一起发送到第二解析单元;
所述第二解析单元,用于:收到第二接收单元发来的带有DLNA业务参数和消息类型的数据包和第二解析触发信号时,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则生成第二处理触发信号,并将该带有DLNA业务参数和消息类型的数据包和第二处理触发信号一起发送到第二处理单元;
所述第二处理单元,用于:收到第二解析单元发来的带有DLNA业务参数和消息类型的数据包和第二处理触发信号时,取出该数据包中的DLNA业务参数,根据DLNA业务参数的种类进行处理。
在上述技术方案中,所述切换业务的消息通道为一个双向消息通道,视频通信模块和DLNA模块均通过所述双向消息通道发送业务切换的消息。
在上述技术方案中,所述切换业务的消息通道为两个独立的单向消息通道,视频通信模块通过其中一个消息通道发送业务切换的消息,DLNA模块通过其中另一个消息通道发送业务切换的消息。
本发明还提供一种基于上述装置的视频通信业务与DLNA业务融合的方法,包括以下步骤:
S1、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
S2、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
S3、用户主叫情况下:用户在使用DLNA业务时,DLNA模块通过DLNA用户界面进入本地导航页面,主动停止DLNA业务,选择视频通信业务;或者
用户被叫情况下:视频通信模块收到呼入事件请求消息,通过消息通道建立模块建立的切换业务的消息通道发送停止DLNA业务的消息到Qt服务器,Qt服务器再转发到DLNA模块,DLNA模块停止DLNA业务;或者
用户在进行视频通信业务的过程中收到DLNA推送请求时,通过消息通道建立模块建立的切换业务的消息通道发送停止视频通信业务的消息到Qt服务器,Qt服务器再转发到视频通信模块,视频通信模块停止视频通信业务;
S4、DLNA模块采用二进制数据流保存数据,生成视频业务参数,视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数、停止视频通信业务参数,DLNA模块根据生成的视频业务参数生成从DLNA模块发往视频通信模块的消息类型,将该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;Qt服务器将收到的带有视频业务参数和消息类型的数据包转发至视频通信模块;
S5、视频通信模块收到Qt服务器发来的带有视频业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的视频业务参数,视频通信模块根据该视频通信业务参数进行处理;
S6、视频通话结束后,隐藏视频通信主界面,视频通信模块采用二进制数据流保存数据,生成DLNA业务参数,所述DLNA业务参数包括回到导航页面参数、停止DLNA业务参数、拒接来电继续DLNA业务参数、恢复DLNA业务参数;再根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有DLNA业务参数和消息类型的数据包转发至DLNA模块;
S7、DLNA模块收到Qt服务器发来的带有DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的DLNA业务参数,DLNA模块根据该DLNA业务参数进行处理。
在上述技术方案中,所述用户主叫情况下,包括以下步骤:
步骤101、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
步骤102、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤103、用户在使用DLNA业务时,DLNA模块通过DLNA用户界面进行人机交互,进入本地导航页面,主动停止DLNA业务,选择视频通信业务;
步骤104、DLNA模块接收到用户选择视频通信业务的指令时,DLNA模块采用二进制数据流保存数据,生成主叫显示视频通信页面参数,并根据该主叫显示视频通信页面参数生成从DLNA模块发往视频通信模块的消息类型,将该主叫显示视频通信页面参数和消息类型封装成带有主叫显示视频通信页面参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有主叫显示视频通信页面参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;Qt服务器将收到的带有主叫显示视频通信页面参数和消息类型的数据包转发至视频通信模块;
步骤105、视频通信模块收到Qt服务器发来的带有主叫显示视频通信页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的主叫显示视频通信页面参数,并根据该主叫显示视频通信页面参数显示视频通信主界面,用户通过视频通信主界面可以进行拨号呼叫,建立视频通话;
步骤106、视频通话结束后,用户操作返回键,隐藏视频通信主界面,视频通信模块采用二进制数据流保存数据,生成回到导航页面参数,并根据该回到导航页面参数生成从视频通信模块发往DLNA模块的消息类型,将该回到导航页面参数和消息类型封装成带有回到导航页面参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有回到导航页面参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有回到导航页面参数和消息类型的数据包转发至DLNA模块;
步骤107、DLNA模块收到Qt服务器发来的带有回到导航页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的回到导航页面参数,DLNA模块根据该回到导航页面参数回到导航页面。
在上述技术方案中,所述用户被叫情况下,包括以下步骤:
步骤201、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
步骤202、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤203、视频通信模块收到呼入事件请求消息,在当前使用的DLNA业务界面上置顶来电提醒对话框,如果用户选择接听,则接受呼叫请求,视频通信模块采用二进制数据流保存数据,生成停止DLNA业务参数,并根据该停止DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该停止DLNA业务参数和消息类型封装成带有停止DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有停止DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有停止DLNA业务参数和消息类型的数据包转发至DLNA模块;
如果用户选择拒绝接听,则关闭来电提醒对话框,视频通信模块采用二进制数据流保存数据,生成拒接来电继续DLNA业务参数,并根据该拒接来电继续DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该拒接来电继续DLNA业务参数和消息类型封装成带有拒接来电继续DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有拒接来电继续DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有停止DLNA业务参数和消息类型的数据包转发至DLNA模块,DLNA模块将继续进行DLNA业务;
步骤204、DLNA模块收到Qt服务器发来的带有停止DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的停止DLNA业务参数,并根据该停止DLNA业务参数停止DLNA业务,隐藏DLNA业务界面;
步骤205、DLNA模块采用二进制数据流保存数据,生成被叫显示视频通信页面参数,并根据该被叫显示视频通信页面参数生成从DLNA模块发往视频通信模块的消息类型,将该被叫显示视频通信页面参数和消息类型封装成带有被叫显示视频通信页面参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将带有被叫显示视频通信页面参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有被叫显示视频通信页面参数和消息类型的数据包转发至视频通信模块;
步骤206、视频通信模块收到Qt服务器发来的带有被叫显示视频通信页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的被叫显示视频通信页面参数,并根据该被叫显示视频通信页面参数显示视频通信主界面,给IMS发应答消息,建立呼叫连接;
步骤207、视频通话结束后,视频通信模块释放资源,隐藏视频通信界面,采用二进制数据流保存数据,生成恢复DLNA业务参数,并根据该恢复DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该恢复DLNA业务参数和消息类型封装成带有恢复DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有恢复DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有恢复DLNA业务参数和消息类型的数据包转发至DLNA模块;
步骤208、DLNA模块收到Qt服务器发来的带有恢复DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的恢复DLNA业务参数,并根据恢复DLNA业务参数恢复DLNA业务,显示DLNA业务界面,用户继续进行DLNA业务。
在上述技术方案中,所述用户进行视频通信业务的过程中收到DLNA推送请求时,包括以下步骤:
步骤301、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立一个切换业务的双向消息通道;
步骤302、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤303、用户在使用视频通信业务的过程中收到DLNA推送请求;
步骤304、DLNA模块采用二进制数据流保存数据,生成停止视频通信业务参数,并根据该停止视频通信业务参数生成从DLNA模块发往视频通信模块的消息类型,将该停止视频通信业务参数和消息类型封装成带有停止视频通信业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该停止视频通信业务参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器;Qt服务器将收到的停止视频通信业务参数和消息类型的数据包转发至视频通信模块;
步骤305、视频通信模块收到Qt服务器发来的停止视频通信业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的停止视频通信业务参数,并根据该停止视频通信业务参数挂机结束视频通话;
步骤306、视频通话结束后,视频通信模块采用二进制数据流保存数据,恢复DLNA业务参数,并根据该恢复DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该恢复DLNA业务参数和消息类型封装成带有恢复DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有恢复DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器,Qt服务器将收到的带有恢复DLNA业务参数和消息类型的数据包转发至DLNA模块;
步骤307、DLNA模块收到Qt服务器发来的带有恢复DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的恢复DLNA业务参数,DLNA模块根据恢复DLNA业务参数开始进行媒体播放。
在上述技术方案中,所述切换业务的消息通道为一个双向消息通道,视频通信模块和DLNA模块均通过所述双向消息通道发送业务切换的消息。
在上述技术方案中,所述切换业务的消息通道为两个独立的单向消息通道,视频通信模块通过其中一个消息通道发送业务切换的消息,DLNA模块通过其中另一个消息通道发送业务切换的消息。
与现有技术相比,本发明的优点如下:
本发明使用嵌入式QT特有的进程间通信机制建立切换业务的消息通道,智能机顶盒与其他IMS终端对接,在进行DLNA业务时,通过该消息通道传递消息,能主动进入视频通信业务,进行呼叫;在进行DLNA业务的过程中,收到呼叫事件(例如呼入请求)时,通过该消息通道传递消息,通知给正在使用DLNA业务的用户,由用户选择是否切换到视频通信业务;在进行视频通信业务时,收到来自平板电脑、手机等的推送DLNA的请求时,进行视频通信业务的挂机,进行DLNA的媒体播放,实现视频通信业务与DLNA业务的平滑切换,在智能机顶盒上给用户提供视频通信业务,完善了智能机顶盒的服务功能。
附图说明
图1是本发明实施例中用户主叫时视频通信业务与DLNA业务融合的方法流程图。
图2是本发明实施例中用户被叫时视频通信业务与DLNA业务融合的方法流程图。
图3是本发明实施例中用户进行视频通信业务时切换到DLNA业务的方法流程图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
首先介绍一下嵌入式Qt特有的进程间通信机制QCOP(QtCommunication Protocol,Qt通信协议)。
Qt是一个跨平台C++图形用户界面应用程序开发框架,它既可以开发GUI(Graphical User Interface,图形用户接口)程式,也可用于开发非GUI程式。Qt是面向对象语言,易于扩展,并且允许组件编程。嵌入式Qt(Qt/Embedded)是一个完整的自包含GUI和基于Linux的嵌入式平台开发工具,当中定义了一种轻量级的进程间通信机制QCOP。
QCOP是Qt内部的一种通信协议,这种协议既允许在相同的地址空间内的客户端之间进行通信,也允许在不同的进程的客户端之间进行通信。QCOP用于在多个通道间传送信息,是一个多对多的通信协议。每个通道用名字作为识别ID(IDentity,身份标识号码),任何一个想要和它通信的通道都能监听它。为实现这种通信机制,Qt中包括了QCopChannel(Qt Communication Protocol Channel,Qt通信协议通道)类,该类提供了诸如发送、通道是否已注册等静态函数,它们可以在脱离对象的情况下使用。为了在通道中接收通信数据,用户需要构造一个Qt通信协议通道的子类并提供接收函数的重载函数,或者利用连接函数将处理函数与接收到的消息相联系。QCOP的过程包括注册、发送、接收三部分。
本发明实施例提供一种视频通信业务与DLNA业务融合的装置,包括视频通信模块、DLNA模块、消息通道建立模块,其中,视频通信模块、DLNA模块都是基于嵌入式Qt的客户端,所以可以采用QCOP协议来进行通信。
消息通道建立模块,用于:通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;切换业务的消息通道可以是一个双向消息通道,视频通信模块和DLNA模块均通过双向消息通道发送业务切换的消息;切换业务的消息通道也可以是两个独立的单向消息通道,视频通信模块通过其中一个消息通道发送业务切换的消息,DLNA模块通过其中另一个消息通道发送业务切换的消息。
视频通信模块,用于:与IMS服务器交互进行登记,实现音频、视频的编码、传输、解码播放;采用二进制数据流保存数据,生成DLNA业务参数,DLNA业务参数包括回到导航页面参数、停止DLNA业务参数、拒接来电继续DLNA业务参数、恢复DLNA业务参数;再根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,再将DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,通过切换业务的消息通道将该带有DLNA业务参数和消息类型的数据包发送到Qt服务器;以及收到Qt服务器转发来的带有视频业务参数和消息类型的数据包时,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的视频业务参数,根据视频业务参数的种类进行处理。
DLNA模块,用于:实现数字媒体的记录、存储、查找、播放、渲染;采用二进制数据流保存数据,生成视频业务参数,视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数;再根据视频业务参数生成从DLNA模块发往视频通信模块的消息类型,并该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;以及收到Qt服务器发来的带有DLNA业务参数和消息类型的数据包时,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的DLNA业务参数,根据DLNA业务参数的种类进行处理。
进一步,视频通信模块包括第一参数生成单元、第一消息类型生成单元、第一封装单元、第一发送单元、第一接收单元、第一解析单元、第一处理单元,其中:
第一参数生成单元,用于:采用二进制数据流保存数据,生成DLNA业务参数,并将DLNA业务参数发送到第一消息类型生成单元,所述DLNA业务参数包括回到导航页面参数、停止DLNA业务参数、拒接来电继续DLNA业务参数、恢复DLNA业务参数;
第一消息类型生成单元,用于:收到第一参数生成单元发来的DLNA业务参数后,根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,并将该DLNA业务参数和消息类型一起发送到第一封装单元;
第一封装单元,用于:收到消息类型生成单元发来的DLNA业务参数和消息类型后,将DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,并将该带有DLNA业务参数和消息类型的数据包发送到第一发送单元;
第一发送单元,用于:收到第一封装单元发来的带有DLNA业务参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将该带有DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;
第一接收单元,用于:收到Qt服务器转发给视频通信模块的带有视频业务参数和消息类型的数据包时,生成第一解析触发信号,并将接收到的带有视频业务参数和消息类型的数据包和第一解析触发信号一起发送到第一解析单元;
第一解析单元,用于:接收到第一接收单元发来的带有视频业务参数和消息类型的数据包和第一解析触发信号时,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则生成第一处理触发信号,并将该带有视频业务参数和消息类型的数据包和第一处理触发信号一起发送到第一处理单元;
第一处理单元,用于:收到第一解析单元发来的带有视频业务参数和消息类型的数据包和第一处理触发信号时,取出该数据包中的视频业务参数,根据视频业务参数的种类进行处理。
进一步,DLNA模块包括第二参数生成单元、第二消息类型生成单元、第二封装单元、第二发送单元、第二接收单元、第二解析单元、第二处理单元,其中:
第二参数生成单元,用于:采用二进制数据流保存数据,生成视频业务参数,并将视频业务参数发送到第二消息类型生成单元,视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数、停止视频通信业务参数;
第二消息类型生成单元,用于:收到第二参数生成单元发来的视频业务参数时,根据该视频业务参数生成从DLNA模块发往视频通信模块的消息类型,并将该视频业务参数和消息类型一起发送到第二封装单元;
第二封装单元,用于:收到第二消息类型生成单元发来的视频业务参数和消息类型后,将该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,并将该带有视频业务参数和消息类型的数据包发送到第二发送单元;
第二发送单元,用于:收到第二封装单元发来的带有视频业务参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;
第二接收单元,用于:收到Qt服务器转发给DLNA模块的带有DLNA业务参数和消息类型的数据包时,生成第二解析触发信号,并将接收到的带有DLNA业务参数和消息类型的数据包和第二解析触发信号一起发送到第二解析单元;
第二解析单元,用于:收到第二接收单元发来的带有DLNA业务参数和消息类型的数据包和第二解析触发信号时,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则生成第二处理触发信号,并将该带有DLNA业务参数和消息类型的数据包和第二处理触发信号一起发送到第二处理单元;
第二处理单元,用于:收到第二解析单元发来的带有DLNA业务参数和消息类型的数据包和第二处理触发信号时,取出该数据包中的DLNA业务参数,根据DLNA业务参数的种类进行处理。
在上述视频通信业务与DLNA业务融合的装置的基础上,本发明实施例还提供了一种视频通信业务与DLNA业务融合的方法,包括以下步骤:
S1、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;切换业务的消息通道可以是一个双向消息通道,视频通信模块和DLNA模块均通过双向消息通道发送业务切换的消息;切换业务的消息通道也可以是两个独立的单向消息通道,视频通信模块通过其中一个消息通道发送业务切换的消息,DLNA模块通过其中另一个消息通道发送业务切换的消息;
S2、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
S3、用户主叫情况下:用户在使用DLNA业务时,DLNA模块通过DLNA用户界面进入本地导航页面,主动停止DLNA业务,选择视频通信业务;或者
用户被叫情况下:视频通信模块收到呼入事件请求消息,通过消息通道建立模块建立的切换业务的消息通道发送停止DLNA业务的消息到Qt服务器,Qt服务器再转发到DLNA模块,DLNA模块停止DLNA业务;或者
用户在进行视频通信时,DLNA模块收到来自手机、平板电脑等的推送请求,通过消息通道建立模块建立的切换业务的消息通道发送DLNA推送时视频通信挂机的消息到Qt服务器,Qt服务器再转发到视频通信模块,视频通信模块挂机结束视频通信业务;
S4、DLNA模块采用二进制数据流保存数据,生成视频业务参数,视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数、停止视频通信业务参数,DLNA模块根据生成的视频业务参数生成从DLNA模块发往视频通信模块的消息类型,将该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;Qt服务器将收到的带有视频业务参数和消息类型的数据包转发至视频通信模块;
S5、视频通信模块收到Qt服务器发来的带有视频业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的视频业务参数,视频通信模块根据该视频通信业务参数进行处理;
S6、视频通话结束后,隐藏视频通信主界面,视频通信模块采用二进制数据流保存数据,生成DLNA业务参数,DLNA业务参数包括回到导航页面参数、停止DLNA业务参数、拒接来电继续DLNA业务参数、恢复DLNA业务参数;再根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有DLNA业务参数和消息类型的数据包转发至DLNA模块;
S7、DLNA模块收到Qt服务器发来的带有DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的DLNA业务参数,DLNA模块根据该DLNA业务参数进行处理。
由于视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数、停止视频通信业务参数,在实际应用中包括以下三种情况:
A、用户主叫:用户在使用DLNA业务时,通过本地导航页面退出DLNA业务,然后进入视频通信业务,进行视频通话呼叫等业务,通话结束后返回到DLNA业务。
B、用户被叫:用户在使用DLNA业务时,收到呼叫,弹出来电提示框,如果选择接听,则进入视频通信业务,如果拒绝接听,则继续使用DLNA业务。
C、用户进行视频通信业务的过程中收到DLNA推送请求时,视频通信模块结束视频通信业务,DLNA模块开始播放媒体文件。
下面通过3个具体实施例来详细阐述。
实施例1、用户主叫、建立一个切换业务的双向消息通道
参见图1所示,用户主叫情况下,包括以下步骤:
步骤101、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立一个切换业务的双向消息通道;
步骤102、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤103、用户在使用DLNA业务时,DLNA模块通过DLNA用户界面进入本地导航页面,主动停止DLNA业务,选择视频通信业务;
步骤104、DLNA模块接收到用户选择视频通信业务的指令时,DLNA模块采用二进制数据流保存数据,生成主叫显示视频通信页面参数,并根据该主叫显示视频通信页面参数生成从DLNA模块发往视频通信模块的消息类型,将该主叫显示视频通信页面参数和消息类型封装成带有主叫显示视频通信页面参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有主叫显示视频通信页面参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器;Qt服务器将收到的带有主叫显示视频通信页面参数和消息类型的数据包转发至视频通信模块;
步骤105、视频通信模块收到Qt服务器发来的带有主叫显示视频通信页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的主叫显示视频通信页面参数,并根据该主叫显示视频通信页面参数显示视频通信主界面,用户通过视频通信主界面可以进行拨号呼叫,建立视频通话;
步骤106、视频通话结束后,用户操作返回键,隐藏视频通信主界面,视频通信模块采用二进制数据流保存数据,回到导航页面参数,并根据该回到导航页面参数生成从视频通信模块发往DLNA模块的消息类型,将该回到导航页面参数和消息类型封装成带有回到导航页面参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有回到导航页面参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器,Qt服务器将收到的带有回到导航页面参数和消息类型的数据包转发至DLNA模块;
步骤107、DLNA模块收到Qt服务器发来的带有回到导航页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的回到导航页面参数,DLNA模块根据该回到导航页面参数回到导航页面。
实施例2、用户被叫、建立切换业务的两个独立的单向消息通道
参见图2所示,用户被叫情况下,包括以下步骤:
步骤201、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的两个独立的单向消息通道;
步骤202、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤203、视频通信模块收到呼入事件请求消息,在当前使用的DLNA业务界面上置顶来电提醒对话框,如果用户选择接听,则接受呼叫请求,视频通信模块采用二进制数据流保存数据,生成停止DLNA业务参数,并根据该停止DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该停止DLNA业务参数和消息类型封装成带有停止DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,根据通道名称,将该带有停止DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的单向消息通道发送到Qt服务器,Qt服务器将收到的带有停止DLNA业务参数和消息类型的数据包转发至DLNA模块;
如果用户选择拒绝接听,则关闭来电提醒对话框,视频通信模块采用二进制数据流保存数据,生成拒接来电继续DLNA业务参数,并根据该拒接来电继续DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该拒接来电继续DLNA业务参数和消息类型封装成带有拒接来电继续DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,根据通道名称,将该带有拒接来电继续DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的单向消息通道发送到Qt服务器,Qt服务器将收到的带有拒接来电继续DLNA业务参数和消息类型的数据包转发至DLNA模块,DLNA模块将继续进行DLNA业务;
步骤204、DLNA模块收到Qt服务器发来的带有停止DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的停止DLNA业务参数,并根据该停止DLNA业务参数停止DLNA业务,隐藏DLNA业务界面;
步骤205、DLNA模块采用二进制数据流保存数据,生成被叫显示视频通信页面参数,并根据该被叫显示视频通信页面参数生成从DLNA模块发往视频通信模块的消息类型,将该被叫显示视频通信页面参数和消息类型封装成带有被叫显示视频通信页面参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,根据通道名称,将带有被叫显示视频通信页面参数和消息类型的数据包,通过消息通道建立模块建立的单向消息通道发送到Qt服务器,Qt服务器将收到的带有被叫显示视频通信页面参数和消息类型的数据包转发至视频通信模块;
步骤206、视频通信模块收到Qt服务器发来的带有被叫显示视频通信页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的被叫显示视频通信页面参数,并根据该被叫显示视频通信页面参数显示视频通信主界面,给IMS发应答消息,建立呼叫连接;
步骤207、视频通话结束后,视频通信模块释放资源,隐藏视频通信界面,采用二进制数据流保存数据,生成恢复DLNA业务参数,并根据该恢复DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该恢复DLNA业务参数和消息类型封装成带有恢复DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,根据通道名称,将该带有恢复DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的单向消息通道发送到Qt服务器,Qt服务器将收到的带有恢复DLNA业务参数和消息类型的数据包转发至DLNA模块;
步骤208、DLNA模块收到Qt服务器发来的带有恢复DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的恢复DLNA业务参数,并根据恢复DLNA业务参数恢复DLNA业务,显示DLNA业务界面,用户继续进行DLNA业务。
实施例3、用户进行视频通信业务时收到DLNA推送请求、建立一个切换业务的双向消息通道
参见图3所示,用户进行视频通信业务时收到DLNA推送请求下,包括以下步骤:
步骤301、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立一个切换业务的双向消息通道;
步骤302、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤303、用户在使用视频通信业务的过程中,收到来自平板电脑、手机等的DLNA推送请求;
步骤304、DLNA模块采用二进制数据流保存数据,生成停止视频通信业务参数,并根据该停止视频通信业务参数生成从DLNA模块发往视频通信模块的消息类型,将该停止视频通信业务参数和消息类型封装成带有停止视频通信业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该停止视频通信业务参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器;Qt服务器将收到的停止视频通信业务参数和消息类型的数据包转发至视频通信模块;
步骤305、视频通信模块收到Qt服务器发来的停止视频通信业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的停止视频通信业务参数,并根据该停止视频通信业务参数挂机结束视频通话;
步骤306、视频通话结束后,视频通信模块采用二进制数据流保存数据,恢复DLNA业务参数,并根据该恢复DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该恢复DLNA业务参数和消息类型封装成带有恢复DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有恢复DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器,Qt服务器将收到的带有恢复DLNA业务参数和消息类型的数据包转发至DLNA模块;
步骤307、DLNA模块收到Qt服务器发来的带有恢复DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的恢复DLNA业务参数,DLNA模块根据恢复DLNA业务参数开始进行媒体播放。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明包含这些改动和变型在内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (11)

1.一种视频通信业务与DLNA业务融合的装置,其特征在于:该装置包括视频通信模块、DLNA模块、消息通道建立模块,所述视频通信模块和DLNA模块都是基于嵌入式Qt的客户端,其中:
所述消息通道建立模块,用于:通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
所述视频通信模块,用于:与IMS服务器交互进行登记,实现音频、视频的编码、传输、解码播放;采用二进制数据流保存数据,生成DLNA业务参数,所述DLNA业务参数包括回到导航页面参数、停止DLNA业务参数、拒接来电继续DLNA业务参数、恢复DLNA业务参数;再根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,再将DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,通过切换业务的消息通道将该带有DLNA业务参数和消息类型的数据包发送到Qt服务器;以及收到Qt服务器转发来的带有视频业务参数和消息类型的数据包时,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的视频业务参数,根据视频业务参数的种类进行处理;
所述DLNA模块,用于:实现数字媒体的记录、存储、查找、播放、渲染;采用二进制数据流保存数据,生成视频业务参数,所述视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数、停止视频通信业务参数;再根据视频业务参数生成从DLNA模块发往视频通信模块的消息类型,并该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;以及收到Qt服务器发来的带有DLNA业务参数和消息类型的数据包时,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的DLNA业务参数,根据DLNA业务参数的种类进行处理。
2.如权利要求1所述的视频通信业务与DLNA业务融合的装置,其特征在于:所述视频通信模块包括第一参数生成单元、第一消息类型生成单元、第一封装单元、第一发送单元、第一接收单元、第一解析单元、第一处理单元;
所述第一参数生成单元,用于:采用二进制数据流保存数据,生成DLNA业务参数,并将DLNA业务参数发送到第一消息类型生成单元;
所述第一消息类型生成单元,用于:收到第一参数生成单元发来的DLNA业务参数后,根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,并将该DLNA业务参数和消息类型一起发送到第一封装单元;
所述第一封装单元,用于:收到第一消息类型生成单元发来的DLNA业务参数和消息类型后,将DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,再将该带有DLNA业务参数和消息类型的数据包发送到第一发送单元;
所述第一发送单元,用于:收到第一封装单元发来带有DLNA业务参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将该带有DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;
所述第一接收单元,用于:收到Qt服务器转发给视频通信模块的带有视频业务参数和消息类型的数据包时,生成第一解析触发信号,并将接收到的带有视频业务参数和消息类型的数据包和第一解析触发信号一起发送到第一解析单元;
所述第一解析单元,用于:接收到第一接收单元发来的带有视频业务参数和消息类型的数据包和第一解析触发信号时,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则生成第一处理触发信号,并将该带有视频业务参数和消息类型的数据包和第一处理触发信号一起发送到第一处理单元;
所述第一处理单元,用于:收到第一解析单元发来的带有视频业务参数和消息类型的数据包和第一处理触发信号时,取出该数据包中的视频业务参数,根据视频业务参数的种类进行处理。
3.如权利要求2所述的视频通信业务与DLNA业务融合的装置,其特征在于:所述DLNA模块包括第二参数生成单元、第二消息类型生成单元、第二封装单元、第二发送单元、第二接收单元、第二解析单元、第二处理单元;
所述第二参数生成单元,用于:采用二进制数据流保存数据,生成视频业务参数,并将视频业务参数发送到第二消息类型生成单元;
所述第二消息类型生成单元,用于:收到第二参数生成单元发来的视频业务参数时,根据该视频业务参数生成从DLNA模块发往视频通信模块的消息类型,并将该视频业务参数和消息类型一起发送到第二封装单元;
所述第二封装单元,用于:收到第二消息类型生成单元发来的视频业务参数和消息类型后,将该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,并将该带有视频业务参数和消息类型的数据包发送到第二发送单元;
所述第二发送单元,用于:收到第二封装单元发来的带有视频业务参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;
所述第二接收单元,用于:收到Qt服务器转发给DLNA模块的带有DLNA业务参数和消息类型的数据包时,生成第二解析触发信号,并将接收到的带有DLNA业务参数和消息类型的数据包和第二解析触发信号一起发送到第二解析单元;
所述第二解析单元,用于:收到第二接收单元发来的带有DLNA业务参数和消息类型的数据包和第二解析触发信号时,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则生成第二处理触发信号,并将该带有DLNA业务参数和消息类型的数据包和第二处理触发信号一起发送到第二处理单元;
所述第二处理单元,用于:收到第二解析单元发来的带有DLNA业务参数和消息类型的数据包和第二处理触发信号时,取出该数据包中的DLNA业务参数,根据DLNA业务参数的种类进行处理。
4.如权利要求1至3中任一项所述的视频通信业务与DLNA业务融合的装置,其特征在于:所述切换业务的消息通道为一个双向消息通道,视频通信模块和DLNA模块均通过所述双向消息通道发送业务切换的消息。
5.如权利要求1至3中任一项所述的视频通信业务与DLNA业务融合的装置,其特征在于:所述切换业务的消息通道为两个独立的单向消息通道,视频通信模块通过其中一个消息通道发送业务切换的消息,DLNA模块通过其中另一个消息通道发送业务切换的消息。
6.一种基于权利要求1至5中任一项所述装置的视频通信业务与DLNA业务融合的方法,其特征在于,包括以下步骤:
S1、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
S2、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
S3、用户主叫情况下:用户在使用DLNA业务时,DLNA模块通过DLNA用户界面进入本地导航页面,主动停止DLNA业务,选择视频通信业务;或者
用户被叫情况下:视频通信模块收到呼入事件请求消息,通过消息通道建立模块建立的切换业务的消息通道发送停止DLNA业务的消息到Qt服务器,Qt服务器再转发到DLNA模块,DLNA模块停止DLNA业务;或者
用户在进行视频通信业务的过程中收到DLNA推送请求时,通过消息通道建立模块建立的切换业务的消息通道发送停止视频通信业务的消息到Qt服务器,Qt服务器再转发到视频通信模块,视频通信模块停止视频通信业务;
S4、DLNA模块采用二进制数据流保存数据,生成视频业务参数,视频业务参数包括主叫显示视频通信页面参数、被叫显示视频通信页面参数、停止视频通信业务参数,DLNA模块根据生成的视频业务参数生成从DLNA模块发往视频通信模块的消息类型,将该视频业务参数和消息类型封装成带有视频业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有视频业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;Qt服务器将收到的带有视频业务参数和消息类型的数据包转发至视频通信模块;
S5、视频通信模块收到Qt服务器发来的带有视频业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的视频业务参数,视频通信模块根据该视频通信业务参数进行处理;
S6、视频通话结束后,隐藏视频通信主界面,视频通信模块采用二进制数据流保存数据,生成DLNA业务参数,所述DLNA业务参数包括回到导航页面参数、停止DLNA业务参数、拒接来电继续DLNA业务参数、恢复DLNA业务参数;再根据该DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该DLNA业务参数和消息类型封装成带有DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有DLNA业务参数和消息类型的数据包转发至DLNA模块;
S7、DLNA模块收到Qt服务器发来的带有DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的DLNA业务参数,DLNA模块根据该DLNA业务参数进行处理。
7.如权利要求6所述的视频通信业务与DLNA业务融合的方法,其特征在于:所述用户主叫情况下,包括以下步骤:
步骤101、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
步骤102、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤103、用户在使用DLNA业务时,DLNA模块通过DLNA用户界面进行人机交互,进入本地导航页面,主动停止DLNA业务,选择视频通信业务;
步骤104、DLNA模块接收到用户选择视频通信业务的指令时,DLNA模块采用二进制数据流保存数据,生成主叫显示视频通信页面参数,并根据该主叫显示视频通信页面参数生成从DLNA模块发往视频通信模块的消息类型,将该主叫显示视频通信页面参数和消息类型封装成带有主叫显示视频通信页面参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有主叫显示视频通信页面参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器;Qt服务器将收到的带有主叫显示视频通信页面参数和消息类型的数据包转发至视频通信模块;
步骤105、视频通信模块收到Qt服务器发来的带有主叫显示视频通信页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的主叫显示视频通信页面参数,并根据该主叫显示视频通信页面参数显示视频通信主界面,用户通过视频通信主界面可以进行拨号呼叫,建立视频通话;
步骤106、视频通话结束后,用户操作返回键,隐藏视频通信主界面,视频通信模块采用二进制数据流保存数据,生成回到导航页面参数,并根据该回到导航页面参数生成从视频通信模块发往DLNA模块的消息类型,将该回到导航页面参数和消息类型封装成带有回到导航页面参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有回到导航页面参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有回到导航页面参数和消息类型的数据包转发至DLNA模块;
步骤107、DLNA模块收到Qt服务器发来的带有回到导航页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的回到导航页面参数,DLNA模块根据该回到导航页面参数回到导航页面。
8.如权利要求6所述的视频通信业务与DLNA业务融合的方法,其特征在于:所述用户被叫情况下,包括以下步骤:
步骤201、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立切换业务的消息通道;
步骤202、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤203、视频通信模块收到呼入事件请求消息,在当前使用的DLNA业务界面上置顶来电提醒对话框,如果用户选择接听,则接受呼叫请求,视频通信模块采用二进制数据流保存数据,生成停止DLNA业务参数,并根据该停止DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该停止DLNA业务参数和消息类型封装成带有停止DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有停止DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有停止DLNA业务参数和消息类型的数据包转发至DLNA模块;
如果用户选择拒绝接听,则关闭来电提醒对话框,视频通信模块采用二进制数据流保存数据,生成拒接来电继续DLNA业务参数,并根据该拒接来电继续DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该拒接来电继续DLNA业务参数和消息类型封装成带有拒接来电继续DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有拒接来电继续DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有停止DLNA业务参数和消息类型的数据包转发至DLNA模块,DLNA模块将继续进行DLNA业务;
步骤204、DLNA模块收到Qt服务器发来的带有停止DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的停止DLNA业务参数,并根据该停止DLNA业务参数停止DLNA业务,隐藏DLNA业务界面;
步骤205、DLNA模块采用二进制数据流保存数据,生成被叫显示视频通信页面参数,并根据该被叫显示视频通信页面参数生成从DLNA模块发往视频通信模块的消息类型,将该被叫显示视频通信页面参数和消息类型封装成带有被叫显示视频通信页面参数和消息类型的数据包后,采用Qt通信协议通道的发送函数,将带有被叫显示视频通信页面参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有被叫显示视频通信页面参数和消息类型的数据包转发至视频通信模块;
步骤206、视频通信模块收到Qt服务器发来的带有被叫显示视频通信页面参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的被叫显示视频通信页面参数,并根据该被叫显示视频通信页面参数显示视频通信主界面,给IMS发应答消息,建立呼叫连接;
步骤207、视频通话结束后,视频通信模块释放资源,隐藏视频通信界面,采用二进制数据流保存数据,生成恢复DLNA业务参数,并根据该恢复DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该恢复DLNA业务参数和消息类型封装成带有恢复DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有恢复DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的切换业务的消息通道发送到Qt服务器,Qt服务器将收到的带有恢复DLNA业务参数和消息类型的数据包转发至DLNA模块;
步骤208、DLNA模块收到Qt服务器发来的带有恢复DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的恢复DLNA业务参数,并根据恢复DLNA业务参数恢复DLNA业务,显示DLNA业务界面,用户继续进行DLNA业务。
9.如权利要求6所述的视频通信业务与DLNA业务融合的方法,其特征在于:所述用户进行视频通信业务的过程中收到DLNA推送请求时,包括以下步骤:
步骤301、消息通道建立模块启动后通过QCOP协议子类化Qt通信协议通道,在Qt通信协议通道中指定字符串作为消息通道的名称,建立一个切换业务的双向消息通道;
步骤302、视频通信模块启动,视频通信模块中的登记单元与IMS服务器交互进行登记;
步骤303、用户在使用视频通信业务的过程中收到DLNA推送请求;
步骤304、DLNA模块采用二进制数据流保存数据,生成停止视频通信业务参数,并根据该停止视频通信业务参数生成从DLNA模块发往视频通信模块的消息类型,将该停止视频通信业务参数和消息类型封装成带有停止视频通信业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该停止视频通信业务参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器;Qt服务器将收到的停止视频通信业务参数和消息类型的数据包转发至视频通信模块;
步骤305、视频通信模块收到Qt服务器发来的停止视频通信业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从DLNA模块发往视频通信模块的消息类型,则取出该数据包中的停止视频通信业务参数,并根据该停止视频通信业务参数挂机结束视频通话;
步骤306、视频通话结束后,视频通信模块采用二进制数据流保存数据,恢复DLNA业务参数,并根据该恢复DLNA业务参数生成从视频通信模块发往DLNA模块的消息类型,将该恢复DLNA业务参数和消息类型封装成带有恢复DLNA业务参数和消息类型的数据包,采用Qt通信协议通道的发送函数,将该带有恢复DLNA业务参数和消息类型的数据包,通过消息通道建立模块建立的双向消息通道发送到Qt服务器,Qt服务器将收到的带有恢复DLNA业务参数和消息类型的数据包转发至DLNA模块;
步骤307、DLNA模块收到Qt服务器发来的带有恢复DLNA业务参数和消息类型的数据包后,解析该数据包中的消息类型,若该数据包中的消息类型为从视频通信模块发往DLNA模块的消息类型,则取出该数据包中的恢复DLNA业务参数,DLNA模块根据恢复DLNA业务参数开始进行媒体播放。
10.如权利要求6至9中任一项所述的视频通信业务与DLNA业务融合的方法,其特征在于:所述切换业务的消息通道为一个双向消息通道,视频通信模块和DLNA模块均通过所述双向消息通道发送业务切换的消息。
11.如权利要求6至9中任一项所述的视频通信业务与DLNA业务融合的方法,其特征在于:所述切换业务的消息通道为两个独立的单向消息通道,视频通信模块通过其中一个消息通道发送业务切换的消息,DLNA模块通过其中另一个消息通道发送业务切换的消息。
CN201210486863.5A 2012-11-26 2012-11-26 视频通信业务与dlna业务融合的装置及方法 Active CN103023880B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210486863.5A CN103023880B (zh) 2012-11-26 2012-11-26 视频通信业务与dlna业务融合的装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210486863.5A CN103023880B (zh) 2012-11-26 2012-11-26 视频通信业务与dlna业务融合的装置及方法

Publications (2)

Publication Number Publication Date
CN103023880A CN103023880A (zh) 2013-04-03
CN103023880B true CN103023880B (zh) 2015-04-29

Family

ID=47972011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210486863.5A Active CN103023880B (zh) 2012-11-26 2012-11-26 视频通信业务与dlna业务融合的装置及方法

Country Status (1)

Country Link
CN (1) CN103023880B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104349204A (zh) * 2013-08-09 2015-02-11 上海未来宽带技术股份有限公司 基于http长连接的机顶盒双向长连接系统
CN105657729A (zh) * 2014-12-01 2016-06-08 中兴通讯股份有限公司 一种终端的处理方法和终端
CN112188138A (zh) * 2019-07-03 2021-01-05 西安诺瓦星云科技股份有限公司 数据传输方法、装置以及系统
CN111865756A (zh) * 2020-06-04 2020-10-30 中国软件与技术服务股份有限公司 一种基于Qt的跨多平台即时通信方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7432951B1 (en) * 2004-03-31 2008-10-07 Avaya Technology Corp. Video-telephony integration
CN101282454A (zh) * 2008-05-14 2008-10-08 中山大学 一种基于ip机顶盒的视频通讯系统
CN101888516A (zh) * 2009-05-13 2010-11-17 中兴通讯股份有限公司 一种实现视频通讯的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7432951B1 (en) * 2004-03-31 2008-10-07 Avaya Technology Corp. Video-telephony integration
CN101282454A (zh) * 2008-05-14 2008-10-08 中山大学 一种基于ip机顶盒的视频通讯系统
CN101888516A (zh) * 2009-05-13 2010-11-17 中兴通讯股份有限公司 一种实现视频通讯的方法及系统

Also Published As

Publication number Publication date
CN103023880A (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN1943131B (zh) 用于在无线移动终端与联网计算机之间进行消息通信的方法、系统和装置
JP5120851B2 (ja) ウェブ・ベース統合通信システム及び方法、及びウェブ通信マネージャ
CA2721062C (en) Differentiated message delivery notification
EP2132637B1 (en) Communication terminal, method for controlling communication terminal
CN101331732A (zh) 向用户提供服务混合的方法和网络
CN101554051A (zh) 数字通信适配器
CN103023880B (zh) 视频通信业务与dlna业务融合的装置及方法
EP4262320A1 (en) Call processing system and call processing method
KR20120018708A (ko) 커뮤니케이션 서비스 수행 도중 멀티미디어 콘텐츠 제공 방법 및 시스템
CN102984596B (zh) 视频通信业务与iptv业务融合的装置及方法
CN108574689B (zh) 一种可视通话的方法和装置
CN100581197C (zh) 一种获取媒体特征信息的方法和系统以及终端设备
CN103684992B (zh) 家庭网关、终端和数据共享方法
CN111147789A (zh) 一种音视频流录制的方法、装置、设备以及存储介质
CN101651759B (zh) 媒体播放的控制方法、系统和设备
CN108989737B (zh) 一种数据播放方法、装置和电子设备
CN102763078A (zh) 将在手持机上执行的多媒体应用与独立的且连通的计算设备对接
CN101277206A (zh) 一种业务触发系统、方法及业务交互功能实体
CN100531153C (zh) 在ip多媒体通信网络上提供信息资源展示的系统和方法
CN101155110B (zh) 一种实现业务集成的方法及系统
CN101442434A (zh) 一种提供区别服务的方法、系统及装置
US20140112462A1 (en) System and method for allowing virtual private network users to obtain presence status and/or location of others on demand
CN101090479A (zh) 通过互联网协议网络上的话音在视频电话上接入电视和视频业务
US20090265477A1 (en) Method of communicating between several terminals
US8892075B2 (en) Selective generation of conversations from individually recorded communications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant