CN105763960B - 一种网络视频播放的方法和装置 - Google Patents

一种网络视频播放的方法和装置 Download PDF

Info

Publication number
CN105763960B
CN105763960B CN201610115025.5A CN201610115025A CN105763960B CN 105763960 B CN105763960 B CN 105763960B CN 201610115025 A CN201610115025 A CN 201610115025A CN 105763960 B CN105763960 B CN 105763960B
Authority
CN
China
Prior art keywords
video
key frame
video segment
play
play position
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610115025.5A
Other languages
English (en)
Other versions
CN105763960A (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.)
Poly Polytron Technologies Inc
Original Assignee
Poly Polytron Technologies Inc
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 Poly Polytron Technologies Inc filed Critical Poly Polytron Technologies Inc
Priority to CN201610115025.5A priority Critical patent/CN105763960B/zh
Publication of CN105763960A publication Critical patent/CN105763960A/zh
Application granted granted Critical
Publication of CN105763960B publication Critical patent/CN105763960B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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
    • H04N21/234309Processing 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 by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • 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/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • 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/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例提供了一种网络视频播放的方法和装置,其中所述方法包括:当检测到用户针对视频的触发操作时,获取所述视频的关键帧文件;基于所述关键帧文件,确定所述视频需要播放的关键帧信息;获取与所述需要播放的关键帧信息对应的视频切片数据;播放所述视频切片数据。本发明可以根据关键帧信息按需下载视频切片数据,无需下载整个视频文件,节省带宽资源,提高视频下载进度,减少视频加载时间,实现网络视频的快速访问,提升用户体验。

Description

一种网络视频播放的方法和装置
技术领域
本发明涉及视频播放技术领域,特别是涉及一种网络视频播放的方法和一种网络视频播放的装置。
背景技术
随着计算机和互联网技术的发展,带宽的提高,网络视频业务得到了不断的发展和广泛普及。人们在网页观看视频的时候,对于视频的要求也越来越高,视频的快速访问以及与在视频播放时相关的拖动要求也越来越高,这视频播放技术的改进以及提高提出了更高的要求。
目前针对网络视频资源的存储方案主要有两种,一种是一个完整的大视频的存储;另一种是已经进行视频切片的小视频存储。对于第一种方案,大视频在播放时,首先要下载视频,然后对视频进行解码分析,然后进行相关的拖动播放;对于第二种方案,对已切片的视频的播放,主要是针对于移动端(andriod***与ios***)视频的播放,视频播放仅是能顺序播放,拖动播放需要另外的流程来实现。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种网络视频播放的方法和相应的一种网络视频播放的装置。
为了解决上述问题,本发明实施例公开了一种网络视频播放的方法,所述方法包括:
当检测到用户针对视频的触发操作时,获取所述视频的关键帧文件;
基于所述关键帧文件,确定所述视频需要播放的关键帧信息;
获取与所述需要播放的关键帧信息对应的视频切片数据;
播放所述视频切片数据。
本发明实施例还公开了一种网络视频播放的装置,所述装置包括:
关键帧文件获取模块,用于在检测到用户针对视频的触发操作时,获取所述视频的关键帧文件;
关键帧信息确定模块,用于基于所述关键帧文件,确定所述视频需要播放的关键帧信息;
视频切片数据获取模块,用于获取与所述需要播放的关键帧信息对应的视频切片数据;
视频播放模块,用于播放所述视频切片数据。
本发明实施例包括以下优点:
在本发明实施例中,能够根据视频的关键帧文件确定视频需要播放的关键帧信息,并根据该需要播放的关键帧信息获取对应的视频切片数据,以及播放该视频切片数据,使得客户端能够根据关键帧信息按需下载视频切片数据,无需下载整个视频文件,节省带宽资源,提高视频下载进度,减少视频加载时间,实现网络视频的快速访问,提升用户体验。
并且,本发明实施例的视频切片数据能够在移动端及PC端播放,丰富了视频切片数据的播放载体,并方便客户端与第三方服务平台的对接以及视频加速。
附图说明
图1是本发明的一种网络视频播放的方法实施例一的步骤流程图;
图2是本发明的一种网络视频播放的方法实施例二的步骤流程图;
图3是本发明的一种网络视频播放的装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例的核心构思之一在于,用户第一次播放网络视频时,客户端先请求关键帧文件,客户端解析视频的关键帧文件,并根据用户的需要从关键帧文件中确定待播放的关键帧信息,以及,从第三方服务平台和/或服务器中请求与该待播放的关键帧信息对应的视频切片数据,将该视频切片数据播放给用户。
参照图1,示出了本发明的一种网络视频播放的方法实施例一的步骤流程图,具体可以包括如下步骤:
步骤101,当检测到用户针对视频的触发操作时,获取所述视频的关键帧文件;
步骤102,基于所述关键帧文件,确定所述视频需要播放的关键帧信息;
步骤103,获取与所述需要播放的关键帧信息对应的视频切片数据;
步骤104,播放所述视频切片数据。
在本发明实施例中,能够根据视频的关键帧文件确定视频需要播放的关键帧信息,并根据该需要播放的关键帧信息获取对应的视频切片数据,以及播放该视频切片数据,使得客户端能够根据关键帧信息按需下载视频切片数据,无需下载整个视频文件,从而节省带宽资源,提高视频下载进度,减少视频加载时间,实现网络视频的快速访问,提升用户体验。
参照图2,示出了本发明的一种网络视频播放的方法实施例二的步骤流程图,具体可以包括如下步骤:
步骤201,当检测到用户针对视频的触发操作时,生成视频播放请求,并将所述视频播放请求发送至第三方服务平台和/或服务器;
在具体实现中,用户对视频的触发操作可以为用户对视频播放的客户端中展现的视频标识的点击操作。其中,视频播放客户端可以包括视频播放应用程序的客户端,如视频APP客户端,浏览器客户端等。
当客户端检测到用户对视频的触发操作时,可以根据该触发操作确定该被触发的视频的视频标识,基于该视频标识,客户端可以生成视频播放请求,该视频播放请求可以包括视频标识。
同时,客户端还可以判断该视频播放应用程序是否加入第三方服务平台,作为一种示例,该第三方服务平台可以包括CDN(Content Delivery Network,内容分发网络)服务平台。
若该视频播放应用程序加入CDN服务平台,则可以通过DNS(Domain Name System,域名***)重定向技术确定最接近用户的最佳CDN节点,同时将视频播放请求指向该节点。当视频播放请求到达指定节点时,CDN的服务器可以根据该视频播放请求中携带的视频标识判断CDN本地是否存储有与该视频标识对应的关键帧文件,若存在,则直接将该关键帧文件返回客户端;若CDN本地没有存储有与该视频标识对应的关键帧文件,则CDN的服务器将该视频播放请求发送至服务器。
若该视频播放应用程序没有加入CDN服务平台,则客户端直接将该视频播放请求发送至服务器。
在服务器侧,当接收到客户端或CDN的服务器发送的视频播放请求以后,可以根据视频标识查找该视频标识对应的存储目录,并从该存储目录中获取该视频的关键帧文件,将该关键帧文件返回客户端或CDN的服务器中。
CDN的服务器接收到关键帧文件以后,在CDN本地存储该关键帧文件,则下次接收到针对同一视频的视频播放请求以后,直接从本地获得关键帧文件返回客户端,从而可以提高客户端获得关键帧文件的速度。
应用于本发明实施例,关键帧文件中可以包括视频中的所有关键帧信息(Keyframe),其中,关键帧是指角色或者物体运动或变化中的关键动作所处的那一帧,作为一种示例,关键帧信息可以包括该关键帧信息对应的关键帧的播放时间点,以及当前播放时间点对应的视频数据的存储位置。
在具体实现中,服务器可以通过开源的程序qt-faststart获取视频的关键帧信息。
该关键帧文件以及对应的视频可以存储在服务器的共享存储的同一级目录下。
具体而言,视频在服务器中以视频文件的方式进行存储。用户可以通过客户端向服务器上传视频文件,服务器接收到视频文件以后,可以将视频文件存储在服务器的共享存储上。在共享存储上,服务器还可以对视频文件按照预先设定的视频转码参数,调用视频编解码库的接口函数实现视频文件的转码处理。
作为本发明实施例的一种优选示例,预先设定的视频转码参数可以包括码率、分辨率等,该视频转码参数可以由开发人员预先设定,也可以由用户自定义设定,本发明实施例对此无需加以限制。
在本发明实施例中,服务器在进行视频文件的转码处理以后,还可以获取该视频文件的关键帧信息,并将所有关键帧信息保存在关键帧文件中。
得到关键帧文件以后,还可以对该关键帧文件进行格式转换,以将该关键帧文件转换成前端客户端可以解析的格式。
在实际中,关键帧文件可以为一个xml文件(例如,可以表示为meta.xml),作为本发明实施例的一种优选示例,完成格式转换后的关键帧文件可以表示如下:
其中,time表示转码后视频关键帧的播放时间点,bytes表示当前播放时间点对应的视频数据的存储位置。
在具体实现中,关键帧文件除了包含关键帧信息以外,还可以包括该视频文件的播放总时长、以及,预设的多个时间进度与所述时间进度对应的所需播放的关键帧信息的关联关系。
进一步的,每个时间进度包括从预设的起始的播放时间点到终止的播放时间点之间的时间,例如,时间进度可以为0秒-1.5秒,1.5秒-1.73秒,1.73秒-3.27秒,等等。
相应的,与时间进度对应的所需播放的关键帧信息包括起始播放位置以及终止播放位置,其中,起始播放位置为起始的播放时间点对应的视频数据的存储位置,终止播放位置为终止的播放时间点对应的视频数据的存储位置例如,预设时间进度为0秒到1.5秒,其对应的起始播放位置是675,终止播放位置是1531;预设时间进度为1.5秒到1.73秒,其对应的起始播放位置是1531,终止播放位置是197216;预设时间进度为1.73秒到3.27秒,其对应的起始播放位置是197216,终止播放位置是274405,等等。
步骤202,接收所述第三方服务平台和/或所述服务器返回的与所述视频标识对应的关键帧文件;
第三方服务平台和/或所述服务器获得与视频标识对应的关键帧文件以后,可以将该关键帧文件返回客户端,则客户端可以获得该关键帧文件。
步骤203,基于所述关键帧文件,确定所述视频需要播放的关键帧信息;
视频的关键帧文件中存储有多个关键帧信息,本发明实施例可以从该关键帧文件中提取视频需要播放的关键帧信息。
在本发明实施例的一种优选实施例中,步骤203可以包括如下子步骤:
子步骤S11,将所述播放总时长以播放进度条的方式展现;
客户端获知视频的播放总时长以后,可以根据该播放总时长生成播放进度条,具体的生成进度条的方式可以参考通用的进度条生成方式,本发明实施例对此不作限制。
生成播放进度条以后,可以将该播放进度条在客户端中展现。
用户可以在该播放进度条上执行左右拖动等拖动操作,以按需播放视频。
子步骤S12,当检测到用户对所述播放进度条的拖动操作时,基于所述关键帧文件,获取所述拖动操作停止时在进度条中所处的时间进度;
若用户在进度条上执行拖动操作,当该拖动操作停止时,客户端可以获得该拖动操作停止时所处的进度条时间点,然后在关键帧文件的所有播放时间点中匹配该拖动操作停止时所处的进度条时间点,获得对应的匹配时间点。随后,在所有预设的时间进度中匹配该匹配时间点,将在所述匹配时间点之后的下一时间进度作为所述拖动操作停止时在进度条中所处的时间进度。例如,匹配时间点为1.73秒,则该匹配时间点之后的下一时间进度为1.73秒到3.27秒,即拖动操作停止时在进度条中所处的时间进度为1.73秒到3.27秒。
进一步的,上述在关键帧文件的所有播放时间点中匹配该拖动操作停止时所处的进度条时间点,获得对应的匹配时间点,具体可以为:若所有播放时间点中存在与该拖动操作停止时所处的进度条时间点相同的时间点,则将该相同的时间点作为匹配时间点;若所有播放时间点中不存在与该拖动操作停止时所处的进度条时间点相同的时间点,则将在该拖动操作停止时所处的进度条时间点之后的下一播放时间点作为匹配时间点。例如,若拖动操作停止时所处的进度条时间点为1.70秒,而播放时间点中并不存在1.70秒,只存在1.50秒、1.73秒,则可以将1.73秒作为匹配时间点。
子步骤S13,获取与所述所处的时间进度所需播放的关键帧信息,作为所述视频需要播放的关键帧信息。
当确定拖动操作停止时在进度条中所处的时间进度以后,可以根据该关键帧文件中预设的多个时间进度与所述时间进度对应的所需播放的关键帧信息的关联关系,获取与该拖动操作停止时在进度条中所处的时间进度对应的所需播放的关键帧信息,作为视频需要播放的关键帧信息。
需要说明的是,若在本发明实施例中没有检测到用户的拖动操作,则可以根据进度条进度,按照关键帧文件中预设的多个时间进度与所述时间进度对应的所需播放的关键帧信息的关联关系,将当前时间进度的下一时间进度对应的所需播放的关键帧信息作为视频需要播放的关键帧信息。
步骤204,获取与所述需要播放的关键帧信息对应的视频切片数据;
应用于本发明实施例,确定视频需要播放关键帧信息以后,可以只获取与该需要播放的关键帧信息对应的视频切片数据进行播放,而无需下载整个视频文件。
在本发明实施例的一种优选实施例中,若视频播放应用程序加入第三方服务平台,步骤204可以包括如下子步骤:
子步骤S21,基于所述需要播放的关键帧信息对应的起始播放位置、所述需要播放的关键帧信息对应的终止播放位置以及所述视频标识生成视频切片标识;
当确定视频需要播放的关键帧信息以后,可以进一步从该需要播放的关键帧信息中提取对应的起始播放位置以及终止播放位置,获取从起始播放位置到终止播放位置之间的视频切片数据。例如,若用户拖动进度条到1.73秒停止,则可以获得该拖动停止的时间进度为1.73秒到3.27秒,则获得对应的起始播放位置是197216,终止播放位置是274405。
得到需要播放的视频的起始播放位置以及终止播放位置以后,可以根据该起始播放位置以及终止播放位置,以及该视频的视频标识,生成视频切片标识。例如,根据该起始播放位置以及终止播放位置,以及该视频的视频标识,通过MD5算法得到视频切片标识。
子步骤S22,基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至第三方服务平台;
所述第三方服务平台用于在本地查找是否存在所述视频切片标识;若存在,则返回所述视频切片标识对应的视频切片数据;若不存在,则将所述视频请求信息发送至服务器,所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据至第三方服务平台,由所述第三方服务平台在本地存储所述视频切片数据,并将所述视频切片数据返回客户端。
具体而言,客户端生成视频切片标识以后,可以基于该视频切片标识生成视频请求信息,该视频请求信息包括视频切片标识。
若视频播放应用程序加入CDN服务平台,则客户端可以通过DNS重定向技术确定最接近用户的最佳CDN节点,同时将视频请求信息指向该节点。当视频请求信息到达指定节点时,CDN的服务器可以根据该视频请求信息中携带的视频切片标识判断CDN本地是否存储有与该视频切片标识对应的视频切片数据,若存在,则直接将该视频切片数据返回客户端;若CDN本地没有存储有与该视频切片标识对应的视频切片数据,则CDN的服务器将该视频请求信息发送至服务器。
在服务器侧,当获得视频请求信息以后,可以获得对应的视频切片标识,并解析该视频切片标识,获得对应的视频标识、该视频标识对应的起始播放位置以及终止播放位置。随后,服务器可以依据该视频标识在共享内存中定位对应的存储目录,并从该存储目录中存储的视频文件中截取从起始播放位置到终止播放位置之间的视频切片数据。
服务器得到视频切片数据以后,将该视频切片数据返回第三方服务器平台,第三方服务平台接收到视频切片数据以后,在本地存储该视频切片数据并将该视频切片数据返回客户端,这样,第三方服务平台下一次接收到针对同一视频切片标识的视频请求信息时,可以直接从本地获得该视频切片数据返回客户端。采用本发明实施例的获取视频切片数据的方法,能够方便客户端与第三方服务平台的对接,提高视频播放速率。
子步骤S23,接收所述第三方服务平台返回的与所述视频请求信息对应的视频切片数据。
在本发明实施例的另一种优选实施例中,若视频播放应用程序没有加入第三方服务平台,步骤204可以包括如下子步骤:
子步骤S31,基于所述需要播放的关键帧信息对应的起始播放位置、所述需要播放的关键帧信息对应的终止播放位置以及所述视频标识生成视频切片标识;
当确定视频需要播放的关键帧信息以后,可以进一步从该需要播放的关键帧信息中提取对应的起始播放位置以及终止播放位置,获取从该起始播放位置到终止播放位置之间的视频切片数据。
得到需要播放的视频的起始播放位置以及终止播放位置以后,可以根据该起始播放位置以及终止播放位置,以及该视频的视频标识,生成视频切片标识。
子步骤S32,基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至服务器;
所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据。
具体而言,客户端生成视频切片标识以后,可以基于该视频切片标识生成视频请求信息,该视频请求信息包括视频切片标识。
若视频播放应用程序没有加入CDN服务平台,则客户端可以将该视频请求信息发送至服务器。在服务器侧,当获得视频请求信息以后,可以获得视频切片标识,并解析该视频切片标识,获得对应的视频标识、该视频标识对应的起始播放位置以及终止播放位置。随后,服务器可以依据该视频标识在共享内存中定位对应的存储目录,并从该存储目录中存储的视频文件中截取从起始播放位置到终止播放位置之间的视频切片数据。
服务器得到视频切片数据以后,将该视频切片数据返回客户端。
子步骤S33,接收所述服务器返回的与所述视频请求信息对应的视频切片数据。
步骤205,播放所述视频切片数据。
客户端接收到服务器或第三方服务平台返回的视频切片数据以后,按序播放该视频切片数据。
在本发明实施例中,当检测到用户针对视频的触发操作时,客户端可以生成视频播放请求,并依据该视频播放请求从第三方服务平台和/或服务器中获取该视频的关键帧文件,客户端进一步根据该关键帧文件确定视频需要播放的关键帧信息,并根据该需要播放的关键帧信息从第三方服务平台和/或服务器中获取对应的视频切片数据,以及播放该视频切片数据,使得客户端能够根据关键帧信息按需下载视频切片数据,无需下载整个视频文件,节省带宽资源,提高视频下载进度,减少视频加载时间,实现网络视频的快速访问,提升用户体验。
并且,本发明实施例的视频切片数据能够在移动端及PC端播放,丰富了视频切片数据的播放载体,并方便与第三方服务平台的对接以及视频加速。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了本发明的一种网络视频播放的装置实施例的结构框图,具体可以包括如下模块:
关键帧文件获取模块301,用于在检测到用户针对视频的触发操作时,获取所述视频的关键帧文件;
关键帧信息确定模块302,用于基于所述关键帧文件,确定所述视频需要播放的关键帧信息;
视频切片数据获取模块303,用于获取与所述需要播放的关键帧信息对应的视频切片数据;
视频播放模块304,用于播放所述视频切片数据。
在本发明实施例的一种优选实施例中,所述关键帧文件获取模块301可以包括如下子模块:
视频播放请求生成子模块,用于当检测到用户针对视频的触发操作时,生成视频播放请求,并将所述视频播放请求发送至第三方服务平台和/或服务器,所述视频播放请求包括所述视频的视频标识;
关键帧文件接收子模块,用于接收所述第三方服务平台和/或所述服务器返回的与所述视频标识对应的关键帧文件。
在本发明实施例的一种优选实施例中,所述关键帧文件与所述视频存储在服务器的同一存储目录下。
在本发明实施例的一种优选实施例中,所述关键帧文件包括所述视频的多个关键帧信息,所述关键帧信息包括所述关键帧信息对应的关键帧的播放时间点以及所述播放时间点对应的视频数据的存储位置。
在本发明实施例的一种优选实施例中,所述关键帧文件还包括所述视频的播放总时长;以及,预设的多个时间进度与所述时间进度对应的所需播放的关键帧信息的关联关系,其中,所述与所述时间进度所需播放的关键帧信息包括起始播放位置以及终止播放位置。
所述关键帧信息确定模块302可以包括如下子模块:
进度条展现子模块,用于将所述播放总时长以播放进度条的方式展现;
时间进度获取子模块,用于当检测到用户对所述播放进度条的拖动操作时,基于所述关键帧文件,获取所述拖动操作停止时在进度条中所处的时间进度;
关键帧确定子模块,用于获取与所述所处的时间进度所需播放的关键帧信息,作为所述视频需要播放的关键帧信息。
在本发明实施例的一种优选实施例中,所述视频切片数据获取模块303可以包括如下子模块:
视频切片标识确定子模块,用于基于所述需要播放的关键帧信息对应的起始播放位置、所述需要播放的关键帧信息对应的终止播放位置以及所述视频标识生成视频切片标识;
视频请求信息生成子模块,用于基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至第三方服务平台,所述第三方服务平台用于在本地查找是否存在所述视频切片标识;若存在,则返回所述视频切片标识对应的视频切片数据;若不存在,则将所述视频请求信息发送至服务器,所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据至第三方服务平台,由所述第三方服务平台在本地存储所述视频切片数据,并将所述视频切片数据返回客户端;
视频切片数据接收子模块,用于接收所述第三方服务平台返回的与所述视频请求信息对应的视频切片数据。
在本发明实施例的另一种优选实施例中,所述视频切片数据获取模块303可以包括如下子模块:
视频切片标识确定子模块,用于基于所述需要播放的关键帧信息对应的起始播放位置、所述需要播放的关键帧信息对应的终止播放位置以及所述视频标识生成视频切片标识;
视频请求信息生成子模块,用于基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至服务器,所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据;
视频切片数据接收子模块,用于接收所述服务器返回的与所述视频请求信息对应的视频切片数据。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种网络视频播放的方法和一种网络视频播放的装置,进行了详细介绍,本文中服务了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及服务范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (14)

1.一种网络视频播放的方法,其特征在于,所述方法包括:
当检测到用户针对视频的触发操作时,获取所述视频的关键帧文件,其中,所述视频包括视频标识,所述关键帧文件包括预设的多个时间进度与所述时间进度对应的所需播放的关键帧信息的关联关系,其中,所述与所述时间进度对应的所需播放的关键帧信息包括起始播放位置以及终止播放位置;
基于所述关键帧文件,确定所述视频需要播放的关键帧信息;
获取与所述需要播放的关键帧信息对应的视频切片数据;
播放所述视频切片数据;
所述获取与所述需要播放的关键帧信息对应的视频切片数据的步骤包括:
基于所述需要播放的关键帧信息对应的起始播放位置、所述需要播放的关键帧信息对应的终止播放位置以及所述视频标识生成视频切片标识;
基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至第三方服务平台和/或服务器;
接收所述第三方服务平台和/或服务器返回的与所述视频请求信息对应的视频切片数据。
2.根据权利要求1所述的方法,其特征在于,所述当检测到用户针对视频的触发操作时,获取所述视频的关键帧文件的步骤包括:
当检测到用户针对视频的触发操作时,生成视频播放请求,并将所述视频播放请求发送至第三方服务平台和/或服务器,所述视频播放请求包括所述视频的视频标识;
接收所述第三方服务平台和/或所述服务器返回的与所述视频标识对应的关键帧文件。
3.根据权利要求1所述的方法,其特征在于,所述关键帧文件与所述视频存储在服务器的同一存储目录下。
4.根据权利要求1或2或3所述的方法,其特征在于,所述关键帧文件包括所述视频的多个关键帧信息。
5.根据权利要求4所述的方法,其特征在于,所述关键帧文件还包括所述视频的播放总时长;
所述基于所述关键帧文件,确定所述视频需要播放的关键帧信息的步骤包括:
将所述播放总时长以播放进度条的方式展现;
当检测到用户对所述播放进度条的拖动操作时,基于所述关键帧文件,获取所述拖动操作停止时在进度条中所处的时间进度;
获取与所述所处的时间进度所需播放的关键帧信息,作为所述视频需要播放的关键帧信息。
6.根据权利要求5所述的方法,所述获取与所述需要播放的关键帧信息对应的视频切片数据的步骤,还包括:
基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至第三方服务平台,所述第三方服务平台用于在本地查找是否存在所述视频切片标识;若存在,则返回所述视频切片标识对应的视频切片数据;若不存在,则将所述视频请求信息发送至服务器,所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据至第三方服务平台,由所述第三方服务平台在本地存储所述视频切片数据,并将所述视频切片数据返回客户端。
7.根据权利要求5所述的方法,其特征在于,所述获取与所述需要播放的关键帧信息对应的视频切片数据的步骤,还包括:
基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至服务器,所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据。
8.一种网络视频播放的装置,其特征在于,所述装置包括:
关键帧文件获取模块,用于在检测到用户针对视频的触发操作时,获取所述视频的关键帧文件,其中,所述视频包括视频标识,所述关键帧文件包括预设的多个时间进度与所述时间进度对应的所需播放的关键帧信息的关联关系,其中,所述与所述时间进度对应的所需播放的关键帧信息包括起始播放位置以及终止播放位置;
关键帧信息确定模块,用于基于所述关键帧文件,确定所述视频需要播放的关键帧信息;
视频切片数据获取模块,用于获取与所述需要播放的关键帧信息对应的视频切片数据;
视频播放模块,用于播放所述视频切片数据;
其中,所述视频切片数据获取模块包括:
视频切片标识确定子模块,用于基于所述需要播放的关键帧信息对应的起始播放位置、所述需要播放的关键帧信息对应的终止播放位置以及所述视频标识生成视频切片标识;
视频请求信息生成子模块,用于基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至第三方服务平台和/或服务器;
视频切片数据接收子模块,用于接收所述第三方服务平台/或服务器返回的与所述视频请求信息对应的视频切片数据。
9.根据权利要求8所述的装置,其特征在于,所述关键帧文件获取模块包括:
视频播放请求生成子模块,用于当检测到用户针对视频的触发操作时,生成视频播放请求,并将所述视频播放请求发送至第三方服务平台和/或服务器,所述视频播放请求包括所述视频的视频标识;
关键帧文件接收子模块,用于接收所述第三方服务平台和/或所述服务器返回的与所述视频标识对应的关键帧文件。
10.根据权利要求8所述的装置,其特征在于,所述关键帧文件与所述视频存储在服务器的同一存储目录下。
11.根据权利要求8或9或10所述的装置,其特征在于,所述关键帧文件包括所述视频的多个关键帧信息。
12.根据权利要求11所述的装置,其特征在于,所述关键帧文件还包括所述视频的播放总时长;
所述关键帧信息确定模块包括:
进度条展现子模块,用于将所述播放总时长以播放进度条的方式展现;
时间进度获取子模块,用于当检测到用户对所述播放进度条的拖动操作时,基于所述关键帧文件,获取所述拖动操作停止时在进度条中所处的时间进度;
关键帧确定子模块,用于获取与所述所处的时间进度所需播放的关键帧信息,作为所述视频需要播放的关键帧信息。
13.根据权利要求12所述的装置,其特征在于,所述视频请求信息生成子模块,还用于基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至第三方服务平台,所述第三方服务平台用于在本地查找是否存在所述视频切片标识;若存在,则返回所述视频切片标识对应的视频切片数据;若不存在,则将所述视频请求信息发送至服务器,所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据至第三方服务平台,由所述第三方服务平台在本地存储所述视频切片数据,并将所述视频切片数据返回客户端。
14.根据权利要求12所述的装置,其特征在于,所述视频请求信息生成子模块,还用于基于所述视频切片标识生成视频请求信息,并将所述视频请求信息发送至服务器,所述服务器用于解析所述视频切片标识,获得对应的起始播放位置以及终止播放位置,并从所述视频中提取从所述起始播放位置到所述终止播放位置之间的视频数据作为视频切片数据,以及,返回所述视频切片数据。
CN201610115025.5A 2016-03-01 2016-03-01 一种网络视频播放的方法和装置 Active CN105763960B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610115025.5A CN105763960B (zh) 2016-03-01 2016-03-01 一种网络视频播放的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610115025.5A CN105763960B (zh) 2016-03-01 2016-03-01 一种网络视频播放的方法和装置

Publications (2)

Publication Number Publication Date
CN105763960A CN105763960A (zh) 2016-07-13
CN105763960B true CN105763960B (zh) 2019-01-01

Family

ID=56332169

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610115025.5A Active CN105763960B (zh) 2016-03-01 2016-03-01 一种网络视频播放的方法和装置

Country Status (1)

Country Link
CN (1) CN105763960B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106803999A (zh) * 2017-02-14 2017-06-06 北京时间股份有限公司 一种视频缓存处理方法、装置及服务器
CN109085995B (zh) * 2017-06-14 2022-02-01 中国电信股份有限公司 数据动态分片的存储方法、装置和***
CN109547864B (zh) * 2017-09-21 2021-05-07 腾讯科技(深圳)有限公司 媒体数据处理方法和装置
CN109714299B (zh) * 2017-10-26 2022-01-11 创盛视联数码科技(北京)有限公司 加密视频播放的方法
CN111147888B (zh) * 2018-11-06 2022-06-03 中兴通讯股份有限公司 流媒体视频数据处理方法、装置、计算机设备和存储介质
CN109819306B (zh) * 2018-12-29 2022-11-04 花瓣云科技有限公司 一种媒体文件裁剪的方法、电子设备和服务器
CN110113655B (zh) * 2019-05-05 2021-09-21 北京奇艺世纪科技有限公司 一种视频播放的方法、装置及用户终端
CN110446118B (zh) * 2019-07-01 2021-08-20 创新先进技术有限公司 视频资源预处理方法及装置、视频资源下载方法及装置
CN110493324A (zh) * 2019-07-29 2019-11-22 咪咕视讯科技有限公司 下载方法、下载器及计算机可读存储介质
CN113473247B (zh) * 2020-03-30 2022-11-04 北京金山云网络技术有限公司 一种视频播放请求处理方法、装置、***和电子设备
CN111526387B (zh) * 2020-03-30 2022-09-23 北京达佳互联信息技术有限公司 一种视频处理方法、装置、电子设备及存储介质
CN113115120B (zh) * 2021-05-27 2022-12-23 武汉斗鱼鱼乐网络科技有限公司 视频切片方法、装置、电子设备及存储介质
CN115314755A (zh) * 2022-07-12 2022-11-08 天翼云科技有限公司 一种视频播放方法、装置、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102137302A (zh) * 2010-12-09 2011-07-27 华为技术有限公司 流媒体视频内容的播放方法和装置
CN103024561A (zh) * 2011-09-28 2013-04-03 深圳市快播科技有限公司 一种拖拽进度条的显示方法及装置
CN105245940A (zh) * 2015-10-08 2016-01-13 北京时医康科技发展有限公司 一种窄带宽在线播放高清视频的方法及播放器
CN105282627A (zh) * 2014-07-22 2016-01-27 中兴通讯股份有限公司 一种获取直播视频切片的方法及服务器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102137302A (zh) * 2010-12-09 2011-07-27 华为技术有限公司 流媒体视频内容的播放方法和装置
CN103024561A (zh) * 2011-09-28 2013-04-03 深圳市快播科技有限公司 一种拖拽进度条的显示方法及装置
CN105282627A (zh) * 2014-07-22 2016-01-27 中兴通讯股份有限公司 一种获取直播视频切片的方法及服务器
CN105245940A (zh) * 2015-10-08 2016-01-13 北京时医康科技发展有限公司 一种窄带宽在线播放高清视频的方法及播放器

Also Published As

Publication number Publication date
CN105763960A (zh) 2016-07-13

Similar Documents

Publication Publication Date Title
CN105763960B (zh) 一种网络视频播放的方法和装置
US10397636B1 (en) Methods and systems for synchronizing data streams across multiple client devices
US20210067578A1 (en) Streaming media segments
KR100993955B1 (ko) 다중매체 프리젠테이션
US8468262B2 (en) Method and apparatus for updating http content descriptions
WO2015055081A1 (en) Method, apparatus and mobile terminal for browser based video playback
US20160134900A1 (en) Streaming media processing method, apparatus, and system
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
US9356985B2 (en) Streaming video to cellular phones
US11025352B2 (en) Reception device, transmission device, and data processing method
US20170317773A1 (en) Reception device, transmission device, and data processing method
CN104333813A (zh) 一种视频播放方法、装置及***
EP2903260A1 (en) Multi-speed playing method, device and system
CN112243158B (zh) 媒体文件处理方法、装置、计算机可读介质及电子设备
CN110113298A (zh) 数据传输方法、装置、信令服务器和计算机可读介质
CN104486347A (zh) 一种推送多媒体的方法及装置
CN104980807A (zh) 一种用于多媒体互动的方法及终端
JP7460684B2 (ja) マニフェストなしストリーミングメディアコンテンツを配信するための方法、システム、および媒体
EP2959661A1 (en) Method, apparatus and system for processing user generated content
KR20120064950A (ko) 분할된 다중 멀티미디어 파일에 대한 프로그래시브 다운로드 스트리밍 서비스를 제공하는 방법 및 장치
CN113453062B (zh) 视频元数据的获取、处理方法及装置、***、电子设备
CN116112717A (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
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20170213

Address after: 266000 Shandong Province, Qingdao city Laoshan District Songling Road No. 399

Applicant after: Poly Polytron Technologies Inc

Address before: 266100 Laoshan, Qingdao province Hongkong District No. East Road, room 248, room 131

Applicant before: Qingdao Hisense Media Networks Co., Ltd.

GR01 Patent grant
GR01 Patent grant