具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1所示为根据本发明的较佳实施例提供的多画面合成方法的流程图。如图1所示,本发明的较佳实施例提供的多画面合成方法包括步骤101-106。
于步骤101:控制器将待获取视频流信息发送到输入流控制设备。
其中,待获取视频流信息中携带了视频流地址信息、视频流格式信息和视频流大小信息。
其中,视频流格式包括RGB32、RGB24、Y8、YUY2、NV12、AYUV、YV12、I420、Y41P、VYUY、YUYV、UYVY。
其中,所述视频流包括:教师视频流、学生视频流。
步骤102:所述输入流控制设备根据接收到的所述待获取视频流信息获取对应的视频流,同时发送通知消息至所述控制器。
步骤103:所述控制器接收到所述通知消息后,设置与所述视频流对应的初始输入参数数据并将所述初始输入参数数据发送至所述输入流控制设备;同时,所述控制器设置所述视频流对应的目标输出参数数据并将所述目标输出参数数据发送至所述输出流控制设备。
其中,初始输入参数数据包括:目标拼接位置参数、拼接画面参数、目标拼接大小参数和特技参数。
其中,目标拼接位置参数是指:拼接画面在目标画面中的位置坐标。
其中,拼接画面参数是指:拼接画面的拼接区域大小。
其中,目标拼接大小参数是指:拼接画面在目标画面中的显示大小。
其中,特技参数包括画面透明度、颜色校正、对比度。
其中,目标输出参数数据包括:目标画面存储空间参数、目标画面像素格式参数、目标画面背景图片或背景色参数、目标画面的大小参数。
其中,目标画面存储空间参数是指:目标画面的存储位置和存储大小。
其中,目标画面像素格式参数是指:目标画面像素存储的格式。
其中,目标画面的大小参数是指:目标画面的显示大小。
步骤104:所述输入流控制设备将获取的视频流及所述初始输入参数数据进行封装,获得第一数据包并将所述第一数据包发送至图像处理设备;所述输出流控制设备对所述目标输出参数数据进行封装,获得第二数据包并将所述第二数据包发送至所述图像处理设备。
步骤105:所述图像处理设备接收到所述输入流控制设备发送的所述第一数据包和所述输出流控制设备发送的所述第二数据包后,进行图像处理并将图像处理结果发送至所述控制器。
其中,所述图像处理是指将拼接画面按照初始输入参数数据和目标输出参数数据的设置进行处理得到目标画面的过程。
步骤106:所述控制器根据接收的所述图像处理结果,结合从显示处理设备中获取的画面显示数量与分辨率对照表,确定所述显示处理设备中目标画面的分辨率。
其中,所述控制器从显示处理设备中获取画面显示数量与分辨率对照表的方式为:
显示处理设备预先按照画面显示数量范围,确定对应的显示分辨率,形成画面显示数量与分辨率对照表,并将形成的所述画面显示数量与分辨率对照表发送至所述控制器;
所述控制器根据接收的所述图像处理结果后,向显示处理设备发送获取请求;所述显示处理设备接收所述获取请求后,将存储的所述画面显示数量与分辨率对照表发送至所述控制器。
其中,所述显示处理设备的数目为一个或多个。
其中,画面显示数量与分辨率对照表,如表1所示
其中,所述第一预设值<第二预设值<第三预设值。
下面举例进行详细说明,控制器将包含有教师视频流地址信息、教师视频流格式信息和教师视频流大小信息的待获取教师视频流信息发送到输入流控制设备,输入流控制设备根据待获取教师视频流信息获得一路RGB32格式、大小为800M的教师视频流,同时输入流控制设备将通知消息发送至控制器,控制器接收到通知消息后,将教师视频流的拼接画面参数设置为教师头部,其画面大小为4×5,同时将目标拼接大小参数设为8×10cm、画面透明度设为30%,并将上述初始输入参数数据发送给输入流控制设备。同时,控制器设置该教师视频流对应的目标输出参数数据,所述目标输出参数数据包括目标画面存储空间参数、目标画面像素格式参数、目标画面背景图片或背景色参数、目标画面的大小参数,本实施例中将存储位置设置于显示处理设备中、存储大小设为300M、目标画面的大小参数设为20×15cm、目标画面背景色设为红色,其余参数不做限定,输入流控制设备将教师视频流和其对应的上述初始输入参数数据进行封装,获得第一数据包并将第一数据包发送至图像处理设备;输出流控制设备对上述目标输出参数数据进行封装,获得第二数据包并将所述第二数据包发送至图像处理设备。所述图像处理设备接收到输入流控制设备发送的第一数据包和所述输出流控制设备发送的第二数据包后,进行图像处理并将图像处理结果发送至控制器,所述控制器根据接收的图像处理结果,向显示处理设备发送获取请求,显示处理设备接收所述获取请求后,将画面显示数量与分辨率对照表发送至控制器,画面显示数量与分辨率对照表,如表2所示,
表2
由于只接收到一路教师视频流,因而画面显示数目N为1,对应的在800×600、1024×768、1280×600中选择分辨率,随机选择1024×768作为图像处理结果中目标画面的分辨率,通过显示处理设备显示,得到分辨率为1024×768的目标画面。
当输入流控制设备获取到多个视频流时,所述控制器设置多个与所述视频流对应的初始输入参数数据并将多个初始输入参数数据发送至输入流控制设备,同时,所述控制器设置多个视频流共同对应的1个目标输出参数数据并将所述目标输出参数数据发送至输出流控制设备,所述输入流控制设备将获取的多个视频流分别与其对应的初始输入参数数据进行封装,获得多个第一数据包,并将所述多个第一数据包发送至图像处理设备;所述输出流控制设备对目标输出参数数据进行封装,获得第二数据包并将所述第二数据包发送至所述图像处理设备,所述图像处理设备接收到所述输入流控制设备发送的多个第一数据包和所述输出流控制设备发送的1个第二数据包后,进行图像处理;其中每个视频流对应一个第一数据包,此时,图像处理结果中显示的为多个画面。
图2所示为根据本发明的较佳实施例提供的多画面合成系统的示意图。如图2所示,本发明的较佳实施例提供的多画面合成系统,包括控制器、输入流控制设备、输出流控制设备和图像处理设备;其中,所述控制器分别与所述输入流控制设备、所述输出流控制设备、所述图像处理设备相连;所述图像处理设备分别与所述输入流控制设备、所述输出流控制设备相连;所述输入流控制设备,用于获取视频流并且在获取视频流后,向所述控制器发送通知消息;还用于接收所述控制器发送的所述视频流对应的初始输入参数数据;还用于将获取的所述视频流及所述初始输入参数数据进行封装,获得第一数据包并将所述第一数据包发送至图像处理设备;所述控制器,用于接收所述输入流控制设备发送的通知消息;还用于设置分别与所述视频流对应的初始输入参数数据和目标输出参数数据,并将所述初始输入参数数据发送到所述输入流控制设备,将所述目标输出参数数据发送到输出流控制设备;还用于接收所述图像处理设备发送的图像处理结果;所述输出流控制设备,用于接收所述控制器发送的目标输出参数数据并对所述目标输出参数数据进行封装,获得第二数据包并将所述第二数据包发送至所述图像处理设备;所述图像处理设备,用于接收到所述第一数据包和所述第二数据包后,进行图像处理,获得图像处理结果;还用于将所述图像处理结果发送至所述控制器。
本发明的较佳实施例提供的多画面合成系统,还包括显示处理设备,其中,所述显示处理设备分别与所述图像处理设备和所述控制器相连;所述显示处理设备,用于接收并显示所述图像处理设备发送来的图像处理结果;还用于按照所述控制器确定的显示分辨率进行显示。
此外,关于上述系统的具体操作过程同上述方法所述,故于此不再赘述。
综上所述,根据本发明较佳实施例提供的多画面合成方法及系统,在控制器的控制下,将多个不同格式的视频流处理为一个目标画面处理结果,通过图像处理设备将输入流控制设备发送来的第一数据包和输出流控制设备发送来的第二数据包进行图像处理,将图像处理结果发送至控制器,控制器根据接收的所述图像处理结果,结合从显示处理设备中获取的画面显示数量与分辨率对照表,确定所述显示处理设备的分辨率,得到对应分辨率的目标画面,这样不仅能根据不同的画面数目选择合适的分辨率,而且该方法处理速度快、效果好,能方便灵活地对图像处理结果的参数进行更改。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。