CN110087137B - 视频播放帧信息的获取方法、装置、设备及介质 - Google Patents
视频播放帧信息的获取方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN110087137B CN110087137B CN201810077387.9A CN201810077387A CN110087137B CN 110087137 B CN110087137 B CN 110087137B CN 201810077387 A CN201810077387 A CN 201810077387A CN 110087137 B CN110087137 B CN 110087137B
- Authority
- CN
- China
- Prior art keywords
- video
- playing
- frame
- webpage
- determining
- 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
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000012545 processing Methods 0.000 claims abstract description 90
- 230000006870 function Effects 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 33
- 238000004364 calculation method Methods 0.000 claims description 25
- 230000008859 change Effects 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 10
- 230000001960 triggered effect Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000009877 rendering Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005316 response function Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- 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/44—Processing 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
-
- 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/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
-
- 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/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种视频播放帧信息的获取方法、装置、设备及介质,涉及互联网技术领域,该方法包括:在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息。本发明实施例能够满足用户在HTML5网页中查看视频播放帧信息的需求。
Description
技术领域
本发明涉及互联网技术领域,特别是涉及一种视频播放帧信息的获取方法、一种视频播放帧信息的获取装置、一种电子设备以及一种存储介质。
背景技术
随着互联网技术的不断发展,网络带宽的增大,为用户使用网络提供了等多的便利性,也新生了许多基于互联网的产业,如网页视频、网络购物等。
其中,传统的网页视频主要是固态存储器与动画编辑器(Flash)视频,通常需要通过Flash插件进行播放。在用户通过视频网站播放Flash视频时,网页浏览器可以针对Flash视频,通过Flash插件本身提供的接口,直接获取视频网站提供的视频播放信息,如获取视频的分辨率、播放进度、视频播放帧信息等信息,使得用户可以依据获取到的视频播放信息了解当前播放视频的原始视频信息和播放状态。
目前,可通过超文本标记语言第五次版本(Hyper Text Markup Language5,HTML5)中的新标签<video>,在HTML网页嵌入视频元素,从而能够简捷快速的实现网页中的视频播放,不需要插件的支持。可见,HTML5视频不需要通过Flash插件进行播放,即现有通过Flash插件的接口来获取视频播放信息不适用于HTML5视频。目前,用户仅能在HTML网页中查看播放进度和分辨率等信息,但无法在HTML5网页中查看视频播放帧信息。
发明内容
本发明实施例提供一种视频播放帧信息的获取方法,以满足用户在HTML5网页中查看视频播放帧信息的需求。
相应的,本发明实施例还提供了一种视频播放帧信息的获取装置、一种电子设备以及一种存储介质,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种视频播放帧信息的获取方法,包括:
在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;
针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;
依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息。
可选地,依据所述网页视频的播放进度确定对应的视频播放时长,包括:当检测到所述网页视频的播放位置发生变化时,触发预先在网页视频标签中定义的播放时间更新Ontimeupdate事件;通过所述Ontimeupdate事件,调用动态计算函数;通过所述动态计算函数,获取浏览器的系统对应的执行时间;计算所述执行时间和所述网页视频的开始播放时间之间的时间差,将计算得到的时间差确定为视频播放时长。其中,所述开始播放时间通过触发预先在网页视频标签中定义的开始播放Onplay事件,并由所述Onplay事件调用所述网页视频的开始播放函数获得;或者,所述开始播放时间为所述浏览器根据读取到的脚本语言,得到的所述网页视频开始播放时的系统时间。
可选地,针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息,包括:确定所述浏览器的浏览器内核;从所述浏览器内核运行的进程中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,其中,所述视频帧处理信息包括以下至少一种:解码帧数量、播放帧数量和丢帧数量。
可选地,所述获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和播放帧数量。所述确定所述网页视频的视频播放帧信息之前,所述方法还包括:计算所述解码帧数量和播放帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的丢帧数量。
可选地,所述获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和丢帧数量。所述确定所述网页视频的视频播放帧信息之前,还包括:计算所述解码帧数量和丢帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的播放帧数量。
可选地,所述依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息,包括:基于所述解码帧数量和所述播放时长,确定所述播放进度对应的视频解码帧率;基于所述播放帧数量和所述播放时长,确定所述播放进度对应的视频播放帧率。
本发明实施例还公开了一种视频播放帧信息的获取装置,包括:
播放时长确定模块,用于在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;
帧处理信息获取模块,用于针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;
播放帧信息确定模块,用于依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息。
可选地,所述播放时长确定模块,包括:
触发子模块,用于当检测到所述网页视频的播放位置发生变化时,触发预先在网页视频标签中定义的播放时间更新Ontimeupdate事件;
调用子模块,用于通过所述Ontimeupdate事件,调用动态计算函数;
获取子模块,用于通过所述动态计算函数,获取浏览器的系统对应的执行时间;
确定子模块,用于计算所述执行时间和所述网页视频的开始播放时间之间的时间差,将计算得到的时间差确定为视频播放时长;其中,所述开始播放时间通过触发预先在网页视频标签中定义的开始播放Onplay事件,并由所述Onplay事件调用所述网页视频的开始播放函数获得;或者,所述开始播放时间为所述浏览器根据读取到的脚本语言,得到的所述网页视频开始播放时的系统时间。
可选地,所述帧处理信息获取模块,包括:
内核确定子模块,用于确定所述浏览器的浏览器内核;
信息获取子模块,用于从所述浏览器内核运行的进程中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,其中,所述视频帧处理信息包括以下至少一种:解码帧数量、播放帧数量和丢帧数量。
可选地,还包括:丢帧数量确定模块。所述信息获取子模块,具体用于获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和播放帧数量;所述丢帧数量确定模块,用于计算所述解码帧数量和播放帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的丢帧数量。
可选地,还包括:播放帧数量确定模块。所述信息获取子模块,具体用于获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和丢帧数量;所述播放帧数量确定模块,用于计算所述解码帧数量和丢帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的播放帧数量。
可选地,所述播放帧信息确定模块,包括:
解码帧率确定子模块,用于基于所述解码帧数量和所述播放时长,确定所述播放进度对应的视频解码帧率;
播放帧率确定子模块,用于基于所述播放帧数量和所述播放时长,确定所述播放进度对应的视频播放帧率。
本发明实施例还公开了一种电子设备包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;
针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;
依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息。
本发明实施例还公开了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本发明实施例中一个或多个所述的视频播放帧信息的获取方法。
本发明实施例包括以下优点:
本发明实施例在通过浏览器播放网页视频时,可以依据该网页视频的播放进度确定视频播放时长,并针对该视频播放时长,从浏览器中获取该网页视频对应的视频帧处理信息,以依据获取到的视频帧处理信息确定视频播放帧信息,从而解决现有技术在通过浏览器播放HTML5视频时无法获取HTML5视频播放帧信息的问题,能够满足在HTML5网页中动态查看视频播放帧信息的需求。
附图说明
图1是本发明的一种视频播放帧信息的获取方法实施例的步骤流程图;
图2是本发明的一种视频播放帧信息的获取方法可选实施例的步骤流程图;
图3是本发明的一种视频播放帧信息的获取装置实施例的结构框图;
图4是根据一示例性实施例示出的一种用于视频播放帧信息的获取的电子设备的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
目前,针对Flash视频,可以通过Flash插件本身提供的接口,直接获取诸如视频播放帧率(简称播放帧率)、分辨率,播放进度等信息,使得用户在视频播放过程中动态查看视频播放信息,以便用户依据该视频播放信息了解原始视频的信息和播放状态。然而,在用户通过HTML5网页播放视频时,用户可以在视频播放过程中看到视频的分辨率、播放进度等信息,但是不能看到诸如播放帧率、视频解码帧率(简称解码帧率)等视频播放帧信息,其主要原因在于HTML5网页并没有提供相关的接口或属性。显然,现有技术通过Flash插件提供的接口来获取Flash视频播放帧率的方法不适用于HTML5视频,因此用户无法在HTML5视频播放过程中,动态查看视频播放信息。
需要说明的是,视频播放帧信息可以用于辅助用户了解原始视频的信息和视频的播放状态,如可以包括播放帧率、解码帧率等,本发明实施例对此不作限制。
参照图1,示出了本发明的一种视频播放帧信息的获取方法实施例的步骤流程图,具体可以包括如下步骤:
步骤102,在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长。
在具体实现中,可以通过浏览器对网页视频进行播放,如可以通过浏览器显示的HTML5网页,对HTML5视频进行播放。在浏览器播放网页视频的过程中,可以根据网页视频当前的播放进度确定该网页视频对应的视频播放时长。其中,视频播放时长可以用于表征网页视频的播放时间。
作为本发明的一个示例,在视频播放过程中,在检测到网页视频的播放位置发生变化时,如随着时间变化,视频播放进度发生变化时,又如在用户提交诸如快进、快退等操作改变视频播放位置时,可以触发视频的播放时间更新(Ontimeupdate)事件,以通过Ontimeupdate事件调用动态计算函数calc()。该动态计算函数calc()可以用于获取当前时间CurTime,如获取浏览器的系统对应的执行时间,该执行时间可以用于表征浏览器当前所在的操作系统的系统时间。在获取到当前时间CurTime后,可以通过计算当前时间CurTime与网页视频的开始播放时间StartTime之间的时间差,确定出当前的视频播放时长,如可以将当前时间与开始播放时间之间的时间差作为当前的视频播放时长。
步骤104,针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息。
本发明实施例中,可基于网页视频播放时长,实时地从浏览器的内核运行进程中,获取网页视频播放所述视频播放时长时,该网页视频对应的视频帧处理信息,如可以按照毫秒为单位来获取网页视频对应的解码帧数量、播放帧数量和/或丢帧数量等,以依据获取到的视频帧处理信息实时地确定出网页视频在播放过程中的视频播放信息。当然,也可以按照其他单位来获取视频帧处理信息,如可以以帧为单位来获取视频帧处理信息等等,本发明实施例对此不作限制。
步骤106,依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放信息。
本发明实施例在获取到视频帧处理信息后,可以根据获取到的视频帧处理信息和视频播放时长,实时地确定出当前播放进度对应的视频播放信息。例如,在获取到网页视频当前的解码帧数量DecodeFrameNum后,可以依据当前的解码帧数量DecodeFrameNum和当前的视频播放时长,计算出当前的播放进度对应的解码帧率DecodeFPS;又如在获取到网页视频当前的播放帧数量PlayedFrameNum后,可以依据当前的播放帧数量PlayedFrameNum和当前的视频播放时长,计算出当前的播放进度对应的播放帧率PlayFPS,等等。
综上,本发明实施例在通过浏览器播放网页视频时,可以依据该网页视频的播放进度确定视频播放时长,并针对该视频播放时长,从浏览器中获取该网页视频对应的视频帧处理信息,以依据获取到的视频帧处理信息确定视频播放信息,从而解决现有技术在通过浏览器播放HTML5视频时无法获取HTML5视频播放信息的问题,能够满足在HTML5网页中动态查看视频播放信息的需求。
作为本发明的一种应用场景,针对HTML5应用程序编程接口(ApplicationProgramming Interface,API)未提供诸如播放帧率、解码帧率等帧率相关信息的问题,应用本发明实施例提供的视频播放帧信息的获取方法,可以实时地计算出视频播放帧率,以依据视频播放帧率确定浏览器的性能。
具体而言,浏览器播放网页视频的过程可以简单描述为:解码、渲染和播放。渲染过程是在接收到解码后的视频帧后,并对解码后的视频帧进行渲染,得到渲染后的视频帧。若浏览器的渲染性能不足,则会丢掉部分解码后的视频帧。播放过程是在接收到渲染后的视频帧后,对渲染后的视频帧进行播放。如果浏览器的播放性能不足,则也会丢掉部分视频帧。
在实际处理中,HTML5解码的过程可以是浏览器通过解码库进行处理。渲染和播放可以由浏览器自身处理,处理的效率取决于浏览器的性能。需要说明的是,浏览器的性能受限于中央处理器的处理器性能,即中央处理器性能越高,浏览器性能就会越高,这样视频的播放效率就会越高,丢帧率就越低。因此,可以通过网页视频的播放帧率、解码帧率或/和丢帧数,来衡量中央处理器/浏览器的性能。
其中,渲染过程可以通过图形处理器(Graphics Processing Unit,GPU)进行处理,即可以通过硬件加速,降低中央处理器负担,使得浏览器播放的视频会更加流畅。显然,在处理数据量比较大时,可以通过利用GPU的图形计算能力,降低中央处理器负担,从而提高浏览器对视频的解码效率,减少丢帧数量,降低丢帧率。
在一种可选实施方式中,本发明可以通过浏览器内核对HTML5中定义的视频标签<Video>的扩展,实时获取视频的当前播放帧数、解码帧数和丢帧数等视频帧处理信息,然后根据视频已播放时长,即可实时计算出播放帧率和解码帧率。
具体而言,可以在需要插入视频的HTML页面创建一个HTML5Video标签,以通过该Video标签定义需要插入的视频。其中,Video标签可以用于定义一个或者一段视频。通过Video标签定义的HTML5Video可以通过一个播放器的形式在HTML5网页上呈现出来,从而使得用户可以通过点击播放器的播放、暂停等按键,对该HTML5Video进行播放控制。
例如,在Video标签中添加了诸如视频唯一编码(ID)、视频地址SRC、视频类型(Type)等信息后,还可以在该Video标签中添加诸如开始播放(Onplay)事件、重新播放(Onplaying)事件、Ontimeupdate事件等事件信息。其中,Onplay事件和Onplaying事件可以调用网页视频的开始播放函数start(),以通过开始播放函数start()获取与网页视频的开始播放时间StartTime,开始播放时间StartTime可以表征网页视频开始播放的时间点。
在视频播放过程中,可以将视频(Video)的Onplay事件的触发时间作为时间起点,将当前时间作为时间终点,从而可以通过计算时间起点和时间终点之间的时间差,实时地计算出当前的视频播放时长以及对应的视频播放帧率、解码帧率。
需要说明的是,Onplay事件可以用于播放视频,且可以由用户触发,如在用户点击“开始播放”按钮时,可以触发网页视频的Onplay事件,进而可以依据Onplay事件开始对网页视频进行播放;Onplaying事件可以用于在视频暂停播放后触发视频重新播放,也可以由用户触发,如在视频暂停播放后,用户可点击“播放”按钮后,可触发Onplaying事件,进而可依据该Onplaying事件继续对网页视频进行播放。
参照图2,示出了本发明的一种视频播放帧信息的获取方法可选实施例的步骤流程图,具体可以包括如下步骤:
步骤202,当检测到所述网页视频的播放位置发生变化时,触发预先在网视频标签中定义的播放时间更新Ontimeupdate事件。
作为本发明的一个可选示例,可以通过浏览器读取到的脚本语言,如JavaScrip(JS)代码,获取网页视频开始播放时的系统时间,并且可以将获取到的系统时间确定为该网页视频的开始播放时间。可选的,可以由网页视频的Onplay事件触发网页视频的开始播放时间的获取。例如,在检测到网页视频的Onplay事件时,可以通过Onplay事件调用开始播放函数start(),以通过开始播放函数start()获取当前的系统时间,并且将获取到的系统时间作为该网页视频的开始播放时间StartTime。
在网页视频播放过程中,当网页视频的当前播放位置发生改变时,如在用户针对网页视频提交诸如快进、拖动播放位置的操作时,可以触发预先在网视频标签中定义的播放时间更新Ontimeupdate事件,以通过Ontimeupdate事件调用动态计算函数calc()。
步骤204,通过所述Ontimeupdate事件,调用动态计算函数。
步骤206,通过所述动态计算函数,获取浏览器的系统对应的执行时间。
本示例在调用动态计算函数calc()后,可以通过执行该动态计算函数calc(),获取浏览器的系统对应的执行时间,即获取触发Ontimeupdate事件时的当前时间CurTime,以依据获取到的执行时间确定出网页视频当前的视频播放时长。
步骤208,计算所述执行时间和所述网页视频的开始播放时间之间的时间差,将计算得到的时间差确定为视频播放时长。
在具体实现中,可以依据浏览器的系统对应执行时间和网页视频的开始播放时间,确定视频播放时长。其中,开始播放时间可以通过触发预先在网页视频标签中定义的开始播放Onplay事件,并由所述Onplay事件调用所述网页视频的开始播放函数获得;或者,开始播放时间可以为所述浏览器根据读取到的脚本语言,得到的所述网页视频开始播放时的系统时间,本发明实施例对此不作限制。
例如,结合上述示例,可以通过计算触发Ontimeupdate事件时的当前时间CurTime与网页视频的开始播放时间StartTime之间的时间差,实时地确定出网页视频当前的播放进度对应的视频播放时长,如可以将当前时间CurTime与开始播放时间StartTime之间的时间差的值确定为当前的视频播放时长。
步骤210,针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息。
本发明实施例中,可选地,从所述浏览器中获取所述网页视频对应的视频帧处理信息可以包括:确定所述浏览器的浏览器内核;从所述浏览器内核运行的进程中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息。其中,所述视频帧处理信息包括以下至少一种:解码帧数量、播放帧数量和丢帧数量。
在具体实现中,可以依据浏览器的内核类型,确定出该浏览器运行的进程,以从该浏览器运行的进程中获取到视频帧处理信息。其中,浏览器内核可以是开源浏览器内核,也可以是非开源浏览器内核,本发明实施例对此不作限制。
例如,在浏览器内核为Gecko内核时,可以从该浏览器运行的进程中获取网页视频的解码帧数量DecodeFrameNum、播放帧数量PlayedFrameNum;又如在浏览器内核为webkit内核时,可以从浏览器运行的进程中获取网页视频的解码帧数量DecodeFrameNum、丢帧数量DropFrameNum等等。
在一种可选实施方式中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和播放帧数量。在确定所述网页视频的视频播放帧信息之前,所述方法还可以包括:基于所述解码帧数量和播放帧数量,确定所述视频播放时长对应的丢帧数量。
例如,在确定出浏览器内核为Gecko内核时,可以从该Gecko内核运行的进程中,获取Gecko内核当前针对该网页视频的第一解码帧数量mozDecodedFrames和第一播放帧数量mozPaintedFrames。
随后,可依据在获取当前时间CurTime之前针对该网页视频的第二解码帧数量PreDecodeFrameNum以及当前获取到的第一解码帧数量mozDecodedFrames,实时地确定出当前的解码帧数量DecodeFrameNum,如可将当前获取到的第一解码帧数量mozDecodedFrames减去第二解码帧数量PreDecodeFrameNum,以将第一解码帧数量mozDecodedFrames与第二解码帧数量PreDecodeFrameNum之间的差值确定为当前的解码帧数量DecodeFrameNum。
其中,第二解码帧数量PreDecodeFrameNum可以表征在本次检测到Ontimeupdate事件之前,浏览器内核针对网页视频已解码的视频帧数量,如在用户针对网络视频提交诸如暂停、快进、拖动播放位置等操作时,即在这些操作对应的事件的触发时,记录当前的解码帧数量,并且可以在这些事件的响应函数中将记录的解码帧数量赋给预先定义的PreDecodeFrameNum。
同理,可以依据在获取当前时间CurTime之前针对该网页视频的第二播放帧数量PrePlayedFrameNum以及当前获取到的第一播放帧数量mozPaintedFrames,实时地确定出当前的播放帧数量PlayedFrameNum,如可将当前获取到的第一播放帧数量mozPaintedFrames减去第二播放帧数量PrePlayedFrameNum,以将第一播放帧数量mozPaintedFrames与第二播放帧数量PrePlayedFrameNum之间的差值确定为当前的播放帧数量PlayedFrameNum。其中,第二播放帧数量PrePlayedFrameNum可以表征在本次检测到Ontimeupdate事件之前,浏览器内核针对网页视频已播放的视频帧数量,如在用户针对网络视频提交诸如暂停、快进、拖动播放位置等操作时,即在这些操作对应的事件的触发时,记录当前的播放帧数量,并且可以在这些事件的响应函数中将记录的播放帧数量赋给预先定义的PrePlayedFrameNum。
可选的,还可以将当前的解码帧数量DecodeFrameNum减去当前的播放帧数量PlayedFrameNum,得到当前的丢帧数量DropFrameNum,计算公式如下:
DropFrameNum=DecodeFrameNum-PlayedFrameNum。
需要说明的是,mozDecodedFrames可以为在Gecko内核中针对视频扩展的解码帧数量,用于表征网页视频当前的解码帧数量;mozPaintedFrames可以为在Gecko内核中针对视频扩展的播放帧数量,用于表征网页视频当前的播放帧数量。
在另一种可选实施方式中,所述获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,可以包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和丢帧数量。在确定所述网页视频的视频播放帧信息之前,还可以包括:基于所述解码帧数量和丢帧数量,确定所述视频播放时长对应的播放帧数量。
例如,在浏览器内核为webkit内核时,可以从浏览器运行的进程中获取网页视频的第三解码帧数量webkitDecodedFrameCount和第一丢帧数量webkitDroppedFramCount。
随后,可依据在获取当前时间CurTime之前针对该网页视频的第二解码帧数量PreDecodeFrameNum以及当前获取到的第三解码帧数量webkitDecodedFrameCount,实时地确定出当前的解码帧数量DecodeFrameNum,如可将当前获取到的第三解码帧数量webkitDecodedFrameCount减去第二解码帧数量PreDecodeFrameNum,以将第三解码帧数量webkitDecodedFrameCount与第二解码帧数量PreDecodeFrameNum之间的差值确定为当前的解码帧数量DecodeFrameNum。可选的,可以将获取到的第一丢帧数量webkitDroppedFramCount确定为当前的丢帧数量DropFrameNum。此外,还可以将第三解码帧数量webkitDecodedFrameCount减去第一丢帧数量webkitDroppedFramCount,得到第三播放帧数量,以及,将第三播放帧数量减去第二播放帧数量PrePlayedFrameNum,得到当前的播放帧数量PlayedFrameNum。
需要说明的是,webkitDecodedFrameCount可以为在webkit内核中针对视频扩展的解码帧数量,用于表征网页视频当前的解码帧数量;webkitDroppedFramCount可以为在webkit内核中针对视频扩展的丢帧数量,可以用于表征当前的丢帧数量,如可以包括在渲染过程中和播放过程中丢帧的数量。
步骤212,依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息。
可选地,本发明实施例依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息,可以包括:基于所述解码帧数量和所述播放时长,确定所述播放进度对应的视频解码帧率;基于所述播放帧数量和所述播放时长,确定所述播放进度对应的视频播放帧率。
例如,结合上述示例,可以通过计算当前的解码帧数量DecodeFrameNum与视频播放时长的商,确定出当前的视频解码帧率DecodeFPS,计算公式如下:
DecodeFPS=DecodeFrameNum*K/(CurTime-StartTime);
此外,还可以通过计算当前的播放帧数量PlayedFrameNum与视频播放时长的商,确定出当前的视频播放帧率PlayFPS,计算公式如下:
PlayFPS=PlayedFrameNum*K/(CurTime-StartTime);
其中,K为计算系数,本发明实施例对此不作限制。例如,在帧率是按照秒计算的情况下,其单位可以是每秒帧数(Frames Per Second,FPS),若获取的视频播放时间是按照毫秒计算的,则可以将计算系数K设置为1000,以通过该计算系数完成需要计算的帧率与获取的视频播放时间之间的单位倍数的转换。
综上,本发明实施例可以通过浏览器内核的扩展,实时地计算出HTML5视频的播放帧率、解码帧率,即实现了在HTML5视频播放过程中实时地获取视频播放信息,使得用户可以在网页上查看HTML5视频播放信息,以及可以将实时获取的视频播放信息作为处理器或浏览器对HTML5视频处理能力的有效参考。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了本发明的一种视频播放帧信息的获取装置实施例的结构框图,具体可以包括如下模块:
播放时长确定模块302,用于在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;
帧处理信息获取模块304,用于针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;
播放帧信息确定模块306,用于依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息。
在本发明的一个可选实施例中,所述播放时长确定模块302可以包括如下子模块:
触发子模块,用于当检测到所述网页视频的播放位置发生变化时,触发预先在网页视频标签中定义的播放时间更新Ontimeupdate事件;
调用子模块,用于通过所述Ontimeupdate事件,调用动态计算函数;
获取子模块,用于通过所述动态计算函数,获取浏览器的系统对应的执行时间;
确定子模块,用于计算所述执行时间和所述网页视频的开始播放时间之间的时间差,将计算得到的时间差确定为视频播放时长;其中,所述开始播放时间通过触发预先在网页视频标签中定义的开始播放Onplay事件,并由所述Onplay事件调用所述网页视频的开始播放函数获得;或者,所述开始播放时间为所述浏览器根据读取到的脚本语言,得到的所述网页视频开始播放时的系统时间。
在本发明的一个可选实施例中,所述帧处理信息获取模块304可以包括如下子模块:
内核确定子模块,用于确定所述浏览器的浏览器内核;
信息获取子模块,用于从所述浏览器内核运行的进程中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,其中,所述视频帧处理信息包括以下至少一种:解码帧数量、播放帧数量和丢帧数量。
在本发实施例中,可选地,视频播放帧信息的获取装置还可以包括:丢帧数量确定模块。其中,所述信息获取子模块,具体可以用于获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和播放帧数量。所述丢帧数量确定模块,可以用于计算所述解码帧数量和播放帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的丢帧数量。
在本发明的一个可选实施例中,所述装置还可以包括:播放帧数量确定模块。其中,所述信息获取子模块,具体可以用于获取所述网页视频对应的解码帧数量和丢帧数量。所述播放帧数量确定模块,用于计算所述解码帧数量和丢帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的播放帧数量。
在本发明的一个可选实施例中,所述播放帧信息确定模块306可以包括如下模块:
解码帧率确定子模块,用于基于所述解码帧数量和所述播放时长,确定所述播放进度对应的视频解码帧率;
播放帧率确定子模块,用于基于所述播放帧数量和所述播放时长,确定所述播放进度对应的视频播放帧率。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
图4是根据一示例性实施例示出的一种用于视频播放帧信息的获取的电子设备400的结构框图。例如,电子设备400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图4,电子设备400可以包括以下一个或多个组件:处理组件402,存储器404,电源组件406,多媒体组件408,音频组件410,输入/输出(I/O)的接口412,传感器组件414,以及通信组件416。
处理组件402通常控制电子设备400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。
存储器404被配置为存储各种类型的数据以支持在设备400的操作。这些数据的示例包括用于在电子设备400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件406为电子设备400的各种组件提供电力。电源组件406可以包括电源管理系统,一个或多个电源,及其他与为电子设备400生成、管理和分配电力相关联的组件。
多媒体组件408包括在所述电子设备400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当电子设备400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(MIC),当电子设备400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。
I/O接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件414包括一个或多个传感器,用于为电子设备400提供各个方面的状态评估。例如,传感器组件414可以检测到设备400的打开/关闭状态,组件的相对定位,例如所述组件为电子设备400的显示器和小键盘,传感器组件414还可以检测电子设备400或电子设备400一个组件的位置改变,用户与电子设备400接触的存在或不存在,电子设备400方位或加速/减速和电子设备400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件416被配置为便于电子设备400和其他设备之间有线或无线方式的通信。电子设备400可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件416还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备400可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由电子设备400的处理器420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行一种视频播放帧信息的获取方法,所述方法包括:在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息。
可选地,依据所述网页视频的播放进度确定对应的视频播放时长,包括:当检测到所述网页视频的播放位置发生变化时,触发预先在网页视频标签中定义的播放时间更新Ontimeupdate事件;通过所述Ontimeupdate事件,调用动态计算函数;通过所述动态计算函数,获取浏览器的系统对应的执行时间;计算所述执行时间和所述网页视频的开始播放时间之间的时间差,将计算得到的时间差确定为视频播放时长。其中,所述开始播放时间通过触发预先在网页视频标签中定义的开始播放Onplay事件,并由所述Onplay事件调用所述网页视频的开始播放函数获得;或者,所述开始播放时间为所述浏览器根据读取到的脚本语言,得到的所述网页视频开始播放时的系统时间。
可选地,针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息,包括:确定所述浏览器的浏览器内核;从所述浏览器内核运行的进程中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,其中,所述视频帧处理信息包括以下至少一种:解码帧数量、播放帧数量和丢帧数量。
可选地,所述获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和播放帧数量。所述确定所述网页视频的视频播放帧信息之前,所述方法还包括:计算所述解码帧数量和播放帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的丢帧数量。
可选地,所述获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和丢帧数量。所述确定所述网页视频的视频播放帧信息之前,还包括:计算所述解码帧数量和丢帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的播放帧数量。
可选地,所述依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息,包括:基于所述解码帧数量和所述播放时长,确定所述播放进度对应的视频解码帧率;基于所述播放帧数量和所述播放时长,确定所述播放进度对应的视频播放帧率。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以预测方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种视频播放帧信息的获取方法和装置、一种电子设备以及一种储存介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种视频播放帧信息的获取方法,其特征在于,包括:
在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;
针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;
依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息;
其中,依据所述网页视频的播放进度确定对应的视频播放时长,包括:
当检测到所述网页视频的播放位置发生变化时,触发预先在网页视频标签中定义的播放时间更新Ontimeupdate事件;
通过所述Ontimeupdate事件,调用动态计算函数;
通过所述动态计算函数,获取浏览器的系统对应的执行时间;
计算所述执行时间和所述网页视频的开始播放时间之间的时间差,将计算得到的时间差确定为视频播放时长;其中,所述开始播放时间通过触发预先在网页视频标签中定义的开始播放Onplay事件,并由所述Onplay事件调用所述网页视频的开始播放函数获得;或者,所述开始播放时间为所述浏览器根据读取到的脚本语言,得到的所述网页视频开始播放时的系统时间。
2.根据权利要求1所述的方法,其特征在于,针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息,包括:
确定所述浏览器的浏览器内核;
从所述浏览器内核运行的进程中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,其中,所述视频帧处理信息包括以下至少一种:解码帧数量、播放帧数量和丢帧数量。
3.根据权利要求2所述的方法,其特征在于,
所述获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和播放帧数量;
所述确定所述网页视频的视频播放帧信息之前,所述方法还包括:计算所述解码帧数量和播放帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的丢帧数量。
4.根据权利要求2所述的方法,其特征在于,
所述获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,包括:获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和丢帧数量;
所述确定所述网页视频的视频播放帧信息之前,还包括:计算所述解码帧数量和丢帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的播放帧数量。
5.根据权利要求2至4任一所述的方法,其特征在于,所述依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息,包括:
基于所述解码帧数量和所述播放时长,确定所述播放进度对应的视频解码帧率;
基于所述播放帧数量和所述播放时长,确定所述播放进度对应的视频播放帧率。
6.一种视频播放帧信息的获取装置,其特征在于,包括:
播放时长确定模块,用于在通过浏览器播放网页视频时,依据所述网页视频的播放进度确定对应的视频播放时长;
帧处理信息获取模块,用于针对所述视频播放时长,从所述浏览器中获取所述网页视频对应的视频帧处理信息;
播放帧信息确定模块,用于依据所述视频帧处理信息和所述视频播放时长,确定所述网页视频的视频播放帧信息;
其中,所述播放时长确定模块,包括:
触发子模块,用于当检测到所述网页视频的播放位置发生变化时,触发预先在网页视频标签中定义的播放时间更新Ontimeupdate事件;
调用子模块,用于通过所述Ontimeupdate事件,调用动态计算函数;
获取子模块,用于通过所述动态计算函数,获取浏览器的系统对应的执行时间;
确定子模块,用于计算所述执行时间和所述网页视频的开始播放时间之间的时间差,将计算得到的时间差确定为视频播放时长;其中,所述开始播放时间通过触发预先在网页视频标签中定义的开始播放Onplay事件,并由所述Onplay事件调用所述网页视频的开始播放函数获得;或者,所述开始播放时间为所述浏览器根据读取到的脚本语言,得到的所述网页视频开始播放时的系统时间。
7.根据权利要求6所述的装置,其特征在于,所述帧处理信息获取模块,包括:
内核确定子模块,用于确定所述浏览器的浏览器内核;
信息获取子模块,用于从所述浏览器内核运行的进程中,获取所述网页视频在所述视频播放时长所表征时间范围内对应的视频帧处理信息,其中,所述视频帧处理信息包括以下至少一种:解码帧数量、播放帧数量和丢帧数量。
8.根据权利要求7所述的装置,其特征在于,还包括:丢帧数量确定模块;
所述信息获取子模块,具体用于获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和播放帧数量;
所述丢帧数量确定模块,用于计算所述解码帧数量和播放帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的丢帧数量。
9.根据权利要求7所述的装置,其特征在于,还包括:播放帧数量确定模块;
所述信息获取子模块,具体用于获取所述网页视频在所述视频播放时长所表征时间范围内对应的解码帧数量和丢帧数量;
所述播放帧数量确定模块,用于计算所述解码帧数量和丢帧数量之间的差值,并将计算得到的差值确定为所述视频播放时长对应的播放帧数量。
10.根据权利要求7至9任一所述的装置,其特征在于,所述播放帧信息确定模块,包括:
解码帧率确定子模块,用于基于所述解码帧数量和所述播放时长,确定所述播放进度对应的视频解码帧率;
播放帧率确定子模块,用于基于所述播放帧数量和所述播放时长,确定所述播放进度对应的视频播放帧率。
11.一种电子设备,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行如方法权利要求1中所述的视频播放帧信息的获取方法。
12.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如方法权利要求1-4中一个或多个所述的视频播放帧信息的获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810077387.9A CN110087137B (zh) | 2018-01-26 | 2018-01-26 | 视频播放帧信息的获取方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810077387.9A CN110087137B (zh) | 2018-01-26 | 2018-01-26 | 视频播放帧信息的获取方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110087137A CN110087137A (zh) | 2019-08-02 |
CN110087137B true CN110087137B (zh) | 2022-03-29 |
Family
ID=67412288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810077387.9A Active CN110087137B (zh) | 2018-01-26 | 2018-01-26 | 视频播放帧信息的获取方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110087137B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112866745B (zh) * | 2020-12-31 | 2023-04-25 | 南方电网大数据服务有限公司 | 流媒体视频数据处理方法、装置、计算机设备和存储介质 |
CN114979719B (zh) * | 2021-02-24 | 2024-05-14 | 北京金山云网络技术有限公司 | 视频播放方法、装置、介质和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103366391A (zh) * | 2013-06-26 | 2013-10-23 | 广州市动景计算机科技有限公司 | 动态图像的画面渲染方法及画面渲染装置 |
CN104166424A (zh) * | 2013-05-16 | 2014-11-26 | 株式会社日立制作所 | 数据记录装置以及时刻修正方法 |
CN106162362A (zh) * | 2015-04-20 | 2016-11-23 | 中兴通讯股份有限公司 | 一种视频播放方法及播放器 |
CN107222776A (zh) * | 2017-05-19 | 2017-09-29 | 腾讯科技(深圳)有限公司 | 视频播放控制方法、浏览器、存储设备及终端 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060064716A1 (en) * | 2000-07-24 | 2006-03-23 | Vivcom, Inc. | Techniques for navigating multiple video streams |
US20050210145A1 (en) * | 2000-07-24 | 2005-09-22 | Vivcom, Inc. | Delivering and processing multimedia bookmark |
-
2018
- 2018-01-26 CN CN201810077387.9A patent/CN110087137B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104166424A (zh) * | 2013-05-16 | 2014-11-26 | 株式会社日立制作所 | 数据记录装置以及时刻修正方法 |
CN103366391A (zh) * | 2013-06-26 | 2013-10-23 | 广州市动景计算机科技有限公司 | 动态图像的画面渲染方法及画面渲染装置 |
CN106162362A (zh) * | 2015-04-20 | 2016-11-23 | 中兴通讯股份有限公司 | 一种视频播放方法及播放器 |
CN107222776A (zh) * | 2017-05-19 | 2017-09-29 | 腾讯科技(深圳)有限公司 | 视频播放控制方法、浏览器、存储设备及终端 |
Also Published As
Publication number | Publication date |
---|---|
CN110087137A (zh) | 2019-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9786326B2 (en) | Method and device of playing multimedia and medium | |
CN106941624B (zh) | 网络视频试看的处理方法和装置 | |
CN114003326B (zh) | 消息处理方法、装置、设备及存储介质 | |
US20170064245A1 (en) | Method, device, terminal device, and storage medium for video effect processing | |
EP3796317A1 (en) | Video processing method, video playing method, devices and storage medium | |
CN107562349B (zh) | 一种执行处理的方法和装置 | |
CN106886540B (zh) | 一种数据搜索方法、装置以及用于数据搜索的装置 | |
CN105786944B (zh) | 浏览器自动翻页的处理方法和装置 | |
CN111432278A (zh) | 视频控制方法、装置、终端及存储介质 | |
CN106599191B (zh) | 用户属性分析方法及装置 | |
CN110740373B (zh) | 一种音/视频文件的缓冲方法及相关装置 | |
CN111970561B (zh) | 视频封面生成方法、系统、装置、电子设备及存储介质 | |
CN110087137B (zh) | 视频播放帧信息的获取方法、装置、设备及介质 | |
CN114640877B (zh) | 信息展示方法、装置、电子设备及存储介质 | |
CN104572875A (zh) | 推广信息投放有效性确定方法及装置 | |
CN112948704A (zh) | 用于信息推荐的模型训练方法、装置、电子设备以及介质 | |
CN108984098B (zh) | 基于社交软件的信息显示的控制方法及装置 | |
CN108289229B (zh) | 多媒体资源的互动方法及装置 | |
CN109542297B (zh) | 提供操作引导信息的方法、装置及电子设备 | |
CN112486770A (zh) | 客户端打点上报方法、装置、电子设备和存储介质 | |
CN116233554A (zh) | 视频播放方法、装置、电子设备和存储介质 | |
CN110769282A (zh) | 短视频生成方法、终端及服务器 | |
CN114443160A (zh) | 一种消息推送方法、装置、电子设备及存储介质 | |
CN111343510B (zh) | 信息处理方法、装置、电子设备及存储介质 | |
CN111061633B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant after: Loongson Zhongke Technology Co.,Ltd. Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant before: LOONGSON TECHNOLOGY Corp.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |