CN106817613B - 实现音视频内容播放的方法和装置 - Google Patents

实现音视频内容播放的方法和装置 Download PDF

Info

Publication number
CN106817613B
CN106817613B CN201510863962.4A CN201510863962A CN106817613B CN 106817613 B CN106817613 B CN 106817613B CN 201510863962 A CN201510863962 A CN 201510863962A CN 106817613 B CN106817613 B CN 106817613B
Authority
CN
China
Prior art keywords
audio
player
video
data stream
media data
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
CN201510863962.4A
Other languages
English (en)
Other versions
CN106817613A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201510863962.4A priority Critical patent/CN106817613B/zh
Priority to PCT/CN2016/105393 priority patent/WO2017092561A1/zh
Publication of CN106817613A publication Critical patent/CN106817613A/zh
Application granted granted Critical
Publication of CN106817613B publication Critical patent/CN106817613B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4782Web browsing, e.g. WebTV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/10Adaptations for transmission by electrical cable

Abstract

本发明提供了一种实现音视频内容播放的方法,包括:加载P2P内核和播放器于运行的图形用户界面应用中;通过加载的所述P2P内核拉取媒体数据流;分流拉取得到的所述媒体数据流,以得到音频数据和视频数据;通过所述音频数据和视频数据在加载的所述播放器中进行音视频内容的播放。此外,还提供了一种与该方法匹配的实现音视频内容播放的装置。上述实现音视频内容播放的方法和装置能够保障媒体数据流传输速度,不再需要关注终端设备中浏览器和播放器的版本差异,提高了各类型终端设备的通用性。

Description

实现音视频内容播放的方法和装置
技术领域
本发明涉及互联网应用技术领域,特别涉及一种实现音视频内容流播放的方法和装置。
背景技术
随着互联网应用的发展,用户随时随地使用终端设备从互联网络获取得到媒体数据流,以在终端设备中通过媒体数据流来进行音视频内容的播放,进而满足其娱乐等需求。
终端设备中的实现过程大都是通过浏览器执行的。具体的,通过终端设备中浏览器的运行而跳转进入一定的网页页面,该网页页面中嵌入了Adobe Flash Player,在AdobeFlash Player的作用下,得到媒体数据流并通过媒体数据进行音视频内容的播放,从而在Adobe Flash Player所提供的播放界面中呈现视频内容,并输出相应的音频内容。
在Adobe Flash Player所实现的媒体数据流传输和播放架构下,往往存在着多个网络连接,以提供有效的速度保障,但是,在实际的运行过程中终端设备的浏览器和播放器之间的版本差异将会造成媒体数据流无法得到顺畅的接收和播放。
发明内容
基于此,有必要提供一种实现音视频内容播放的方法,所述方法能够保障媒体数据流传输速度,不再需要关注终端设备中浏览器和播放器的版本差异,提高了各类型终端设备的通用性。
此外,还有必要提供一种实现音视频内容播放的装置,所述装置能够保障媒体数据流传输速度,不再需要关注终端设备中浏览器和播放器的版本差异,提高了各类型终端设备的通用性。
为解决上述技术问题,将采用如下技术方案:
一种实现音视频内容播放的方法,包括:
加载P2P内核和播放器于运行的图形用户界面应用中;
通过加载的所述P2P内核拉取媒体数据流;
分流拉取得到的所述媒体数据流,以得到音频数据和视频数据;
通过所述音频数据和视频数据在加载的所述播放器中进行音视频内容的播放。
一种实现音视频内容播放的装置,所述装置运行于终端侧,所述装置包括:
加载模块,用于加载P2P内核和播放器于运行的图形用户界面应用中;
拉取模块,用于通过加载的所述P2P内核拉取媒体数据流;
分流模块,用于分流拉取得到的所述媒体数据流,以得到音频数据和视频数据;
播放模块,用于通过所述音频数据和视频数据在加载的所述播放器中进行音视频内容的播放。
由上述技术方案可知,如需为用户提供互联网络中各种音视频内容,则在运行的图形用户界面应用中加载P2P内核和播放器,通过加载的P2P内核拉取媒体数据流,分流该媒体数据流,以得到音频数据和视频数据,通过分流所得到的音频数据和视频数据即可进行音视频内容的播放,由于媒体数据流在互联网络中获取是通过P2P内核实现的,不再需要关注终端设备中浏览器和播放器的版本差异,提高了各类型终端设备的通用性。
附图说明
图1是本发明实施例提供的一种终端设备的结构示意图;
图2是一个实施例中实现音视频内容播放的方法流程图;
图3是图2中加载P2P内核和播放器于运行的图形用户界面应用中的方法流程图;
图4是图2中分流拉取得到的媒体数据流,以得到音频数据和视频数据的方法流程图;
图5是图2中通过音频数据和视频数据在加载的播放器中进行音视频内容的播放的方法流程图;
图6是一个实施例中图形用户界面应用的程序架构示意图;
图7是一个实施例中实现音视频内容播放的装置示意图;
图8是图7中加载模块的结构示意图;
图9是图7中分流模块的结构示意图;
图10是图7中播放模块的结构示意图。
具体实施方式
体现本发明特征与优点的典型实施方式将在以下的说明中详细叙述。应理解的是本发明能够在不同的实施方式上具有各种的变化,其皆不脱离本发明的范围,且其中的说明及图示在本质上是当作说明之用,而非用以限制本发明。
如前所述的,互联网络中存在着海量的终端设备,任一终端设备都可通过浏览器向互联网络发起媒体数据流的获取请求,以获取得到持续的媒体数据流,并在浏览器所加载的播放器,即Adobe Flash Player中实现音视频内容的播放。例如,某一节目或者连续剧等电视内容的直播等。
Adobe Flash Player是运行在浏览器的网页中的,由于性能原因,其在获取媒体数据流的过程中存在着过多的网络开销,虽然易于推广,但是对于各种直播的实现,特别是各种大型赛事直播的实现而言,仍然会由于其网络开销过多且占用的带宽成本过高而无法顺畅进行,卡顿等情况时有发生。
具体的,现在流行的通用架构为H.264+Adobe Flash Player的组合,其可嵌入网页页面中,易于传播,但是随着新技术H.265编码的出现,H.265编码的视频压缩能力比较H.264编码强,而Adobe Flash Player不支持解码,因此,现行的媒体数据流传输播放中并无法应用H.265编码进行视频压缩。
因此,为确保直播等音视频播放功能的顺畅进行且降低网络带宽成本,特提出了一种实现音视频内容播放的方法。该方法将由计算机程序实现,与之相对应的,所构建的实现音视频内容播放的装置则被存储在带有屏幕的终端设备中,以在该终端设备中运行,进而实现音视频内容的播放。
图1示出了本发明实施例提供的一种终端设备的结构。该终端设备100中是一个适配本发明的示例,不能认为是提供了对本发明的使用范围的任何限制。该终端设备100也不能解释为需要依赖于或具有图示的示例性的终端设备100中的一个或者多个部件的组合。
如图1所示,终端设备100包括处理器100、存储器120和系统总线130。包括存储器120和处理器110在内的各种组件将连接到系统总线130上。处理器110是一个用于通过计算机系统中基本的算术和逻辑运算来执行计算机程序指令的硬件。存储器120是一个用于临时或永久性存储计算机程序或数据的物理设备。
其中,存储器120中存储了相应的程序指令,处理器110将执行存储器120中存储的程序指令,以运行相应的图形用户界面应用,在图形用户界面应用中通过P2P内核和播放器的加载来从互联网络中得到媒体数据流,从而向用户呈现相应的音视频内容。
终端设备100还包括各种输入接口170、输入装置140,以实现各种操作的输入。其中,该输入装置140可以是触摸屏幕、按键、键盘和鼠标等至少一种。
终端设备100还包括存储设备180,存储设备180可以从多种计算机可读存储介质中选择,计算机可读介质是指可以进行访问的任何可利用的介质,包括移动的和固定的两种介质。例如,计算机可读介质,包括但不限于闪速存储器(微型SD卡)、CD-ROM、数字通用光盘(DVD)或其它光盘、磁带盒、磁带存储或其它存储设备、或者可用于存储所需信息并可访问的任何其它介质。
此外,通过硬件电路或者硬件电路结合软件指令也能同样实现本发明,因此,实现本发明并不限于任何特定硬件电路、软件以及两者的组合。
在一个实施例中,具体的,该实现音视频内容播放的方法如图2所示,包括:
步骤210,加载P2P内核和播放器于运行的图形用户界面应用中。
图形用户界面应用是具备图形用户界面的任一应用程序,其可通过图形用户界面实现与用户之间的交互,在优选的实施例中,图形用户界面应用由C++语言构建。P2P内核用于实现所在图形用户界面应用中的P2P传输,以提高传输速度,并节省网络开销,也就是说,在P2P内核的作用下,将使得所在终端设备成为P2P网络的一个节点。
加载的播放器被嵌入到图形用户界面应用中,加载完成的图形用户界面应用将得到包含了播放器的图形用户界面。
需要说明的是,该图形用户界面应用是任一持续获取媒体数据流并通过此媒体数据流持续进行图形用户界面中音视频内容变换的应用,例如,某一音视频直播应用、某一游戏直播应用等,在此不一一进行列举。
通过图形用户界面应用中P2P内核和播放器这两大组件的加载,将使得这两大组件可自行在图形用户界面应用中执行相关的操作。
步骤230,通过加载的P2P内核拉取媒体数据流。
完成图形用户界面应用中组件的加载之后,将侦听得到图形用户界面应用中触发的音视频内容触发指令。例如,该音视频内容触发指令可以是某一节目,如一大型赛事的直播指令等。
此时,将通过图形用户界面应用中加载的P2P内核进行媒体数据流的拉取。
具体的,图形用户界面应用中P2P内核运行时,首先在种子服务器注册,以使自身成为一个种子节点,然后通过种子服务器与其它种子节点进行P2P通信,以向其它种子节点请求媒体数据流,如若其它种子节点可提供,则从任一种子节点拉取所请求的媒体数据流;如若其它种子节点没有有数据,则从内容分发服务器中进行数据的拉取。
通过P2P内核,将大为改善了图形用户界面应用,特别是音视频直播应用和游戏直播应用中直播数据的快速获取,并且不需要占用大量的带宽,极大地降低了数据传输成本。
进一步的,对于P2P内核所实现的媒体数据流拉取,将远端的服务器,例如,种子服务器将不再承担传统http下载中服务器的角色,而是仅仅负责在各客户端,即种子节点之间中转,其本身并未存放任何种子节点所需要下载的媒体数据。媒体数据被分成若干块,并分别存储于不同的种子节点中,需要下载得到该媒体数据的种子节点只需要分别从存储了媒体数据块的种子节点进行媒体数据块的下载即可,而对于媒体数据块的下载并不需要设定固定的顺序,只要下载的媒体数据块最终能够填满,得到完整媒体数据即可。
图形界面应用中,通过P2P内核所实现的P2P通信而进行的媒体数据拉取并不需要依赖于远端服务器的媒体数据存储以及下载,而是通过连接多个种子节点拉取媒体数据,进而使得媒体数据拉取速度得到较大提升,并且充分利用了带宽也保证了数据完整性。
特别是对于大型游戏赛事的直播而言,由于需要实时提供媒体数据流,并且媒体数据流中包括了各种视频内容以及相匹配的解说内容,因此,对于媒体数据流本身,其将会占用较大带宽,并且任何的延迟都将影响着大型游戏赛事直接的实现。基于此在图形界面应用中通过P2P内核所进行的P2P通信来保证图形界面应用中大型游戏赛事的直播,并不再依赖于远端的游戏直播服务器,而是在观看此大型游戏赛事直播的各用户相互配合下实时拉取媒体数据流,保证了速度,进而实现直播。
步骤250,分流拉取得到的媒体数据流,以得到音频数据和视频数据。
音频内容和视频内容均是通过媒体数据流得到的,因此,在拉取得到媒体数据流之后,还需对其进行分流,以分别得到对应的音频数据和视频数据。
在优选的实施例中,媒体数据流的分流将是按照单位时间进行的。以单位时间为进行媒体数据流分流的执行单位,对每一单位时间所对应的媒体数据流执行分流,以得到这一单位时间所分别对应的音频数据和视频数据。进而所有的音频数据拼接在一起即可得到音频数据流,相对应的,所有的视频数据拼接在一起也得到了视频数据流。
也就是说,音频数据和视频数据是组合在一起进行传输的,例如,单位时间的媒体数据流中,可以是视频数据在前,音频数据在后的组合形式。
步骤270,通过音频数据和视频数据在加载的播放器中进行音视频内容的播放。
对于分流所得到的音频数据和视频数据,将被传入加载的播放器中,以在音频数据和视频数据的作用下使得播放器输出一定的音视频内容,进而使得图形用户界面应用所提供的图形用户界面中呈现持续变换的视频内容,并伴随着与该视频内容匹配的音频内容的输出。
通过如上所述的方式,将音视频直播应用、游戏直播应用、音视频通信工具等各种图形用户界面应用中,媒体数据流的获取中数据量极小,从而打造完成极速模式,对于各种大型赛事的直播、游戏的直播以及用户之间、团队之间所进行的音视频直播而言,将更为顺畅,提供了清晰高质量的音视频服务。
由于如上所述的音视频内容播放是通过图形用户界面应用加载P2P内核和播放器所实现的,而区别于现有的依赖于浏览器以及浏览器中加载Adobe Flash Player的方式,可无视浏览器和Adobe Flash Player的版本差异,更易于运行于各种类型的终端设备中。
在图形用户界面应用的作用下实现的音视频内容播放中,由于图形用户界面应用是运行在操作系统层面的,与浏览器相比较,其更接近底层,因此具备更高性能,可以处理复杂的业务逻辑,可根据所需要实现的功能进行尝试定制,进而极大地扩展了应用范围。
进一步的,在一个实施例中,如上所述的步骤210如图3所示,包括如下步骤:
步骤211,触发运行图形用户界面应用。
步骤213,在运行的图形用户界面应用中加载P2P内核和播放器,以得到包含播放器的图形用户界面。
图形用户界面应用所加载的播放器可为H.265Decoder Player,该播放器置于图形用户界面中,以便于在图形用户界面应用中实现音视频内容的播放。
H.265Decoder Player属于自研组件,直接运行在操作系统上,而不再如AdobeFlash Player运行在浏览器的网页页面,也得以摈弃H.264而采用H.265进行视频压缩,这意味着在相同的视频画质下,所得到的数据量更小,对于各种音视频直播、游戏直播而言,网络带宽成本进一步降低,对于产生更多网络资源消耗的实时交互而言,相较于原有的H.264+Adobe Flash Player的组合,也可做更多的实时交互。
进一步的,在一个实施例中,如上所述的步骤250如图4所示,包括如下步骤:
步骤251,通过P2P内核与播放器之间的通信将拉取得到的媒体数据流由P2P内核传送至播放器。
图形用户界面应用中,P2P内核与播放器之间的通信将是通过Localhost(本地网络回路)通信实现的,也就是说,P2P内核在多个种子节点所形成的P2P网络拉取得到媒体数据流之后,通过Localhost通信传送至播放器中。
步骤253,通过播放器按照预定的组合格式分流拉取得到的媒体数据流,以得到媒体数据流包含的音频数据和H.265视频数据。
播放器将用于对拉取所得到的媒体数据流进行处理,以实现音视频内容的播放。对于采用音视频混用策略进行传输的媒体数据流而言,播放器将首先对其进行分流。
具体的,播放器按照预定的组合格式对媒体数据流进行分流,换而言之,该分流过程是按照预定的组合格式所进行的音频数据和视频数据提取的过程。
由此所得到的视频数据为H.265视频数据,即按照H.265视频编码标准编码所得到的视频数据,更进一步地提高了视频压缩率。
通过H.265编码的方式将使得视频数据得到最大限度的压缩,进而使得视频数据的数据量尽可能小。用户获取媒体数据流可通过P2P的方式免费获取得到,但是对于进行音视频内容直播的组织方而言,其向内容提供方购买相应媒体数据流的过程中,有效地避免了过多网络带宽成本的产生,进而极大地降低了成本。
进一步的,在一个实施例中,如上所述的步骤270如图5所示,包括如下步骤:
步骤271,按照预设的音频编码标准和H.265视频编码标准分别解码音频数据和视频数据。
在本实施例中,视频数据为H.265视频数据,以尽可能降低网络带宽的耗费,发挥H.265高压缩率的优势。
在优选的实施例中,音频数据为AAC音频数据,也就是说,如上所述的图形用户界面应用将采用H.265+AAC+H.265Decoder Player+P2P内核的流媒体传输播放策略来实现诸如大型赛事直播、适合游戏环境下的流媒体播放等,进而在提供清晰保真的音质画质下实现网络带宽资源的节省。
步骤273,在加载的播放器中对解码的音频数据和视频数据进行播放,以使图形用户界面中播放器持续播放媒体数据流对应的音视频内容。
对解码的音频数据和视频数据进行音视频同步,然后各自播放即可实现图形用户界面应用中音视频内容的播放。
在另一个实施例中,步骤210之前,如上所述的方法还包括:
按照预定的组合格式组合媒体数据流中的音频数据和视频数据,以供任一图形用户界面应用通过P2P内核拉取。
需要说明的是,此步骤运行于媒体数据流的输出侧,其中,该输出侧可以是P2P网络中的内容分发服务器,也可以是任一种子节点。也就是说,向图形用户界面应用输出媒体数据流之前的任一环节均可执行此步骤。
下面结合一个具体的实施例来详细阐述如上所述的方法。该实施例中,图形用户界面应用中的组件架构如图6所示,这一图形用户界面应用为C++程序架构,在此图形用户界面应用中包括了P2P Core(P2P内核)310和与P2P Core通信的C++App Player330,即播放器,其中,该C++App Player330为H.265Decoder Player。
如上所述的图形用户界面应用的实现将是H.265+AAC+H.265Decoder Player+P2P内核,如其将其运营于大型赛事直播,则可在P2P节省50%带宽的前提下,发挥H.265高压缩率的优势,进一步节省30%的带宽。
例如,在相同清晰度下,H.265编码的网络带宽与H.264编码相对比,可见H.265编码的码率更像,具体如下表:
PSNR(峰值信噪比)对比 Bitrate(压缩率) Y分量 U分量 V分量
H.264编码 800 33.064 39.278 39.564
H.265编码 600 34.002 37.96 38.352
对比结果 -25% 0.938dB -1.318 -1.212
表1
在一个实施例中,如上所述的图形用户界面应用为大型游戏赛事的直播应用。如若触发这一大型游戏赛事的直播应用进行某大型游戏赛事直播的观看时,将在运行的图形用户界面应用中加载P2P内核和播放器,该播放器被嵌入到此图形用户界面应用中,通过P2P内核与其他观看此大型游戏赛事直播的用户进行P2P通信,以从各处拉取得到实现直播的各种媒体数据流,并传送至播放器中。
该播放器是H.265Decoder Player,而媒体数据流中的视频数据将是H.265视频数据,以使得媒体数据流能够实现非常高的视频压缩率,并且能够得到播放器的支持。
H.265视频数据的采用,不但对于观看大型游戏赛事直播的用户而言能够得到数据量尽可能小的视频数据;对于进行大型游戏赛事直播的组织方而言,由于其是根据数据量的大小而进行付费的,因此,数据量尽可能小的视频数据将为组织方减少了网络带宽成本,极大地降低了支付的费用。
播放器对接收的媒体数据流进行解码得到相应的音频数据和H.265视频数据,并播出进行当前大型游戏赛事直播的内容和相应的解说,保证了该内容和解说的实时性。
在一个实施例中,还相应地提供了一种实现音视频内容播放的装置,该装置运行于终端侧,该装置如图7所示,包括加载模块410、拉取模块430、分流模块450和播放模块470,其中:
加载模块410,用于加载P2P内核和播放器于运行的图形用户界面应用中。
图形用户界面应用是具备图形用户界面的任一应用程序,其可通过图形用户界面实现与用户之间的交互,在优选的实施例中,图形用户界面应用由C++语言构建。P2P内核用于实现所在图形用户界面应用中的P2P传输,以提高传输速度,并节省网络开销,也就是说,在P2P内核的作用下,将使得所在终端设备成为P2P网络的一个节点。
加载的播放器被嵌入到图形用户界面应用中,加载完成的图形用户界面应用将得到包含了播放器的图形用户界面。
需要说明的是,该图形用户界面应用是任一持续获取媒体数据流并通过此媒体数据流持续进行图形用户界面中音视频内容变换的应用,例如,某一视频直播应用、某一游戏应用等,在此不一一进行列举。
加载模块410通过图形用户界面应用中P2P内核和播放器这两大组件的加载,将使得这两大组件可自行在图形用户界面应用中执行相关的操作。
拉取模块430,用于通过加载的P2P内核拉取媒体数据流。
拉取模块430中的P2P内核首先在种子服务器注册,以使自身成为一个种子节点,然后通过种子服务器与其它种子节点进行P2P通信,以向其它种子节点请求媒体数据流,如若其它种子节点可提供,则从任一种子节点拉取所请求的媒体数据流;如若其它种子节点没有有数据,则从内容分发服务器中进行数据的拉取。
通过P2P内核,将大为改善了图形用户界面应用,特别是直播应用中直播数据的快速获取,并且不需要占用大量的带宽,极大地降低了数据传输成本。
分流模块450,用于分流拉取得到的媒体数据流,以得到音频数据和视频数据。
音频内容和视频内容均是通过媒体数据流得到的,因此,在拉取得到媒体数据流之后,还需分流模块450对其进行分流,以分别得到对应的音频数据和视频数据。
在优选的实施例中,媒体数据流的分流将是按照单位时间进行的。以单位时间为进行媒体数据流分流的执行单位,分流模块450对每一单位时间所对应的媒体数据流执行分流,以得到这一单位时间所分别对应的音频数据和视频数据。进而所有的音频数据拼接在一起即可得到音频数据流,相对应的,所有的视频数据拼接在一起也得到了视频数据流。
也就是说,音频数据和视频数据是组合在一起进行传输的,例如,单位时间的媒体数据流中,可以是视频数据在前,音频数据在后的组合形式。
播放模块470,用于通过音频数据和视频数据在加载的播放器中进行音视频内容的播放。
对于分流所得到的音频数据和视频数据,将被传入加载的播放器中,播放模块470在音频数据和视频数据的作用下使得播放器输出一定的音视频内容,进而使得图形用户界面应用所提供的图形用户界面中呈现持续变换的视频内容,并有与该视频内容匹配的音频内容的输出。
通过如上所述的方式,将使得直播应用、游戏应用、音视频通信工具等各种图形用户界面应用中,媒体数据流的获取仅占用极小的带宽,从而打造完成极速模式,对于各种大型赛事的直播、游戏的运行以及用户之间、团队之间所进行的音视频直播而言,将更为顺畅,提供了清晰高质量的音视频服务。
由于如上所述的音视频内容播放是通过图形用户界面应用加载P2P内核和播放器所实现的,而区别于现有的依赖于浏览器以及浏览器中加载Adobe Flash Player的方式,可无视浏览器和Adobe Flash Player的版本差异,更易于运行于各种类型的终端设备中。
在图形用户界面应用的作用下实现的音视频内容播放中,由于图形用户界面应用是运行在操作系统层面的,与浏览器相比较,其更接近底层,因此具备更高性能,可以处理复杂的业务逻辑,可根据所需要实现的功能进行尝试定制,进而极大地扩展了应用范围。
进一步的,如图8所示,在一个实施例中,加载模块410包括应用运行单元411和组件加载单元413,其中:
应用运行单元411,用于触发运行图形用户界面应用。
组件加载单元413,用于在运行的图形用户界面应用中加载P2P内核和播放器,以得到包含播放器的图形用户界面。
进一步的,如图9所示,在一个实施例中,分流模块450包括传送单元451和音视频分流单元453,其中:
传送单元451,用于通过P2P内核与播放器之间的通信将拉取得到的媒体数据流由P2P内核传送至播放器。
音视频分流单元453,用于按照预定的组合格式分流拉取得到的媒体数据流,以得到媒体数据流包含的音频数据和H.265视频数据。
进一步的,如图10所示,播放模块470包括解码单元471和界面内容播放单元473,其中:
解码单元471,用于按照预设的音频编码标准和H.265视频编码标准分别解码音频数据和视频数据。
界面内容播放单元473,用于在加载的播放器中对解码的音频数据和视频数据进行播放,以使图形用户界面中播放器播放媒体数据流对应的音视频内容。
在另一个实施例中,实现音视频内容播放的装置将运行于媒体数据流的输出侧,该装置用于按照预定的组合格式组合媒体数据流中的音频数据和视频数据,以供任一图形用户界面应用通过P2P内核拉取。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
虽然已参照几个典型实施方式描述了本发明,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本发明能够以多种形式具体实施而不脱离发明的精神或实质,所以应当理解,上述实施方式不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。

Claims (8)

1.一种实现音视频内容播放的方法,应用于直播领域,其特征在于,包括:
触发运行图形用户界面应用,所述图形用户界面应用是任一持续获取媒体数据流并通过此媒体数据流持续进行直播的应用;
在运行的图形用户界面应用中加载P2P内核和播放器,以得到包含所述播放器的图形用户界面,所述播放器是用于播放H.265视频数据的播放器;
侦听得到图形用户界面应用中触发的音视频内容触发指令,通过加载的所述P2P内核拉取媒体数据流;
通过所述P2P内核与所述播放器之间的通信将所述拉取得到的媒体数据流由所述P2P内核传送至所述播放器;
对每一单位时间所对应的所述媒体数据流执行分流,通过所述播放器按照预定的组合格式分流拉取得到的所述媒体数据流,以得到所述媒体数据流包含的音频数据和H.265视频数据;
通过所述音频数据和视频数据在加载的所述播放器中进行音视频内容的播放。
2.根据权利要求1所述的方法,其特征在于,所述通过所述音频数据和视频数据在加载的所述播放器中进行音视频内容的播放的步骤包括:
按照预设的音频编码标准和H.265视频编码标准分别解码所述音频数据和视频数据;
在所述加载的播放器中对解码的所述音频数据和视频数据进行播放,以使所述图形用户界面中播放器持续播放媒体数据流对应的音视频内容。
3.根据权利要求1所述的方法,其特征在于,所述在运行的图形用户界面应用中加载P2P内核和播放器之前,所述方法还包括:
按照预定的组合格式组合所述媒体数据流中的音频数据和视频数据,以供任一图形用户界面应用通过P2P内核拉取。
4.一种实现音视频内容播放的装置,应用于直播领域,其特征在于,所述装置运行于终端侧,所述装置包括:
加载模块,用于触发运行图形用户界面应用,所述图形用户界面应用是任一持续获取媒体数据流并通过此媒体数据流持续进行直播的应用;在运行的图形用户界面应用中加载P2P内核和播放器,以得到包含所述播放器的图形用户界面,所述播放器是用于播放H.265视频数据的播放器;
拉取模块,用于侦听得到图形用户界面应用中触发的音视频内容触发指令,通过加载的所述P2P内核拉取媒体数据流;
分流模块,用于通过所述P2P内核与所述播放器之间的通信将所述拉取得到的媒体数据流由所述P2P内核传送至所述播放器;对每一单位时间所对应的所述媒体数据流执行分流,通过所述播放器按照预定的组合格式分流所述拉取得到的媒体数据流,以得到所述媒体数据流包含的音频数据和H.265视频数据;
播放模块,用于通过所述音频数据和视频数据在加载的所述播放器中进行音视频内容的播放。
5.根据权利要求4所述的装置,其特征在于,所述播放模块包括:
解码单元,用于按照预设的音频编码标准和H.265视频编码标准分别解码所述音频数据和视频数据;
界面内容播放单元,用于在所述加载的播放器中对解码的所述音频数据和视频数据进行播放,以使所述图形用户界面中播放器持续播放媒体数据流对应的音视频内容。
6.根据权利要求4所述的装置,其特征在于,所述装置运行于所述媒体数据流的输出侧,所述装置用于按照预定的组合格式组合所述媒体数据流中的音频数据和视频数据,以供任一图形用户界面应用通过P2P内核拉取。
7.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至3中任一项所述的实现音视频内容播放的方法。
8.一种计算机可读程序介质,其特征在于,其存储有计算机可读指令,当所述计算机可读指令被处理器执行时,使计算机执行权利要求1至3中任一所述的方法。
CN201510863962.4A 2015-11-30 2015-11-30 实现音视频内容播放的方法和装置 Active CN106817613B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510863962.4A CN106817613B (zh) 2015-11-30 2015-11-30 实现音视频内容播放的方法和装置
PCT/CN2016/105393 WO2017092561A1 (zh) 2015-11-30 2016-11-11 实现音视频内容播放的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510863962.4A CN106817613B (zh) 2015-11-30 2015-11-30 实现音视频内容播放的方法和装置

Publications (2)

Publication Number Publication Date
CN106817613A CN106817613A (zh) 2017-06-09
CN106817613B true CN106817613B (zh) 2020-08-28

Family

ID=58796262

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510863962.4A Active CN106817613B (zh) 2015-11-30 2015-11-30 实现音视频内容播放的方法和装置

Country Status (2)

Country Link
CN (1) CN106817613B (zh)
WO (1) WO2017092561A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107920072B (zh) * 2017-11-14 2021-02-09 深圳市视维科技股份有限公司 一种基于数据特征的多媒体共享方法及系统
CN109218824B (zh) * 2018-09-29 2021-02-12 视联动力信息技术股份有限公司 一种业务处理的方法和装置
CN110851647B (zh) * 2019-09-29 2022-10-18 广州荔支网络技术有限公司 音频内容流量智能分配方法、装置、设备及可读存储介质
CN111327585B (zh) * 2019-11-28 2022-06-03 北京新奥特体育科技有限公司 处理音视频的方法和系统
CN114697746A (zh) * 2020-12-28 2022-07-01 北京金山云网络技术有限公司 视频启播方法、装置、电子设备及系统
CN112804549B (zh) * 2021-01-15 2023-07-28 北京字节跳动网络技术有限公司 直播数据处理方法及设备
CN113038237B (zh) * 2021-03-17 2023-02-21 百度(中国)有限公司 直播信息处理方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1992602A (zh) * 2005-12-29 2007-07-04 盛趣信息技术(上海)有限公司 将基于p2p网络下载的多媒体文件实现实时播放方法
CN101030938A (zh) * 2007-02-05 2007-09-05 北京大学 QoS自适应的P2P流媒体数据组织与传输系统及方法
CN103139262A (zh) * 2011-11-25 2013-06-05 上海聚力传媒技术有限公司 一种为网页资源播放器提供资源访问数据的方法与设备
CN104980814A (zh) * 2014-04-03 2015-10-14 南京汇智明华信息科技有限公司 一种适用于高清无失真视频的播放器引擎

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030191753A1 (en) * 2002-04-08 2003-10-09 Michael Hoch Filtering contents using a learning mechanism
US20090119710A1 (en) * 2007-11-01 2009-05-07 Qualcomm Incorporated Method and apparatus for enhancing support for user-generated content delivery
US8863176B2 (en) * 2007-11-13 2014-10-14 Adtv World Apparatus and method for continuous video advertising
US9160814B2 (en) * 2008-11-10 2015-10-13 Intel Corporation Intuitive data transfer between connected devices
CN101827116B (zh) * 2010-01-04 2012-12-12 山东大学 一种基于dm6446的嵌入式p2p流媒体直播系统及其工作方法
KR101089562B1 (ko) * 2010-04-27 2011-12-05 주식회사 나우콤 고화질 미디어 방송을 위한 피투피 라이브 스트리밍 시스템 및 방법
US9535653B2 (en) * 2012-08-31 2017-01-03 Google Inc. Adjusting audio volume of multimedia when switching between multiple multimedia content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1992602A (zh) * 2005-12-29 2007-07-04 盛趣信息技术(上海)有限公司 将基于p2p网络下载的多媒体文件实现实时播放方法
CN101030938A (zh) * 2007-02-05 2007-09-05 北京大学 QoS自适应的P2P流媒体数据组织与传输系统及方法
CN103139262A (zh) * 2011-11-25 2013-06-05 上海聚力传媒技术有限公司 一种为网页资源播放器提供资源访问数据的方法与设备
CN104980814A (zh) * 2014-04-03 2015-10-14 南京汇智明华信息科技有限公司 一种适用于高清无失真视频的播放器引擎

Also Published As

Publication number Publication date
WO2017092561A1 (zh) 2017-06-08
CN106817613A (zh) 2017-06-09

Similar Documents

Publication Publication Date Title
CN106817613B (zh) 实现音视频内容播放的方法和装置
US20210183408A1 (en) Gapless video looping
WO2017063399A1 (zh) 一种视频播放方法和装置
CN104159150B (zh) 云终端、云服务器、媒体数据流播放系统及方法
WO2022105597A1 (zh) 视频倍速播放方法、装置、电子设备及存储介质
WO2021159770A1 (zh) 视频播放方法、装置、设备和存储介质
US20210409476A1 (en) Method and stream-pushing client terminal for pushing audio and video based on webrtc protocol
WO2016188276A1 (zh) 视频播放方法、客户端和计算机存储介质
WO2014139269A1 (zh) 基于虚拟桌面的视频播放、处理方法及装置
WO2017101418A1 (zh) 多路流媒体播放方法及设备
US10667001B2 (en) Method and system for display of mixed media content on devices without standard video
Kim et al. Cloud‐based gaming service platform supporting multiple devices
CN113676769A (zh) 视频解码方法、设备、存储介质及程序产品
WO2020253452A1 (zh) 直播间状态消息的推送方法、交互内容的切换方法、装置及设备
CN111541905B (zh) 一种直播方法、装置、计算机设备和存储介质
CN112770168A (zh) 视频的播放方法以及相关装置、设备
CN115914745A (zh) 视频的解码方法、装置、电子设备及计算机可读介质
CN112153322B (zh) 数据分发方法、装置、设备及存储介质
WO2016107174A1 (zh) 多媒体文件数据的处理方法及系统、播放器和客户端
CN111866508A (zh) 视频处理方法、装置、介质及电子设备
CN112887742B (zh) 直播流处理方法、装置、设备及存储介质
CN104703024A (zh) 一种视频播放的方法及终端设备
CN113055714B (zh) 视频信息处理方法、装置、设备及存储介质
KR20190001601A (ko) 프리젠테이션 커스터마이제이션 및 인터랙티비티를 위한 방법 및 장치
CN115941968A (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