CN112383808A - 视频播放方法、装置、终端及存储介质 - Google Patents
视频播放方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN112383808A CN112383808A CN202011205295.8A CN202011205295A CN112383808A CN 112383808 A CN112383808 A CN 112383808A CN 202011205295 A CN202011205295 A CN 202011205295A CN 112383808 A CN112383808 A CN 112383808A
- Authority
- CN
- China
- Prior art keywords
- live broadcast
- size
- broadcast room
- window
- video
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 105
- 230000008569 process Effects 0.000 claims abstract description 41
- 230000006870 function Effects 0.000 claims description 33
- 230000003321 amplification Effects 0.000 claims description 5
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 14
- 230000000007 visual effect Effects 0.000 abstract description 10
- 230000008859 change Effects 0.000 abstract description 8
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开提供了一种视频播放方法、装置、终端及存储介质,属于互联网技术领域。所述方法包括:获取预览窗口的第一位置尺寸;将直播间列表页面切换至目标直播间页面;逐步调整播放窗口的位置尺寸直至达到第二位置尺寸;在调整播放窗口过程中,基于每次调整后的播放窗口,显示目标直播间的直播视频。本公开在进行页面切换之后,无需重新加载直播间的视频,基于直播列表页面上的预览窗口的视频进行显示,使得显示的视频画面不会中断。且通过对播放窗口的位置尺寸进行调整,使得目标直播间的视频逐渐恢复到目标直播间原有的显示形态,该过程视频的显示形态不会发生突变,变化过程较为友好,不会给观众用户造成较大的视觉冲击,视频播放效果较佳。
Description
技术领域
本公开涉及互联网技术领域,特别涉及一种视频播放方法、装置、终端及存储介质。
背景技术
随着互联网技术的发展,各种直播应用被开发出来。基于这些直播应用,观众用户能够进入直播间观看主播用户的直播,主播用户能够在直播间内向观众用户进行直播。为了便于观众用户查看各个直播间的视频,直播间列表页面上显示有多个直播间的视频链接以及视频播放控件。该视频播放控件用于播放任一直播间的视频,基于该视频播放控件,观众用户通过点击该视频播放控件,可将直播间列表页面切换至该直播间页面,从而进入直播间内观看视频。
然而,将直播间列表页面切换至直播间页面时,需要重新加载该直播间的视频,导致显示的视频画面中断,且视频由视频播放控件上的显示形态突变为直播间页面上的显示形态,对观众用户的视觉冲击较大,因而视频播放效果不佳。
发明内容
本公开实施例提供了一种视频播放方法、装置、终端及存储介质,能够提高视频播放效果。所述技术方案如下:
第一方面,提供了一种视频播放方法,所述方法包括:
响应于对直播间列表页面上预览窗口的触发操作,获取所述预览窗口的第一位置尺寸,所述预览窗口用于显示目标直播间的预览视频;
将所述直播间列表页面切换至目标直播间页面,所述目标直播间页面上显示有播放窗口,所述播放窗口以所述第一位置尺寸为起始位置尺寸;
逐步调整所述播放窗口的位置尺寸直至达到第二位置尺寸,在调整所述播放窗口过程中,基于每次调整后的播放窗口,显示所述目标直播间的直播视频。
在本公开的另一个实施例中,所述获取所述预览窗口的第一位置尺寸,包括:
通过调用位置获取函数,获取所述预览窗口的第一位置;
通过调用宽度获取函数和高度获取函数,分别获取所述预览窗口的宽度和高度,得到所述预览窗口的第一尺寸。
在本公开的另一个实施例中,所述播放窗口包括用于播放所述目标直播间的直播视频的播放控件,所述将所述目标直播间列表页面切换至目标直播间页面之前,还包括:
在所述目标直播间页面创建所述播放控件。
在本公开的另一个实施例中,所述播放窗口包括用于播放所述目标直播间的直播视频的播放控件,所述将所述目标直播间列表页面切换至目标直播间页面之前,还包括:
将所述预览窗口包括的预览控件的实体传入所述播放窗口;
基于所述预览控件的实体,将所述预览控件确定为所述播放控件。
在本公开的另一个实施例中,所述第一位置尺寸包括第一位置和第一尺寸,所述第二位置包括第二位置和第二尺寸;
所述逐步调整所述播放窗口的位置尺寸直至达到第二位置尺寸,包括:
在控制所述播放窗口从所述第一位置逐步调整至所述第二位置的过程中,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸。
在本公开的另一个实施例中,所述将所述播放窗口的尺寸从所述第一尺寸放大所述第二尺寸,包括:
根据所述播放窗口与所述目标直播间页面的位置关系,采取不同的放大方式将所述播放窗口的尺寸从所述第一尺寸放大所述第二尺寸。
在本公开的另一个实施例中,所述根据所述播放窗口与所述目标直播间页面的位置关系,采取不同的放大方式将所述播放窗口的尺寸从所述第一尺寸放大所述第二尺寸,包括:
如果所述播放窗口与所述目标直播间页面的上边缘之间的距离小于第一数值,保持所述距离不变,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸;
如果所述播放窗口与所述目标直播间页面的下边缘之间的距离小于所述第一数值,保持所述距离不变,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸;
如果所述播放窗口与所述目标直播间的上边缘之间的距离大于第二数值,控制所述播放窗口的上边缘向所述目标直播间页面的上边缘扩展、所述播放窗口的下边缘向所述目标直播间页面的下边缘扩展,使得所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸。
在本公开的另一个实施例中,所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频之前,还包括:
根据所述第一尺寸和所述第二尺寸,确定每帧视频的尺寸;
根据每帧视频的尺寸,对所述目标直播间的每帧视频进行裁剪;
所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频,包括:
基于每次调整后的播放窗口,显示剪裁后的每帧视频。
在本公开的另一个实施例中,所述方法还包括:
在所述播放窗口的位置尺寸调整至所述第二位置尺寸之前,基于所述预览窗口的预览控件,获取所述目标直播间的直播视频;
在所述播放窗口的位置尺寸调整至所述第二位置尺寸之后,基于所述播放窗口的播放控件,获取所述目标直播间的直播视频。
在本公开的另一个实施例中,所述将所述直播间列表页面切换至目标直播间页面之前,还包括:
将所述目标直播间页面上的其他元素的透明度设置为透明,所述其他元素为所述目标直播间页面上除所述播放窗口以外的元素。
在本公开的另一个实施例中,所述将所述目标直播间页面上的其他元素的透明度设置为透明之后,还包括:
将所述其他元素的执行逻辑设置为停止执行。
在本公开的另一个实施例中,所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频之后,还包括:
当所述播放窗口的位置尺寸调整至所述第二位置尺寸,将所述其他元素的透明度恢复至设置前的数值;
基于恢复后的透明度,显示所述其他元素。
在本公开的另一个实施例中,所述显示所述其他元素之后,还包括:
执行所述其他元素的执行逻辑。
在本公开的另一个实施例中,所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频之后,还包括:
响应于对所述目标直播间页面的关闭操作,获取所述播放窗口的所述第二位置尺寸;
将所述目标直播间页面切换至所述直播间列表页面,所述直播间列表页面上显示有所述预览窗口,所述预览窗口以所述第二位置尺寸为起始位置尺寸;
逐步调整所述预览窗口的位置尺寸直至达到所述第一位置尺寸,在调整所述预览窗口过程中,基于每次调整后的预览窗口,显示所述目标直播间的预览视频。
第二方面,提供了一种视频播放装置,所述装置包括:
获取模块,用于响应于对直播间列表页面上预览窗口的触发操作,获取所述预览窗口的第一位置尺寸,所述预览窗口用于显示目标直播间的预览视频;
切换模块,用于将所述直播间列表页面切换至目标直播间页面,所述目标直播间页面上显示有播放窗口,所述播放窗口以所述第一位置尺寸为起始位置尺寸;
调整模块,用于逐步调整所述播放窗口的位置尺寸直至达到第二位置尺寸;
显示模块,用于在调整所述播放窗口过程中,基于每次调整后的播放窗口,显示所述目标直播间的直播视频。
在本公开的另一个实施例中,所述获取模块,用于通过调用位置获取函数,获取所述预览窗口的第一位置;通过调用宽度获取函数和高度获取函数,分别获取所述预览窗口的宽度和高度,得到所述预览窗口的第一尺寸。
在本公开的另一个实施例中,所述播放窗口包括用于播放所述目标直播间的直播视频的播放控件,所述装置还包括:
创建模块,用于在所述目标直播间页面创建所述播放控件。
在本公开的另一个实施例中,所述获取模块,还用于在所述目标直播间页面创建所述播放控件。
在本公开的另一个实施例中,所述播放窗口包括用于播放所述目标直播间的直播视频的播放控件,所述装置还包括:
传入模块,用于将所述预览窗口包括的预览控件的实体传入所述播放窗口;
确定模块,用于基于所述预览控件的实体,将所述预览控件确定为所述播放控件。
在本公开的另一个实施例中,所述第一位置尺寸包括第一位置和第一尺寸,所述第二位置包括第二位置和第二尺寸;
所述调整模块,用于在控制所述播放窗口从所述第一位置逐步调整至所述第二位置的过程中,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸。
在本公开的另一个实施例中,所述调整模块,用于根据所述播放窗口与所述目标直播间页面的位置关系,采取不同的放大方式将所述播放窗口的尺寸从所述第一尺寸放大所述第二尺寸。
在本公开的另一个实施例中,所述调整模块,用于如果所述播放窗口与所述目标直播间页面的上边缘之间的距离小于第一数值,保持所述距离不变,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸;如果所述播放窗口与所述目标直播间页面的下边缘之间的距离小于所述第一数值,保持所述距离不变,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸;如果所述播放窗口与所述目标直播间的上边缘之间的距离大于第二数值,控制所述播放窗口的上边缘向所述目标直播间页面的上边缘扩展、所述播放窗口的下边缘向所述目标直播间页面的下边缘扩展,使得所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸。
在本公开的另一个实施例中,所述装置还包括:
确定模块,用于根据所述第一尺寸和所述第二尺寸,确定每帧视频的尺寸;
裁剪模块,用于根据每帧视频的尺寸,对所述目标直播间的每帧视频进行裁剪;
所述显示模块,用于基于每次调整后的播放窗口,显示剪裁后的每帧视频。
在本公开的另一个实施例中,所述获取模块,还用于在所述播放窗口的位置尺寸调整至所述第二位置尺寸之前,基于所述预览窗口的预览控件,获取所述目标直播间的直播视频;在所述播放窗口的位置尺寸调整至所述第二位置尺寸之后,基于所述播放窗口的播放控件,获取所述目标直播间的直播视频。
在本公开的另一个实施例中,所述装置还包括:
设置模块,用于将所述目标直播间页面上的其他元素的透明度设置为透明,所述其他元素为所述目标直播间页面上除所述播放窗口以外的元素。
在本公开的另一个实施例中,所述设置模块,还用于将所述其他元素的执行逻辑设置为停止执行。
在本公开的另一个实施例中,所述装置还包括:
恢复模块,用于当所述播放窗口的位置尺寸调整至所述第二位置尺寸,将所述其他元素的透明度恢复至设置前的数值;
所述显示模块,还用于基于恢复后的透明度,显示所述其他元素。
在本公开的另一个实施例中,所述装置还包括:
执行模块,用于执行所述其他元素的执行逻辑。
在本公开的另一个实施例中,所述获取模块,还用于响应于对所述目标直播间页面的关闭操作,获取所述播放窗口的所述第二位置尺寸;
所述切换模块,还用于将所述目标直播间页面切换至所述直播间列表页面,所述直播间列表页面上显示有所述预览窗口,所述预览窗口以所述第二位置尺寸为起始位置尺寸;
所述调整模块,还用于逐步调整所述预览窗口的位置尺寸直至达到所述第一位置尺寸;
所述显示模块,还用于在调整所述预览窗口过程中,基于每次调整后的预览窗口,显示所述目标直播间的预览视频。
第三方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如第一方面所述的视频播放方法。
第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如第一方面所述的视频播放方法。
本公开实施例提供的技术方案带来的有益效果是:
在进行页面切换之后,无需重新加载直播间的视频,基于直播列表页面上的预览窗口的视频进行显示,使得显示的视频画面不会中断。且通过对播放窗口的位置尺寸进行调整,使得目标直播间的视频逐渐恢复到目标直播间原有的显示形态,该过程视频的显示形态不会发生突变,变化过程较为友好,不会给观众用户造成较大的视觉冲击,视频播放效果较佳。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例提供的视频播放方法所涉及的实施环境的示意图;
图2是本公开实施例提供的一种视频播放方法的流程图;
图3是本公开实施例提供的另一种视频播放方法的流程图;
图4是本公开实施例提供的一种视频播放装置的结构示意图;
图5示出了本公开一个示例性实施例提供的终端的结构框图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
可以理解,本公开实施例所使用的术语“每个”、“多个”及“任一”等,多个包括两个或两个以上,每个是指对应的多个中的每一个,任一是指对应的多个中的任意一个。举例来说,多个词语包括10个词语,而每个词语是指这10个词语中的每一个词语,任一词语是指10个词语中的任意一个词语。
请参考图1,其示出了本公开实施例提供的视频播放方法所涉及的实施环境,参见图1,该实施环境包括:终端101和服务器102。
其中,终端101中安装有至少一个直播应用。基于所安装的直播应用,观众用户能够进入直播间内观看直播用户的直播。终端101可以为智能手机、平板电脑、笔记本电脑等,本公开实施例不对终端101的产品类型作具体的限定。
服务器102为直播应用的后台服务器,能够为观众用户提供直播观看服务,并为主播用户提供直播服务。服务器102可以为独立的物理服务器,也可以为多个物理服务器构成的服务器集群或者分布式***,本公开实施例不对服务器102的类型作具体的限定。
上述终端101和服务器102之间可通过有线网络或无线网络进行直接或间接地连接。
基于图1所示的实施环境,本公开实施例提供了一种视频播放方法,参见图2,本公开实施例提供的方法流程包括:
201、响应于对直播间列表页面上预览窗口的触发操作,获取预览窗口的第一位置尺寸。
其中,预览窗口用于显示目标直播间的预览视频。
202、将直播间列表页面切换至目标直播间页面。
其中,目标直播间页面上显示有播放窗口,播放窗口以第一位置尺寸为起始位置尺寸。
203、逐步调整播放窗口的位置尺寸直至达到第二位置尺寸。
204、在调整播放窗口过程中,基于每次调整后的播放窗口,显示目标直播间的直播视频。
本公开实施例提供的方法,在进行页面切换之后,无需重新加载直播间的视频,基于直播列表页面上的预览窗口的视频进行显示,使得显示的视频画面不会中断。且通过对播放窗口的位置尺寸进行调整,使得目标直播间的视频逐渐恢复到目标直播间原有的显示形态,该过程视频的显示形态不会发生突变,变化过程较为友好,不会给观众用户造成较大的视觉冲击,视频播放效果较佳。
在本公开的另一个实施例中,获取预览窗口的第一位置尺寸,包括:
通过调用位置获取函数,获取预览窗口的第一位置;
通过调用宽度获取函数和高度获取函数,分别获取预览窗口的宽度和高度,得到预览窗口的第一尺寸。
在本公开的另一个实施例中,播放窗口包括用于播放目标直播间的直播视频的播放控件,将目标直播间列表页面切换至目标直播间页面之前,还包括:
在目标直播间页面创建播放控件。
在本公开的另一个实施例中,播放窗口包括用于播放目标直播间的直播视频的播放控件,将目标直播间列表页面切换至目标直播间页面之前,还包括:
将预览窗口包括的预览控件的实体传入播放窗口;
基于预览控件的实体,将预览控件确定为播放控件。
在本公开的另一个实施例中,第一位置尺寸包括第一位置和第一尺寸,第二位置包括第二位置和第二尺寸;
逐步调整播放窗口的位置尺寸直至达到第二位置尺寸,包括:
在控制播放窗口从第一位置逐步调整至第二位置的过程中,将播放窗口的尺寸从第一尺寸放大至第二尺寸。
在本公开的另一个实施例中,将播放窗口的尺寸从第一尺寸放大第二尺寸,包括:
根据播放窗口与目标直播间页面的位置关系,采取不同的放大方式将播放窗口的尺寸从第一尺寸放大第二尺寸。
在本公开的另一个实施例中,根据播放窗口与目标直播间页面的位置关系,采取不同的放大方式将播放窗口的尺寸从第一尺寸放大第二尺寸,包括:
如果播放窗口与目标直播间页面的上边缘之间的距离小于第一数值,保持距离不变,将播放窗口的尺寸从第一尺寸放大至第二尺寸;
如果播放窗口与目标直播间页面的下边缘之间的距离小于第一数值,保持距离不变,将播放窗口的尺寸从第一尺寸放大至第二尺寸;
如果播放窗口与目标直播间的上边缘之间的距离大于第二数值,控制播放窗口的上边缘向目标直播间页面的上边缘扩展、播放窗口的下边缘向目标直播间页面的下边缘扩展,使得播放窗口的尺寸从第一尺寸放大至第二尺寸。
在本公开的另一个实施例中,基于每次调整后的播放窗口,显示目标直播间的直播视频之前,还包括:
根据第一尺寸和第二尺寸,确定每帧视频的尺寸;
根据每帧视频的尺寸,对目标直播间的每帧视频进行裁剪;
基于每次调整后的播放窗口,显示目标直播间的直播视频,包括:
基于每次调整后的播放窗口,显示剪裁后的每帧视频。
在本公开的另一个实施例中,该方法还包括:
在播放窗口的位置尺寸调整至第二位置尺寸之前,基于预览窗口的预览控件,获取目标直播间的直播视频;
在播放窗口的位置尺寸调整至第二位置尺寸之后,基于播放窗口的播放控件,获取目标直播间的直播视频。
在本公开的另一个实施例中,将直播间列表页面切换至目标直播间页面之前,还包括:
将目标直播间页面上的其他元素的透明度设置为透明,其他元素为目标直播间页面上除播放窗口以外的元素。
在本公开的另一个实施例中,将目标直播间页面上的其他元素的透明度设置为透明之后,还包括:
将其他元素的执行逻辑设置为停止执行。
在本公开的另一个实施例中,基于每次调整后的播放窗口,显示目标直播间的直播视频之后,还包括:
当播放窗口的位置尺寸调整至第二位置尺寸,将其他元素的透明度恢复至设置前的数值;
基于恢复后的透明度,显示其他元素。
在本公开的另一个实施例中,显示其他元素之后,还包括:
执行其他元素的执行逻辑。
在本公开的另一个实施例中,基于每次调整后的播放窗口,显示目标直播间的直播视频之后,还包括:
响应于对目标直播间页面的关闭操作,获取播放窗口的第二位置尺寸;
将目标直播间页面切换至直播间列表页面,直播间列表页面上显示有预览窗口,预览窗口以第二位置尺寸为起始位置尺寸;
逐步调整预览窗口的位置尺寸直至达到第一位置尺寸,在调整预览窗口过程中,基于每次调整后的预览窗口,显示目标直播间的预览视频。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
基于图1所示的实施环境,本公开实施例提供了一种视频播放方法,以终端执行本公开实施例为例,参见图3,本公开实施例提供的方法流程包括:
301、终端显示直播间列表页面。
其中,直播间列表页面为直播应用提供的用于承载多个直播间的视频链接和预览窗口的页面。直播间的视频链接作为进入直播间的入口,通过点击该直播间的视频连接,可进入相应直播间观看主播用户的视频。预览窗口用于显示直播列表页面上目标直播间的预览视频。该预览窗口包括预览控件等。该预览控件为直播应用提供的具有特定功能的控件,该预览控件能够根据目标直播间的地址从服务器上拉取目标直播间的视频数据,并对获取的视频数据进行解析,进而播放该视频。该目标直播间的地址可以为直播间列表页面上任一直播间的地址,也可以为服务器推荐的直播间的地址,本公开实施例不对目标直播间的地址作具体的限定。目标直播间的数量为至少一个,该至少一个目标直播间的视频由预览控件按照一定的顺序进行播放。考虑到观众用户在直播间列表页面可能会通过上下滑动操作查看各个直播间的视频链接,为使观众用户能够实时查看到预览控件播放的视频,预览控件的位置并不是固定不变的,而是随着观众用户的上下滑动操作而移动。
302、响应于对直播间列表页面上预览窗口的触发操作,终端获取预览窗口的第一位置尺寸。
其中,第一位置尺寸用于表示预览控件的尺寸和位置,该第一位置尺寸包括第一位置和第一尺寸,该第一位置是指预览控件相对终端屏幕的实时位置,该第一尺寸是指预览控件的宽度和高度。触发操作包括单击操作、双击操作、滑动操作等一种。在直播间列表页面的显示过程中,当检测到对该直播间列表页面上预览控件的触发操作,响应于对该预览控件的触发操作,终端将获取预览控件的第一位置尺寸。具体地,终端可调用位置获取函数、宽度获取函数及高度获取函数等,通过调用位置获取函数,能够获取预览控件的第一位置,通过调用宽度获取函数,能够获取预览控件的宽度,通过调用高度获取函数,能够获取预览控件的高度,进而基于获取到预览控件的宽度和高度,获取预览控件的第一尺寸。操作***不同,所采取的位置获取函数、宽度函数、高度函数均不同。以安卓操作***为例,位置获取函数可以为View.getLocationOnScreen函数等,宽度获取函数可以为View.getWidth函数等,高度获取函数可以为View.getHeight等。
303、终端将直播间列表页面切换至目标直播间页面。
当获取到预览控件的第一位置尺寸之后,响应于对预览控件的触发操作,终端还将直播间列表页面切换到目标直播间页面。该目标直播间页面上显示有播放窗口,该播放窗口包括用于播放目标直播间的直播视频的播放控件等。终端以第一位置尺寸为起始位置尺寸在目标直播间页面上显示该播放窗口,也即是终端以第一位置为起始位置、第一尺寸为起始尺寸显示该播放窗口,并将该播放窗口以第一位置尺寸为起始位置尺寸进行动态调整,直至播放窗口的尺寸达到第二位置尺寸。采用该种方式,在将直播间列表页面切换到目标直播间页面时,目标直播间的视频的显示形态并不会发生明显的变化,对观众用户而言不会带来视觉上的冲击,播放方式较为友好。
在本公开的另一个实施例中,基于不同的操作***,终端获取播放控件的方式是不同的。对于安卓操作***,终端可以在目标直播间页面创建该播放控件,从而在将目标直播间页面切换到目标直播间页面时,终端能够基于该所创建的播放控件播放目标直播间的直播视频。该播放控件的创建时机可以为直播应用开发或更新预先创建,也可以在检测到对直播间列表页面上预览窗口的触发操作时实时创建,本公开实施例不对该播放控件的创建时机进行限定。
对于IOS操作***,终端在检测到对直播间列表页面上预览窗口的触发操作时,将预览窗口包括的预览控件的实体传入到播放窗口,在将直播间列表页面切换到目标直播间页面时,终端对目标直播间的播放控件进行初始化,并检测是否成功传入于预览控件的实体,如果成功传入预览控件的实体,则将预览控件确定为播放控件,也即是无需重新创建新的播放控件,直接采用预览控件播放目标直播间的直播视频,如果未成功传入预览控件的实体,为实现对目标直播间的直播视频的播放,终端将重新创建播放控件。采用该种方式避免了采用两个页面上的控件进行拉流时,存在的拉流衔接问题,真正做到了在不同页面间无缝播放视频。
在本公开的另一个实施例中,为实现页面间切换的连贯性,避免从直播间列表页面切换到目标直播间页面时,页面显示形态突变给观众用户带来较大的视觉冲击,本公开实施例在将直播间列表页面切换至目标直播间页面之前,还将目标直播间页面上的其他元素的透明度设置为透明。其中,其他元素为目标直播间页面上除播放窗口以外的元素,该其他元素用于创建目标直播间的视图。当将目标直播间页面上的其他元素的透明度设置为透明,在将直播间列表页面切换至目标直播间页面之后,终端将不再显示其他元素。
在本公开的另一个实施例中,将目标直播间页面上的其他元素的透明度设置为透明之后,对于视图的创建逻辑,不同操作***是不同的。对于安卓操作***,终端拦截目标直播间内视图的创建,将其他元素的执行逻辑设置为停止执行,从而节约***资源。对于IOS操作***,终端并不会拦截目标间内视图的创建,由于已将其他元素的透明度设置为透明,因而即便创建了目标直播间内的视图,所创建的视图对用户而言也是不可见的,但是采用该种方式并不会对目标直播间内原业务的干扰,减低了业务被干扰的风险。
304、终端逐步调整播放窗口的位置尺寸直至达到第二位置尺寸。
终端以第一位置尺寸为起始位置尺寸对播放窗口的位置尺寸进行逐步调整,直至将播放窗口的位置尺寸调整至第二位置尺寸。该第二位置尺寸为播放窗口的结束位置尺寸,该第二位置尺寸包括第二位置和第二尺寸,该第二位置是指播放窗口的结束位置,该第二位置尺寸中的第二位置可以位于终端屏幕的任意位置;第二尺寸是指播放窗口的最终尺寸,该第二位置尺寸中的第二尺寸可以为任意大小。
终端在逐步调整播放窗口的位置尺寸时,控制播放窗口从第一位置调整至第二位置,并在播放窗口从第一位置逐步调整至第二位置的过程中,将播放窗口的尺寸从第一尺寸放大至第二尺寸。对于安卓操作***来说,终端在控制播放窗口从第一位置移动到第二位置时,可采用安卓***提供的动画方法ViewPropertyAnimator.start实现。
在本公开的另一个实施例中,终端将播放窗口的尺寸从第一尺寸放大所述第二尺寸时,可根据播放窗口与目标直播间页面的位置关系,采取不同的放大方式将播放窗口的尺寸从所述第一尺寸放大所述第二尺寸。
第一种方式、如果播放窗口与目标直播间页面的上边缘之间的距离小于第一数值,终端保持该距离不变,将播放窗口的尺寸从第一尺寸放大至第二尺寸。其中,第一数值可以为5厘米、6厘米等等。采用第一种方式,可以呈现出播放窗口从目标直播间页面的上边缘向下边缘逐渐放大的效果。
第二种方式、如果播放窗口与目标直播间页面的下边缘之间的距离小于第一数值,终端保持该距离不变,将播放窗口的尺寸从第一尺寸放大至第二尺寸。采用第二种方式,可以呈现出播放窗口从目标直播间页面的下边缘向上边缘逐渐放大的效果。
第三种方式、如果播放窗口与目标直播间的上边缘之间的距离大于第二数值,终端控制播放窗口的上边缘向目标直播间页面的上边缘扩展、播放窗口的下边缘向目标直播间页面的下边缘扩展,使得播放窗口的尺寸从第一尺寸放大至第二尺寸。采用第三种方式,可以呈现出播放窗口从目标直播间页面的中间区域向上下两个边缘逐渐放大的效果。
当然,还可以有其他方式,此处不再一一说明。
305、在调整播放窗口过程中,终端基于每次调整后的播放窗口,显示目标直播间的直播视频。
进一步地,由于在调整播放窗口的位置尺寸过程中,目标直播间的视频一直处于显示状态,为使显示的目标直播间的视频与播放窗口的尺寸匹配,避免目标直播间的视频尺寸过大,导致部分直播视频内容无法显示,或者目标直播间尺寸过小,导致播放窗口出现空白区域而影响观众用户的观看体验,终端需要对待播放的目标直播间的直播视频进行裁剪,使得裁剪后的目标直播间的视频的尺寸与播放窗口的尺寸相匹配。具体地,终端获取播放窗口的移动时长,基于该移动时长确定目标直播间的视频播放帧数,进而根据第一尺寸和第二尺寸,确定每帧视频的尺寸,然后根据每帧视频的尺寸,对目标直播间的每帧视频进行裁剪,在调整播放窗口过程中,基于每次调整后的播放窗口,显示目标直播间的直播视频。
在本公开的另一个实施例中,当将播放窗口的位置尺寸调整至第二位置尺寸之后,播放窗口的位置尺寸不再变化,为了提高观众用户在目标直播间观看视频的体验,终端还将恢复原有的目标直播间页面的显示形态。具体地,终端可将其他元素的透明度恢复至设置前的数值,进而基于恢复后的透明度,显示其他元素。
对于安卓操作***,在恢复其他元素的透明度之后,终端还执行其他元素的执行逻辑,从而使得所显示的目标直播间页面的显示与原有形态相同,观众用户能够在该目标直播间页面上执行其他操作,例如,点赞、关注、赠送虚拟物品、发表评论等操作。
至此,本公开实施例实现了将直播间列表页面切换至目标直播间页面时,显示目标直播间的直播视频,在此基础上,本公开实施例还提供了将目标直播间页面切换至直播间列表页面时,对目标直播间的直播视频的显示过程。具体可采用如下方法:
第一步,如果观众用户想要退出目标直播间,该观众用户可点击目标直播间页面上的关闭选项,当检测到对该关闭选项的关闭操作,响应于对目标直播间页面的关闭操作,终端获取播放窗口的第二位置尺寸,进而将目标直播间页面切换至直播间列表页面,该直播间列表页面上显示有预览窗口,该预览窗口以第二位置尺寸为起始位置尺寸进行动态缩放,并在缩放过程中实时显示目标直播间的直播视频。在获取播放窗口的第二位置尺寸时,终端可调用位置获取函数,获取播放窗口的第二位置,并调用宽度获取函数,获取播放窗口的宽度,并调用高度获取函数,获取播放窗口的高度,进而基于所获取到的播放窗口的宽度和高度,获取播放窗口的第二尺寸。
第二步,在直播间列表页面显示过程中,终端以第二位置尺寸为起始位置尺寸,动态调整预览控件的位置尺寸,直至将预览控件的位置尺寸调整至第一位置尺寸。具体地,终端以第二位置为起始位置,控制预览控件从第二位置逐步调整至第一位置。在预览控件从第二位置逐步调整至第一位置的过程中,对预览控件的尺寸进行缩小处理,使得预览控件的尺寸由第二尺寸缩小至第一尺寸。在该过程中,终端根据第一位置尺寸和第二位置尺寸对目标直播间的视频进行裁剪,使得裁剪后的每帧视频与预览窗口的尺寸相匹配,从而避免每帧视频的尺寸过大而无法正常显示,或者每帧视频的尺寸过小预览窗口中存在空白区域而影响观众用户的观看体验。
需要说明的是,在将目标直播间页面切换至直播间列表页面时,直播间列表页面上的其他元素正常显示,并且其他元素的执行逻辑也正常执行。采用该种设置方式,使得观众用户在将目标直播间页面切换至直播间列表页面时,能够及时查看到直播间列表页面上其他直播间的直播视频,而无需等待预览窗口恢复到第一位置尺寸,缩短了观众用户的等待时长,提高了观众用户的体验效果。
在本公开的另一个实施例中,在将直播间列表页面切换到目标直播间页面的过程中,为避免目标直播间页面上的播放控件重新从服务器上获取目标直播间的视频,导致显示的目标直播间的视频画面中断,进而影响用户的体验,本公开实施例中预览控件和播放控件能够共享目标直播间的视频。将目标直播间列表页面切换到目标直播间页面时,在播放窗口的位置尺寸调整至第二位置尺寸之前,终端基于预览窗口的预览控件,获取目标直播间的视频;在播放窗口的位置尺寸调整至第二位置尺寸之后,终端基于播放窗口的播放控件,获取目标直播间的直播视频。在将目标直播间页面切换到直播间列表页面时,在预览窗口的位置尺寸调整至第一位置尺寸之前,终端基于播放窗口的播放控件,获取目标直播间的视频;在预览窗口的位置尺寸调整至第一位置尺寸之后,终端基于预览窗口的播放控件,获取目标直播间的视频。通过在预览控件与播放控件之间进行数据共享,在页面间切换时终端无需重新从服务器上获取目标直播间的视频,从而使得所显示的目标直播间的视频画面不中断,大大提高了视频播放效果。
本公开实施例提供的方法,在进行页面切换之后,无需重新加载直播间的视频,基于直播列表页面上的预览窗口的视频进行显示,使得显示的视频画面不会中断。且通过对播放窗口的位置尺寸进行调整,使得目标直播间的视频逐渐恢复到目标直播间原有的显示形态,该过程视频的显示形态不会发生突变,变化过程较为友好,不会给观众用户造成较大的视觉冲击,视频播放效果较佳。
参见图4,本公开实施例提供了一种视频播放装置,该装置包括:
获取模块401,用于响应于对直播间列表页面上预览窗口的触发操作,获取预览窗口的第一位置尺寸,预览窗口用于显示目标直播间的预览视频;
切换模块402,用于将直播间列表页面切换至目标直播间页面,目标直播间页面上显示有播放窗口,播放窗口以第一位置尺寸为起始位置尺寸;
调整模块403,用于逐步调整播放窗口的位置尺寸直至达到第二位置尺寸;
显示模块404,用于在调整播放窗口过程中,基于每次调整后的播放窗口,显示目标直播间的直播视频。
在本公开的另一个实施例中,获取模块,用于通过调用位置获取函数,获取预览窗口的第一位置;通过调用宽度获取函数和高度获取函数,分别获取预览窗口的宽度和高度,得到预览窗口的第一尺寸。
在本公开的另一个实施例中,播放窗口包括用于播放目标直播间的直播视频的播放控件,该装置还包括:
创建模块,用于在目标直播间页面创建播放控件。
在本公开的另一个实施例中,播放窗口包括用于播放目标直播间的直播视频的播放控件,该装置还包括:
传入模块,用于将预览窗口包括的预览控件的实体传入播放窗口;
确定模块,用于基于预览控件的实体,将预览控件确定为播放控件。
在本公开的另一个实施例中,第一位置尺寸包括第一位置和第一尺寸,第二位置包括第二位置和第二尺寸;
调整模块,用于在控制播放窗口从第一位置逐步调整至第二位置的过程中,将播放窗口的尺寸从第一尺寸放大至第二尺寸。
在本公开的另一个实施例中,调整模块,用于根据播放窗口与目标直播间页面的位置关系,采取不同的放大方式将播放窗口的尺寸从第一尺寸放大第二尺寸。
在本公开的另一个实施例中,调整模块,用于如果播放窗口与目标直播间页面的上边缘之间的距离小于第一数值,保持距离不变,将播放窗口的尺寸从第一尺寸放大至第二尺寸;如果播放窗口与目标直播间页面的下边缘之间的距离小于第一数值,保持距离不变,将播放窗口的尺寸从第一尺寸放大至第二尺寸;如果播放窗口与目标直播间的上边缘之间的距离大于第二数值,控制播放窗口的上边缘向目标直播间页面的上边缘扩展、播放窗口的下边缘向目标直播间页面的下边缘扩展,使得播放窗口的尺寸从第一尺寸放大至第二尺寸。
在本公开的另一个实施例中,该装置还包括:
确定模块,用于根据第一尺寸和第二尺寸,确定每帧视频的尺寸;
裁剪模块,用于根据每帧视频的尺寸,对目标直播间的每帧视频进行裁剪;
显示模块,用于基于每次调整后的播放窗口,显示剪裁后的每帧视频。
在本公开的另一个实施例中,获取模块,还用于在播放窗口的位置尺寸调整至第二位置尺寸之前,基于预览窗口的预览控件,获取目标直播间的直播视频;在播放窗口的位置尺寸调整至第二位置尺寸之后,基于播放窗口的播放控件,获取目标直播间的直播视频。
在本公开的另一个实施例中,该装置还包括:
设置模块,用于将目标直播间页面上的其他元素的透明度设置为透明,其他元素为目标直播间页面上除播放窗口以外的元素。
在本公开的另一个实施例中,设置模块,还用于将其他元素的执行逻辑设置为停止执行。
在本公开的另一个实施例中,该装置还包括:
恢复模块,用于当播放窗口的位置尺寸调整至第二位置尺寸,将其他元素的透明度恢复至设置前的数值;
显示模块,还用于基于恢复后的透明度,显示其他元素。
在本公开的另一个实施例中,该装置还包括:
执行模块,用于执行其他元素的执行逻辑。
在本公开的另一个实施例中,获取模块,还用于响应于对目标直播间页面的关闭操作,获取播放窗口的第二位置尺寸;
切换模块,还用于将目标直播间页面切换至直播间列表页面,直播间列表页面上显示有预览窗口,该预览窗口以第二位置尺寸为起始位置尺寸;
调整模块,还用于逐步调整预览窗口的位置尺寸直至达到第一位置尺寸;
显示模块,还用于在调整预览窗口过程中,基于每次调整后的预览窗口,显示目标直播间的预览视频。
综上,本公开实施例提供的装置,在进行页面切换之后,无需重新加载直播间的视频,基于直播列表页面上的预览窗口的视频进行显示,使得显示的视频画面不会中断。且通过对播放窗口的位置尺寸进行调整,使得目标直播间的视频逐渐恢复到目标直播间原有的显示形态,该过程视频的显示形态不会发生突变,变化过程较为友好,不会给观众用户造成较大的视觉冲击,视频播放效果较佳。
图5示出了本公开一个示例性实施例提供的终端500的结构框图。该终端500可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio LayerIV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端500还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端500包括有:处理器501和存储器502。
处理器501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器501可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器501所执行以实现本申请中方法实施例提供的视频播放方法。
在一些实施例中,终端500还可选包括有:***设备接口503和至少一个***设备。处理器501、存储器502和***设备接口503之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口503相连。具体地,***设备包括:射频电路504、显示屏505、摄像头组件506、音频电路507、定位组件508和电源509中的至少一种。
***设备接口503可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器501和存储器502。在一些实施例中,处理器501、存储器502和***设备接口503被集成在同一芯片或电路板上;在一些其他实施例中,处理器501、存储器502和***设备接口503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路504包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏505是触摸显示屏时,显示屏505还具有采集在显示屏505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器501进行处理。此时,显示屏505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏505可以为一个,设置终端500的前面板;在另一些实施例中,显示屏505可以为至少两个,分别设置在终端500的不同表面或呈折叠设计;在另一些实施例中,显示屏505可以是柔性显示屏,设置在终端500的弯曲表面上或折叠面上。甚至,显示屏505还可以设置成非矩形的不规则图形,也即异形屏。显示屏505可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件506用于采集图像或视频。可选地,摄像头组件506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器501进行处理,或者输入至射频电路504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器501或射频电路504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路507还可以包括耳机插孔。
定位组件508用于定位终端500的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件508可以是基于美国的GPS(GlobalPositioning System,全球定位***)、中国的北斗***、俄罗斯的格雷纳斯***或欧盟的伽利略***的定位组件。
电源509用于为终端500中的各个组件进行供电。电源509可以是交流电、直流电、一次性电池或可充电电池。当电源509包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端500还包括有一个或多个传感器510。该一个或多个传感器510包括但不限于:加速度传感器511、陀螺仪传感器512、压力传感器513、指纹传感器514、光学传感器515以及接近传感器516。
加速度传感器511可以检测以终端500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器511可以用于检测重力加速度在三个坐标轴上的分量。处理器501可以根据加速度传感器511采集的重力加速度信号,控制显示屏505以横向视图或纵向视图进行用户界面的显示。加速度传感器511还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器512可以检测终端500的机体方向及转动角度,陀螺仪传感器512可以与加速度传感器511协同采集用户对终端500的3D动作。处理器501根据陀螺仪传感器512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器513可以设置在终端500的侧边框和/或显示屏505的下层。当压力传感器513设置在终端500的侧边框时,可以检测用户对终端500的握持信号,由处理器501根据压力传感器513采集的握持信号进行左右手识别或快捷操作。当压力传感器513设置在显示屏505的下层时,由处理器501根据用户对显示屏505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器514用于采集用户的指纹,由处理器501根据指纹传感器514采集到的指纹识别用户的身份,或者,由指纹传感器514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器514可以被设置在终端500的正面、背面或侧面。当终端500上设置有物理按键或厂商Logo时,指纹传感器514可以与物理按键或厂商Logo集成在一起。
光学传感器515用于采集环境光强度。在一个实施例中,处理器501可以根据光学传感器515采集的环境光强度,控制显示屏505的显示亮度。具体地,当环境光强度较高时,调高显示屏505的显示亮度;当环境光强度较低时,调低显示屏505的显示亮度。在另一个实施例中,处理器501还可以根据光学传感器515采集的环境光强度,动态调整摄像头组件506的拍摄参数。
接近传感器516,也称距离传感器,通常设置在终端500的前面板。接近传感器516用于采集用户与终端500的正面之间的距离。在一个实施例中,当接近传感器516检测到用户与终端500的正面之间的距离逐渐变小时,由处理器501控制显示屏505从亮屏状态切换为息屏状态;当接近传感器516检测到用户与终端500的正面之间的距离逐渐变大时,由处理器501控制显示屏505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图5中示出的结构并不构成对终端500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本公开实施例提供的终端,在进行页面切换之后,无需重新加载直播间的视频,基于直播列表页面上的预览窗口的视频进行显示,使得显示的视频画面不会中断。且通过对播放窗口的位置尺寸进行调整,使得目标直播间的视频逐渐恢复到目标直播间原有的显示形态,该过程视频的显示形态不会发生突变,变化过程较为友好,不会给观众用户造成较大的视觉冲击,视频播放效果较佳。
本公开实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现图2或图3所示的视频播放方法。该计算机可读存储介质可以是非暂态的。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本公开实施例提供的计算机可读存储介质,在进行页面切换之后,无需重新加载直播间的视频,基于直播列表页面上的预览窗口的视频进行显示,使得显示的视频画面不会中断。且通过对播放窗口的位置尺寸进行调整,使得目标直播间的视频逐渐恢复到目标直播间原有的显示形态,该过程视频的显示形态不会发生突变,变化过程较为友好,不会给观众用户造成较大的视觉冲击,视频播放效果较佳。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本公开的可选实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (17)
1.一种视频播放方法,其特征在于,所述方法包括:
响应于对直播间列表页面上预览窗口的触发操作,获取所述预览窗口的第一位置尺寸,所述预览窗口用于显示目标直播间的预览视频;
将所述直播间列表页面切换至目标直播间页面,所述目标直播间页面上显示有播放窗口,所述播放窗口以所述第一位置尺寸为起始位置尺寸;
逐步调整所述播放窗口的位置尺寸直至达到第二位置尺寸,在调整所述播放窗口过程中,基于每次调整后的播放窗口,显示所述目标直播间的直播视频。
2.根据权利要求1所述的方法,其特征在于,所述获取所述预览窗口的第一位置尺寸,包括:
通过调用位置获取函数,获取所述预览窗口的第一位置;
通过调用宽度获取函数和高度获取函数,分别获取所述预览窗口的宽度和高度,得到所述预览窗口的第一尺寸。
3.根据权利要求1所述的方法,其特征在于,所述播放窗口包括用于播放所述目标直播间的直播视频的播放控件,所述将所述目标直播间列表页面切换至目标直播间页面之前,还包括:
在所述目标直播间页面创建所述播放控件。
4.根据权利要求1所述的方法,其特征在于,所述播放窗口包括用于播放所述目标直播间的直播视频的播放控件,所述将所述目标直播间列表页面切换至目标直播间页面之前,还包括:
将所述预览窗口包括的预览控件的实体传入所述播放窗口;
基于所述预览控件的实体,将所述预览控件确定为所述播放控件。
5.根据权利要求1所述的方法,其特征在于,所述第一位置尺寸包括第一位置和第一尺寸,所述第二位置包括第二位置和第二尺寸;
所述逐步调整所述播放窗口的位置尺寸直至达到第二位置尺寸,包括:
在控制所述播放窗口从所述第一位置逐步调整至所述第二位置的过程中,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸。
6.根据权利要求5所述的方法,其特征在于,所述将所述播放窗口的尺寸从所述第一尺寸放大所述第二尺寸,包括:
根据所述播放窗口与所述目标直播间页面的位置关系,采取不同的放大方式将所述播放窗口的尺寸从所述第一尺寸放大所述第二尺寸。
7.根据权利要求6所述的方法,其特征在于,所述根据所述播放窗口与所述目标直播间页面的位置关系,采取不同的放大方式将所述播放窗口的尺寸从所述第一尺寸放大所述第二尺寸,包括:
如果所述播放窗口与所述目标直播间页面的上边缘之间的距离小于第一数值,保持所述距离不变,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸;
如果所述播放窗口与所述目标直播间页面的下边缘之间的距离小于所述第一数值,保持所述距离不变,将所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸;
如果所述播放窗口与所述目标直播间的上边缘之间的距离大于第二数值,控制所述播放窗口的上边缘向所述目标直播间页面的上边缘扩展、所述播放窗口的下边缘向所述目标直播间页面的下边缘扩展,使得所述播放窗口的尺寸从所述第一尺寸放大至所述第二尺寸。
8.根据权利要求5所述的方法,其特征在于,所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频之前,还包括:
根据所述第一尺寸和所述第二尺寸,确定每帧视频的尺寸;
根据每帧视频的尺寸,对所述目标直播间的每帧视频进行裁剪;
所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频,包括:
基于每次调整后的播放窗口,显示剪裁后的每帧视频。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述播放窗口的位置尺寸调整至所述第二位置尺寸之前,基于所述预览窗口的预览控件,获取所述目标直播间的直播视频;
在所述播放窗口的位置尺寸调整至所述第二位置尺寸之后,基于所述播放窗口的播放控件,获取所述目标直播间的直播视频。
10.根据权利要求1所述的方法,其特征在于,所述将所述直播间列表页面切换至目标直播间页面之前,还包括:
将所述目标直播间页面上的其他元素的透明度设置为透明,所述其他元素为所述目标直播间页面上除所述播放窗口以外的元素。
11.根据权利要求10所述的方法,其特征在于,所述将所述目标直播间页面上的其他元素的透明度设置为透明之后,还包括:
将所述其他元素的执行逻辑设置为停止执行。
12.根据权利要求10所述的方法,其特征在于,所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频之后,还包括:
当所述播放窗口的位置尺寸调整至所述第二位置尺寸,将所述其他元素的透明度恢复至设置前的数值;
基于恢复后的透明度,显示所述其他元素。
13.根据权利要求12所述的方法,其特征在于,所述显示所述其他元素之后,还包括:
执行所述其他元素的执行逻辑。
14.根据权利要求1至13中任一项所述的方法,其特征在于,所述基于每次调整后的播放窗口,显示所述目标直播间的直播视频之后,还包括:
响应于对所述目标直播间页面的关闭操作,获取所述播放窗口的所述第二位置尺寸;
将所述目标直播间页面切换至所述直播间列表页面,所述直播间列表页面上显示有所述预览窗口,所述预览窗口以所述第二位置尺寸为起始位置尺寸;
逐步调整所述预览窗口的位置尺寸直至达到所述第一位置尺寸,在调整所述预览窗口过程中,基于每次调整后的预览窗口,显示所述目标直播间的预览视频。
15.一种视频播放装置,其特征在于,所述装置包括:
获取模块,用于响应于对直播间列表页面上预览窗口的触发操作,获取所述预览窗口的第一位置尺寸,所述预览窗口用于显示目标直播间的预览视频;
切换模块,用于将所述直播间列表页面切换至目标直播间页面,所述目标直播间页面上显示有播放窗口,所述播放窗口以所述第一位置尺寸为起始位置尺寸;
调整模块,用于逐步调整所述播放窗口的位置尺寸直至达到第二位置尺寸;
显示模块,用于在调整所述播放窗口过程中,基于每次调整后的播放窗口,显示所述目标直播间的直播视频。
16.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1至14中任一项所述的视频播放方法。
17.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至14中任一项所述的视频播放方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011205295.8A CN112383808A (zh) | 2020-11-02 | 2020-11-02 | 视频播放方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011205295.8A CN112383808A (zh) | 2020-11-02 | 2020-11-02 | 视频播放方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112383808A true CN112383808A (zh) | 2021-02-19 |
Family
ID=74576539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011205295.8A Pending CN112383808A (zh) | 2020-11-02 | 2020-11-02 | 视频播放方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112383808A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114501100A (zh) * | 2022-01-19 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | 直播页面跳转方法及*** |
CN114567806A (zh) * | 2022-02-28 | 2022-05-31 | 上海哔哩哔哩科技有限公司 | 跨页切换方法及*** |
CN114942711A (zh) * | 2022-05-31 | 2022-08-26 | 北京字节跳动网络技术有限公司 | 一种数据播放方法、装置、计算机设备以及存储介质 |
CN115103218A (zh) * | 2022-06-16 | 2022-09-23 | 广州市百果园网络科技有限公司 | 数据流回收方法及其装置、设备、介质 |
CN115334328A (zh) * | 2022-07-26 | 2022-11-11 | 广州方硅信息技术有限公司 | 进入直播间页面的方法、装置、直播***、设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150370759A1 (en) * | 2013-04-22 | 2015-12-24 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for displaying multimedia content in browser |
CN106028117A (zh) * | 2016-05-24 | 2016-10-12 | 青岛海信电器股份有限公司 | 一种图像处理方法及装置 |
US20170332036A1 (en) * | 2016-05-10 | 2017-11-16 | Rovi Guides, Inc. | Systems and methods for resizing content based on a relative importance of the content |
CN108449641A (zh) * | 2018-03-28 | 2018-08-24 | 聚好看科技股份有限公司 | 播放媒体流的方法、装置、计算机设备和存储介质 |
CN109246466A (zh) * | 2018-10-30 | 2019-01-18 | 北京达佳互联信息技术有限公司 | 视频播放方法、装置及电子设备 |
CN109842818A (zh) * | 2019-01-02 | 2019-06-04 | 平安科技(深圳)有限公司 | 一种视频播放方法、装置、计算机设备及存储介质 |
-
2020
- 2020-11-02 CN CN202011205295.8A patent/CN112383808A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150370759A1 (en) * | 2013-04-22 | 2015-12-24 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for displaying multimedia content in browser |
US20170332036A1 (en) * | 2016-05-10 | 2017-11-16 | Rovi Guides, Inc. | Systems and methods for resizing content based on a relative importance of the content |
CN106028117A (zh) * | 2016-05-24 | 2016-10-12 | 青岛海信电器股份有限公司 | 一种图像处理方法及装置 |
CN108449641A (zh) * | 2018-03-28 | 2018-08-24 | 聚好看科技股份有限公司 | 播放媒体流的方法、装置、计算机设备和存储介质 |
CN109246466A (zh) * | 2018-10-30 | 2019-01-18 | 北京达佳互联信息技术有限公司 | 视频播放方法、装置及电子设备 |
CN109842818A (zh) * | 2019-01-02 | 2019-06-04 | 平安科技(深圳)有限公司 | 一种视频播放方法、装置、计算机设备及存储介质 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114501100A (zh) * | 2022-01-19 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | 直播页面跳转方法及*** |
CN114501100B (zh) * | 2022-01-19 | 2024-05-24 | 上海哔哩哔哩科技有限公司 | 直播页面跳转方法及*** |
CN114567806A (zh) * | 2022-02-28 | 2022-05-31 | 上海哔哩哔哩科技有限公司 | 跨页切换方法及*** |
CN114942711A (zh) * | 2022-05-31 | 2022-08-26 | 北京字节跳动网络技术有限公司 | 一种数据播放方法、装置、计算机设备以及存储介质 |
CN115103218A (zh) * | 2022-06-16 | 2022-09-23 | 广州市百果园网络科技有限公司 | 数据流回收方法及其装置、设备、介质 |
CN115103218B (zh) * | 2022-06-16 | 2023-09-19 | 广州市百果园网络科技有限公司 | 数据流回收方法及其装置、设备、介质 |
CN115334328A (zh) * | 2022-07-26 | 2022-11-11 | 广州方硅信息技术有限公司 | 进入直播间页面的方法、装置、直播***、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109246466B (zh) | 视频播放方法、装置及电子设备 | |
CN110602321B (zh) | 应用程序切换方法、装置、电子装置及存储介质 | |
CN110368689B (zh) | 游戏界面的显示方法、***、电子设备及存储介质 | |
CN108449641B (zh) | 播放媒体流的方法、装置、计算机设备和存储介质 | |
CN111065001B (zh) | 视频制作的方法、装置、设备及存储介质 | |
CN112383808A (zh) | 视频播放方法、装置、终端及存储介质 | |
KR20110122979A (ko) | 이동 단말기 및 그 제어 방법 | |
CN111464830B (zh) | 图像显示的方法、装置、***、设备及存储介质 | |
CN110533585B (zh) | 一种图像换脸的方法、装置、***、设备和存储介质 | |
CN111083526B (zh) | 视频转场方法、装置、计算机设备及存储介质 | |
CN111901658A (zh) | 评论信息显示方法、装置、终端及存储介质 | |
CN111880888B (zh) | 预览封面生成方法、装置、电子设备及存储介质 | |
CN110868636B (zh) | 视频素材的截取方法、装置、存储介质及终端 | |
CN111741366A (zh) | 音频播放方法、装置、终端及存储介质 | |
CN109634688B (zh) | 会话界面的显示方法、装置、终端及存储介质 | |
CN110839174A (zh) | 图像处理的方法、装置、计算机设备以及存储介质 | |
KR20140142587A (ko) | 이동 단말기 및 그것의 제어방법 | |
CN111897465B (zh) | 弹窗显示方法、装置、设备及存储介质 | |
CN111818358A (zh) | 音频文件的播放方法、装置、终端及存储介质 | |
CN109089137B (zh) | 卡顿检测方法及装置 | |
CN110933454B (zh) | 处理直播萌脸礼物的方法、装置、设备及存储介质 | |
CN111857938A (zh) | 弹窗视图的管理方法、装置、终端及存储介质 | |
CN110992268A (zh) | 背景设置方法、装置、终端及存储介质 | |
CN113613053B (zh) | 视频推荐方法、装置、电子设备及存储介质 | |
CN114554112A (zh) | 视频录制方法、装置、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210219 |
|
RJ01 | Rejection of invention patent application after publication |