CN104918119B - 基于iOS浏览器的视频处理方法及视频处理装置 - Google Patents
基于iOS浏览器的视频处理方法及视频处理装置 Download PDFInfo
- Publication number
- CN104918119B CN104918119B CN201410087825.1A CN201410087825A CN104918119B CN 104918119 B CN104918119 B CN 104918119B CN 201410087825 A CN201410087825 A CN 201410087825A CN 104918119 B CN104918119 B CN 104918119B
- Authority
- CN
- China
- Prior art keywords
- video
- button control
- preset
- broadcast mode
- elementary
- 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
Links
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种基于iOS浏览器的视频处理方法及视频处理装置,该视频处理方法包括:检测当前浏览器网页是否加载系统视频插件;若当前浏览器网页加载所述系统视频插件,则读取浏览器组件的视频加载回调函数,并将视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;以及将视频元素的按钮控件的响应函数替换为预设的响应函数。本发明还提供一种基于iOS浏览器的视频处理装置,本发明的基于iOS浏览器的视频处理方法及视频处理装置通过替换视频元素的播放方式及视频元素的按钮控件的响应函数,实现使用预设的系统视频播放器进行视频播放。
Description
技术领域
本发明涉及互联网领域,特别是涉及一种用于互联网上的视频的基于iOS浏览器的视频处理方法及视频处理装置。
背景技术
随着网络信息传播渠道的爆发式发展,越来越多的用户通过网络来获取各种各样的信息。如通过网络来观看各种网络视频,因此越来越多的网站开始提供在线观看视频的服务。
现有的在线视频网站可分为两类,第一类在线视频网站在视频元素上使用html(Hyper Text Mark-up Language,超文本标记语言)+js(JavaScript)制作了一个虚拟播放器,当用户点击该虚拟播放器的播放按钮时,视频元素的播放方式就会被调用,从而启动了系统自带的视频播放器。
第二类在线视频网站上通过UIWebView(Apple提供在iOS上进行网页开发的一个类库)生成一视频元素的原生播放按钮,当用户点击该原生播放按钮时,当前浏览器网页会加载系统的视频插件,并调用UIWebView对该视频元素进行播放。
由于UIWebView没有对外提供任何系统视频播放器的接口,因此第二类在线视频网站上的视频无法通过用户自定义的系统视频播放器进行播放。对于已经习惯了自定义的系统视频播放器的用户,播放上述视频的操作效率远远不如使用自定义的系统视频播放器。
发明内容
本发明实施例提供一种可使用预设的系统视频播放器进行视频播放的基于iOS浏览器的视频处理方法,以解决现有的视频处理方法对部分视频不能使用预设的系统视频播放器进行视频播放的技术问题。
本发明实施例还提供一种可使用预设的系统视频播放器进行视频播放的基于iOS浏览器的视频处理装置,以解决现有的视频处理装置对部分视频不能使用预设的系统视频播放器进行视频播放的技术问题。
为解决上述问题,本发明提供的技术方案如下:
提供一种基于iOS浏览器的视频处理方法,其包括:
检测当前浏览器网页是否加载系统视频插件;
若所述当前浏览器网页加载所述系统视频插件,则读取浏览器组件的视频加载回调函数,并将所述视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;以及
将所述视频元素的按钮控件的响应函数替换为预设的响应函数。
还提供一种基于iOS浏览器的视频处理装置,其包括:
插件加载检测模块,用于检测当前浏览器网页是否加载系统视频插件;
播放方式替换模块,用于若插件加载检测模块检测到所述当前浏览器网页加载所述系统视频插件,则读取浏览器组件的视频加载回调函数,并将所述视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;以及
响应函数替换模块,用于将所述视频元素的按钮控件的响应函数替换为预设的响应函数。
相较于现有技术的视频处理方法及视频处理装置,本发明的基于iOS浏览器的视频处理方法及视频处理装置通过替换视频元素的播放方式以及视频元素的按钮控件的响应函数,实现使用预设的系统视频播放器进行视频播放;解决了现有的视频处理方法及视频处理装置对部分视频不能使用预设的系统视频播放器进行视频播放的技术问题。
附图说明
图1为本发明的基于iOS浏览器的视频处理方法及用视频处理装置所在的电子设备的工作环境结构示意图;
图2为本发明的基于iOS浏览器的视频处理装置的第一优选实施例的结构示意图;
图3为本发明的基于iOS浏览器的视频处理方法的第一优选实施例的流程图;
图4为本发明的基于iOS浏览器的视频处理装置的第二优选实施例的结构示意图;
图5为本发明的基于iOS浏览器的视频处理方法的第二优选实施例的流程图;
图6为本发明的基于iOS浏览器的视频处理方法及视频处理装置的一具体实施例的流程图。
具体实施方式
请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。
在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行之作业的步骤及符号来说明,除非另有述明。因此,其将可了解到这些步骤及操作,其中有数次提到为由计算机执行,包括了由代表了以一结构化型式中的数据之电子信号的计算机处理单元所操纵。此操纵转换该数据或将其维持在该计算机之内存系统中的位置处,其可重新配置或另外以本领域技术人员所熟知的方式来改变该计算机之运作。该数据所维持的数据结构为该内存之实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域技术人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
如本申请所使用的术语“组件”、“模块”、“系统”、“接口”、“进程”等等一般地旨在指计算机相关实体:硬件、硬件和软件的组合、软件或执行中的软件。例如,组件可以是但不限于是运行在处理器上的进程、处理器、对象、可执行应用、执行的线程、程序和/或计算机。通过图示,运行在控制器上的应用和该控制器二者都可以是组件。一个或多个组件可以有在于执行的进程和/或线程内,并且组件可以位于一个计算机上和/或分布在两个或更多计算机之间。
而且,要求保护的主题可以被实现为使用标准编程和/或工程技术产生软件、固件、硬件或其任意组合以控制计算机实现所公开的主题的方法、装置或制造品。本文所使用的术语“制造品”旨在包含可从任意计算机可读设备、载体或介质访问的计算机程序。当然,本领域技术人员将认识到可以对该配置进行许多修改,而不脱离要求保护的主题的范围或精神。
图1和随后的讨论提供了对实现本发明所述的基于iOS浏览器的视频处理装置所在的电子设备的工作环境的简短、概括的描述。图1的工作环境仅仅是适当的工作环境的一个实例并且不旨在建议关于工作环境的用途或功能的范围的任何限制。实例电子设备112包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(比如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费型电子设备、小型计算机、大型计算机、包括上述任意系统或设备的分布式计算环境,等等。
尽管没有要求,但是在“计算机可读指令”被一个或多个电子设备执行的通用背景下描述实施例。计算机可读指令可以经由计算机可读介质来分布(下文讨论)。计算机可读指令可以实现为程序模块,比如执行特定任务或实现特定抽象数据类型的功能、对象、应用编程接口(API)、数据结构等等。典型地,该计算机可读指令的功能可以在各种环境中随意组合或分布。
图1图示了包括本发明的基于iOS浏览器的视频处理装置的一个或多个实施例的电子设备112的实例。在一种配置中,电子设备112包括至少一个处理单元116和存储器118。根据电子设备的确切配置和类型,存储器118可以是易失性的(比如RAM)、非易失性的(比如ROM、闪存等)或二者的某种组合。该配置在图1中由虚线114图示。
在其他实施例中,电子设备112可以包括附加特征和/或功能。例如,设备112还可以包括附加的存储装置(例如可移除和/或不可移除的),其包括但不限于磁存储装置、光存储装置等等。这种附加存储装置在图1中由存储装置120图示。在一个实施例中,用于实现本文所提供的一个或多个实施例的计算机可读指令可以在存储装置120中。存储装置120还可以存储用于实现操作系统、应用程序等的其他计算机可读指令。计算机可读指令可以载入存储器118中由例如处理单元116执行。
本文所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。存储器118和存储装置120是计算机存储介质的实例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或可以用于存储期望信息并可以被电子设备112访问的任何其他介质。任意这样的计算机存储介质可以是电子设备112的一部分。
电子设备112还可以包括允许电子设备112与其他设备通信的通信连接126。通信连接126可以包括但不限于调制解调器、网络接口卡(NIC)、集成网络接口、射频发射器/接收器、红外端口、USB连接或用于将电子设备112连接到其他电子设备的其他接口。通信连接126可以包括有线连接或无线连接。通信连接126可以发射和/或接收通信媒体。
术语“计算机可读介质”可以包括通信介质。通信介质典型地包含计算机可读指令或诸如载波或其他传输机构之类的“己调制数据信号”中的其他数据,并且包括任何信息递送介质。术语“己调制数据信号”可以包括这样的信号:该信号特性中的一个或多个按照将信息编码到信号中的方式来设置或改变。
电子设备112可以包括输入设备124,比如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外相机、视频输入设备和/或任何其他输入设备。设备112中也可以包括输出设备122,比如一个或多个显示器、扬声器、打印机和/或任意其他输出设备。输入设备124和输出设备122可以经由有线连接、无线连接或其任意组合连接到电子设备112。在一个实施例中,来自另一个电子设备的输入设备或输出设备可以被用作电子设备112的输入设备124或输出设备122。
电子设备112的组件可以通过各种互连(比如总线)连接。这样的互连可以包括外围组件互连(PCI)(比如快速PCI)、通用串行总线(USB)、火线(IEEE1394)、光学总线结构等等。在另一个实施例中,电子设备112的组件可以通过网络互连。例如,存储器118可以由位于不同物理位置中的、通过网络互连的多个物理存储器单元构成。
本领域技术人员将认识到,用于存储计算机可读指令的存储设备可以跨越网络分布。例如,可经由网络128访问的电子设备130可以存储用于实现本发明所提供的一个或多个实施例的计算机可读指令。电子设备112可以访问电子设备130并且下载计算机可读指令的一部分或所有以供执行。可替代地,电子设备112可以按需要下载多条计算机可读指令,或者一些指令可以在电子设备112处执行并且一些指令可以在电子设备130处执行。
本文提供了实施例的各种操作。在一个实施例中,所述的一个或多个操作可以构成一个或多个计算机可读介质上存储的计算机可读指令,其在被电子设备执行时将使得计算设备执行所述操作。描述一些或所有操作的顺序不应当被解释为暗示这些操作必需是顺序相关的。本领域技术人员将理解具有本说明书的益处的可替代的排序。而且,应当理解,不是所有操作必需在本文所提供的每个实施例中存在。
而且,本文所使用的词语“优选的”意指用作实例、示例或例证。奉文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本申请中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“X使用A或B”意指自然包括排列的任意一个。即,如果X使用A;X使用B;或X使用A和B二者,则“X使用A或B”在前述任一示例中得到满足。
而且,尽管已经相对于一个或多个实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件、资源等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或多个其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
由于现有技术的视频处理装置以及视频处理方法对于iOS浏览器中的视频无法调用预设的视频播放器进行视频播放,而其他类型的浏览器中的视频可以通过浏览器对外提供的接口实现使用预设的视频播放器进行视频播放。
本发明的视频处理装置以及视频处理方法主要是对iOS浏览器中的视频进行处理,使得iOS浏览器中的视频可以调用预设的视频播放器进行视频播放,因此本发明的视频处理装置以及视频处理方法主要用于对iOS浏览器中的视频进行处理。
请参照图2,图2为本发明的基于iOS浏览器的视频处理装置的第一优选实施例的结构示意图。本优选实施例的基于iOS浏览器的视频处理装置可设置在上述的电子设备112中。该基于iOS浏览器的视频处理装置20包括插件加载检测模块21、播放方式替换模块22以及响应函数替换模块23。该插件加载检测模块21用于检测当前浏览器网页24(当前网页)是否加载系统视频插件;播放方式替换模块22用于如插件加载检测模块21检测到当前浏览器网页24加载系统视频插件,则将浏览器组件的视频加载回调函数中的视频元素25的播放方式替换为预设的播放方式;响应函数替换模块23用于如播放方式的替换操作成功,则将视频元素25的按钮控件的响应函数替换为预设的响应函数。
其中当前浏览器网页24需要播放视频文件时,当前浏览器网页24会自动加载系统视频插件,因此基于iOS浏览器的视频处理装置20的插件加载检测模块21可通过检测当前浏览器网页24是否加载系统视频插件判断当前浏览器网页24是否需要播放视频文件。视频元素25的播放方式为w3c规定的网页中视频元素25的play和load方法,这里将视频元素25的播放方式替换为预设的播放方式后,用户就可以调用预设的系统视频播放器进行视频播放。视频元素25的按钮控件的响应函数为控制视频元素25进行播放的按钮控件的参数,这里将视频元素25的按钮控件的响应函数替换为预设的相应函数,用户就可以调用视频元素25的原生按钮控件启动预设的系统视频播放器。
本优选实施例的基于iOS浏览器的视频处理装置20使用时,首先插件加载检测模块21会检测当前浏览器网页24是否加载视频插件,从而判断当前浏览器网页24是否需要播放视频文件。若插件加载检测模块21检测到当前浏览器网页24加载系统视频插件时,则播放方式替换模块22将浏览器组件的视频加载回调函数中的视频元素25的播放方式替换为预设的播放方式。随后若播放方式替换模块22对视频元素25的播放方式替换操作成功,则响应函数替换模块23将视频元素25的按钮控件的响应函数替换为预设的响应函数。由于视频元素25的播放方式和按钮控件的相应函数均替换为了预设的播放方式以及响应函数,用户可通过视频元素25的原生按钮控件启动预设的系统视频播放器,实现对所有视频使用预设的系统视频播放器进行视频播放。
这样即完成了本优选实施例的基于iOS浏览器的视频处理装置20的视频处理过程。
本优选实施例的基于iOS浏览器的视频处理装置通过替换视频元素的播放方式以及视频元素的按钮控件的响应函数,实现使用预设的系统视频播放器进行视频播放。
请参照图2和图3,图3为本发明的基于iOS浏览器的视频处理方法的第一优选实施例的流程图。本优选实施例的基于iOS浏览器的视频处理方法可使用上述的基于iOS浏览器的视频处理装置的第一优选实施例进行实施,其包括:
步骤S301,检测当前浏览器网页;
步骤S302,判断当前浏览器网页是否加载系统视频插件;若当前浏览器网页加载系统视频插件,则转到步骤S303;若当前浏览器网页没有加载系统视频插件,则转到步骤S301;
步骤S303,将浏览器组件的视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;
步骤S304,判断播放方式的替换操作是否成功;若播放方式的替换操作成功,则转到步骤S305;若播放方式的替换操作失败,则转到步骤S303;
步骤S305,将视频元素的按钮控件的响应函数替换为预设的响应函数;
本优选实施例的基于iOS浏览器的视频处理方法结束于步骤S305。
其中当前浏览器网页24需要播放视频文件时,当前浏览器网页24会自动加载系统视频插件,因此基于iOS浏览器的视频处理装置20的插件加载检测模块21可通过检测当前浏览器网页24是否加载系统视频插件判断当前浏览器网页24是否需要播放视频文件。视频元素25的播放方式为w3c规定的网页中视频元素25的play和load方法,这里将视频元素25的播放方式替换为预设的播放方式后,用户就可以调用预设的系统视频播放器进行视频播放。视频元素25的按钮控件的响应函数为控制视频元素25进行播放的按钮控件的参数,这里将视频元素25的按钮控件的响应函数替换为预设的相应函数,用户就可以调用视频元素25的原生按钮控件启动预设的系统视频播放器。
下面详细说明本优选实施例的基于iOS浏览器的视频处理方法的各步骤的具体流程。
在步骤S301中,插件加载检测模块21会检测当前浏览器网页24的系统视频插件,随后转到步骤S302。
在步骤S302中,若插件加载模块21检测到当前浏览器网页24加载系统视频插件,则转到步骤S303;若插件加载模块21检测到当前浏览器网页24没有加载系统视频插件,则转到步骤S301继续检测当前浏览器网页24的系统视频插件。
在步骤S303中,播放方式替换模块22将浏览器组件的视频加载回调函数中的视频元素25的播放方式替换为预设的播放方式;用户可通过该预设的播放方式调用预设的系统视频播放器进行视频播放,随后转到步骤S304。
在步骤S304中,若播放方式替换模块22将浏览器组件的视频加载回调函数中的视频元素25的播放方式成功替换为预设的播放方式,则转到步骤S305;若播放方式替换模块22对播放方式的替换操作失败,则转到步骤S303。
在步骤S305中,响应函数替换模块23将视频元素25的按钮控件的响应函数替换为预设的响应函数;由于视频元素25的播放方式和按钮控件的相应函数均替换为了预设的播放方式以及响应函数,用户可通过视频元素25的原生按钮控件启动预设的系统视频播放器,实现对所有视频使用预设的系统视频播放器进行视频播放。
这样即完成了本优选实施例的基于iOS浏览器的视频处理方法的视频处理过程。
本优选实施例的基于iOS浏览器的视频处理方法通过替换视频元素的播放方式以及视频元素的按钮控件的响应函数,实现使用预设的系统视频播放器进行视频播放。
请参照图4,图4为本发明的基于iOS浏览器的视频处理装置的第二优选实施例的结构示意图。本优选实施例的基于iOS浏览器的视频处理装置40可设置在上述的电子设备112中。该基于iOS浏览器的视频处理装置40在第一优选实施例的基础上还包括视频地址获取模块46、有效性检测模块47、网页加载模块48以及播放模块49。视频地址获取模块46用于获取视频元素45的视频地址,以判断播放方式的替换操作是否成功。有效性检测模块47用于检测按钮控件的有效性,以判断响应函数的替换操作是否成功。网页加载模块48用于若视频地址获取模块46获取视频元素45的视频地址失败,则重新加载当前浏览器网页44;若有效性检测模块47检测按钮控件无效,则重新加载当前浏览器网页44。具体的,网页加载模块48具体用于若获取视频元素的视频地址失败且视频地址的获取次数小于第一设定值,则调用播放方式替换模块42将视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;若获取视频元素的视频地址失败且视频地址的获取次数等于第一设定值,则重新加载当前浏览器网页,并将视频地址的获取次数清零。网页加载模块48还用于若检测按钮控件无效且按钮控件的检测次数小于第二设定值,则调用响应函数替换模块43将视频元素的按钮控件的响应函数替换为预设的响应函数;若检测按钮控件无效且按钮控件的检测次数等于第二设定值,则重新加载当前浏览器网页,并将按钮控件的检测次数清零。播放模块49用于若检测到按钮控件被触发,则调用预设的视频播放器进行视频播放,其中预设的播放器通过预设的播放方式以及预设的响应函数进行调用。
本优选实施例的基于iOS浏览器的视频处理装置40使用时,首先插件加载检测模块41会检测当前浏览器网页44是否加载视频插件,从而判断当前浏览器网页44是否需要播放视频文件。若插件加载检测模块41检测到当前浏览器网页44加载系统视频插件时,则播放方式替换模块42将浏览器组件的视频加载回调函数中的视频元素45的播放方式替换为预设的播放方式;具体为:播放方式替换模块42在浏览器组件的视频加载回调函数中注入替换代码(如js代码等),该替换代码用于遍历浏览器组件的视频加载回调函数中的所有视频元素45,并将视频元素45的播放方式替换为预设的播放方式。
随后视频地址获取模块46获取视频元素45的视频地址,以判断播放方式的替换操作是否成功,由于必须通过视频元素45的视频地址对该视频元素45进行播放,因此若视频地址获取模块46获取了视频元素45的视频地址,则判断播放方式的替换操作成功;若视频地址获取模块46无法获取视频元素45的视频地址,则判断播放方式的替换操作失败,视频地址获取模块46调取网页加载模块48对当前浏览器网页44进行重新加载,基于iOS浏览器的视频处理装置40对加载后的网页进行重新检测。具体可为:若视频地址获取模块46获取视频元素的视频地址失败且视频地址的获取次数小于第一设定值,则播放方式替换模块42再次将视频加载回调函数中的视频元素的播放方式替换为预设的播放方式,从而视频地址获取模块46再一次获取视频袁术的视频地址,视频地址的获取次数加一。若视频地址获取模块46获取视频元素的视频地址失败且视频地址的获取次数等于第一设定值,则网页加载模块48对当前浏览器网页44进行重新加载,基于iOS浏览器的视频处理装置40对加载后的网页进行重新检测,并将视频地址的获取次数清零。
若播放方式替换模块42对视频元素45的播放方式替换操作成功,响应函数替换模块43将视频元素42的按钮控件的响应函数替换为预设的响应函数。然后有效性检测模块47会检测按钮控件的有效性,以判断响应函数的替换操作是否成功,若有效性检测模块47检测按钮控件有效,则判断响应函数的替换操作成功;若有效性检测模块47检测按钮控件无效,则判断响应函数的替换操作失败,有效性检测模块47调取网页加载模块48对当前浏览器网页44进行重新加载,基于iOS浏览器的视频处理装置40对加载后的网页进行重新检测。具体可为:若有效性检测模块47检测按钮控件无效且按钮控件的检测次数小于第二设定值,则响应函数替换模块73将视频元素的按钮控件的响应函数替换为预设的响应函数,从而有效性检测模块47再一次检测按钮控件的有效性,按钮控件的检测次数加一。若有效性检测模块47检测按钮控件无效且按钮控件的检测次数等于第二设定值,则网页加载模块48对当前浏览器网页44进行重新加载,基于iOS浏览器的视频处理装置40对加载后的网页进行重新检测,并将按钮控件的检测次数清零。
由于视频元素45的播放方式和按钮控件的相应函数均替换为了预设的播放方式以及响应函数,用户可通过视频元素45的原生按钮控件启动预设的系统视频播放器,实现对所有视频使用预设的系统视频播放器进行视频播放。这时基于iOS浏览器的视频处理装置40的播放模块49可检测用户触发按钮控件,并根据按钮控件的触发,调用预设的视频播放器进行视频播放;其中预设的视频播放器通过预设的播放方式以及预设的响应函数进行调用。
这样即完成了本优选实施例的基于iOS浏览器的视频处理装置40的视频处理过程。
本优选实施例的基于iOS浏览器的视频处理装置在第一优选实施例的基础上,通过视频地址获取模块对播放方式的替换操作进行检验,通过有效性检测模块对响应函数的替换操作进行检验,更好的实现使用预设的系统视频播放器进行视频播放。
请参照图4和图5,图5为本发明的基于iOS浏览器的视频处理方法的第二优选实施例的流程图。本优选实施例的基于iOS浏览器的视频处理方法可使用上述的基于iOS浏览器的视频处理装置的第二优选实施例进行实施,其包括:
步骤S501,检测当前浏览器网页;
步骤S502,判断当前浏览器网页是否加载系统视频插件;若当前浏览器网页加载系统视频插件,则转到步骤S503;若当前浏览器网页没有加载系统视频插件,则转到步骤S501;
步骤S503,将浏览器组件的视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;
步骤S504,判断能否获取视频元素的视频地址;若能获取视频元素的视频地址,则转到步骤S505;若不能获取视频元素的视频地址,则转到步骤S507;
步骤S505,将视频元素的按钮控件的响应函数替换为预设的响应函数;
步骤S506,判断按钮控件是否有效,若按钮控件有效,则转到步骤S508;若按钮控件无效,则转到步骤S507;
步骤S507,重新加载当前浏览器网页,并返回步骤S501;
步骤S508,若检测到按钮控件被触发,则使用预设的视频播放器进行视频播放;
本优选实施例的基于iOS浏览器的视频处理方法结束于步骤S508。
下面详细说明本优选实施例的基于iOS浏览器的视频处理方法的各步骤的具体流程。
在步骤S501中,插件加载检测模块41会检测当前浏览器网页44的系统视频插件,随后转到步骤S502。
在步骤S502中,若插件加载模块41检测到当前浏览器网页44加载系统视频插件,则转到步骤S503;若插件加载模块41检测到当前浏览器网页44没有加载系统视频插件,则转到步骤S501继续检测当前浏览器网页44的系统视频插件。
在步骤S503中,播放方式替换模块42将浏览器组件的视频加载回调函数中的视频元素45的播放方式替换为预设的播放方式;具体为:播放方式替换模块42在浏览器组件的视频加载回调函数中注入替换代码(如js代码等),该替换代码遍历浏览器组件的视频加载回调函数中的所有视频元素45,并将视频元素45的播放方式替换为预设的播放方式。随后转到步骤S504。
在步骤S504中,视频地址获取模块46获取视频元素45的视频地址,以判断播放方式的替换操作是否成功,由于必须通过视频元素45的视频地址对该视频元素45进行播放,因此若视频地址获取模块46获取了视频元素45的视频地址,则判断播放方式的替换操作成功,随后转到步骤S505;若视频地址获取模块46无法获取视频元素45的视频地址,则判断播放方式的替换操作失败,随后转到步骤S507。
在步骤S505中,响应函数替换模块43将视频元素42的按钮控件的响应函数替换为预设的响应函数,随后转到步骤S506。
在步骤S506中,有效性检测模块47会检测按钮控件的有效性,以判断响应函数的替换操作是否成功,若有效性检测模块47检测按钮控件有效,则判断响应函数的替换操作成功,随后转到步骤S508;若有效性检测模块47检测按钮控件无效,则判断响应函数的替换操作失败,随后转到步骤S507。
在步骤S507中,网页加载模块48对当前浏览器网页44进行重新加载,随后转到步骤S501,基于iOS浏览器的视频处理装置40对加载后的网页进行重新检测。
在步骤S508中,由于视频元素45的播放方式和按钮控件的相应函数均替换为了预设的播放方式以及响应函数,用户可通过视频元素45的原生按钮控件启动预设的系统视频播放器,实现对所有视频使用预设的系统视频播放器进行视频播放。这时基于iOS浏览器的视频处理装置40的播放模块49可感应用户对按钮控件的触发,并根据按钮控件的触发,使用预设的视频播放器进行视频播放。
优选的,在步骤S504中,若视频地址获取模块46获取视频元素的视频地址失败且视频地址的获取次数小于第一设定值,则播放方式替换模块42再次将视频加载回调函数中的视频元素的播放方式替换为预设的播放方式,从而视频地址获取模块46再一次获取视频袁术的视频地址,视频地址的获取次数加一。若视频地址获取模块46获取视频元素的视频地址失败且视频地址的获取次数等于第一设定值,则将视频地址的获取次数清零,并转到步骤S507。
优选的,在步骤S506中,若有效性检测模块47检测按钮控件无效且按钮控件的检测次数小于第二设定值,则响应函数替换模块73将视频元素的按钮控件的响应函数替换为预设的响应函数,从而有效性检测模块47再一次检测按钮控件的有效性,按钮控件的检测次数加一。若有效性检测模块47检测按钮控件无效且按钮控件的检测次数等于第二设定值,则将按钮控件的检测次数清零,并转到步骤S507。
这样即完成了本优选实施例的基于iOS浏览器的视频处理方法的视频处理过程(视频播放过程)。
本优选实施例的基于iOS浏览器的视频处理方法在第一优选实施例的基础上,对播放方式的替换操作和响应函数的替换操作进行检验,更好的实现使用预设的系统视频播放器进行视频播放。
下面通过一具体实施例对本发明的基于iOS浏览器的视频处理方法及视频处理装置的具体工作流程进行说明,请参照图6,图6为本发明的基于iOS浏览器的视频处理方法及视频处理装置的一具体实施例的流程图。
该具体实施例包括:
步骤S601,视频处理装置启动浏览器,随后转到步骤S602。
步骤S602,视频处理装置浏览加载的新网页,若浏览的网页包含视频,则视频处理装置会自动加载系统的视频插件,随后转到步骤S603。
步骤S603,视频处理装置检测当前浏览器网页是否加载视频插件成功,若加载失败则转到步骤S601,若加载成功则转到步骤S604。
步骤S604,在浏览器组件的视频加载回调函数中注入js代码,该js代码用于遍历html中的所有视频元素,并替换视频元素的play和load方法(播放方式),随后转到步骤S605。
步骤S605,视频处理装置通过检测能否成功获取视频元素的视频地址来判断js代码是否注入成功,若注入不成功,则转到步骤S606;若注入成功,则转到步骤S607。
步骤S606,检测注入js代码的次数是否大于等于第一设定值,若小于第一设定值,则等待0.2s后转到步骤S604;若大于等于第一设定值,则转到步骤S602。
步骤S607,视频处理装置查找pluginView的按钮控件,随后转到步骤S608。
步骤S608,若视频处理装置找到pluginView的按钮控件,则转到步骤S610,若视屏处理装置没有找到pluginView的按钮控件,则转到步骤S609。
步骤S609,检测查找pluginView的按钮控件的次数是否大于等于第二设定值,若小于第二设定值,则等待0.2s后转到步骤S607;若大于等于第二设定值,则转到步骤S602。
步骤S610,视频处理装置替换pluginView的按钮控件的响应函数为预设的响应函数,随后转到步骤S611。
步骤S611,设置就绪,等待用户点击触发,对于背景技术中的第一类在线视频网站,用户点击触发按钮控件时,js代码的替换的播放方式被触发,从而使用预设的系统视频播放器进行视频播放。对于背景技术中的第二类在线视频网站,用户点击按钮控件时,视频处理装置调用预设的响应函数同样触发预设的系统视频播放器进行视频播放,实现了使用预设的系统视频播放器对所有的在线视频进行视频播放。
本发明的基于iOS浏览器的视频处理方法及视频处理装置通过替换视频元素的播放方式以及视频元素的按钮控件的响应函数,实现使用预设的系统视频播放器进行视频播放;解决了现有的视频处理方法及视频处理装置对部分视频不能使用预设的系统视频播放器进行视频播放的技术问题。
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的方法。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。
Claims (10)
1.一种基于iOS浏览器的视频处理方法,其特征在于,包括:
检测当前浏览器网页是否加载系统视频插件,以判断当前浏览器网页是否需要播放视频文件;
若所述当前浏览器网页加载所述系统视频插件,则读取浏览器组件的视频加载回调函数,并将所述视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;以及
将所述视频元素的按钮控件的响应函数替换为预设的响应函数;
所述视频处理方法还包括:
通过获取所述视频元素的视频地址,判断所述视频元素的播放方式是否替换为预设的播放方式;
若获取所述视频元素的视频地址成功,则所述视频元素的播放方式已替换为预设的播放方式,
若获取所述视频元素的视频地址失败且所述视频地址的获取次数小于第一设定值,则将所述视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;以及
若获取所述视频元素的视频地址失败且所述视频地址的获取次数等于第一设定值,则重新加载所述当前浏览器网页,并将所述视频地址的获取次数清零。
2.根据权利要求1所述的基于iOS浏览器的视频处理方法,其特征在于,所述播放方式的替换操作包括:
在所述浏览器组件的视频加载回调函数中注入替换代码,所述替换代码用于遍历所述浏览器组件的视频加载回调函数中的所有视频元素,并将所述视频元素的播放方式替换为预设的播放方式。
3.根据权利要求1所述的基于iOS浏览器的视频处理方法,其特征在于,所述视频处理方法还包括:
通过检测所述按钮控件的有效性,判断所述视频元素的按钮控件的响应函数是否替换为预设的响应函数;
若检测所述按钮控件有效,则所述视频元素的按钮控件的响应函数已替换为预设的响应函数;
若检测所述按钮控件无效,则重新加载所述当前浏览器网页。
4.根据权利要求3所述的基于iOS浏览器的视频处理方法,其特征在于,所述若检测所述按钮控件无效,则重新加载所述当前浏览器网页的步骤包括:
若检测所述按钮控件无效且所述按钮控件的检测次数小于第二设定值,则将所述视频元素的按钮控件的响应函数替换为预设的响应函数;以及
若检测所述按钮控件无效且所述按钮控件的检测次数等于第二设定值,则重新加载所述当前浏览器网页,并将所述按钮控件的检测次数清零。
5.根据权利要求1所述的基于iOS浏览器的视频处理方法,其特征在于,所述视频处理方法还包括:
若检测到所述按钮控件被触发,则调用预设的视频播放器进行视频播放;其中所述预设的视频播放器通过所述预设的播放方式以及所述预设的响应函数进行调用。
6.一种基于iOS浏览器的视频处理装置,其特征在于,包括:
插件加载检测模块,用于检测当前浏览器网页是否加载系统视频插件,以判断当前浏览器网页是否需要播放视频文件;
播放方式替换模块,用于若所述插件加载检测模块检测到所述当前浏览器网页加载所述系统视频插件,则读取浏览器组件的视频加载回调函数,并将所述视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;
响应函数替换模块,用于将所述视频元素的按钮控件的响应函数替换为预设的响应函数;
视频地址获取模块,用于获取所述视频元素的视频地址;以及
网页加载模块,用于若所述视频地址获取模块获取所述视频元素的视频地址失败,则重新加载所述当前浏览器网页;
所述网页加载模块用于:
若获取所述视频元素的视频地址失败且所述视频地址的获取次数小于第一设定值,则调用所述播放方式替换模块将所述视频加载回调函数中的视频元素的播放方式替换为预设的播放方式;以及
若获取所述视频元素的视频地址失败且所述视频地址的获取次数等于第一设定值,则重新加载所述当前浏览器网页,并将所述视频地址的获取次数清零。
7.根据权利要求6所述的基于iOS浏览器的视频处理装置,其特征在于,所述播放方式替换模块用于在所述浏览器组件的视频加载回调函数中注入替换代码,所述替换代码用于遍历所述浏览器组件的视频加载回调函数中的所有视频元素,并将所述视频元素的播放方式替换为预设的播放方式。
8.根据权利要求6所述的基于iOS浏览器的视频处理装置,其特征在于,所述视频处理装置还包括:
有效性检测模块,用于检测所述按钮控件的有效性;以及
网页加载模块,用于若所述有效性检测模块检测所述按钮控件无效,则重新加载所述当前浏览器网页。
9.根据权利要求8所述的基于iOS浏览器的视频处理装置,其特征在于,所述网页加载模块用于:
若检测所述按钮控件无效且所述按钮控件的检测次数小于第二设定值,则调用所述响应函数替换模块将所述视频元素的按钮控件的响应函数替换为预设的响应函数;以及
若检测所述按钮控件无效且所述按钮控件的检测次数等于第二设定值,则重新加载所述当前浏览器网页,并将所述按钮控件的检测次数清零。
10.根据权利要求6所述的基于iOS浏览器的视频处理装置,其特征在于,所述视频处理装置还包括:
播放模块,用于若检测到所述按钮控件被触发,则调用预设的视频播放器进行视频播放;其中所述预设的视频播放器通过所述预设的播放方式以及所述预设的响应函数进行调用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410087825.1A CN104918119B (zh) | 2014-03-11 | 2014-03-11 | 基于iOS浏览器的视频处理方法及视频处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410087825.1A CN104918119B (zh) | 2014-03-11 | 2014-03-11 | 基于iOS浏览器的视频处理方法及视频处理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104918119A CN104918119A (zh) | 2015-09-16 |
CN104918119B true CN104918119B (zh) | 2018-09-04 |
Family
ID=54086758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410087825.1A Active CN104918119B (zh) | 2014-03-11 | 2014-03-11 | 基于iOS浏览器的视频处理方法及视频处理装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104918119B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106604129B (zh) * | 2015-10-20 | 2019-08-20 | 北京国双科技有限公司 | 检测视频播放状态的方法和装置 |
CN105577651B (zh) * | 2015-12-16 | 2019-04-23 | 广州酷狗计算机科技有限公司 | 服务提供方法及装置 |
CN106331741B (zh) * | 2016-08-31 | 2019-03-08 | 徐州视达坦诚文化发展有限公司 | 一种电视广播媒体音视频数据的压缩方法 |
CN109286834B (zh) * | 2017-07-19 | 2021-06-15 | 腾讯科技(深圳)有限公司 | 视频处理方法、装置及服务器 |
CN108777819B (zh) * | 2018-09-13 | 2019-02-05 | 上海二三四五网络科技有限公司 | 一种基于浏览器播放器播放网页视频的控制方法及控制装置 |
CN112312220B (zh) * | 2019-07-26 | 2022-06-14 | 北京搜狗科技发展有限公司 | 一种网页视频的播放方法及装置 |
CN111800667A (zh) * | 2020-07-28 | 2020-10-20 | 深圳Tcl数字技术有限公司 | 浏览器视频播放方法、视频播放装置及存储介质 |
CN114390349B (zh) * | 2020-10-22 | 2024-05-17 | 北京神州数码云科信息技术有限公司 | 一种视频播放控制方法、装置、终端和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102306077A (zh) * | 2011-08-04 | 2012-01-04 | 深圳市万兴软件有限公司 | 一种在mac平台浏览器中实现视频下载的方法及浏览器 |
CN103064958A (zh) * | 2012-12-31 | 2013-04-24 | 乐视致新电子科技(天津)有限公司 | 一种基于html5视频标签的浏览器自动识别与解析的方法 |
CN103268337A (zh) * | 2013-05-16 | 2013-08-28 | 北京奇虎科技有限公司 | 一种网页中视频的播放方法和装置 |
CN103281457A (zh) * | 2013-06-03 | 2013-09-04 | 贝壳网际(北京)安全技术有限公司 | 一种移动终端浏览器中视频播放方法、装置及浏览器 |
CN103338384A (zh) * | 2013-05-31 | 2013-10-02 | 优视科技有限公司 | 一种视频播放方法及装置 |
-
2014
- 2014-03-11 CN CN201410087825.1A patent/CN104918119B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102306077A (zh) * | 2011-08-04 | 2012-01-04 | 深圳市万兴软件有限公司 | 一种在mac平台浏览器中实现视频下载的方法及浏览器 |
CN103064958A (zh) * | 2012-12-31 | 2013-04-24 | 乐视致新电子科技(天津)有限公司 | 一种基于html5视频标签的浏览器自动识别与解析的方法 |
CN103268337A (zh) * | 2013-05-16 | 2013-08-28 | 北京奇虎科技有限公司 | 一种网页中视频的播放方法和装置 |
CN103338384A (zh) * | 2013-05-31 | 2013-10-02 | 优视科技有限公司 | 一种视频播放方法及装置 |
CN103281457A (zh) * | 2013-06-03 | 2013-09-04 | 贝壳网际(北京)安全技术有限公司 | 一种移动终端浏览器中视频播放方法、装置及浏览器 |
Also Published As
Publication number | Publication date |
---|---|
CN104918119A (zh) | 2015-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104918119B (zh) | 基于iOS浏览器的视频处理方法及视频处理装置 | |
US9342237B2 (en) | Automated testing of gesture-based applications | |
CN102306174B (zh) | 一种基于网页元素与用户进行互动的方法与设备 | |
CN103777967B (zh) | 页面返回方法、页面生成方法和装置 | |
CN104243590B (zh) | 资源对象推荐方法和装置 | |
US20150356302A1 (en) | Presentation of user interface elements based on rules | |
CN104965826B (zh) | 基于浏览器的检索方法及检索装置 | |
CN111309620B (zh) | 一种游戏协议测试方法、装置、电子设备和存储介质 | |
US20170171334A1 (en) | Single-account multiple-preference recommendation method for video website and electronic device | |
KR20150138340A (ko) | 게임 데이터 수집을 위한 방법 및 시스템 | |
CN105320662B (zh) | 网页生成方法及装置 | |
CN106649299A (zh) | 一种网页区块懒加载的方法和装置 | |
CN104158697B (zh) | 一种死链检测方法及装置 | |
CN111177623A (zh) | 信息处理方法及装置 | |
JP2013198158A (ja) | ハードウェアプロトコルスタック | |
JP2018506783A (ja) | 要素識別子の生成 | |
Ship | Tapestry in Action (In Action series) | |
CN110020264B (zh) | 一种无效超链接的确定方法及装置 | |
US8655865B1 (en) | Method and apparatus for indexing rich internet content using contextual information | |
CN105243134A (zh) | 一种处理被劫持浏览器的方法及设备 | |
CN104407979A (zh) | 脚本检测方法和装置 | |
US20150089338A1 (en) | System and methods for providing a network application proxy agent | |
CN103856476A (zh) | 用于识别网络机器人的方法和设备 | |
Akowuah et al. | Testing the security vulnerabilities of openemr 4.1. 1: a case study | |
CN106302002A (zh) | 测试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |