一种视频尺寸自动优化方法及系统与流程

文档序号:11524826阅读:358来源:国知局
一种视频尺寸自动优化方法及系统与流程

本发明视频播放技术领域,更具体地,涉及一种视频尺寸自动优化方法及系统。



背景技术:

目前,视频的产生和公布继续增加,这是因为视频摄像机变得较不昂贵并且视频托管和分发服务继续扩展。同时,存在消费视频的很多不同的设备。屏幕分辨率和高宽比在不同的设备当中广泛地变化,并且常常不与视频分辨率和屏幕尺寸相关。

为了在具有不同分辨率和高宽比的屏幕上显示视频,常常使用简单的算法来拉伸或压缩视频以适合屏幕。然而,由通常视频播放器调整视频的算法通常固定不可变,通常这些变化(拉伸或压缩)引起的原视频失真可能使视频变得观看起来令人不满意。



技术实现要素:

本发明为克服上述问题或者至少部分地解决上述问题,提供一种视频尺寸自动优化方法及系统,在传统视频尺寸调整处理方法的基础之上,增加了一个拉伸阈值的因子,可以带给用户更好的用户观看视频的视觉体验。

根据本发明的一个方面,提供一种视频尺寸自动优化方法,包括:

步骤1,计算视频播放器窗口宽高比与待调整视频宽高比的标准差;

步骤2,当所述标准差小于等于拉伸阈值时,对所述待调整视频尺寸进行拉伸;

步骤3,当所述标准差大于拉伸阈值时,计算播放器宽度w1相对视频宽度w2的第一缩放倍数以及播放器高度h1与视频高度h2的第二缩放倍数,利用所述第一缩放倍数与所述第二缩放倍数中较小的值对所述待调整视频尺寸进行拉伸。

根据本发明的另一个方面,提供一种视频尺寸自动优化系统,包括第一模块、第二模块和第三模块:

所述第一模块与所述第二模块相连,用于计算视频播放器窗口宽高比与待调整视频宽高比的标准差;

所述第二模块,分别与所述第一模块和第三模块相连,用于当所述标准差小于等于拉伸阈值时,对所述待调整视频尺寸进行拉伸;

所述第三模块,与所述第二模块相连,用于当所述标准差大于拉伸阈值时,计算播放器宽度w1相对视频宽度w2的第一缩放倍数以及播放器高度h1与视频高度h2的第二缩放倍数,利用所述第一缩放倍数与所述第二缩放倍数中较小的值对所述待调整视频尺寸进行拉伸。

本申请提出一种视频尺寸自动优化方法及系统,所述方法包含以下步骤:计算视频播放器窗口宽高比与待调整视频宽高比的标准差;步骤2,当所述标准差小于等于拉伸阈值时,对所述待调整视频尺寸进行拉伸;当所述标准差大于拉伸阈值时,执行步骤3;步骤3,计算播放器宽度w1相对视频宽度w2的缩放倍数sx,以及播放器高度h1与视频高度h2的缩放倍数sy,利用所述sx与sy中较小的值对所述待调整视频尺寸进行拉伸。本发明在传统视频尺寸调整处理方法的基础之上,增加了一个拉伸阈值的因子,相对传统方案而言,对用户体验有明显提升,同时灵活可控。如果将所述拉伸阈值因子设置为0,就等效于传统方案。实际用户在操作时,不需要将播放器大小调整到精确适配视频大小(这对用户来说是一件很难的事情),而是大致在一定范围之内,播放器就会做出自适应处理,给予用户最佳观感。

附图说明

图1为根据本发明实施例一种视频尺寸自动优化方法的整体流程示意图;

图2为根据本发明实施例一种视频尺寸自动优化方法的总体流程示意图;

图3为根据本发明实施例一种视频尺寸自动优化方法的尺寸调整示意图;

图4为根据本发明实施例一种视频尺寸自动优化方法的调整前待调整视频示意图;

图5为根据本发明实施例一种视频尺寸自动优化方法的调整后待调整视频示意图;

图6为根据本发明实施例一种视频尺寸自动优化方法的整体框架示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

在介绍本发明具体实施例时,首先对于本发明具体实施例中涉及的相关术语进行说明。

宽高比:宽度和高度的比值,视频领域常用。

等比拉伸:保持宽高比不变的情况下,进行放大或者缩小操作。

黑边:视频左右或者上下的黑色填充区域。

标准差:概率统计中的概念,最常使用作为统计分布程度上的测量

用户在使用视频播放器观看视频时,由于视频播放器的尺寸和视频本身尺寸,都是不一定的,极有可能存在尺寸不一致的情况,本文介绍了一种方法,如何适配各种不同的尺寸,让视频能以最优的效果展示在播放器中。本文的改进在于,在传统处理方法的基础之上,增加了一个拉伸阈值的因子,可以带给用户更好的用户体验。

如图1,在本发明一个具体实施例中,示出一种视频尺寸自动优化方法整体流程示意图。总体上,包括:

步骤1,计算视频播放器窗口宽高比与待调整视频宽高比的标准差;

步骤2,当所述标准差小于等于拉伸阈值时,对所述待调整视频尺寸进行拉伸;

步骤3,当所述标准差大于拉伸阈值时,计算播放器宽度w1相对视频宽度w2的第一缩放倍数以及播放器高度h1与视频高度h2的第二缩放倍数,利用所述第一缩放倍数与所述第二缩放倍数中较小的值对所述待调整视频尺寸进行拉伸。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,所述步骤1前还包括:获取视频播放器宽度w1和高度h1;获取待调整视频宽度w2和高度h2。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,所述步骤1中视频播放器窗口宽高比与待调整视频宽高比的标准差还包括:

其中σ为所述标准差,r1为所述视频播放器宽高比,r2位所述待调整视频宽高比。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,所述步骤2前还包括:设定拉伸阈值。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,所述拉伸阈值a取值范围为:大于等于0,小于等于r1与r2中的最大值,其中r1为所述视频播放器宽高比,r2位所述待调整视频宽高比。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,所述拉伸阈值为0.1。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,所述步骤2中对所述待调整视频尺寸进行拉伸还包括:将所述待调整视频坐标定位到原点(0,0),将所述视频宽度调整为所述视频播放器宽度,将所述视频高度设置为所述视频播放器高度。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,

所述步骤3中利用所述第一缩放倍数与所述第二缩放倍数中较小的值对所述待调整视频尺寸进行拉伸还包括:

当sx<sy时,调整所述待调整视频宽度为w2×sx,调整所述待调整视频高度为h2×sx,设置待调整视频坐标为(0,(h1-h2×sx)/2),其中sx为第一缩放倍数,sy为第二缩放倍数。

在本发明另一个具体实施例中,一种视频尺寸自动优化方法,

所述步骤3中利用所述第一缩放倍数与所述第二缩放倍数中较小的值对所述待调整视频尺寸进行拉伸还包括:

当sx>sy时,调整所述待调整视频宽度为w2×sy,调整所述待调整视频高度为h2×sy,调整所述待调整视频坐标为((w1-w2×sy)/2,0),其中sx为第一缩放倍数,sy为第二缩放倍数。

如图2,在本发明又一个具体实施例中,示出一种视频尺寸自动优化方法整体流程示意图,下面将以web端flash视频播放器为例,逐步介绍实际操作步骤:

1、设定拉伸阈值a,值越大,优化效果越明显,同时越容易出现画面拉伸变形,需要根据实际情况灵活调整,本文设置为0.1。

所谓拉伸阈值,是一个用来判断临界范围的值,在这个范围之内,进行强制拉伸,超出这个范围,则采用等比拉伸并增加黑边。在本文中,拉伸阈值被设置为宽高比差值,拉伸阈值的取值很重要,如果值太小,优化效果不明显,如果值太大,可能导致画面严重变形,根据经验和测试结果,本文中将拉伸阈值设置为0.1。引入此因子的原因是,尽可能在可控范围内,让用户能看到满屏的视频,而非上下有黑边或者左右有黑边。如果播放器尺寸比例和视频尺寸比例差距较大,比如播放器是21:9,视频是4:3,这样的情况下,使用黑边填充在所难免。但是假如尺寸比例相差不大,比如播放器是4:3.1,视频是4:3,传统方案的处理中,由于比例没有精确对上,也会进行黑边处理,造成这种相差不大的情况下视频周边也有一条细细的黑边,让视频画面冲击力下降,用户无法沉浸到视频内容中。如果引入了拉伸阈值因子,那么在一定范围内的比例差异,将会被忽略,视频仿佛被自动吸附到播放器中,让用户能沉浸到视频内容中,带给用户良好体验。

2、获取播放器的尺寸,对于flash视频播放器来说,直接取舞台大小即可:

varw1:number=stage.stagewidth;//播放器宽度w1

varh1:number=stage.stageheight;//播放器高度h1

3、视频加载缓冲好之后,通过video对象,获取视频的实际尺寸:

varw2:number=_video.videowidth;//视频实际宽度w2

varh2:number=_video.videoheight;//视频实际高度h2

4、根据以上参数,进行视频位置及大小的调整。

4.1计算出播放器宽高比r1以及视频宽高比r2,并计算出其标准差,然后与拉伸阈值a进行比较。

r1=w1/h1

r2=w2/h2

标准差是概率统计中的概念,最常使用作为统计分布程度(statisticaldispersion)上的测量。标准差定义是总体各单位标准值与其平均数离差平方的算术平均数的平方根。它反映组内个体间的离散程度。

假设有一组数值x1,x2,x3,......xn(皆为实数),其平均值(算术平均值)为μ,公式如下:

本步骤需要度量播放器尺寸和视频尺寸的相差范围,标准差正适合应用在此处。将r1、r2代入,计算出标准差,根据其与拉伸阈值a的大小对比,进入不同流程处理。

拉伸阈值a取值范围0到max(r1,r2)即r1和r2中的较大者,其中取0代表此优化永远不开启,等效于传统模式,取最大值代表此优化永远开启,可能导致画面变形。

如果小于拉伸阈值,说明差异比较小,可以进行强制拉伸,用户感知不明显,可以直接将视频坐标定位到原点(0,0),视频宽度设置为播放器宽度,视频高度设置为播放器高度。这其中也包括精确相等的情况,此时差值=0,同样适用。至此,这种情况下的流程结束,用户在这种情况下获得了最好观感。图4、图5分别为次情形下的调整前后视频对比。

_video.width=w1;

_video.height=h1;

_video.x=0;

_video.y=0;

4.2如果4.1计算出的条件不满足,说明差异比较大,此时如果像4.1一样强制拉伸,会使得用户感知到画面变形,所以此时,我们需要进行另外一种处理,避免这种不好的体验。

首先要计算出播放器宽度w1相对视频宽度w2的缩放倍数sx,以及播放器高度h1与视频高度h2的缩放倍数sy,将这两个值进行一个比较,取其中较小者为基准,进行等比拉伸。

sx=w1/w2

sy=h1/h2

下面以sx<sy的情况为例。如图3,这种情况下,说明宽度的拉伸程度要小于高度的拉伸程度,此时应该将画面整体缩放sx倍。

_video.width=w2*sx;

_video.height=h2*sx;

这样既保持了视频的比例不变,不会画面变形,又获得了最适合这个播放器尺寸的大小,但是只进行缩放是不够的,由于不是完全覆盖整个播放器,视频周边可能有黑边,此时需要将视频位置调整为居中。在宽度拉伸程度小于高度拉伸程度的情况下,需要将横向坐标置为0,高度居中。视频纵向坐标应为(h1-h2*sx)/2。

_video.x=0;

_video.y=(h1-h2*sx)/2;

假如宽度的拉伸程度大于高度的拉伸程度,即sy<sx,依据上面的逻辑同样可以推理出,视频的位置的大小应该设置为:

_video.width=w2*sy;

_video.height=h2*sy;

_video.x=(w1-w2*sy)/2;

_video.y=0;

至此,全部流程结束。

本方法创新的引入拉伸阈值因子,同时,引入概率统计方法之中的标准差,进一步的提高了计算的精准度和科学性。相对传统方案而言,对用户体验有明显提升,同时灵活可控。如果将其设置为0,就等效于传统方案。实际用户在操作时,不需要将播放器大小调整到精确适配视频大小(这对用户来说是一件很难的事情),而是大致在一定范围之内,播放器就会做出自适应处理,给予用户最佳观感。

如图5,在本发明一个具体实施例中,示出一种视频尺寸自动优化系统。总体上,包括第一模块a1、第二模块a2和第三模块a3:

所述第一模块a1与所述第二模块a2相连,计算视频播放器窗口宽高比与待调整视频宽高比的标准差;

所述第二模块a2,分别与所述第一模块a1和第三模块a3相连,用于当所述标准差小于等于拉伸阈值时,对所述待调整视频尺寸进行拉伸;

所述第三模块a3,与所述第二模块a2相连,用于当所述标准差大于拉伸阈值时,计算播放器宽度w1相对视频宽度w2的第一缩放倍数以及播放器高度h1与视频高度h2的第二缩放倍数,利用所述第一缩放倍数与所述第二缩放倍数中较小的值对所述待调整视频尺寸进行拉伸。

最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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