电子设备及视讯框排列方法与流程

文档序号:16929268发布日期:2019-02-22 20:07阅读:168来源:国知局
电子设备及视讯框排列方法与流程

本发明涉及电子设备显示技术领域,尤其涉及一种电子设备及视讯框排列方法。



背景技术:

现有的视频会议软件的视讯框排版,均是在固定大小的窗口上固定排版视讯框的。然而窗口的大小无法随着不同的需求而改变,对用户使用的时候会造成极为不便。



技术实现要素:

鉴于以上内容,有必要提供一种视讯框排列方法,可以在显示屏上优化视讯框的排列。

鉴于以上内容,有必要提供一种电子设备,可以在显示屏上优化视讯框的排列。

所述视讯框排列方法,应用于包括显示屏的电子设备中,该方法包括:生成一个视窗并将该视窗显示于所述显示屏上;根据采集视频的摄像头的总个数x确定需生成x个视讯框,该x个视讯框分别用于对应播放该x个摄像头所采集的视频;从所述x个视讯框中确定一个主视讯框,x-1个副视讯框;根据所述视窗的长以及预设的长宽比例生成所述主视讯框,将所生成的主视讯框显示于所述视窗内;确定所述视窗的剩余版面的宽度,并根据所述视窗的剩余版面的宽度及所述预设的长宽比例计算得出一个参照长度;根据所述参照长度计算所述x-1个副视讯框的参照总长度,所述参照总长度等于所述参照长度与所述x-1的值的乘积;当所述参照总长度小于或等于所述视窗的长度时,确定每个副视讯框的宽等于当前剩余版面的宽度,每个副视讯框的长等于所述参照长度,并相应生成x-1个副视讯框,并将所述x-1个副视讯框排列到同一行并显示于所述视窗的剩余版面;当所述参照总长度大于所述视窗的长度时,确定所述x-1个副视讯框按照总行数r行来排列;根据所述总行数r以及所述副视讯框的总个数x-1计算当前每行最多排列副视讯框的总个数y;根据所述视窗的大小以及所计算得到的所述总个数y计算每个副视讯框的目标尺寸;当计算得到所述每个副视讯框的目标尺寸时,判断所述x-1个副视讯框是否可以按照r+1行来排列,并当所述x-1个副视讯框可以按照r+1行来排列时,将当前所述总行数r加1,重新计算所述总个数y及所述目标尺寸;当所述x-1个副视讯框不可以按照r+1行来排列时,将当前的剩余版面的宽度除以当前所述总行数r计算出每个副视讯框的实际宽度,根据所述实际宽度以及所述预设的长宽比例计算每个副视讯框的实际长度,根据所述实际长度和实际宽度生成x-1个副视讯框;根据当前所述总行数r以及所计算得到的所述总个数y在所述视窗的剩余版面内排列显示所生成的x-1个副视讯框。

优选地,所述视窗的大小等于所述显示屏的大小。

优选地,所述总个数y等于所述总个数x-1除以当前所述总行数r,若所述第一总个数x-1除以当前所述总行数r具有小数位,小数点后的数值无条件进位。

优选地,所述计算每个副视讯框的目标尺寸的步骤包括:将所述视窗的长除以所述总个数y计算得出每个副视讯框的目标长;及根据所述预设的长宽比例计算得出每个副视讯框的目标宽,将所计算得出的每个副视讯框的目标长和每个副视讯框的目标宽作为所述每个副视讯框的目标尺寸。

优选地,该方法中,于首次设置所述总行数r时,将该r设置为1。

所述的电子设备包括:显示屏;存储器;处理器;所述存储器中存储有计算机指令,所述处理器执行该计算机指令使得该处理器执行如下步骤:生成一个视窗并将该视窗显示于所述显示屏上;根据采集视频的摄像头的总个数x确定需生成x个视讯框,该x个视讯框分别用于对应播放该x个摄像头所采集的视频;从所述x个视讯框中确定一个主视讯框,x-1个副视讯框;根据所述视窗的长以及预设的长宽比例生成所述主视讯框,将所生成的主视讯框显示于所述视窗内;确定所述视窗的剩余版面的宽度,并根据所述视窗的剩余版面的宽度及所述预设的长宽比例计算得出一个参照长度;根据所述参照长度计算所述x-1个副视讯框的参照总长度,所述参照总长度等于所述参照长度与所述x-1的值的乘积;当所述参照总长度小于或等于所述视窗的长度时,确定每个副视讯框的宽等于当前剩余版面的宽度,每个副视讯框的长等于所述参照长度,并相应生成x-1个副视讯框,并将所述x-1个副视讯框排列到同一行并显示于所述视窗的剩余版面;当所述参照总长度大于所述视窗的长度时,确定所述x-1个副视讯框按照总行数r行来排列;根据所述总行数r以及所述副视讯框的总个数x-1计算当前每行最多排列副视讯框的总个数y;根据所述视窗的大小以及所计算得到的所述总个数y计算每个副视讯框的目标尺寸;当计算得到所述每个副视讯框的目标尺寸时,判断所述x-1个副视讯框是否可以按照r+1行来排列,并当所述x-1个副视讯框可以按照r+1行来排列时,将当前所述总行数r加1,重新计算所述总个数y及所述目标尺寸;当所述x-1个副视讯框不可以按照r+1行来排列时,将当前的剩余版面的宽度除以当前所述总行数r计算出每个副视讯框的实际宽度,根据所述实际宽度以及所述预设的长宽比例计算每个副视讯框的实际长度,根据所述实际长度和实际宽度生成x-1个副视讯框;根据当前所述总行数r以及所计算得到的所述总个数y在所述视窗的剩余版面内排列显示所生成的x-1个副视讯框。

优选地,所述视窗的大小等于所述显示屏的大小。

优选地,所述总个数y等于所述总个数x-1除以当前所述总行数r,若所述第一总个数x-1除以当前所述总行数r具有小数位,小数点后的数值无条件进位。

优选地,所述计算每个副视讯框的目标尺寸的步骤包括:将所述视窗的长除以所述总个数y计算得出每个副视讯框的目标长;及根据所述预设的长宽比例计算得出每个副视讯框的目标宽,将所计算得出的每个副视讯框的目标长和每个副视讯框的目标宽作为所述每个副视讯框的目标尺寸。

优选地,首次设置所述总行数r时,将该r设置为1。

相较于现有技术,利用所述电子设备及视讯框排列方法,可以在显示屏上优化视讯框的排列。

附图说明

图1是本发明视讯框排列系统较佳实施例的应用环境图。

图2是本发明视讯框排列系统较佳实施例的功能模块图。

图3是本发明视讯框排列方法较佳实施例的流程模块图。

图4a举例说明视讯框的剩余版面。

图4b举例说明在视讯框的剩余版面中排列副视讯框。

主要元件符号说明

如下具体实施方式将结合上述附图进一步说明本发明。

具体实施方式

参阅图1所示,是本发明视讯框排列系统较佳实施例的应用环境图。在本实施例中,电子设备1包括,但不限于,视讯框排列系统10、摄像头11、通讯设备12、显示屏13、存储器14及处理器15。所述电子设备1与多个视讯采集设备2(图中仅示出2个)利用通讯设备12、22建立通讯连接。每个视讯采集设备2还包括,但不限于,摄像头21。视讯采集设备2利用摄像头21实时采集视频,并通过所述通讯设备22传送给所述电子设备1。

所述电子设备1及视讯采集设备2可以为手机、个人电脑、平板电脑、个人数字助理等设备。需要说明的是,本实施例只是对所述电子设备1及视讯采集设备2的结构进行简单的说明,该所述电子设备1、视讯采集设备2还可以包括其他元件,如电路系统、音效系统、i/o接口、电池、操作系统等。

本实施例中,所述摄像头11可以内接或外接于所述电子设备1。所述摄像头21可以内接或外接于所述视讯采集设备2。

所述通讯设备12、22可以通过任何传统的有线网络及/或无线网络使得所述电子设备1和视讯采集设备2可以建立通讯连接。该有线网络可以为传统有线通讯的任何类型,例如因特网、局域网。该无线网络可以为传统无线通讯的任何类型,例如无线电、无线保真(wirelessfidelity,wifi)、蜂窝、卫星、广播等。无线通讯技术可以包括,但不限于,全球移动通信系统(globalsystemformobilecommunications,gsm)、通用分组无线业务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma),宽带码分多址(w-cdma)、cdma2000、imt单载波(imtsinglecarrier)、增强型数据速率gsm演进(enhanceddataratesforgsmevolution,edge)、长期演进技术(long-termevolution,lte)、高级长期演进技术、时分长期演进技术(time-divisionlte,td-lte)、高性能无线电局域网(highperformanceradiolocalareanetwork,hiperlan)、高性能无线电广域网(highperformanceradiowideareanetwork,hiperwan)、本地多点派发业务(localmultipointdistributionservice,lmds)、全微波存取全球互通(worldwideinteroperabilityformicrowaveaccess,wimax)、紫蜂协议(zigbee)、蓝牙、正交频分复用技术(flashorthogonalfrequency-divisionmultiplexing,flash-ofdm)、大容量空分多路存取(highcapacityspatialdivisionmultipleaccess,hc-sdma)、通用移动电信系统(universalmobiletelecommunicationssystem,umts)、通用移动电信系统时分双工(umtstime-divisionduplexing,umts-tdd)、演进式高速分组接入(evolvedhighspeedpacketaccess,hspa+)、时分同步码分多址(timedivisionsynchronouscodedivisionmultipleaccess,td-scdma)、演进数据最优化(evolution-dataoptimized,ev-do)、数字增强无绳通信(digitalenhancedcordlesstelecommunications,dect)及其他。

所述显示屏13可以为支持多点触控的触控面板(multi-touchpanel),如电阻式触摸屏或电容式触摸屏等。在其他实施例中,所述显示屏13也可以不是触摸屏,当需要输入信息到电子设备1时,则可以透过该电子设备1分别所配置的输入设备例如键盘(图中未示出)来实现信息的输入。

本实施例中,所述存储器14可以用于存储所述电子设备1的各类数据,例如该存储器14可以用于存储所述视讯框排列系统10的程序代码。在一个实施例中,所述存储器14可以是电子设备1本身的内存,也可以是外部存储卡,例如sd卡(securedigitalcard,安全数字卡)等。

所述处理器15可以为中央处理器(cpu,centralprocessingunit),微处理器,或任何能够执行数据处理功能的处理器芯片。

在本实施例中,所述的视讯框排列系统10可以根据所述显示屏13的大小(例如该显示屏13的分辨率)生成一个视窗并将该视窗显示于所述显示屏13上。所述视讯框排列系统10还生成多个视讯框,该多个视讯框分别对应播放摄像头11、21所采集的视频。所述视讯框排列系统10还对该多个视讯框进行排列,并在所述视窗内显示所述视讯框。

本实施例中,所述视窗的大小的最大尺寸大致与所述显示屏的大小相同。

在本实施例中,所述的视讯框排列系统10可以包括一个或多个程序形式的计算机指令,该一个或多个程序形式的计算机指令存储于所述存储器14中,并由所述处理器15执行,以实现本发明所提供的功能。参阅图2所示,本实施例中,所述视讯框排列系统10可以分割成生成模块101、分析模块102、及排列模块103。本发明所称的模块是能够完成一特定功能的程序段,比程序更适合用于描述软件在电子设备1中的执行过程,关于各模块的详细功能将在下面作具体描述。

参阅图3所示,是本发明视讯框排列方法较佳实施例的方法流程图。根据不同的需求,图3所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。

步骤s31,所述生成模块101根据所述显示屏13的尺寸(例如该显示屏13的分辨率)生成一个视窗并将该视窗显示于所述显示屏13上。该视窗的大小可以等于所述显示屏13的大小。

所述分析模块102根据采集视频的摄像头的总个数x确定需生成x个视讯框。该x个视讯框分别用于对应播放该x个摄像头所采集的视频。即视讯框的总个数与所述采集视频的摄像头的总个数相同。

所述分析模块102从所述x个视讯框中确定一个主视讯框,其他x-1个为副视讯框。该主视讯框用于播放该x个摄像头中的其中一个摄像头所采集的视频。该x-1个副视讯框用于播放其他x-1个摄像头所采集的视频。

在本实施例中,所述分析模块102可以响应用户的输入来确定该主视讯框用于播放哪个摄像头所采集的视频。在其他实施例中,所述分析模块101可以直接确定所述主视讯框用于播放配置在所述电子设备1内的摄像头(即摄像头11)所采集的视频。

例如,在一次视频电话会议中,共有6个会场,电子设备1所在会场为主会场,其他5个视讯采集设备2分别所在的会场为次会场,则所述生成模块101可响应用户的输入确定该主视讯框播放所述电子设备1的摄像头11所采集的视频,确定其他5个视讯框(即副视讯框)分别用于播放该其他5个视讯采集设备2的摄像头21所采集的视频。

所述生成模块101根据所述视窗的长以及预设的长宽比例(例如2:1)生成所述主视讯框。

在一个实施例中,所述主视讯框的长与所述视窗的长可以相等。例如,假设所述视窗的长为100cm,宽为80cm,所述生成模块101可以生成一个长为100cm,宽为50cm的主视讯框。

所述排列模块103将所生成的主视讯框显示于所述视窗内。

在一个实施例中,所述主视讯框在所述视窗内的排列方式可以是在水平方向上居中对齐,在垂直方向上靠所述视窗的上边界对齐。

例如,参阅图4a所示,所述排列模块103将所生成的主视讯框14显示于视窗131内。需要说明的是,本实施例的图中将视窗131和主视讯框14的长均画成小于所述显示屏13的长,是为了清楚的说明本发明。

步骤s32,所述分析模块102确定所述视窗的剩余版面的宽度,并根据所述视窗的剩余版面的宽度及所述预设的长宽比例计算得出一个参照长度。该参照长度等于所述剩余版面的宽度与所述长宽比例的乘积。

在本实施例中,所述视窗的剩余版面可以定义为所述视窗中没有排列所述主视讯框的区域(例如图4a所示的区域16)。依此,可以将所述主视讯框在所述视窗内所占的区域定义为视讯框排列版面。

仍然以前面例子为例,假设所述视窗的长为100cm,宽为80cm,所述主视讯框的长为100cm,宽为50cm。那么所述视窗的当前剩余版面的宽度即为30cm。所述参照长度则等于60cm。

步骤s33,所述分析模块102根据所述参照长度计算所述x-1个副视讯框的参照总长度。所述参照总长度等于所述参照长度与所述x-1的值的乘积。

仍然以前面例子为例,假设x等于6,所述参照长度等于60cm。所述分析模块102则计算得出所述参照总长度等于300cm。

步骤s34,所述分析模块102判断所述参照总长度是否大于所述视窗的长度。若所述参照总长度小于或等于所述视窗的长度,则执行步骤s35。若所述参照总长度大于所述视窗的长度,则执行步骤s36。

例如,当计算得出所述参照总长度等于300cm时,由于该参照总长度大于所述视窗的长度100cm,因此,流程即执行到步骤s36。

步骤s35,若所述参照总长度小于或等于所述视窗的长度,所述生成模块101确定每个副视讯框的宽等于当前剩余版面的宽度,每个副视讯框的长为所述参照长度,并相应生成x-1个副视讯框(即所生成的x-1个副视讯框中每个副视讯框的宽等于当前剩余版面的宽度,每个副视讯框的长等于所述参照长度)。所述排列模块103将所述x-1个副视讯框排列到同一行并显示于所述视窗的剩余版面。

例如,参阅图4b所示,所述排列模块103将5个副视讯框141、142、143、144、145排列于所述视窗的剩余版面16内。

步骤s36,若所述参照总长度大于所述视窗的长度,所述分析模块102确定所述x-1个副视讯框按照总行数r行来排列。所述分析模块102根据所述总行数r以及所述副视讯框的总个数x-1(以下简称“第一总个数”)计算当前每行最多排列副视讯框的总个数y(以下简称“第二总个数”)。所述分析模块102还根据所述视窗的大小以及所计算得到的所述第二总个数y计算每个副视讯框的目标尺寸。

在一个实施例中,所述第二总个数y等于所述第一总个数x-1除以当前所述总行数r。在一个实施例中,若所述第一总个数x-1除以当前所述总行数r具有小数位,小数点后的数值无条件进位。

在一个实施例中,所述分析模块102计算每个副视讯框的目标尺寸的步骤包括:首先将所述视窗的长除以所述第二总个数y计算得出每个副视讯框的目标长,然后再根据所述预设的长宽比例(例如2:1)计算得出每个副视讯框的目标宽。将所计算得出的每个副视讯框的目标长和每个副视讯框的目标宽作为所述每个副视讯框的目标尺寸。

例如,仍然以前面例子为例,假设共需生成5个副视讯框,所述视窗的长为100cm,宽为80cm,所述预设的长宽比例为2:1,假设当前所述总行数r等于1即确定所述5个副视讯框按照一行排列,则可计算得出当前每个视讯框的目标长为20cm,然后根据所述预设的长宽比例(如2:1)即可得出当前每个副视讯框的目标宽为10cm。由此即计算得出每个副视讯框的目标尺寸是长为20cm以及宽为10cm。

在本实施例中,所述分析模块102于首次设置所述总行数r时,将该r设置为1,即将所有副视讯框均排列在同一行。在一个实施例中,所述分析模块102可以响应用户的输入来首次设置所述总行数r。例如,所述分析模块102可以提供一个用户界面供用户输入所述总行数r的值。

步骤s37,所述分析模块102分析所述x-1个副视讯框是否可以按照r=r+1行来排列。若所述x-1个副视讯框可以按照r+1行来排列,执行步骤s38。若所述x-1个副视讯框不可以按照r+1行来排列,执行步骤s39。

本实施例中,所述分析模块102根据当前的剩余版面的宽以及所述副视讯框的当前的目标尺寸来确定所述x-1个副视讯框是否可以按照r+1行来排列。具体地,所述分析模块102将当前的剩余版面的宽除以当前每个副视讯框的目标宽得到一数值(若有小数,则无条件舍去小数位),当该数值大于当前所述总行数r时,确定所述x-1个副视讯框可以按照r+1行来排列。反之,当该数值小于或等于当前所述总行数r时,确定所述x-1个副视讯框不可以按照r+1行来排列。

本实施例中,所述视窗当前的剩余版面是指所述视窗内除所述主视讯框之外的其他区域。

例如,仍然以前面例子为例,假设所述视窗的长为100cm,宽为80cm,所述主视讯框的大小为长100cm,宽50cm,所述预设的长宽比例为2:1,当前每个副视讯框的目标尺寸为目标长20cm,目标宽10cm。当前所述视窗的剩余版面的宽为30cm。所述分析模块102将当前的剩余版面的宽30cm除以当前所计算得出的每个副视讯框的目标宽10cm得到数值为3,该数值3大于当前所述总行数r的值(即1),即实际还可以再排列2行副视讯框,此时执行步骤s38。

步骤s38,当所述x-1个副视讯框可以按照r+1行来排列时,所述分析模块102将当前所述总行数r加1(即r=r+1),执行完步骤s38后回到步骤s36。

例如,所述分析模块102将当前所述总行数r加1后得出当前所述总行数为2行,当回到步骤s36时,所述分析模块102即确定当前所述总行数r为2行。所述分析模块102根据当前所述总行数r(即2行)以及所述第一总个数x-1(例如5个)计算得出当前所述第二总个数y(即每行最多排列的副视讯框的总个数)等于3个。

步骤s39,当所述x-1个副视讯框不可以按照r+1行来排列时,所述分析模块102确定所述x-1个副视讯框仅可以按照r行来排列。所述分析模块102将当前的剩余版面的宽度除以当前所述总行数r计算出每个副视讯框的实际宽度。所述分析模块102还根据所述实际宽度以及所述预设的长宽比例计算每个副视讯框的实际长度。所述生成模块101根据所述实际长度和实际宽度生成x-1个副视讯框,即所生成的每个副视讯框的长度等于所计算的实际长度,所生成的每个副视讯框的宽度等于所计算来的实际宽度。所述排列模块103根据当前所述总行数r以及所计算得到的所述第二总个数y在所述视窗的剩余版面内排列显示所生成的x-1个副视讯框。

在一个实施例中,所述排列模块103比照所述主视讯框的排列方式来排列每行副视讯框。例如,当所述x-1个副视讯框均排列在同一行时,该x-1个副视讯框在水平方向上居中对齐,在垂直方向上靠所述主视讯框的下边界对齐。相应地,若所述x-1个副视讯框需按照多行排列时,则依上述排列方式为前提,从左到右,从上往下依次排列。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照以上较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换都不应脱离本发明技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1