CN114390313A - 一种浏览器HTML5 Video标签音视频重定向的方法及系统 - Google Patents

一种浏览器HTML5 Video标签音视频重定向的方法及系统 Download PDF

Info

Publication number
CN114390313A
CN114390313A CN202111458687.XA CN202111458687A CN114390313A CN 114390313 A CN114390313 A CN 114390313A CN 202111458687 A CN202111458687 A CN 202111458687A CN 114390313 A CN114390313 A CN 114390313A
Authority
CN
China
Prior art keywords
video
browser
audio
cloud
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.)
Granted
Application number
CN202111458687.XA
Other languages
English (en)
Other versions
CN114390313B (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.)
Hunan Qilin Xin'an Technology Co ltd
Original Assignee
Hunan Qilin Xin'an 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 Hunan Qilin Xin'an Technology Co ltd filed Critical Hunan Qilin Xin'an Technology Co ltd
Priority to CN202111458687.XA priority Critical patent/CN114390313B/zh
Publication of CN114390313A publication Critical patent/CN114390313A/zh
Application granted granted Critical
Publication of CN114390313B publication Critical patent/CN114390313B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/233Processing of audio elementary streams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种浏览器HTML5 Video标签音视频重定向的方法及系统,本发明浏览器HTML5 Video标签音视频重定向的方法包括在云虚拟机中的浏览器播放需重定向的目标视频的过程中,拦截浏览器中针对目标视频的音视频解码类输入的音视频数据,并将截获的音视频数据发送给云终端以用于通过云终端中的播放器进行解码播放输出。本发明能够有效降低云虚拟机浏览器播放视频的CPU占用率,也降低了云服务器压缩编码的CPU消耗,同时还解决了云桌面在浏览器播放视频时清晰度和流畅度降低的问题。

Description

一种浏览器HTML5 Video标签音视频重定向的方法及系统
技术领域
本发明涉及云桌面的音视频重定向技术,具体涉及一种浏览器HTML5 Video标签音视频重定向的方法及系统。
背景技术
随着云桌面产品的普及和应用场景的多样化,以及视频资源越来越丰富,在云桌面内使用浏览器在线观看视频的需求也将越来越大。而当前的云桌面显示流程基本为:采集云虚拟机桌面为图像,对这些图像进行压缩,传输到云终端,最后由终端解码显示。这个过程不可避免的要对云桌面进行压缩编码和解码,这也不可避免的降低了原始视频的清晰度和帧率,甚至可能引起音视频不同步的问题,从而降低了浏览器视频播放的观感。而且,视频的压缩编码需要占用大量的CPU和GPU资源,给云服务器造成沉重的负担。云桌面的视频标签音视频重定向技术则是解决上述问题的一个有效手段。
目前云桌面的音视频重定向技术是将云虚拟机中的URL发送给云终端,通过云终端直接播放云虚拟机中的URL,但是这种方式存在下述问题:(1)这种方式对于云终端有互联网访问能力的要求,而对于不能访问互联网的云终端,则该方案不能够实施;(2)云终端直接播放云虚拟机中的视频标签的URL,如果云虚拟机VEIDO标签的URL被加密,则终端获取不到URL对应的音视频数据。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种浏览器HTML5Video标签音视频重定向的方法及系统,本发明能够有效降低云虚拟机浏览器播放视频的CPU占用率,也降低了云服务器压缩编码的CPU消耗,同时还解决了云桌面在浏览器播放视频时清晰度和流畅度降低的问题。
为了解决上述技术问题,本发明采用的技术方案为:
一种浏览器HTML5 Video标签音视频重定向的方法,包括在云虚拟机中的浏览器播放需重定向的目标视频的过程中,拦截浏览器中针对目标视频的音视频解码类输入的音视频数据,并将截获的音视频数据发送给云终端以用于通过云终端中的播放器进行解码播放输出。
可选地,所述将截获的音视频数据发送给云终端时,还包括发送目标视频对应的ID标识符,所述目标视频对应的ID标识符在云虚拟机中的浏览器打开目标视频的网页时动态生成,且不同目标视频对应的ID标识符不同。
可选地,所述浏览器中针对目标视频的音视频解码类包括用于解码音频流的音频流解码类AudioDecoderStream和用于解码视频流的视频流解码类VideoDecoderStream。
可选地,所述拦截浏览器中针对目标视频的音视频解码类输入的音视频数据之后,还包括控制浏览器的播放器停止进行音频数据解码、渲染以及视频数据解码、渲染的步骤。
可选地,所述将截获的音视频数据发送给云终端包括:浏览器创建mojo通信机制,将拦截得到的音视频数据从目标视频所在的渲染进程Render通过mojo通信机制发送到浏览器的主进程Browser,再由主进程Browser发送给中转代理服务,并通过中转代理服务发送给云终端。
可选地,所述在云虚拟机中的浏览器播放需重定向的目标视频的过程中还包括:在将目标视频的音视频数据发送给云终端的初始时刻检测浏览器中播放器的初始布局参数、云虚拟机中遮盖区域,并将初始布局参数、云虚拟机中遮盖区域发送给云终端以用于控制云终端中的播放器实现相同的布局、窗口遮盖;且在云虚拟机中的浏览器播放需重定向的目标视频的过程中,若检测到云虚拟机中遮盖区域发生变化,则将云虚拟机中遮盖区域发送给云终端以用于控制云终端中的播放器实现窗口遮盖更新。
可选地,所述在云虚拟机中的浏览器播放需重定向的目标视频的过程中还包括:
1)监测鼠标移动,若监测到鼠标移动到视频标签区域中,则跳转下一步;否则,继续监测鼠标移动直至监测到鼠标移动视频标签区域中;
2)鼠标移动到视频标签区域中使得浏览器显示播放器的播放控制面板,通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()捕获鼠标移动事件kMousemove,并响应鼠标移动事件kMousemove,通过遍历目标视频的网页的DOM树,获取播放控制面板的尺寸和坐标,并将播放控制面板的尺寸和坐标发送给云终端以用于实现对云终端中该播放控制面板对应的区域的透明处理,使得云终端中播放器、云虚拟机中的播放控制面板两者相互贴合形成一个完整的目标视频的播放器界面。
可选地,所述通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()捕获鼠标移动事件kMousemove时,还包括通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()以及HTMLMediaElement类的设置静音函数setMuted()、设置音量函数setVolume()和拖动函数Seek()捕获视频标签的播放器控制命令,所述播放器控制命令包括暂停、播放、拖动、重播、停止、切分辨率和设置音量中的至少一种,若捕获到视频标签的播放命令,则将视频标签的播放命令发送给云终端以用于实现对云终端中播放器的同步控制。
此外,本发明还提供一种浏览器HTML5 Video标签音视频重定向的系统,包括相互连接的微处理器和存储器,该微处理器被编程或配置以执行所述的浏览器HTML5 Video标签音视频重定向的方法的步骤。
此外,本发明还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,该计算机程序用于被计算机设备执行以实施所述的浏览器HTML5 Video标签音视频重定向的方法的步骤。
和现有技术相比,本发明包括在云虚拟机中的浏览器播放需重定向的目标视频的过程中,拦截浏览器中针对目标视频的音视频解码类输入的音视频数据,并将截获的音视频数据发送给云终端以用于通过云终端中的播放器进行解码播放输出,具有下述优点:
1、在云虚拟机桌面内通过定制浏览器浏览视频,将截获的音视频数据发送给云终端以用于通过云终端中的播放器进行解码播放输出,可达到观看视频一样的效果。
2、通过拦截浏览器中针对目标视频的音视频解码类输入的音视频数据,使得云虚拟机不需要进行针对目标视频的音视频数据进行渲染,减少云桌面的数据压缩的资源消耗,降低了云虚拟机浏览器播放视频的CPU占用率,也降低了云服务器压缩编码的CPU消耗,降低了云服务器的性能消耗。
3、本发明将截获的音视频数据发送给云终端以用于通过云终端中的播放器进行解码播放输出,在云终端不能连接外网、而云虚拟机可连接外网的条件下,也能通过浏览器浏览网页上的视频,对于云终端无互联网访问能力的要求,适用于不能访问互联网的云终端。
4、本发明通过拦截浏览器中针对目标视频的音视频解码类输入的音视频数据,对视频标签的兼容性好,能重定向全部视频标签的音视频。
附图说明
图1为本发明实施例方法的基本流程示意图。
图2为本发明实施例云虚拟机的目标视频的网页和云终端的播放器的映射关系示意图。
图3为本发明实施例中音频流解码类的工作原理示意图。
图4为本发明实施例中浏览器事件监测的流程图。
图5为本发明实施例中播放命令的截获及转发流程示意图。
图6为本发明实施例中云终端的工作流程示意图。
图7为本发明实施例中浏览器打开网页后的执行流程示意图。
具体实施方式
如图1所示,本实施例浏览器HTML5 Video标签音视频重定向的方法包括在云虚拟机中的浏览器播放需重定向的目标视频的过程中,拦截浏览器中针对目标视频的音视频解码类输入的音视频数据,并将截获的音视频数据发送给云终端以用于通过云终端中的播放器进行解码播放输出。本实施例中,云虚拟机中的浏览器为基于开源的Chromium浏览器的定制浏览器,其中定制增加了监视并拦截浏览器中针对目标视频的音视频解码类输入的音视频数据的功能。
为支持多张网页同时进行视频标签视频重定向,如图2所示,本实施例中将截获的音视频数据发送给云终端时,还包括发送目标视频对应的ID标识符,所述目标视频对应的ID标识符在云虚拟机中的浏览器打开目标视频的网页时动态生成,且不同目标视频对应的ID标识符不同,云终端通过这个ID标识符,区分各个网页的音视频流,分别做解码和渲染。参见图2可知,由于不同目标视频对应的ID标识符不同,因此可使得云虚拟机、云终端之间正常区分不同目标视频的音视频数据,使得云虚拟机中的目标视频的网页、云终端中目标视频的网页的播放器一一对应,例如“浏览器进程A网页1”和“浏览器进程A网页1的播放器”为基于目标视频对应的ID标识符一一对应。
作为一种可选的实施方式,如图2所示,本实施例中在云虚拟机、云终端之间设置有中转代理服务,虚线框中的浏览器(云虚拟机中的浏览器)和中转代理服务运行于云虚拟机内,播放器运行于云终端,可实现云虚拟机、云终端之间的通信中转,减少云虚拟机的资源消耗。本实施例浏览器HTML5 Video标签音视频重定向的方法中涉及的主体包括定制浏览器(云虚拟机中的浏览器)、中转代理服务和云终端的播放器。定制浏览器负责提取视频标签内的音视频数据,视频标签的坐标与尺寸,视频标签内播放器的播放命令,以及视频标签上的播放器控制面板。并将这些数据发送给中转代理服务。中转代理服务将这些数据转发给云终端播放器。云终端播放器则解码音视频数据,并将其渲染。
如图3所示,本实施例中浏览器中针对目标视频的音视频解码类包括用于解码音频流的音频流解码类AudioDecoderStream和用于解码视频流的视频流解码类VideoDecoderStream。
本实施例中,拦截浏览器中针对目标视频的音视频解码类输入的音视频数据之后,还包括控制浏览器的播放器停止进行音频数据解码、渲染以及视频数据解码、渲染的步骤,使得云虚拟机不需要进行针对目标视频的音视频数据进行渲染,减少云桌面的数据压缩的资源消耗,降低了云虚拟机浏览器播放视频的CPU占用率,也降低了云服务器压缩编码的CPU消耗,降低了云服务器的性能消耗。
本实施例中,将截获的音视频数据发送给云终端包括:浏览器创建mojo通信机制,将拦截得到的音视频数据从目标视频所在的渲染进程Render通过mojo通信机制发送到浏览器的主进程Browser,再由主进程Browser发送给中转代理服务,并通过中转代理服务发送给云终端,既可以实现与云终端的数据交互,又可以保持浏览器的Sandbox安全机制不变。在浏览器中监听用于解码音频流的音频流解码类AudioDecoderStream和用于解码视频流的视频流解码类VideoDecoderStream,当这个两个类的Decode()函数解码音视频流时,监听代码将截取这些音视频数据,并发送给主进程Browser,再由主进程Browser发送给中转代理服务,与此同时,监听代码将关闭解码流程和视频渲染流程,使视频标签处于黑屏状态,声音处于静音状态。
定制浏览器运行在虚拟机中,所以视频标签可能会被其它应用程序的窗口或操作系统的窗口遮盖。为处理播放器的定位问题,以及虚拟机操作系统内其它窗口对定制浏览器视频区域的遮盖问题,本实施例中在云虚拟机中的浏览器播放需重定向的目标视频的过程中还包括:在将目标视频的音视频数据发送给云终端的初始时刻检测浏览器中播放器的初始布局参数、云虚拟机中遮盖区域(遮盖在云虚拟机中浏览器的播放器上侧的窗口区域),并将初始布局参数、云虚拟机中遮盖区域发送给云终端以用于控制云终端中的播放器实现相同的布局、窗口遮盖;且在云虚拟机中的浏览器播放需重定向的目标视频的过程中,若检测到云虚拟机中遮盖区域发生变化,则将云虚拟机中遮盖区域发送给云终端以用于控制云终端中的播放器实现窗口遮盖更新。作为一种可选的实施方式,本实施例中通过中转代理服务定时获取云虚拟机中遮盖区域,具体为虚拟机中所有覆盖在浏览器之上的窗口坐标和尺寸,并发送给云终端播放器以做遮盖处理。云终端的播放器根据这些坐标和尺寸,对视频区域做透明处理以实现窗口遮盖更新。
如图4所示,在云虚拟机中的浏览器播放需重定向的目标视频的过程中还包括:
1)监测鼠标移动,若监测到鼠标移动到视频标签区域中,则跳转下一步;否则,继续监测鼠标移动直至监测到鼠标移动视频标签区域中;
2)鼠标移动到视频标签区域中使得浏览器显示播放器的播放控制面板,通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()捕获鼠标移动事件kMousemove,并响应鼠标移动事件kMousemove,通过遍历目标视频的网页的DOM树,获取播放控制面板的尺寸和坐标,并将播放控制面板的尺寸和坐标发送给云终端以用于实现对云终端中该播放控制面板对应的区域的透明处理,使得云终端中播放器、云虚拟机中的播放控制面板两者相互贴合形成一个完整的目标视频的播放器界面。
以暂停kPause为例,如图4所示,通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()捕获鼠标移动事件kMousemove时,还包括通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()以及HTMLMediaElement类的设置静音函数setMuted()、设置音量函数setVolume()和拖动函数Seek()捕获视频标签的播放器控制命令,所述播放器控制命令包括暂停、播放、拖动、重播、停止、切分辨率和设置音量中的至少一种,若捕获到视频标签的播放命令,则将视频标签的播放命令发送给云终端以用于实现对云终端中播放器的同步控制。如图5所示,本实施例中的播放命令包括暂停(kPause)、播放(kPlay)、拖动(kSeek)、重播、停止、切分辨率和设置音量(可根据需要只采用其中的部分),若捕获到视频标签的播放命令,则将视频标签的播放命令发送给云终端以用于实现对云终端中播放器的同步控制,图5中上侧虚线框部分为云虚拟机对播放命令的检测,下侧虚线框部分为云终端中播放器对播放命令的响应。因为定制的浏览器只修改视频内容,不修改其它网页内容。所以这些播放命令,定制浏览器将会正常处理。只是定制的浏览器在处理的时候,将这些播放命令提取出来,发送给中转代理服务,最终由中转代理服务发送给云终端的播放器。如图6所示,云终端的播放器在收到播放命令时,则会对云终端中播放器的同步控制;同时,若收到遮盖区域,则会根据这些坐标和尺寸,对视频区域做透明处理以实现窗口遮盖更新。
参见图4可知,当鼠标移动到视频标签范围内时,播放器控制面板会自动显示,同时定制浏览器Element类的DefaultEventHandler()函数会捕获到kMousemove事件。DefaultEventHandler()函数的kMousemove事件监听代码则调用播放器控制面板模块代码。播放器控制面板模块代码,通过遍历DOM树得到控制面板包含的所有标签。然后提取这些标签的坐标和尺寸,发送给中转代理服务。最终,云终端播放器根据这些坐标和尺寸,在自身的视频区域做透明化处理。这样,播放控制面板得以被用户所见。此外,定制浏览器在Element类的DefaultEventHandler()函数中,也监听了kPause、kPlay和kSeek等事件。这些事件将对应了视频标签的暂停、播放和拖动等操作。DefaultEventHandler()函数中的监听代码捕获到这些事件后,依次发送到云终端播放器中,最终由云终端播放器做相应的处理。在此以kPause事件为例,默认事件处理函数DefaultEventHandler()的步骤步骤流程包括:(1)、鼠标移动到Video区域,定制浏览器响应kMousemove事件,遍历网页的DOM树,获取到播放控制面板的坐标和尺寸,并将数据发送给中转服务。(2)、中转服务将播放器控制面板的坐标和尺寸发送给云终端播放器,播放器根据这些坐标和尺寸对视频区域做透明化。(3)、由于云终端的播放器的透明化处理,用户得以见到虚拟机内定制浏览器的播放控制面板。这个播放控制面板因此也能接收鼠标和键盘事件。(4)、当用户点击播放控制面板的功能按钮时,如暂停按钮,则触发kPause事件。定制浏览器Element类的DefaultEventHandler()函数捕获到此kPause事件,同时也就触发了在DefaultEventHandler()函数内的kPause事件监听代码。kPause事件监听代码则调用“视频标签播放命令处理模块”,将kPause命令发送给中转代理服务。“视频标签播放命令处理模块”并不销毁这个kPause事件,所以定制浏览器内部也会响应这个kPause事件,即停止从网站服务器中下载数据。(5)、中转代理服务将kPause事件发送给云终端播放器。云终端播放器则对kPause做响应。
此外,本实施例中在云虚拟机中的浏览器打开网页时,还包括对网页判断是否包含需重定向的目标视频进行判断的步骤,网页包含需重定向的目标视频需要满足的条件包括:条件一,该网页的网址或域名应当是在白名单内。为控制某个网站的视频重定向功能,即对某个含视频标签的视频网站,通过云服务器管理界面配置打开或关闭其视频重定向功能,定制浏览器实现了白名单机制。当视频网站在白名单内,则对其打开视频标签视频重定向功能。否则,关闭其重定向功能。网页的网址或域名与白名单的匹配既可以直接匹配,也可以根据需要采用通配符的方式进行匹配,或采用正则表达式的方式进行匹配。条件二,该网页的应当包含视频标签,且视频标签尺寸需要满足要求。为禁止一张网页内,小分辨率的音视频重定向,以降低定制浏览器发送数据给云终端播放器所占用的带宽,定制浏览器在重定向前,首先判断视频标签的尺寸,当尺寸小于给定的值时,则关闭重定向功能。
图7为本实施例中浏览器HTML5 Video标签音视频重定向的方法中在云虚拟机中的浏览器打开网页后的完整步骤,具体包括:(1)浏览器判断所新建的网页地址是否在白名单内。若在,则进行重定向的下一步。否则,结束重定向流程,浏览器在云虚拟机内正常解码播放音视频。(2)浏览器判断当前网页是否含有视频标签。若有,则进行重定向的下一步。否则,结束重定向,浏览器正常播放。(3)浏览器给视频重定向网页创建一个ID标识符,用来标识这个网页。(4)从浏览器的视频标签中,读取音视频数据,捕获播放器命令。(5)从浏览器解析获取视频标签的坐标和尺寸,以及播放控制面板的坐标和尺寸。(6)浏览器创建socket,将音视频数据、播放命令和所有坐标数据发给中转代理服务。(7)中转代理服务获取虚拟机内其它所有覆盖在浏览器之上的窗口坐标和尺寸。(8)中转代理服务将接收到浏览器的数据和第(7)步中获取到的窗口数据转发给云终端播放器。(9)云终端接收到中转代理服务转发过来的音视频数据,则做解码和渲染。接收到视频标签的坐标和尺寸,则对播放器做移动和缩放处理。接收到遮盖窗口的坐标和尺寸,则视频渲染区域做相应的透明化处理。
此外,本实施例还提供一种浏览器HTML5 Video标签音视频重定向的系统,包括相互连接的微处理器和存储器,该微处理器被编程或配置以执行前述的浏览器HTML5 Video标签音视频重定向的方法的步骤。
此外,本实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,该计算机程序用于被计算机设备执行以实施前述的浏览器HTML5 Video标签音视频重定向的方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种浏览器HTML5 Video标签音视频重定向的方法,其特征在于,包括在云虚拟机中的浏览器播放需重定向的目标视频的过程中,拦截浏览器中针对目标视频的音视频解码类输入的音视频数据,并将截获的音视频数据发送给云终端以用于通过云终端中的播放器进行解码播放输出。
2.根据权利要求1所述的浏览器HTML5 Video标签音视频重定向的方法,其特征在于,所述将截获的音视频数据发送给云终端时,还包括发送目标视频对应的ID标识符,所述目标视频对应的ID标识符在云虚拟机中的浏览器打开目标视频的网页时动态生成,且不同目标视频对应的ID标识符不同。
3.根据权利要求2所述的浏览器HTML5 Video标签音视频重定向的方法,其特征在于,所述浏览器中针对目标视频的音视频解码类包括用于解码音频流的音频流解码类AudioDecoderStream和用于解码视频流的视频流解码类VideoDecoderStream。
4.根据权利要求3所述的浏览器HTML5 Video标签音视频重定向的方法,其特征在于,所述拦截浏览器中针对目标视频的音视频解码类输入的音视频数据之后,还包括控制浏览器的播放器停止进行音频数据解码、渲染以及视频数据解码、渲染的步骤。
5.根据权利要求1所述的浏览器HTML5 Video标签音视频重定向的方法,其特征在于,所述将截获的音视频数据发送给云终端包括:浏览器创建mojo通信机制,将拦截得到的音视频数据从目标视频所在的渲染进程Render通过mojo通信机制发送到浏览器的主进程Browser,再由主进程Browser发送给中转代理服务,并通过中转代理服务发送给云终端。
6.根据权利要求1所述的浏览器HTML5 Video标签音视频重定向的方法,其特征在于,所述在云虚拟机中的浏览器播放需重定向的目标视频的过程中还包括:在将目标视频的音视频数据发送给云终端的初始时刻检测浏览器中播放器的初始布局参数、云虚拟机中遮盖区域,并将初始布局参数、云虚拟机中遮盖区域发送给云终端以用于控制云终端中的播放器实现相同的布局、窗口遮盖;且在云虚拟机中的浏览器播放需重定向的目标视频的过程中,若检测到云虚拟机中遮盖区域发生变化,则将云虚拟机中遮盖区域发送给云终端以用于控制云终端中的播放器实现窗口遮盖更新。
7.根据权利要求1所述的浏览器HTML5 Video标签音视频重定向的方法,其特征在于,所述在云虚拟机中的浏览器播放需重定向的目标视频的过程中还包括:
1)监测鼠标移动,若监测到鼠标移动到视频标签区域中,则跳转下一步;否则,继续监测鼠标移动直至监测到鼠标移动视频标签区域中;
2)鼠标移动到视频标签区域中使得浏览器显示播放器的播放控制面板,通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()捕获鼠标移动事件kMousemove,并响应鼠标移动事件kMousemove,通过遍历目标视频的网页的DOM树,获取播放控制面板的尺寸和坐标,并将播放控制面板的尺寸和坐标发送给云终端以用于实现对云终端中该播放控制面板对应的区域的透明处理,使得云终端中播放器、云虚拟机中的播放控制面板两者相互贴合形成一个完整的目标视频的播放器界面。
8.根据权利要求7所述的浏览器HTML5 Video标签音视频重定向的方法,其特征在于,所述通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()捕获鼠标移动事件kMousemove时,还包括通过浏览器中的元素类Element中的默认事件处理函数DefaultEventHandler()以及HTMLMediaElement类的设置静音函数setMuted()、设置音量函数setVolume()和拖动函数Seek()捕获视频标签的播放器控制命令,所述播放器控制命令包括暂停、播放、拖动、重播、停止、切分辨率和设置音量中的至少一种,若捕获到视频标签的播放命令,则将视频标签的播放命令发送给云终端以用于实现对云终端中播放器的同步控制。
9.一种浏览器HTML5 Video标签音视频重定向的系统,包括相互连接的微处理器和存储器,其特征在于,该微处理器被编程或配置以执行权利要求1~8中任意一项所述的浏览器HTML5 Video标签音视频重定向的方法的步骤。
10.一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,其特征在于,该计算机程序用于被计算机设备执行以实施权利要求1~8中任意一项所述的浏览器HTML5Video标签音视频重定向的方法的步骤。
CN202111458687.XA 2021-12-01 2021-12-01 一种浏览器HTML5 Video标签音视频重定向的方法及系统 Active CN114390313B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111458687.XA CN114390313B (zh) 2021-12-01 2021-12-01 一种浏览器HTML5 Video标签音视频重定向的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111458687.XA CN114390313B (zh) 2021-12-01 2021-12-01 一种浏览器HTML5 Video标签音视频重定向的方法及系统

Publications (2)

Publication Number Publication Date
CN114390313A true CN114390313A (zh) 2022-04-22
CN114390313B CN114390313B (zh) 2024-02-13

Family

ID=81195729

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111458687.XA Active CN114390313B (zh) 2021-12-01 2021-12-01 一种浏览器HTML5 Video标签音视频重定向的方法及系统

Country Status (1)

Country Link
CN (1) CN114390313B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140082052A1 (en) * 2012-09-14 2014-03-20 Electronics And Telecommunications Research Institute Data redirection system and method for providing data redirection service
CN107864384A (zh) * 2017-11-20 2018-03-30 顶联信息产业股份公司 重定向云桌面上互联网视频播放的方法及装置
US20180349283A1 (en) * 2017-06-03 2018-12-06 Vmware, Inc. Video redirection in virtual desktop environments
CN109446460A (zh) * 2018-10-24 2019-03-08 国云科技股份有限公司 一种html5在线视频重定向系统及其实现方法
WO2019184572A1 (zh) * 2018-03-30 2019-10-03 中兴通讯股份有限公司 网页视频播放方法及装置、电子设备及存储介质
CN110381363A (zh) * 2019-07-17 2019-10-25 深信服科技股份有限公司 视频解码方法、装置、服务器及存储介质
CN111526428A (zh) * 2020-04-26 2020-08-11 湖南麒麟信安科技有限公司 一种在云桌面中实现html5视频播放的方法、系统及介质
CN112399257A (zh) * 2019-08-16 2021-02-23 中兴通讯股份有限公司 云桌面视频播放方法、服务器、终端及存储介质
US11012498B1 (en) * 2020-01-02 2021-05-18 Microsoft Technology Licensing, Llc Web browser multi-media redirection

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140082052A1 (en) * 2012-09-14 2014-03-20 Electronics And Telecommunications Research Institute Data redirection system and method for providing data redirection service
US20180349283A1 (en) * 2017-06-03 2018-12-06 Vmware, Inc. Video redirection in virtual desktop environments
CN107864384A (zh) * 2017-11-20 2018-03-30 顶联信息产业股份公司 重定向云桌面上互联网视频播放的方法及装置
WO2019184572A1 (zh) * 2018-03-30 2019-10-03 中兴通讯股份有限公司 网页视频播放方法及装置、电子设备及存储介质
CN109446460A (zh) * 2018-10-24 2019-03-08 国云科技股份有限公司 一种html5在线视频重定向系统及其实现方法
CN110381363A (zh) * 2019-07-17 2019-10-25 深信服科技股份有限公司 视频解码方法、装置、服务器及存储介质
CN112399257A (zh) * 2019-08-16 2021-02-23 中兴通讯股份有限公司 云桌面视频播放方法、服务器、终端及存储介质
US11012498B1 (en) * 2020-01-02 2021-05-18 Microsoft Technology Licensing, Llc Web browser multi-media redirection
CN111526428A (zh) * 2020-04-26 2020-08-11 湖南麒麟信安科技有限公司 一种在云桌面中实现html5视频播放的方法、系统及介质

Also Published As

Publication number Publication date
CN114390313B (zh) 2024-02-13

Similar Documents

Publication Publication Date Title
US9930308B2 (en) Platform-agnostic video player for mobile computing devices and desktop computers
CN110324671B (zh) 网页视频播放方法及装置、电子设备及存储介质
US9549152B1 (en) Application content delivery to multiple computing environments using existing video conferencing solutions
US9355681B2 (en) MPEG objects and systems and methods for using MPEG objects
CN111541930B (zh) 直播画面的显示方法、装置、终端及存储介质
US11490173B2 (en) Switch of audio and video
JPH10108162A (ja) ビット・ストリーム・サーバから受け取ったビット・ストリームを処理する方法及びアップレット
CN109391800B (zh) 一种基于广电tvos智能机顶盒的智慧社区视频监控方法和系统
JP2005057771A (ja) シンクライアント方式を改善したホームメディアゲートウェイのマルチメディアデータ処理装置及びその方法
US10791160B2 (en) Method and apparatus for cloud streaming service
CN113032080B (zh) 页面实现方法、应用程序、电子设备及存储介质
US11200915B2 (en) Method for capturing and recording high-definition video and audio output as broadcast by commercial streaming service providers
US20140201619A1 (en) Method And Device For Implementing Local Operation On Web Page
WO2013174080A1 (zh) 适用于多种显示类型的家庭网关的界面显示方法和系统
CN113535063A (zh) 直播页面切换方法、视频页面切换方法、电子设备及存储介质
CN111464874A (zh) 一种云桌面内播放网页视频的方法、系统及介质
KR101700040B1 (ko) 이미지 기반 동영상 콘텐츠 제공 방법 및 그 시스템
CN114390313B (zh) 一种浏览器HTML5 Video标签音视频重定向的方法及系统
CN113301413A (zh) 信息显示方法及装置
KR20140117889A (ko) 클라이언트 장치, 서버 장치, 멀티미디어 리디렉션 시스템 및 그 방법
CN113596181B (zh) 一种数据重定向方法、终端、服务器及存储介质
US10547878B2 (en) Hybrid transmission protocol
CN117499736B (zh) 基于windows操作系统的web浏览器插件播放前端摄像机视频的方法
CN109857568B (zh) 数据封装及处理方法、装置及电子设备
CN113542765A (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
GR01 Patent grant
GR01 Patent grant