CN110225404A - 视频播放方法、终端及计算机可读存储介质 - Google Patents

视频播放方法、终端及计算机可读存储介质 Download PDF

Info

Publication number
CN110225404A
CN110225404A CN201910524520.5A CN201910524520A CN110225404A CN 110225404 A CN110225404 A CN 110225404A CN 201910524520 A CN201910524520 A CN 201910524520A CN 110225404 A CN110225404 A CN 110225404A
Authority
CN
China
Prior art keywords
video
embedded
played
file
player
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
Application number
CN201910524520.5A
Other languages
English (en)
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.)
Shenzhen Zhengyilong Technology Co Ltd
Original Assignee
Shenzhen Zhengyilong Technology 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 Shenzhen Zhengyilong Technology Co Ltd filed Critical Shenzhen Zhengyilong Technology Co Ltd
Priority to CN201910524520.5A priority Critical patent/CN110225404A/zh
Publication of CN110225404A publication Critical patent/CN110225404A/zh
Pending legal-status Critical Current

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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
    • 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/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4782Web browsing, e.g. WebTV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种视频播放方法、终端及计算机可读存储介质,该方法包括:通过检测超文本5.0Html5的video标签是否被拦截,在该video标签被拦截时,创建预设视频播放器,通过该预设视频播放器,获取并播放该播放指令对应的待播放内嵌视频文件。从而避免了部分浏览器无法兼容的技术问题,提高了内嵌视频播放的稳定性。

Description

视频播放方法、终端及计算机可读存储介质
技术领域
本发明属于视频技术领域,尤其涉及一种视频播放方法、终端及计算机可读存储介质。
背景技术
随着浏览器技术的发展,为了丰富浏览器的网页浏览过程中的用户体验,就有了在网页的浏览过程内嵌视频播放的需求,所谓的内嵌视频播放就是在网页浏览过程中,同时在网页浏览窗口的某一部分播放视频。
在网页中播放内嵌视频时,一般通过Html5(HTML5.0,超文本5.0)的video标签(video,视频)从服务端加载并播放内嵌视频,实现内嵌视频自动播放、在界面最底层渲染、在UI(User Interface,用户界面)视频上层正常交互等功能,并可以兼容现有大部分浏览器。
然而,在部分网页浏览器中,Html5的video标签会被拦截,内嵌视频进行播放时,会使用网页浏览器自带的视频播放器,对内嵌视频进行加载和播放,在接收到播放指令时,显示该视频播放器的控制界面,通过用户基于该控制界面的手动点击操作,对内嵌视频进行播放,且视频播放尺寸为全屏播放,因此,存在部分浏览器无法兼容的技术问题,从而导致内嵌视频无法实现自动播放、无法实现用户界面视频上层正常交互等功能,进而降低了用户视频观看的体验感。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种视频播放方法、终端及计算机可读存储介质,旨在解决Html5的video标签被拦截时,存在部分浏览器无法兼容,导致内嵌视频无法播放的技术问题。
为实现上述目的,本发明提出视频播放方法,所述视频播放方法包括以下步骤:
在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的视频video标签是否被拦截;
若所述video标签被拦截,则创建预设视频播放器;
基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件。
可选地,所述预设视频播放器包括JavaScript语言,所述基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件的步骤包括:
基于所述预设视频播放器,获取所述播放指令对应的待播放内嵌视频文件对应的视频流;
运用JavaScript语言对所述待播放内嵌视频文件对应的视频流进行编码,得到每一帧图像数据;
运用网页图形库WebGL将所述每一帧图像数据渲染在画布canvas内,实现播放。
可选地,所述基于所述预设视频播放器,获取所述待播放内嵌视频文件对应的视频流的步骤之后,还包括:
将所述视频流在所述应用网页的预设位置进行播放。
可选地,所述预设视频播放器包括直译式脚本语言编写的动态图像专家组JSMpeg视频播放器,基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件的步骤还包括:
基于所述JSMpeg视频播放器,检测所述应用网页对应的操作系统是否为预设操作系统;
若是预设操作系统,则启动音频侦听,对所述视频流进行声音侦听;
基于所述声音侦听,对所述视频流进行播放音量调节并在所述应用网页的预设位置进行播放。
可选地,所述在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的video标签是否被拦截的步骤之前,还包括:
在接收到所述应用网页的开启请求时,触发所述应用网页的内嵌视频的播放指令。
可选地,所述在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的video标签是否被拦截的步骤之前,还包括:
在接收到应用中库文件的设置指令时,获取所述设置指令对应的库文件信息;
关联保存所述库文件信息与所述应用的包名。
可选地,所述若所述video标签被拦截,则创建所述预设视频播放器的步骤包括:
在确定所述video标签被拦截,则检测所述应用中是否存在所述库文件及所述canvas;
若存在所述库文件及所述canvas,则获取所述待创建预设视频播放器的属性信息;
根据所述属性信息,创建出所述预设视频播放器。
可选地,所述获取并播放所述播放指令对应的待播放内嵌视频文件的步骤之后,还包括:
在所述待播放内嵌视频文件播放完成后,对所述待播放内嵌视频文件进行释放。
此外,为实现上述目的,本发明还提供一种终端,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的视频播放程序,所述视频播放程序被所述处理器执行时实现如上文所述的视频播放方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有视频播放程序,所述视频播放程序被处理器执行时实现如上文所述的视频播放方法的步骤。
本发明技术方案中,通过检测超文本5.0Html5的video标签是否被拦截,在该video标签被拦截时,创建预设视频播放器,通过该预设视频播放器,获取并播放该播放指令对应的待播放内嵌视频文件。本发明在终端中时,避免了部分浏览器无法兼容的技术问题,提高了内嵌视频播放的稳定性。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的终端的结构示意图;
图2为本发明视频播放方法第一实施例的流程示意图;
图3为本发明视频播放方法实施例方案涉及的一个可选的内嵌视频播放示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的解决方案主要是:通过检测超文本5.0Html5的video标签是否被拦截,在该video标签被拦截时,创建预设视频播放器,通过该预设视频播放器,获取并播放该播放指令对应的待播放内嵌视频文件。本发明避免了部分浏览器无法兼容的技术问题,提高了内嵌视频播放的稳定性。
本发明实施例提出一种终端。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的终端的结构示意图。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
如图1所示,该终端可以包括:处理器1001、通信总线1002、用户接口1003、网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端结构的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及视频播放程序。
本发明中,终端通过处理器1001调用存储器1005中存储的视频播放程序,并执行以下操作:
在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的视频video标签是否被拦截;
若所述video标签被拦截,则创建预设视频播放器;
基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件。
进一步地,处理器1001可以调用存储器1005中存储的视频播放程序,还执行以下操作:
基于所述预设视频播放器,获取所述播放指令对应的待播放内嵌视频文件对应的视频流;
运用JavaScript语言对所述待播放内嵌视频文件对应的视频流进行编码,得到每一帧图像数据;
运用网页图形库WebGL将所述每一帧图像数据渲染在画布canvas内,实现播放。
进一步地,处理器1001可以调用存储器1005中存储的视频播放程序,还执行以下操作:
将所述视频流在所述应用网页的预设位置进行播放。
进一步地,处理器1001可以调用存储器1005中存储的视频播放程序,还执行以下操作:
基于所述JSMpeg视频播放器,检测所述应用网页对应的操作系统是否为预设操作系统;
若是预设操作系统,则启动音频侦听,对所述视频流进行声音侦听;
基于所述声音侦听,对所述视频流进行播放音量调节并在所述应用网页的预设位置进行播放。
进一步地,处理器1001可以调用存储器1005中存储的视频播放程序,还执行以下操作:
在接收到所述应用网页的开启请求时,触发所述应用网页的内嵌视频的播放指令。
进一步地,处理器1001可以调用存储器1005中存储的视频播放程序,还执行以下操作:
在接收到应用中库文件的设置指令时,获取所述设置指令对应的库文件信息;
关联保存所述库文件信息与所述应用的包名。
进一步地,处理器1001可以调用存储器1005中存储的视频播放程序,还执行以下操作:
在确定所述video标签被拦截,则检测所述应用中是否存在所述库文件及所述canvas;
若存在所述库文件及所述canvas,则获取所述待创建预设视频播放器的属性信息;
根据所述属性信息,创建出所述预设视频播放器。
进一步地,处理器1001可以调用存储器1005中存储的视频播放程序,还执行以下操作:
在所述待播放内嵌视频文件播放完成后,对所述待播放内嵌视频文件进行释放。
本实施例通过上述方案,通过检测超文本5.0Html5的video标签是否被拦截,在该video标签被拦截时,创建预设视频播放器,通过该预设视频播放器,获取并播放该播放指令对应的待播放内嵌视频文件。本发明在终端中时,避免了部分浏览器无法兼容的技术问题,提高了内嵌视频播放的稳定性。
基于上述硬件结构,提出本发明视频播放方法实施例。
参照图2,图2为本发明视频播放方法第一实施例的流程示意图。
在第一实施例中,所述视频播放方法包括以下步骤:
步骤S10,在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的视频video标签是否被拦截,若是,则执行步骤S20;
步骤S20,创建预设JSMpeg视频播放器;
本实施例中的应用网页的内嵌视频的播放方法应用于终端,该终端可以包括电视、电脑等固定终端,也包括手机、平板电脑、掌上电脑等移动终端。为说明方便,本实施例中的终端以移动终端手机进行说明。随着浏览器技术的发展,为了丰富浏览器的网页浏览过程中的用户体验,就有了在网页的浏览过程内嵌视频播放的需求,所谓的内嵌视频播放就是在网页浏览过程中,同时在网页浏览窗口的某一部分播放视频,在网页中播放内嵌视频时,一般通过Html5(HTML5.0,超文本5.0)的视频video标签,从服务端加载并播放内嵌视频,实现内嵌视频自动播放、在界面最底层渲染、在用户界面视频上层正常交互等功能,并可以兼容现有大部分浏览器。然而,在部分网页浏览器中,Html5的video标签会被拦截,内嵌视频进行播放时,会使用网页浏览器自带的视频播放器,对内嵌视频进行加载和播放,在接收到播放指令时,显示该视频播放器的控制界面,通过用户基于该控制界面的手动点击操作,对内嵌视频进行播放,且视频播放尺寸为全屏播放,因此,存在部分浏览器无法兼容的技术问题。对此,本实施例中提出一种视频播放方法,以解决浏览器无法兼容的技术问题。
本实施例中,在接收到应用网页的内嵌视频的播放指令时,检测Html5的video标签是否被拦截,其中,需要说明的是,在播放页面中,一般通过Html5的video标签从服务器(手机)加载需播放视频,video标签是HTML5定义的一个新的元素用来指定标准的方式来插入视频文件到web页面中,而不需要在浏览器安装任何第三方插件,例如,不需要安装基于Flash的第三方插件:Adobe Flash Player。Video标签包括Source属性(Source,源),简称scr,该属性的值为页面加载的视频的URL(Uniform Resource Locator,统一资源定位符)地址,例如:src=http://www.123456.com/test.mp4,代表该内嵌视频所在服务端上的URL地址;属性“control”的出现,代表在页面中显示一个视频控件,比如播放按钮,进度条等。“width”代表页面中视频播放器的宽度,“heigt”代表页面中视频播放器的高度;此外,video标签至少还可能包括以下属性信息;属性“autoplay”出现时,代表页面加载该视频就绪后马上播放;属性“loop”出现时,代表当视频文件完成播放后再次开始播放;属性“preload”代表视频在页面加载时进行加载,并预备播放,如果同时出现属性“autoplay”,属性“preload”将被忽略。根据video标签中定义的上述各个属性,浏览器在页面中加载视频播放器并根据scr属性的URL地址从服务端加载内嵌视频。因此,使用html5中的video标签在正常的浏览器中是可以满足用户大部分需求,比如视频自动播放、视频在界面最底层渲染、UI视频上层正常交互等,但video标签被拦截后,浏览器使用其自身的视频播放器进行播放,强制显示播放器的控制界面,而且必须用户点击播放按钮后才能开始播放,甚至,在部分浏览器无法兼容的情况下,造成应用无法正常使用。
在本实施例中,通过创建预设视频播放器,以替代和实现Html5的video标签的功能,该预设视频播放器包括JSMpeg视频播放器(Moving Pictures Experts Group inJavaScript,直译式脚本语言编写的动态图像专家组)该JSMpeg视频播放器是一个用JavaScript语言编写的视频播放器。JSMpeg视频播放器由MPEG-TS Demuxer,WebAssemblyMPEG1视频和MP2音频解码器,WebGL和Canvas2D渲染器以及WebAudio声音输出组成。JSMpeg可以通过Ajax加载静态文件,并允许通过WebSocktes进行低延迟流(~50ms)。JSMpeg可以在任何现代浏览器(Chrome,Firefox,Safari和Edge)中使用,并以42kb gzip压缩。
在一种实施方式中,在接收到应用网页的内嵌视频的播放指令时,检测是否存在Html5的video标签信息,若不存在,则确定Html5的video标签被拦截,若存在,则确定Html5的video标签未被拦截。
进一步地,在一种实施方式中,若确定Html5的video标签被拦截,则获取JSMpeg视频播放器的参数,基于该JSMpeg视频播放器的参数创建JSMpeg视频播放器,需要说明的是,JSMpeg视频播放器用来进行视频播放,JSMpeg视频播放器的参数,需要应用员在应用初始化时,在应用中进行设置。
进一步地,在一种实施方式中,若确定Html5的video标签未被拦截,则基于接收到的应用网页的内嵌视频的播放指令,通过Html5的video标签获取该播放指令对应的待播放内嵌视频,并进行播放。
可选地,步骤S10之前,还包括:在接收到所述应用网页的开启请求时,触发所述应用网页的内嵌视频的播放指令。
本实施例中,由于Html5的video标签会被拦截时,会使用网页浏览器自带的视频播放器,对内嵌视频进行加载和播放,在接收到播放指令时,显示该视频播放器的控制界面,通过用户基于该控制界面的手动点击操作,从而触发应用网页的内嵌视频的播放指令,因此,增加了播放操作的工作环节,降低了内嵌视频的播放效率,降低了用户的使用感。因此,在接收到应用网页的开启请求时,触发应用网页的内嵌视频的播放指令,从而,节省了内嵌视频播放的操作环节,实现了视频播放的自动化,提高了用户的使用感。
步骤S30,基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件。
本实施例中,在接收到该预设视频播放器创建完成信息时,获取该播放指令对应的待播放内嵌视频文件信息,并通过预设视频播放器将该待播放内嵌视频文件信息。
进一步地,在一种实施方式中,预设视频播放器包括JSMpeg视频播放器,需要说明的是,预设视频播放器的内容需要提前进行设置,在接收到该JSMpeg视频播放器创建完成信息时,获取该播放指令对应的待播放内嵌视频文件信息,并识别该待播放内嵌视频文件信息中是否携带有不同的场景信息,若是,则基于不同的场景信息将待播放视频文件进行对应播放,若否,则根据初始场景信息将待播放视频文件进行对应播放。
进一步地,在一种实施方式中,在接收到该JSMpeg视频播放器创建完成信息时,获取该播放指令对应的待播放内嵌视频文件信息,并识别该待播放内嵌视频文件信息中是否携带有不同的场景信息,若是,则基于不同的场景信息将待播放视频文件进行对应播放。
进一步地,在一种实施方式中,在接收到该JSMpeg视频播放器创建完成信息时,获取该播放指令对应的待播放内嵌视频文件信息,并识别待播放视频文件的格式,其中该待播放视频文件的格式包括2D格式、上下格式或左右格式等,根据该待播放视频文件的视频格式,识别出该待播放视频文件的视频格式对应的预先设定的显示方式,将待播放视频文件转换为预先设定的显示方式,其中,该显示方式包括双色显示方式、3D快门显示方式、3D偏振显示方式或2D显示方式等,对该待播放视频文件按照转换的预先设定的显示方式进行播放。
本实施例中,通过在接收到应用网页的内嵌视频的播放指令时,检测Html5的video标签是否被拦截,若确定被拦截,则创建预设视频播放器,通过该预设视频播放器实现对该播放指令对应的待播放内嵌视频文件的播放,从而实现了应用网页的内嵌视频的播放,避免了部分浏览器无法兼容的技术问题。
进一步地,基于第一实施例,提出本发明视频播放方法第二实施例,所述步骤S30包括:
步骤S301,基于所述预设视频播放器,获取所述播放指令对应的待播放内嵌视频文件对应的视频流;
步骤S302,利用JavaScript语言对所述待播放内嵌视频文件对应的视频流进行编码,得到每一帧图像数据;
步骤S303,运用网页图形库WebGL将所述每一帧图像数据渲染在画布canvas内,实现播放。
本实施例中,在接收到JSMpeg视频播放器创建完成的信息时,获取该待播放内嵌视频文件对应的视频流,利用JavaScript语言对所述待播放内嵌视频文件对应的视频流进行编码,得到帧数据,运用WebGL(网页图形库,Web Graphics Library)将所述帧数据中的每一帧图像渲染在画布canvas内,将帧数据利用WebGL进行渲染,以播放该帧数据对应的内嵌视频。
具体地,将该帧数据进行WebGL渲染,可以包括:以固定帧率,利用WebGL渲染帧数据的每一帧数据,得到连续播放的视频效果。其中,利用WebGL渲染帧数据一般渲染在canvas内,将帧数据中的每一帧图像渲染在canvas内,相对于其他渲染方式,可以更好地实现相应图像的展示。
需要说明的是,WebGL是一种3D绘图标准,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5Canvas提供硬件3D加速渲染,这样网页开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和数据视觉化。
其中,canvas是网页,例如HTML5中的图形容器,用于图形的绘制。绘制图形需通过脚本(通常是JavaScript)来完成,通过多种方法使用Canvas绘制路径,盒、圆、字符以及添加图像。需要说明的是,其中,视频流也可以成为视频数据或视频源数据。其中,视频源可以是图像采集设备,例如,可以是安防领域用于监控的摄像头,可以是用于身份认证的图像采集器,本发明对此不限定。
进一步地,在一种实施方式中,以h264格式的实时流传输协议(Real TimeStreaming Protocol,RTSP)视频流为例,从h264的官方文档可以了解到每帧数据具体的编码方式,从而可以利用JavaScript语言实现解码,或者利用第三方开源软件实现解码,获得每一帧的图像数据。
可选地,在步骤S301之后,还包括:将所述视频流在所述应用网页的预设位置进行播放。
本实施例中,通过JSMpeg视频播放器,获取该待播放内嵌视频文件对应的视频流后,将该视频流在对应应用网页的预设位置进行播放,需要说明的是,应用网页的内嵌视频对应的预设位置,需要提前在对应服务器中进行设置。
进一步地,在一种实施方式中,在检测到内嵌视频文件在网页中对应的预设位置的设置指令时,获取该预设位置的设置指令对应的该内嵌视频文件的地址信息,将该内嵌视频文件的地址信息存储到服务器中预设的内嵌视频文件的位置。
进一步地,在一种实施方式中,将视频流在所述应用网页的预设位置进行播放前,检测是否存在对应的预设播放形式,若存在,则根据对应的预设播放形式进行播放,若不存在,则根据默认的播放方式进行播放。其中,预设播放方式包括根据定位时间点、视频帧信息、是否循环、是否静音、是否自动播放、是否可以播放回调及预设快速播放速率、播放声音,确定目标内嵌视频的播放时长,从视频文件的当前播放时间点,按照预设播放方式播放视频文件,直到播放时间达到目标播放时长,按照标准播放速率继续播放内嵌视频文件,由于以预设播放方式进行内嵌视频播放,提高了内嵌视频播放的准确度。
进一步地,在一种实施方式中,在接收到内嵌视频的预设播放形式的设置指令时,获取预设播放形式的设置指令对应的预设播放形式信息,关联保存预设播放形式信息与对应的内嵌视频,从而实现内嵌视频播放的个性化设置。
本实施例中,通过JSMpeg视频播放器,将获取所述待播放内嵌视频文件对应的视频流,利用JavaScript语言对所述待播放内嵌视频文件对应的视频流进行编码,得到每一帧图像数据,以固定频率利用WebGL(Web Graphics Library,web图形库)将所述帧数据中的每一帧图像数据渲染在canvas内,从而实现了对待播放内嵌视频文件的播放,提高了播放内嵌视频文件的播放的稳定性。
进一步地,基于第二实施例,提出本发明视频播放方法第三实施例,所述步骤S30包括:
步骤S304,基于所述JSMpeg视频播放器,检测所述应用网页对应的操作系统是否为预设操作系统;
步骤S305,若是预设操作系统,则启动音频侦听,对所述视频流进行声音侦听;
步骤S306,基于所述声音侦听,对所述视频流进行播放音量调节并在所述应用网页的预设位置进行播放。
本实施例中,预设视频播放器包括直译式脚本语言编写的动态图像专家组JSMpeg视频播放器,基于JSMpeg视频播放器,检测应用网页对应的操作系统是否为预设操作系统,若应用网页对应的操作系统是预设操作系统,则启动音频侦听,将视频流在该应用网页的预设位置进行播放,并对视频流进行声音侦听,基于声音侦听,调节视频流对应的播放音量,并将视频流对应的声音进行播放,从而提高了内嵌视频播放的稳定性,提高了用户使用感,需要说明的是,其中,预设操作系统包括苹果公司开发的IOS(InternetworkingOperating System-Cisco,CISCO网络配置系统)操作系统,使用此控制播放视频时,声音无法随着内嵌视频播放同时播出,因此,需要增加音频侦听,再调声音大小才能播放声音,其中,需要说明的是,预设操作系统的内容信息需要提前在终端中进行设置。
本实施例中,通过对终端中操作系统的识别,在确定终端中操作系统为预设操作系统时,对内嵌视频的声音进行侦听,从而保障了内嵌视频的正常播放,提高了用户对内嵌视频播放的使用度。
进一步地,基于第三实施例,提出本发明视频播放方法第四实施例,步骤S10之前,还包括:
步骤S40,在接收到应用中库文件的设置指令时,获取所述设置指令对应的库文件信息;
步骤S50,关联保存所述库文件信息与所述应用的包名。
本实施例中,在接收到应用中库文件的设置指令时,获取该应用中库文件的设置指令对应的库文件信息,并关联保存该应用中库文件的设置指令对应的库文件信息与应用的包名,其中,需要说明的是,库文件包括JSMpeg的库文件jsmpeg.min.js,将库文件jsmpeg.min.js放入应用的目录下,在index.html文件中引入该库文件,并在播放器的div层级中加入canvas标签。
进一步地,在一种实施方式中,在应用中加入库文件jsmpeg.min.js,并通过该库文件将内嵌视频文件解码为视频流,将该视频流中各帧的图像数据的颜色信息读取出来并生成各帧对应的静态图片,由于是将图像数据的颜色信息读取出来生成静态图片,因此,可以支持高压缩比的内嵌视频文件的播放,因此,无需在应用中安装解码器,且在不影响用户在网页中其他文字等内容浏览时,可以流畅地播放内嵌视频文件,如图3所示,图3为本发明视频播放方法实施例方案涉及的一个可选的内嵌视频播放示意图,在接收到应用网页的开启指令时,触发对应的内嵌视频的播放指令,基于创建的JSMpeg视频播放器,在内嵌视频播放框内播放该播放指令对应的待播放内嵌视频文件。
进一步地,在一种实施方式中,在接收到应用网页对应的内嵌视频的设置指令时,检测该内嵌视频的设置指令对应的内嵌视频是否为已解码的视频流,若不是已解码的视频流,则通过该库文件对该设置指令对应的内嵌视频进行解码,得到对应已解码的视频流,若检测该内嵌视频的设置指令对应的内嵌视频是已解码的视频流,则将该已解码的视频流进行对应的设置。
本实施例中,通过对应用中库文件的设置,为后续内嵌视频文件解码及JSMpeg视频播放器的创建,提供了技术支持。
进一步地,基于第四实施例,提出本发明视频播放方法第五实施例,步骤S20包括:
步骤S201,在确定所述video标签被拦截,则检测应用中是否存在所述库文件及所述canvas,若是,则执行步骤S202;
步骤S202获取所述待创建预设视频播放器的属性信息;
步骤S203,根据所述属性信息,创建出所述预设视频播放器。
本实施例中,在确定video标签被拦截时,则检测应用中是否存在库文件及canvas(canvas,画布),若存在库文件及canvas,则获取待创建预设视频播放器的属性信息,根据该属性信息,创建出预设视频播放器。
进一步地,在一种实施方式中,预设视频播放器包括直译式脚本语言编写的动态图像专家组JSMpeg视频播放器,在检测到应用中存在库文件及canvas时,获取终端的设备参数信息和待创建JSMpeg视频播放器的属性信息,该JSMpeg视频播放器的属性信息是指将要创建的JSMpeg视频播放器的功能阐述,相当于功能需求,例如设置播放路径,设置快进快退、暂停启动、设置视频播放画面尺寸等功能,根据该属性信息在JSMpeg视频播放器上增加相应的功能,就可以创建成JSMpeg视频播放器。该JSMpeg视频播放器具体功能的实现。
可选地,在步骤S30之后,还包括:在所述待播放内嵌视频文件播放完成后,对所述待播放内嵌视频文件进行释放。
本实施例中,预设视频播放器包括直译式脚本语言编写的动态图像专家组JSMpeg视频播放器,通过在JSMpeg视频播放器对待播放视频进行播放后,对该待播放内嵌视频文件进行释放。
进一步地,需要说明的是,由于在JSMpeg视频播放器对待播放视频进行播放后,对该待播放内嵌视频文件进行释放,因而减少了存储空间的占用率,一定程度上释放了存储空间,从而提高了终端的运行速度。
本实施例中,通过在检测应用中是否存在库文件及canvas,从而实现了是否存在创建JSMpeg视频播放器条件的确定,并基于待创建JSMpeg视频播放器的属性信息,创建出JSMpeg视频播放器,从而为后续内嵌视频的播放提供了JSMpeg视频播放器的技术支持。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有视频播放程序,所述视频播放程序可被一个或者一个以上的处理器执行以用于:
在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的视频video标签是否被拦截;
若所述video标签被拦截,则创建预设视频播放器;
基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件。
进一步地,所述视频播放程序被处理器执行时还实现如下操作:
基于所述预设视频播放器,获取所述播放指令对应的待播放内嵌视频文件对应的视频流;
运用JavaScript语言对所述待播放内嵌视频文件对应的视频流进行编码,得到每一帧图像数据;
运用网页图形库WebGL将所述每一帧图像数据渲染在画布canvas内,实现播放。
进一步地,所述视频播放程序被处理器执行时还实现如下操作:
将所述视频流在所述应用网页的预设位置进行播放。
进一步地,所述视频播放程序被处理器执行时还实现如下操作:
基于所述JSMpeg视频播放器,检测所述应用网页对应的操作系统是否为预设操作系统;
若是预设操作系统,则启动音频侦听,对所述视频流进行声音侦听;
基于所述声音侦听,对所述视频流进行播放音量调节并在所述应用网页的预设位置进行播放。
进一步地,所述视频播放程序被处理器执行时还实现如下操作:
在接收到所述应用网页的开启请求时,触发所述应用网页的内嵌视频的播放指令。
进一步地,所述视频播放程序被处理器执行时还实现如下操作:
在接收到应用中库文件的设置指令时,获取所述设置指令对应的库文件信息;
关联保存所述库文件信息与所述应用的包名。
进一步地,所述视频播放程序被处理器执行时还实现如下操作:
在确定所述video标签被拦截,则检测所述应用中是否存在所述库文件及所述canvas;
若存在所述库文件及所述canvas,则获取所述待创建预设视频播放器的属性信息;
根据所述属性信息,创建出所述预设视频播放器。
进一步地,所述视频播放程序被处理器执行时还实现如下操作:
在所述待播放内嵌视频文件播放完成后,对所述待播放内嵌视频文件进行释放。
本发明计算机可读存储介质具体实施方式与上述视频播放方法各实施例基本相同,在此不再赘述。
本实施例通过上述方案,通过检测超文本5.0Html5的video标签是否被拦截,在该video标签被拦截时,创建预设视频播放器,通过该预设视频播放器,获取并播放该播放指令对应的待播放内嵌视频文件。本发明避免了在Html5的video标签被拦截时,部分浏览器无法兼容的技术问题,提高了内嵌视频播放的稳定性。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种视频播放方法,其特征在于,所述视频播放方法包括以下步骤:
在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的视频video标签是否被拦截;
若所述video标签被拦截,则创建预设视频播放器;
基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件。
2.如权利要求1所述的视频播放方法,其特征在于,所述预设视频播放器包括JavaScript语言,所述基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件的步骤包括:
基于所述预设视频播放器,获取所述播放指令对应的待播放内嵌视频文件对应的视频流;
运用JavaScript语言对所述待播放内嵌视频文件对应的视频流进行编码,得到每一帧图像数据;
运用网页图形库WebGL将所述每一帧图像数据渲染在画布canvas内,实现播放。
3.如权利要求2所述的视频播放方法,其特征在于,所述基于所述预设视频播放器,获取所述待播放内嵌视频文件对应的视频流的步骤之后,还包括:
将所述视频流在所述应用网页的预设位置进行播放。
4.如权利要求1所述的视频播放方法,其特征在于,所述预设视频播放器包括直译式脚本语言编写的动态图像专家组JSMpeg视频播放器,基于所述预设视频播放器,获取并播放所述播放指令对应的待播放内嵌视频文件的步骤还包括:
基于所述JSMpeg视频播放器,检测所述应用网页对应的操作系统是否为预设操作系统;
若是预设操作系统,则启动音频侦听,对所述视频流进行声音侦听;
基于所述声音侦听,对所述视频流进行播放音量调节并在所述应用网页的预设位置进行播放。
5.如权利要求1所述的视频播放方法,其特征在于,所述在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的video标签是否被拦截的步骤之前,还包括:
在接收到所述应用网页的开启请求时,触发所述应用网页的内嵌视频的播放指令。
6.如权利要求1所述的视频播放方法,其特征在于,所述在接收到应用网页的内嵌视频的播放指令时,检测超文本5.0Html5的video标签是否被拦截的步骤之前,还包括:
在接收到应用中库文件的设置指令时,获取所述设置指令对应的库文件信息;
关联保存所述库文件信息与所述应用的包名。
7.如权利要求6所述的视频播放方法,其特征在于,所述若所述video标签被拦截,则创建所述预设视频播放器的步骤包括:
在确定所述video标签被拦截,则检测所述应用中是否存在所述库文件及所述canvas;
若存在所述库文件及所述canvas,则获取所述待创建预设视频播放器的属性信息;
根据所述属性信息,创建出所述预设视频播放器。
8.如权利要求1-7中任一所述的视频播放方法,其特征在于,所述获取并播放所述播放指令对应的待播放内嵌视频文件的步骤之后,还包括:
在所述待播放内嵌视频文件播放完成后,对所述待播放内嵌视频文件进行释放。
9.一种终端,其特征在于,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的视频播放程序,所述视频播放程序被所述处理器执行时实现如权利要求1-8中任一项所述的视频播放方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有视频播放程序,所述视频播放程序被处理器执行时实现如权利要求1-8中任一项所述的视频播放方法的步骤。
CN201910524520.5A 2019-06-17 2019-06-17 视频播放方法、终端及计算机可读存储介质 Pending CN110225404A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910524520.5A CN110225404A (zh) 2019-06-17 2019-06-17 视频播放方法、终端及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910524520.5A CN110225404A (zh) 2019-06-17 2019-06-17 视频播放方法、终端及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN110225404A true CN110225404A (zh) 2019-09-10

Family

ID=67817543

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910524520.5A Pending CN110225404A (zh) 2019-06-17 2019-06-17 视频播放方法、终端及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110225404A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111371985A (zh) * 2019-09-17 2020-07-03 杭州海康威视系统技术有限公司 视频播放方法、装置、电子设备及存储介质
CN112579039A (zh) * 2020-12-25 2021-03-30 福州掌中云科技有限公司 基于微信的h5页面的音频自动播放的方法及设备
CN114189748A (zh) * 2021-12-03 2022-03-15 广州易方信息科技股份有限公司 视频播放控制方法、装置、计算机设备和存储介质
WO2022151688A1 (zh) * 2021-01-18 2022-07-21 稿定(厦门)科技有限公司 视频预览播放方法及装置
WO2023284295A1 (zh) * 2021-07-13 2023-01-19 稿定(厦门)科技有限公司 一种移动端网页视频背景处理方法、系统、储存介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622451A (zh) * 2012-04-16 2012-08-01 上海交通大学 电视节目标签自动生成系统
CN104581401A (zh) * 2013-10-10 2015-04-29 腾讯科技(深圳)有限公司 数据播放的方法及装置
CN104853254A (zh) * 2015-05-26 2015-08-19 深圳市理奥网络技术有限公司 一种视频播放方法以及移动终端
CN105208442A (zh) * 2014-06-27 2015-12-30 贝壳网际(北京)安全技术有限公司 一种视频播放应用程序的视频播放方法及装置
CN106506525A (zh) * 2016-11-29 2017-03-15 北京旷视科技有限公司 用于在浏览器上播放视频流的方法及装置
CN107085549A (zh) * 2016-02-16 2017-08-22 腾讯科技(深圳)有限公司 故障信息生成的方法和装置
US20180096434A1 (en) * 2016-10-05 2018-04-05 The Toronto-Dominion Bank System and Method for Controlling Access to Content to be Displayed on an Electronic Display
CN108076364A (zh) * 2016-11-07 2018-05-25 韩华泰科株式会社 自适应媒体流传输设备和媒体服务设备
CN108989266A (zh) * 2017-05-31 2018-12-11 腾讯科技(深圳)有限公司 一种防止网页劫持的处理方法和客户端以及服务器
CN109218831A (zh) * 2018-11-26 2019-01-15 Oppo广东移动通信有限公司 视频播放下网页处理方法、电子装置及计算机可读存储介质
CN109241472A (zh) * 2017-07-04 2019-01-18 北京国双科技有限公司 网页加载方法及装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622451A (zh) * 2012-04-16 2012-08-01 上海交通大学 电视节目标签自动生成系统
CN104581401A (zh) * 2013-10-10 2015-04-29 腾讯科技(深圳)有限公司 数据播放的方法及装置
CN105208442A (zh) * 2014-06-27 2015-12-30 贝壳网际(北京)安全技术有限公司 一种视频播放应用程序的视频播放方法及装置
CN104853254A (zh) * 2015-05-26 2015-08-19 深圳市理奥网络技术有限公司 一种视频播放方法以及移动终端
CN107085549A (zh) * 2016-02-16 2017-08-22 腾讯科技(深圳)有限公司 故障信息生成的方法和装置
US20180096434A1 (en) * 2016-10-05 2018-04-05 The Toronto-Dominion Bank System and Method for Controlling Access to Content to be Displayed on an Electronic Display
CN108076364A (zh) * 2016-11-07 2018-05-25 韩华泰科株式会社 自适应媒体流传输设备和媒体服务设备
CN106506525A (zh) * 2016-11-29 2017-03-15 北京旷视科技有限公司 用于在浏览器上播放视频流的方法及装置
CN108989266A (zh) * 2017-05-31 2018-12-11 腾讯科技(深圳)有限公司 一种防止网页劫持的处理方法和客户端以及服务器
CN109241472A (zh) * 2017-07-04 2019-01-18 北京国双科技有限公司 网页加载方法及装置
CN109218831A (zh) * 2018-11-26 2019-01-15 Oppo广东移动通信有限公司 视频播放下网页处理方法、电子装置及计算机可读存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111371985A (zh) * 2019-09-17 2020-07-03 杭州海康威视系统技术有限公司 视频播放方法、装置、电子设备及存储介质
CN112579039A (zh) * 2020-12-25 2021-03-30 福州掌中云科技有限公司 基于微信的h5页面的音频自动播放的方法及设备
WO2022151688A1 (zh) * 2021-01-18 2022-07-21 稿定(厦门)科技有限公司 视频预览播放方法及装置
WO2023284295A1 (zh) * 2021-07-13 2023-01-19 稿定(厦门)科技有限公司 一种移动端网页视频背景处理方法、系统、储存介质
CN114189748A (zh) * 2021-12-03 2022-03-15 广州易方信息科技股份有限公司 视频播放控制方法、装置、计算机设备和存储介质
CN114189748B (zh) * 2021-12-03 2024-04-30 易方信息科技股份有限公司 视频播放控制方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN110225404A (zh) 视频播放方法、终端及计算机可读存储介质
US10430212B1 (en) Method for recording, editing and reproduction of computer session
US10083159B1 (en) Method for recording, editing and reproduction of web browser session
CN108965397A (zh) 云端视频编辑方法及装置、编辑设备及存储介质
US7721308B2 (en) Synchronization aspects of interactive multimedia presentation management
RU2551114C2 (ru) Устройство воспроизведения контента, сервер предоставления управляющей информации и система воспроизведения контента
US10271105B2 (en) Method for playing video, client, and computer storage medium
CN109325145B (zh) 视频缩略图的获取方法、终端及计算机可读存储介质
CN102833490A (zh) 一种互动视频的编辑播放方法、系统及电子学习设备
CN105518614A (zh) 用于多屏幕应用程序的屏幕录制
CN111601135B (zh) 一种音视频基本流同步注入的方法及显示设备
CN109672902A (zh) 一种视频抽帧方法、装置、电子设备和存储介质
CN103686454A (zh) 一种信息获取方法和装置
EP1899852A2 (en) Synchronization aspects of interactive multimedia presentation management
CN105872854A (zh) 水印展示方法及装置
CN103634651B (zh) android电视的信源预览画面的显示方法和系统
Melo et al. WebNCL: a web-based presentation machine for multimedia documents
CN104883614A (zh) 一种基于Adobe FlashPlayer和Jquery框架的WEB视频播放方法
CN113473194A (zh) 一种智能设备及响应方法
US20110167346A1 (en) Method and system for creating a multi-media output for presentation to and interaction with a live audience
CN114222185A (zh) 视频播放方法、终端设备及存储介质
KR20160131829A (ko) 클라우드 스트리밍 서비스 시스템, 이미지 타입에 따른 알파 값을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR101955460B1 (ko) 웹 브라우저를 이용한 멀티미디어 플레이어 제공 시스템 및 방법
CN112533054B (zh) 在线视频的播放方法、装置及存储介质
US20070006062A1 (en) Synchronization aspects of interactive multimedia presentation management

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: 20190910

RJ01 Rejection of invention patent application after publication