CN116320587B - 一种基于h5多播放器实现短视频加速的方法及装置 - Google Patents

一种基于h5多播放器实现短视频加速的方法及装置 Download PDF

Info

Publication number
CN116320587B
CN116320587B CN202310545074.2A CN202310545074A CN116320587B CN 116320587 B CN116320587 B CN 116320587B CN 202310545074 A CN202310545074 A CN 202310545074A CN 116320587 B CN116320587 B CN 116320587B
Authority
CN
China
Prior art keywords
player
video
web
playing
queue
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
CN202310545074.2A
Other languages
English (en)
Other versions
CN116320587A (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.)
State Grid Information and Telecommunication Co Ltd
Original Assignee
State Grid Information and Telecommunication 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 State Grid Information and Telecommunication Co Ltd filed Critical State Grid Information and Telecommunication Co Ltd
Priority to CN202310545074.2A priority Critical patent/CN116320587B/zh
Publication of CN116320587A publication Critical patent/CN116320587A/zh
Application granted granted Critical
Publication of CN116320587B publication Critical patent/CN116320587B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供一种基于H5多播放器实现短视频加速的方法及装置,属于短视频加速技术领域,所述方法步骤如下:基于H5框架搭建web播放器客户端和服务端,并在客户端设置视频缓存队列和播放器队列;客户端向服务端获取分段的视频流播放信息,并通过视频缓存队列缓存;客户端通过播放器队列根据缓存的视频流播放信息向服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;客户端接收用户对短视频页面的滑动指令,使用前一播放器播放已加载视频流,而使用后一播放器播放预加载视频流。本发明实现轻量化短视频播放功能,保证短视频播放流畅度,实现应用灵活发布,满足企业级短视频播放功能。

Description

一种基于H5多播放器实现短视频加速的方法及装置
技术领域
本发明属于短视频加速技术领域,具体涉及一种基于H5多播放器实现短视频加速的方法及装置。
背景技术
随着短视频的发展,企业级移动应用中也有了短视频需求,但当下的主要短视频平台例如抖音、快手等短视频应用的平台存在功能冗余,不适用于传统的企业级移动综合类门户中短视频功能需求,企业级移动应用中短视频功能不需要提供诸如抖音、快手等短视频平台的用户个性化虚拟能力,只需满足播放基础功能和流畅播放能力即可。而作为大部分短视频框架技术所采用的原生播放器虽然具备强大的播放能力,但对于综合类移动门户而言并不适用,需要在安卓、iOS端提供的原生播放sdk包基础上根据机型进行短视频播放器进一步的扩展和开发。
目前现有主流的短视频技术方案为针对安卓和iOS的原生播放器方案。原生播放器基于原生sdk具备加速缓存能力,但是原生加速器需要集成sdk,导致原生的安装包较大,此外还需要综合iOS端与安卓端以及各个系统版本进行考虑,无论是开发成本还是难度都较大,对于部分需经常更新的移动应用,原生功能需要频繁整包更新,从而导致用户过多的流量浪费,甚至有些sdk的冗余仅仅是只为了非必须的功能,却导致降低了用户的体验。
综上,现有短视频原生方案所需依赖包过大,开发成本过高,安装包体积过大,并且无法适配移动设备中网络不稳定环境下的播放流畅度。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种基于H5多播放器实现短视频加速的方法及装置,是非常有必要的。
发明内容
针对现有技术的上述现有短视频原生方案所需依赖包过大,开发成本过高,安装包体积过大,并且无法适配移动设备中网络不稳定环境下的播放流畅度的缺陷,本发明提供一种基于H5多播放器实现短视频加速的方法及装置,以解决上述技术问题。
第一方面,本发明提供一种基于H5多播放器实现短视频加速的方法,包括如下步骤:
S1.基于H5框架搭建web播放器客户端和服务端,并在web播放器客户端设置视频缓存队列进行多视频流初始化,以及设置播放器队列进行多播放器初始化;
S2.web播放器客户端接收到用户触发的播放事件后,向web播放器服务端获取分段的视频流播放信息,再通过视频缓存队列对分段的视频流播放信息进行缓存;
S3.web播放器客户端通过播放器队列向视频缓存队列获取分段的视频流播放信息,再向web播放器服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;
S4.web播放器客户端接收用户对短视频页面的滑动指令,并在下滑操作时使用前一播放器播放已加载视频流,而在上滑操作时使用后一播放器播放预加载视频流。
进一步地,步骤S1具体步骤如下:
S11.基于H5框架搭建web播放器服务端,并在web播放器服务端存储短视频;
S12.将web播放器服务端存储的短视频按照目标播放格式切割为若干ts格式的流媒体片段,生成连续的若干视频流;
S13.基于H5框架搭建web播放器客户端,在web播放器客户端设置视频缓存队列,且视频缓存队列长度大于等于播放器队列长度;
S14.在web播放器客户端进行播放器初始化,基于vue框架进行播放器组件应用层封装,并在每个组件中配置目标播放格式地址、播放器属性信息,以及集成播放功能;
S15.在web播放器客户端设置播放器队列,并在播放器队列中放置至少三个全局H5播放器,并按照播放器顺序建立各播放器与视频缓存队列的一一对应关系。
进一步地,步骤S12中目标播放格式为m3u8播放格式;
步骤S14中目标播放器格式地址为m3u8地址,播放器属性信息包括宽和高属性信息,播放功能包括播放、暂停以及继续播放。
进一步地,步骤S2具体步骤如下:
S21.web播放器客户端接收到用户触发的短视频播放事件后,向web服务器服务端获取分页视频列表;
S22.web播放器客户端根据播放队列长度确定视频缓存队列的使用长度;
S23.web播放器客户端根据分页视频列表通过异步方式向web播放器服务端获取连续的N段视频流播放地址;N的数量与播放队列长度相等;
S24.web播放器客户端将获取N端视频流播放地址保存在视频缓存队列中,提供给播放器队列使用。
进一步地,视频流播放信息还包括视频流令牌。
进一步地,步骤S3具体步骤如下:
S31.web播放器客户端通过播放器队列向视频缓存队列获取N段视频流播放地址,并根据视频流播放地址向web播放器服务端请求N段连续视频流;
S32.web播放器客户端播放器队列的N个播放器与N段连续视频流一一对应进行加载;
S33.web播放器客户端播放器队列的N个播放器循环作为当前播放器;
S34.web播放器客户端播放器队列的当前播放器播放加载视频流,而当前播放器的前一播放器及后一播放器暂停播放视频流,并隐藏播放器。
进一步地,步骤S33中在当前播放器的视频流播放完毕后,则令下一播放器作为当前播放器,而令最上端的播放器作为新的末端播放器继续通过视频缓存队列向web播放器服务器请求视频流地址,进行视频流预加载。
进一步地,步骤S4具体步骤如下:
S41.短视频播放过程中,web播放器客户端接收到用户对短视频页面的滑动操作指令时,对指令进行解析;
当滑动操作指令为下滑操作时,进入步骤S42;
当滑动操作指令为上滑操作时,进入步骤S43;
S42.web播放器客户端切换前一播放器作为当前播放器,对已加载视频流进行播放,并对当前播放器隐藏,并暂停播放,结束;
S43.web播放器客户端切换后一播放器作为当前播放器,对预加载视频进行播放,并对当前播放器隐藏,并暂停播放。
第二方面,本发明提供一种基于H5多播放器实现短视频加速的装置,包括:
web播放器客户端及服务端搭建模块,用于基于H5框架搭建web播放器客户端和服务端,并在web播放器客户端设置视频缓存队列进行多视频流初始化,以及设置播放器队列进行多播放器初始化;
视频流播放信息缓存模块,用于在web播放器客户端接收到用户触发的播放事件后,向web播放器服务端获取分段的视频流播放信息,再通过视频缓存队列对分段的视频流播放信息进行缓存;
视频流预加载模块,用于在web播放器客户端通过播放器队列向视频缓存队列获取分段的视频流播放信息,再向web播放器服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;
视频滑动播放处理模块,用于在web播放器客户端接收用户对短视频页面的滑动指令,并在下滑操作时使用前一播放器播放已加载视频流,而在上滑操作时使用后一播放器播放预加载视频流。
进一步地,web播放器客户端及服务端搭建模块包括:
服务端搭建及短视频存储单元,用于基于H5框架搭建web播放器服务端,并在web播放器服务端存储短视频;
短视频切割单元,用于将web播放器服务端存储的短视频按照目标播放格式切割为若干ts格式的流媒体片段,生成连续的若干视频流;
视频缓存队列设置单元,用于基于H5框架搭建web播放器客户端,在web播放器客户端设置视频缓存队列,且视频缓存队列长度大于等于播放器队列长度;
播放器初始化单元,用于在web播放器客户端进行播放器初始化,基于vue框架进行播放器组件应用层封装,并在每个组件中配置目标播放格式地址、播放器属性信息,以及集成播放功能;
播放器队列设置单元,用于在web播放器客户端设置播放器队列,并在播放器队列中放置至少三个全局H5播放器,并按照播放器顺序建立各播放器与视频缓存队列的一一对应关系;
视频流播放信息缓存模块包括:
分页视频列表获取单元,用于在web播放器客户端接收到用户触发的短视频播放事件后,向web服务器服务端获取分页视频列表;
视频缓存队列长度确定单元,用于在web播放器客户端根据播放队列长度确定视频缓存队列的使用长度;
视频流地址获取单元,用于在web播放器客户端根据分页视频列表通过异步方式向web播放器服务端获取连续的N段视频流播放地址;N的数量与播放队列长度相等;
视频流地址缓存单元,用于在web播放器客户端将获取N端视频流播放地址保存在视频缓存队列中,提供给播放器队列使用。
进一步地,视频流预加载模块包括:
视频流请求单元,用于在web播放器客户端通过播放器队列向视频缓存队列获取N段视频流播放地址,并根据视频流播放地址向web播放器服务端请求N段连续视频流;
视频流加载单元,用于在web播放器客户端播放器队列的N个播放器与N段连续视频流一一对应进行加载;
播放器循环单元,用于在web播放器客户端播放器队列的N个播放器循环作为当前播放器;
播放器隐藏单元,用于在web播放器客户端播放器队列的当前播放器播放加载视频流,而当前播放器的前一播放器及后一播放器暂停播放视频流,并隐藏播放器;
视频滑动播放处理模块包括:
滑动操作指令解析单元,用于短视频播放过程中,在web播放器客户端接收到用户对短视频页面的滑动操作指令时,对指令进行解析;
前一视频再播放单元,用于滑动操作指令为下滑操作时,在web播放器客户端切换前一播放器作为当前播放器,对已加载视频流进行播放,并对当前播放器隐藏,并暂停播放;
预加载视频播放单元,用于滑动操作指令为上滑操作时,web播放器客户端切换后一播放器作为当前播放器,对预加载视频进行播放,并对当前播放器隐藏,并暂停播放。
本发明的有益效果在于:
本发明提供的基于H5多播放器实现短视频加速的方法及装置,基于H5技术实现了短视频播放功能的轻量化,摒弃了大量和短视频播放无关的功能,通过多播放器设计,解决了传统H5单播放器缺乏预加载能力导致视频流不流畅、体验差的问题,使应用具备与原生播放器同等流畅度的同时,又可通过H5的方式实现灵活的应用发布,更适应企业级短视频播放功能的需求场景。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明基于H5多播放器实现短视频加速的方法实施例1流程示意图。
图2是本发明基于H5多播放器实现短视频加速的方法实施例2流程示意图。
图3为本发明基于H5多播放器实现短视频加速的装置示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
H5,指的是HTML5,即网页使用的HTML代码-第五代超文本标记语言;狭义上,H5就是互动形式的多媒体广告页面。
实施例1:
如图1所示,本发明提供一种基于H5多播放器实现短视频加速的方法,包括如下步骤:
S1.基于H5框架搭建web播放器客户端和服务端,并在web播放器客户端设置视频缓存队列进行多视频流初始化,以及设置播放器队列进行多播放器初始化;
S2.web播放器客户端接收到用户触发的播放事件后,向web播放器服务端获取分段的视频流播放信息,再通过视频缓存队列对分段的视频流播放信息进行缓存;
S3.web播放器客户端通过播放器队列向视频缓存队列获取分段的视频流播放信息,再向web播放器服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;
S4.web播放器客户端接收用户对短视频页面的滑动指令,并在下滑操作时使用前一播放器播放已加载视频流,而在上滑操作时使用后一播放器播放预加载视频流。
实施例2:
如图2所示,本发明提供一种基于H5多播放器实现短视频加速的方法,包括如下步骤:
S1.基于H5框架搭建web播放器客户端和服务端,并在web播放器客户端设置视频缓存队列进行多视频流初始化,以及设置播放器队列进行多播放器初始化;步骤S1具体步骤如下:
S11.基于H5框架搭建web播放器服务端,并在web播放器服务端存储短视频;
S12.将web播放器服务端存储的短视频按照目标播放格式切割为若干ts格式的流媒体片段,生成连续的若干视频流;目标播放格式为m3u8播放格式;
S13.基于H5框架搭建web播放器客户端,在web播放器客户端设置视频缓存队列,且视频缓存队列长度大于等于播放器队列长度;初始化获取视频缓存队列,移动应用从web播放器服务端中获取用户所需的视频播放地址及其他参数并存入缓存队列,以播放队列长度为三个为例,加载队列中的前三个视频流对应到三个全局播放器中;
S14.在web播放器客户端进行播放器初始化,基于vue框架进行播放器组件应用层封装,并在每个组件中配置目标播放格式地址、播放器属性信息,以及集成播放功能;目标播放器格式地址为m3u8地址,播放器属性信息包括宽和高属性信息,播放功能包括播放、暂停以及继续播放;进行播放器的初始化,将H5西瓜播放器,基于vue框架进行播放器组件的应用层封装,每个组件中配置m3u8地址、播放器的宽高等属性,并实现播放、暂停、继续播放等播放操作功能;
S15.在web播放器客户端设置播放器队列,并在播放器队列中放置至少三个全局H5播放器,并按照播放器顺序建立各播放器与视频缓存队列的一一对应关系;通过设计若干全局播放器,以三个为例,并制定合理的切换策略,为后续基于多播放器的短视频播放和平滑切换功能做好准备;
S2.web播放器客户端接收到用户触发的播放事件后,向web播放器服务端获取分段的视频流播放信息,再通过视频缓存队列对分段的视频流播放信息进行缓存;视频流播放信息还包括视频流令牌;步骤S2具体步骤如下:
S21.web播放器客户端接收到用户触发的短视频播放事件后,向web服务器服务端获取分页视频列表;
S22.web播放器客户端根据播放队列长度确定视频缓存队列的使用长度;
S23.web播放器客户端根据分页视频列表通过异步方式向web播放器服务端获取连续的N段视频流播放地址;N的数量与播放队列长度相等;
S24.web播放器客户端将获取N端视频流播放地址保存在视频缓存队列中,提供给播放器队列使用;
S3.web播放器客户端通过播放器队列向视频缓存队列获取分段的视频流播放信息,再向web播放器服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;步骤S3具体步骤如下:
S31.web播放器客户端通过播放器队列向视频缓存队列获取N段视频流播放地址,并根据视频流播放地址向web播放器服务端请求N段连续视频流;进行视频流信息预加载处理,当用户通过服务接口成功获取首个视频播放地址后,组件通过异步方式,自动根据队列中下一个视频vid获取该视频的token、宽高尺寸、码率、m3u8地址等信息,并存入视频缓存队列中,供下一个播放器使用;
S32.web播放器客户端播放器队列的N个播放器与N段连续视频流一一对应进行加载;
S33.web播放器客户端播放器队列的N个播放器循环作为当前播放器;
S34.web播放器客户端播放器队列的当前播放器播放加载视频流,而当前播放器的前一播放器及后一播放器暂停播放视频流,并隐藏播放器;应用多播放器预加载机制,当用户初始化首个播放器并触发可播放事件时,根据上一步中视频缓存队列提供的参数,对下一个播放器进行初始化,并通过灵活设置该播放器的CSS样式为隐藏且暂停播放状态,实现提前后台加载播放器且不干扰用户当前播放;
S4.web播放器客户端接收用户对短视频页面的滑动指令,并在下滑操作时使用前一播放器播放已加载视频流,而在上滑操作时使用后一播放器播放预加载视频流;步骤S4具体步骤如下:
S41.短视频播放过程中,web播放器客户端接收到用户对短视频页面的滑动操作指令时,对指令进行解析;
当滑动操作指令为下滑操作时,进入步骤S42;
当滑动操作指令为上滑操作时,进入步骤S43;
S42.web播放器客户端切换前一播放器作为当前播放器,对已加载视频流进行播放,并对当前播放器隐藏,并暂停播放,结束;
S43.web播放器客户端切换后一播放器作为当前播放器,对预加载视频进行播放,并对当前播放器隐藏,并暂停播放;
当用户对视频页面进行滑动操作的时候,组件判断滑动方向,并根据滑动方向进行播放器和视频流的移位处理:如果是下滑操作即往回播放,由于上一个播放器已加载视频流并播放过,可直接切换上一个播放器进行播放,不再需要重新进行视频流信息预加载和多播放器预加载;如果是上滑操作即播放队列中的下一个视频,需要切换至下一个播放器将其显示并启动播放,同时将上一个播放器隐藏并暂停播放,借助开启新的视频流和播放器预加载流程。
在某些实施例中,步骤S33中在当前播放器的视频流播放完毕后,则令下一播放器作为当前播放器,而令最上端的播放器作为新的末端播放器继续通过视频缓存队列向web播放器服务器请求视频流地址,进行视频流预加载。
实施例3:
如图3所示,本发明提供一种基于H5多播放器实现短视频加速的装置,包括:
web播放器客户端及服务端搭建模块,用于基于H5框架搭建web播放器客户端和服务端,并在web播放器客户端设置视频缓存队列进行多视频流初始化,以及设置播放器队列进行多播放器初始化;web播放器客户端及服务端搭建模块包括:
服务端搭建及短视频存储单元,用于基于H5框架搭建web播放器服务端,并在web播放器服务端存储短视频;
短视频切割单元,用于将web播放器服务端存储的短视频按照目标播放格式切割为若干ts格式的流媒体片段,生成连续的若干视频流;
视频缓存队列设置单元,用于基于H5框架搭建web播放器客户端,在web播放器客户端设置视频缓存队列,且视频缓存队列长度大于等于播放器队列长度;
播放器初始化单元,用于在web播放器客户端进行播放器初始化,基于vue框架进行播放器组件应用层封装,并在每个组件中配置目标播放格式地址、播放器属性信息,以及集成播放功能;
播放器队列设置单元,用于在web播放器客户端设置播放器队列,并在播放器队列中放置至少三个全局H5播放器,并按照播放器顺序建立各播放器与视频缓存队列的一一对应关系;
视频流播放信息缓存模块,用于在web播放器客户端接收到用户触发的播放事件后,向web播放器服务端获取分段的视频流播放信息,再通过视频缓存队列对分段的视频流播放信息进行缓存;视频流播放信息缓存模块包括:
分页视频列表获取单元,用于在web播放器客户端接收到用户触发的短视频播放事件后,向web服务器服务端获取分页视频列表;
视频缓存队列长度确定单元,用于在web播放器客户端根据播放队列长度确定视频缓存队列的使用长度;
视频流地址获取单元,用于在web播放器客户端根据分页视频列表通过异步方式向web播放器服务端获取连续的N段视频流播放地址;N的数量与播放队列长度相等;
视频流地址缓存单元,用于在web播放器客户端将获取N端视频流播放地址保存在视频缓存队列中,提供给播放器队列使用;
视频流预加载模块,用于在web播放器客户端通过播放器队列向视频缓存队列获取分段的视频流播放信息,再向web播放器服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;视频流预加载模块包括:
视频流请求单元,用于在web播放器客户端通过播放器队列向视频缓存队列获取N段视频流播放地址,并根据视频流播放地址向web播放器服务端请求N段连续视频流;
视频流加载单元,用于在web播放器客户端播放器队列的N个播放器与N段连续视频流一一对应进行加载;
播放器循环单元,用于在web播放器客户端播放器队列的N个播放器循环作为当前播放器;
播放器隐藏单元,用于在web播放器客户端播放器队列的当前播放器播放加载视频流,而当前播放器的前一播放器及后一播放器暂停播放视频流,并隐藏播放器;
视频滑动播放处理模块,用于在web播放器客户端接收用户对短视频页面的滑动指令,并在下滑操作时使用前一播放器播放已加载视频流,而在上滑操作时使用后一播放器播放预加载视频流;视频滑动播放处理模块包括:
滑动操作指令解析单元,用于短视频播放过程中,在web播放器客户端接收到用户对短视频页面的滑动操作指令时,对指令进行解析;
前一视频再播放单元,用于滑动操作指令为下滑操作时,在web播放器客户端切换前一播放器作为当前播放器,对已加载视频流进行播放,并对当前播放器隐藏,并暂停播放;
预加载视频播放单元,用于滑动操作指令为上滑操作时,web播放器客户端切换后一播放器作为当前播放器,对预加载视频进行播放,并对当前播放器隐藏,并暂停播放。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (4)

1.一种基于H5多播放器实现短视频加速的方法,其特征在于,包括如下步骤:
S1.基于H5框架搭建web播放器客户端和服务端,并在web播放器客户端设置视频缓存队列进行多视频流初始化,以及设置播放器队列进行多播放器初始化;步骤S1具体步骤如下:
S11.基于H5框架搭建web播放器服务端,并在web播放器服务端存储短视频;
S12.将web播放器服务端存储的短视频按照目标播放格式切割为若干ts格式的流媒体片段,生成连续的若干视频流;
S13.基于H5框架搭建web播放器客户端,在web播放器客户端设置视频缓存队列,且视频缓存队列长度大于等于播放器队列长度;
S14.在web播放器客户端进行播放器初始化,基于vue框架进行播放器组件应用层封装,并在每个组件中配置目标播放格式地址、播放器属性信息,以及集成播放功能;
S15.在web播放器客户端设置播放器队列,并在播放器队列中放置至少三个全局H5播放器,并按照播放器顺序建立各播放器与视频缓存队列的一一对应关系;
S2.web播放器客户端接收到用户触发的播放事件后,向web播放器服务端获取分段的视频流播放信息,再通过视频缓存队列对分段的视频流播放信息进行缓存;步骤S2具体步骤如下:
S21.web播放器客户端接收到用户触发的短视频播放事件后,向web服务器服务端获取分页视频列表;
S22.web播放器客户端根据播放队列长度确定视频缓存队列的使用长度;
S23.web播放器客户端根据分页视频列表通过异步方式向web播放器服务端获取连续的N段视频流播放地址;N的数量与播放队列长度相等;
S24.web播放器客户端将获取N端视频流播放地址保存在视频缓存队列中,提供给播放器队列使用;
S3.web播放器客户端通过播放器队列向视频缓存队列获取分段的视频流播放信息,再向web播放器服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;步骤S3具体步骤如下:
S31.web播放器客户端通过播放器队列向视频缓存队列获取N段视频流播放地址,并根据视频流播放地址向web播放器服务端请求N段连续视频流;
S32.web播放器客户端播放器队列的N个播放器与N段连续视频流一一对应进行加载;
S33.web播放器客户端播放器队列的N个播放器循环作为当前播放器;
S34.web播放器客户端播放器队列的当前播放器播放加载视频流,而当前播放器的前一播放器及后一播放器暂停播放视频流,并隐藏播放器;
S4.web播放器客户端接收用户对短视频页面的滑动指令,并在下滑操作时使用前一播放器播放已加载视频流,而在上滑操作时使用后一播放器播放预加载视频流;步骤S4具体步骤如下:
S41.短视频播放过程中,web播放器客户端接收到用户对短视频页面的滑动操作指令时,对指令进行解析;
当滑动操作指令为下滑操作时,进入步骤S42;
当滑动操作指令为上滑操作时,进入步骤S43;
S42.web播放器客户端切换前一播放器作为当前播放器,对已加载视频流进行播放,并对当前播放器隐藏,并暂停播放,结束;
S43.web播放器客户端切换后一播放器作为当前播放器,对预加载视频进行播放,并对当前播放器隐藏,并暂停播放。
2.如权利要求1所述的基于H5多播放器实现短视频加速的方法,其特征在于,步骤S12中目标播放格式为m3u8播放格式;
步骤S14中目标播放器格式地址为m3u8地址,播放器属性信息包括宽和高属性信息,播放功能包括播放、暂停以及继续播放。
3.如权利要求1所述的基于H5多播放器实现短视频加速的方法,其特征在于,步骤S33中在当前播放器的视频流播放完毕后,则令下一播放器作为当前播放器,而令最上端的播放器作为新的末端播放器继续通过视频缓存队列向web播放器服务器请求视频流地址,进行视频流预加载。
4.一种基于H5多播放器实现短视频加速的装置,其特征在于,包括:
web播放器客户端及服务端搭建模块,用于基于H5框架搭建web播放器客户端和服务端,并在web播放器客户端设置视频缓存队列进行多视频流初始化,以及设置播放器队列进行多播放器初始化;web播放器客户端及服务端搭建模块包括:
服务端搭建及短视频存储单元,用于基于H5框架搭建web播放器服务端,并在web播放器服务端存储短视频;
短视频切割单元,用于将web播放器服务端存储的短视频按照目标播放格式切割为若干ts格式的流媒体片段,生成连续的若干视频流;
视频缓存队列设置单元,用于基于H5框架搭建web播放器客户端,在web播放器客户端设置视频缓存队列,且视频缓存队列长度大于等于播放器队列长度;
播放器初始化单元,用于在web播放器客户端进行播放器初始化,基于vue框架进行播放器组件应用层封装,并在每个组件中配置目标播放格式地址、播放器属性信息,以及集成播放功能;
播放器队列设置单元,用于在web播放器客户端设置播放器队列,并在播放器队列中放置至少三个全局H5播放器,并按照播放器顺序建立各播放器与视频缓存队列的一一对应关系;视频流播放信息缓存模块,用于在web播放器客户端接收到用户触发的播放事件后,向web播放器服务端获取分段的视频流播放信息,再通过视频缓存队列对分段的视频流播放信息进行缓存;视频流播放信息缓存模块包括:
分页视频列表获取单元,用于在web播放器客户端接收到用户触发的短视频播放事件后,向web服务器服务端获取分页视频列表;
视频缓存队列长度确定单元,用于在web播放器客户端根据播放队列长度确定视频缓存队列的使用长度;
视频流地址获取单元,用于在web播放器客户端根据分页视频列表通过异步方式向web播放器服务端获取连续的N段视频流播放地址;N的数量与播放队列长度相等;
视频流地址缓存单元,用于在web播放器客户端将获取N端视频流播放地址保存在视频缓存队列中,提供给播放器队列使用;
视频流预加载模块,用于在web播放器客户端通过播放器队列向视频缓存队列获取分段的视频流播放信息,再向web播放器服务端请求分段的视频流,使用当前播放器对当前视频流进行播放,而使用下一播放器对下一视频流进行预加载;视频流预加载模块包括:
视频流请求单元,用于在web播放器客户端通过播放器队列向视频缓存队列获取N段视频流播放地址,并根据视频流播放地址向web播放器服务端请求N段连续视频流;
视频流加载单元,用于在web播放器客户端播放器队列的N个播放器与N段连续视频流一一对应进行加载;
播放器循环单元,用于在web播放器客户端播放器队列的N个播放器循环作为当前播放器;
播放器隐藏单元,用于在web播放器客户端播放器队列的当前播放器播放加载视频流,而当前播放器的前一播放器及后一播放器暂停播放视频流,并隐藏播放器;
视频滑动播放处理模块,用于在web播放器客户端接收用户对短视频页面的滑动指令,并在下滑操作时使用前一播放器播放已加载视频流,而在上滑操作时使用后一播放器播放预加载视频流;视频滑动播放处理模块包括:
滑动操作指令解析单元,用于短视频播放过程中,在web播放器客户端接收到用户对短视频页面的滑动操作指令时,对指令进行解析;
前一视频再播放单元,用于滑动操作指令为下滑操作时,在web播放器客户端切换前一播放器作为当前播放器,对已加载视频流进行播放,并对当前播放器隐藏,并暂停播放;
预加载视频播放单元,用于滑动操作指令为上滑操作时,web播放器客户端切换后一播放器作为当前播放器,对预加载视频进行播放,并对当前播放器隐藏,并暂停播放。
CN202310545074.2A 2023-05-16 2023-05-16 一种基于h5多播放器实现短视频加速的方法及装置 Active CN116320587B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310545074.2A CN116320587B (zh) 2023-05-16 2023-05-16 一种基于h5多播放器实现短视频加速的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310545074.2A CN116320587B (zh) 2023-05-16 2023-05-16 一种基于h5多播放器实现短视频加速的方法及装置

Publications (2)

Publication Number Publication Date
CN116320587A CN116320587A (zh) 2023-06-23
CN116320587B true CN116320587B (zh) 2023-10-17

Family

ID=86826136

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310545074.2A Active CN116320587B (zh) 2023-05-16 2023-05-16 一种基于h5多播放器实现短视频加速的方法及装置

Country Status (1)

Country Link
CN (1) CN116320587B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106954097A (zh) * 2017-03-03 2017-07-14 腾讯科技(深圳)有限公司 视频播放的控制方法和装置
CN107995535A (zh) * 2017-11-28 2018-05-04 百度在线网络技术(北京)有限公司 一种展示视频的方法、装置、设备和计算机存储介质
CN112911372A (zh) * 2021-01-29 2021-06-04 北京达佳互联信息技术有限公司 页面数据处理方法、装置、电子设备、服务器
CN113207011A (zh) * 2021-04-30 2021-08-03 深圳沐奇科技有限公司 一种短视频处理用预加载方法
CN113596553A (zh) * 2021-01-22 2021-11-02 腾讯科技(深圳)有限公司 一种视频播放方法、装置、计算机设备和存储介质
WO2022127523A1 (zh) * 2020-12-16 2022-06-23 北京字节跳动网络技术有限公司 一种视频播放方法、装置、设备及介质
CN115988251A (zh) * 2021-10-14 2023-04-18 聚好看科技股份有限公司 移动终端及短视频展示的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930973B (zh) * 2020-08-14 2022-06-21 北京字节跳动网络技术有限公司 多媒体数据的播放方法、装置、电子设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106954097A (zh) * 2017-03-03 2017-07-14 腾讯科技(深圳)有限公司 视频播放的控制方法和装置
CN107995535A (zh) * 2017-11-28 2018-05-04 百度在线网络技术(北京)有限公司 一种展示视频的方法、装置、设备和计算机存储介质
WO2022127523A1 (zh) * 2020-12-16 2022-06-23 北京字节跳动网络技术有限公司 一种视频播放方法、装置、设备及介质
CN113596553A (zh) * 2021-01-22 2021-11-02 腾讯科技(深圳)有限公司 一种视频播放方法、装置、计算机设备和存储介质
CN112911372A (zh) * 2021-01-29 2021-06-04 北京达佳互联信息技术有限公司 页面数据处理方法、装置、电子设备、服务器
CN113207011A (zh) * 2021-04-30 2021-08-03 深圳沐奇科技有限公司 一种短视频处理用预加载方法
CN115988251A (zh) * 2021-10-14 2023-04-18 聚好看科技股份有限公司 移动终端及短视频展示的方法

Also Published As

Publication number Publication date
CN116320587A (zh) 2023-06-23

Similar Documents

Publication Publication Date Title
CN102647634B (zh) 一种基于HTML5video的多分片视频播放方法及装置
US8473628B2 (en) Dynamically altering playlists
CN103108248B (zh) 一种互动式视频的实现方法和系统
US20230308724A1 (en) Video playback method, video playback terminal, and non-volatile computer-readable storage medium
JP2005534368A (ja) ビデオオンデマンドに基づくゲームのためのシステムおよび方法
US20110191679A1 (en) System and Method for Online Media Preview
US11202117B2 (en) Methods for personalized 360 video delivery
WO2013008866A1 (ja) 生成装置、配信サーバ、生成方法、再生装置、再生方法、再生システム、生成プログラム、再生プログラム、記録媒体およびデータ構造
KR20090030277A (ko) 성능 인식 피어-투-피어 주문형 콘텐츠 서비스를 위한 대화식 재생 장치에 대한 지원
JP7129517B2 (ja) 360ビデオストリーミングのための予測ビットレート選択
CN108769816B (zh) 一种视频播放方法、装置及存储介质
US10523735B1 (en) Methods, systems, and media for inserting and presenting video objects linked to a source video
US20230379531A1 (en) Systems, apparatus and methods for rendering digital content
KR20170038154A (ko) 동화상 재생 장치, 동화상 배포 서버, 동화상 재생 방법, 동화상 배포 방법, 동화상 재생 프로그램 및 동화상 배포 프로그램
US20090172752A1 (en) Streaming multiple videos in a playlist
CN116320587B (zh) 一种基于h5多播放器实现短视频加速的方法及装置
KR100892433B1 (ko) 이동통신 단말기를 이용한 영상 중계 시스템 및 그 방법
US20220417611A1 (en) Virtual Set Top
CN113691886B (zh) 流媒体文件的下载方法和装置
CN102694823A (zh) 一种实现分段节目播放控制的方法、服务器及客户端
EP2188806A2 (en) Compact graphics for limited resolution display devices
EP2153311A2 (en) Graphics for limited resolution display devices
CN105007521B (zh) 一种ts视频的播放方法及装置
CN115623230A (zh) 直播视频的播放方法、装置、电子设备及存储介质
KR102459197B1 (ko) 프리젠테이션 커스터마이제이션 및 인터랙티비티를 위한 방법 및 장치

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
GR01 Patent grant
GR01 Patent grant