CN108881931B - 一种数据缓冲方法及网络设备 - Google Patents

一种数据缓冲方法及网络设备 Download PDF

Info

Publication number
CN108881931B
CN108881931B CN201710345070.4A CN201710345070A CN108881931B CN 108881931 B CN108881931 B CN 108881931B CN 201710345070 A CN201710345070 A CN 201710345070A CN 108881931 B CN108881931 B CN 108881931B
Authority
CN
China
Prior art keywords
network
communication network
data
buffer
information
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
CN201710345070.4A
Other languages
English (en)
Other versions
CN108881931A (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 CN201710345070.4A priority Critical patent/CN108881931B/zh
Priority to JP2019534822A priority patent/JP6876131B2/ja
Priority to KR1020197025444A priority patent/KR102216622B1/ko
Priority to EP18801525.9A priority patent/EP3627791A4/en
Priority to PCT/CN2018/085383 priority patent/WO2018210130A1/zh
Publication of CN108881931A publication Critical patent/CN108881931A/zh
Priority to US16/391,395 priority patent/US11146606B2/en
Application granted granted Critical
Publication of CN108881931B publication Critical patent/CN108881931B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/80Responding to QoS
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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
    • 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
    • H04L65/752Media network packet handling adapting media to network capabilities
    • 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
    • H04L65/756Media network packet handling adapting media to device capabilities
    • 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
    • H04L65/765Media network packet handling intermediate
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • 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, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • 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, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • 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
    • 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

Abstract

本发明实施例公开了一种数据缓冲方法,包括:网络设备获取多媒体信息,以及获取用于传输所述多媒体信息的通信网络的网络特征信息,所述通信网络包含有将所述多媒体信息传输至所述网络设备的第一通信网络,和/或将所述多媒体信息发送至终端设备的第二通信网络;至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量;从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,以便于利用所述第二通信网络将所述第一缓冲数据发送至所述终端设备,使所述终端设备获取到的第一缓冲数据的数据量与网络特征信息相匹配。本发明实施例还公开了一种网络设备。

Description

一种数据缓冲方法及网络设备
技术领域
本发明涉及数据处理技术,尤其涉及一种数据缓冲方法及网络设备。
背景技术
现有直播过程中,内容分发网络(CDN,Content Delivery Network)节点会根据用户需求(例如时延需求等)为用户配置一个缓冲区域,用于存储主播音视频数据(也可称为缓冲数据),进而当该用户连入CDN节点时,所述CDN节点会把配置的该缓冲区域缓存的主播音视频数据一次发送至用户,而用户在直播观看过程中,则可接收到CDN节点实时下发的主播音视频数据。这里,由于在用户连入CDN节点时,CDN节点会将缓冲区域缓存的主播音视频数据一次全部发送至该用户,所以,增加了直播卡顿的风险,降低了用户体验。
发明内容
为解决现有存在的技术问题,本发明实施例提供了一种数据缓冲方法及网络设备,能至少解决现有技术中存在的上述问题。
本发明实施例的技术方案是这样实现的:
本发明实施例第一方面提供了一种数据缓冲方法,所述方法还包括:
网络设备获取多媒体信息,以及获取用于传输所述多媒体信息的通信网络的网络特征信息,所述通信网络包含有将所述多媒体信息传输至所述网络设备的第一通信网络,和/或将所述多媒体信息发送至终端设备的第二通信网络;
至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量;
从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,以便于利用所述第二通信网络将所述第一缓冲数据发送至所述终端设备,使所述终端设备获取到的第一缓冲数据的数据量与网络特征信息相匹配。
上述方案中,所述方法还包括:
获取所述终端设备对应的用于呈现所述多媒体信息的呈现特征信息;
至少基于所述呈现特征信息确定出针对所述终端设备的预设数据量;
从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述预设数据量的第二缓冲数据;
检测到目标指令,所述目标指令至少是基于所述终端设备与所述网络设备建立所述第二通信网络的网络建立成功信息而生成的;
根据所述目标指令将所述第二缓冲数据发送至所述终端设备,使所述终端设备获取到的第二缓冲数据的数据量与呈现特征信息相匹配。
上述方案中,所述方法还包括:
获取所述终端设备的缓存特征信息;
对应地,所述至少基于所述呈现特征信息确定出针对所述终端设备的预设数据量,包括:
基于所述呈现特征信息以及所述缓存特征信息确定出与所述终端设备相匹配的预设数据量。
上述方案中,所述方法还包括:
获取所述终端设备的缓存特征信息;
对应地,所述至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量,包括:
至少根据所述缓存特征信息以及所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量。
上述方案中,所述目标数据量是通过预设图像单元的数量来表征的;对应地,所述确定出针对所述终端设备的目标数据量,包括:
确定出需要缓冲的针对所述终端设备的预设图像单元的第一数量,将所述第一数量的预设图像单元的总数据量作为针对所述终端设备的目标数据量。
上述方案中,所述方法还包括:
根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定是否对所述第一缓冲数据进行丢帧处理;
确定出对所述第一缓冲数据进行丢帧处理时,获取音频帧和/或视频帧的淘汰优先级策略,基于淘汰优先级策略对所述第一缓冲数据中的音频帧和/或视频帧进行丢帧处理,以减小所述第一缓冲数据的数据量。
本发明实施例第二方面提供了一种网络设备,包括:
获取单元,用于获取多媒体信息,以及获取用于传输所述多媒体信息的通信网络的网络特征信息,所述通信网络包含有将所述多媒体信息传输至所述网络设备的第一通信网络,和/或将所述多媒体信息发送至终端设备的第二通信网络;
处理单元,用于至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量;
缓冲单元,用于从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,以便于利用所述第二通信网络将所述第一缓冲数据发送至所述终端设备,使所述终端设备获取到的第一缓冲数据的数据量与网络特征信息相匹配。
上述方案中,所述获取单元,还用于获取所述终端设备对应的用于呈现所述多媒体信息的呈现特征信息;
所述处理单元,还用于至少基于所述呈现特征信息确定出针对所述终端设备的预设数据量;
所述缓冲单元,还用于从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述预设数据量的第二缓冲数据;
对应地,所述处理单元,还用于检测到目标指令,根据所述目标指令将所述第二缓冲数据发送至所述终端设备,使所述终端设备获取到的第二缓冲数据的数据量与呈现特征信息相匹配;所述目标指令至少是基于所述终端设备与所述网络设备建立所述第二通信网络的网络建立成功信息而生成的。
上述方案中,所述获取单元,还用于获取所述终端设备的缓存特征信息;对应地,
所述处理单元,还用于基于所述呈现特征信息以及所述缓存特征信息确定出与所述终端设备相匹配的预设数据量。
上述方案中,所述获取单元,还用于获取所述终端设备的缓存特征信息;
对应地,所述处理单元,还用于至少根据所述缓存特征信息以及所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量。
上述方案中,所述目标数据量是通过预设图像单元的数量来表征的;对应地,
所述处理单元,还用于确定出需要缓冲的针对所述终端设备的预设图像单元的第一数量,将所述第一数量的预设图像单元的总数据量作为针对所述终端设备的目标数据量。
上述方案中,所述处理单元,还用于根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定是否对所述第一缓冲数据进行丢帧处理;确定出对所述第一缓冲数据进行丢帧处理时,获取音频帧和/或视频帧的淘汰优先级策略,基于淘汰优先级策略对所述第一缓冲数据中的音频帧和/或视频帧进行丢帧处理,以减小所述第一缓冲数据的数据量。
本发明实施例所述的数据缓冲方法及网络设备,由于针对终端设备的目标数据量是网络设备基于实际网络情况而确定出的,所以,网络设备确定出的具有目标数据量的第一缓冲数据能够与实际网络情况相匹配,因此,本发明实施例能够降低由于缓冲数据量固定而导致的卡顿现象的风险,提升抗卡顿能力,进而为提升用户体验奠定了基础。
附图说明
图1为本发明实施例一数据缓冲方法的实现流程示意图;
图2为本发明实施例一数据缓冲方法的应用场景示意图;
图3为本发明实施例一数据缓冲方法中网络设备与终端设备之间的交互图;
图4为本发明实施例二数据缓冲方法的实现流程示意图;
图5为本发明实施例数据缓冲方法在一具体应用中的框架示意图;
图6为本发明实施例二数据缓冲方法中网络设备与终端设备之间的交互图;
图7为本发明实施例网络设备的组成结构示意图;
图8为本发明实施例网络设备的硬件结构示意图。
具体实施方式
实际应用中,由于现有CDN节点将缓冲区域缓存的主播音视频数据一次全部发送至该用户,所以,会存在如下问题:
第一,当网络拥塞时,由于直播音视频数据比较大,有些高码率上行会达到2Mpbs的带宽,如果为某一用户配置了5秒的缓冲,则相当于该用户一连如CDN节点就会有10M数据下发,对于网络不稳定用户而言,很容易造成网络拥塞和传输控制协议(TCP,TransmissionControl Protocol)零窗口现象。
第二,在高码率直播的场景下,若固定缓冲大小,对于终端配置比较差的用户而言,若连入CDN节点后下发的固定大小的缓冲数据大于终端配置的缓冲大小,就会出现跳帧导致黑闪屏现象。
第三,由于固定了缓冲大小,所以,在直播观看过程中,若主播出现卡顿重连的问题,则会降低抗卡顿能力,这里,终端的最大抗卡顿能力就是为该终端配置的缓冲周期。
因此,为解决上述问题,本发明实施例提供了一种数据缓冲方法及网络设备,能够根据用户网络环境及终端配置能力对CDN节点的音视频缓冲数据动态调整,进而为降低卡顿次数奠定了基础,同时也为提升直播观看体验奠定了基础。
进一步地,为了能够更加详尽地了解本发明的特点与技术内容,下面结合附图对本发明的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明。
实施例一
本实施例提供了一种数据缓冲方法,所述方法应用于网络设备,这里,实际应用中,所述网络设备可以具体为CDN节点;具体地,图1为本发明实施例一数据缓冲方法的实现流程示意图,如图1所示,所述方法包括:
步骤101:网络设备获取多媒体信息,以及获取用于传输所述多媒体信息的通信网络的网络特征信息,所述通信网络包含有将所述多媒体信息传输至所述网络设备的第一通信网络,和/或将所述多媒体信息发送至终端设备的第二通信网络;
本实施例中,所述多媒体信息可以具体为音频信息和/或视频信息等。这里,所述第一通信网络可以具体为发送方终端与网络设备之间的通信网络,例如,在直播场景中,所述第一通信网络可以具体为主播设备与CDN节点之间的通信网络。或者,所述第一通信网络还可以具体为网络设备(如CDN节点)与源站之间的通信网络,所述源站为主播直播上传接入存储最原始音视频数据的服务器,也就是说,实际应用中,所述第一通信网络可以具体为网络设备获取多媒体信息时所涉及到的通信网络。相应地,所述第二通信网络具体为网络设备与接收直播的多媒体信息的接收方终端(也即本实施例所述的终端设备)之间的通信网络,如CDN节点与观看直播的用户设备之间的通信网络。
图2为本发明实施例一数据缓冲方法的应用场景示意图;如图2所示,本实施例可以具体应用于直播场景中,具体地,在直播场景中,CDN节点可以采用两种方式,即方式一和方式二来获取主播终端的音视频数据,例如,方式一,CDN节点可以通过第一通信网络向主播终端直接去获取主播终端实时采集的音视频数据(也即直播数据),进而将获取到的音视频数据通过第二通信网络传输至接收方终端,实现直播观看流程。或者,方式二,CDN节点通过第一通信网络向源站去获取针对该主播终端的音视频数据(也即直播数据),进而将获取到的音视频数据通过第二通信网络传输至接收方终端,这里,在CDN节点向源站获取音视频数据之前,主播终端会将自身实时采集的音视频数据上传至源站存储(直播终端与源站之间的连接关系图2中未示出),如此,来直播观看流程。当然,在实际应用中,可以根据实际情况,如网络拥塞状态来确定CDN节点获取音视频数据的路径。
实际应用中,所述网络特征信息包括但不限于以下信息中的至少一种:延迟、带宽、时延变化(也即抖动)、流量等;这里,通过所述网络特征信息即可对网络性能进行评价,例如,利用网络特征信息即可确定出是否网络拥塞等。
步骤102:至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量;
在一具体实施例中,所述网络设备在确定目标数据量时,还可以参考终端设备的缓存情况,以便于进一步提升确定出的目标数据量与终端设备(如终端设备对应的实际网络环境,以及终端设备的实际缓冲容量等)的匹配程度。具体地,所述网络设备获取所述终端设备的缓存特征信息,进而至少根据所述缓存特征信息以及所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量。实际应用中,所述缓存特征信息可以具体为缓冲容量,或缓冲剩余容量等。
在另一具体实施例中,所述目标数据量是通过预设图像单元的数量来表征的,例如,所述目标数据量是通过画面组(GOP,Group Of Pictures)的个数来表示的,此时,步骤102中确定出针对所述终端设备的目标数据量,即可具体为:所述网络设备确定出需要缓冲的针对所述终端设备的预设图像单元的第一数量,将所述第一数量的预设图像单元的总数据量作为针对所述终端设备的目标数据量。
这里,所述GOP是由固定模式的一系列I帧、P帧、B帧组成。其中,所述I帧为帧内编码帧,表示关键帧,可以理解为I帧的画面完整,解码时只需要本帧数据就可以完成。所述P帧为前向预测编码帧,表示的是这一帧跟之前的一个关键帧或之前的一个P帧的差别,解码时需要用之前缓存的画面叠加上本帧定义的差别,生成最终画面。所述B帧为双向预测内插编码帧,表示双向差别帧,也就是B帧记录的是本帧与前后帧的差别,压缩率高,解码较消耗中央处理器(CPU)。
进一步地,在实际应用中,对于实时性要求不是很苛刻的观看用户而言,所述目标数据量可以具体配置为至少一个GOP缓存,GOP的个数可以根据用户网络情况实时动态调整,当然,实际应用中,网络设备可以不设置目标数据量,即不进行缓存;例如,
场景一,主播终端上行稳定,观看用户(也即接收方终端)网络环境拥塞时,该目标数据量为最近一个GOP的数据量,也即第一缓冲数据为最近一个GOP。
场景二,主播终端上行稳定,观看用户网络环境正常时,该目标数据量为零,或者最多为最近一个GOP的数据量,也即第一缓冲数据不保存或最多缓存最近一个GOP。
场景三,主播终端上行不稳定,观看用户网络环境拥塞时,该目标数据量为最近二个或以上GOP对应的数据量,也即第一缓冲数据为最近二个或以上GOP。
场景四,主播终端上行不稳定,观看用户网络环境正常时,该目标数据量为最近三个或以上GOP对应的数据量,也即第一缓冲数据为最近三个或以上GOP。
这里,值得注意的是,以上给出的场景仅是示例性的,GOP的个数可以根据实际情况而调整。实际应用中,为避免直播用户观看时延过长,所述目标数据量会存在上限,即最大不应超过预设个数的GOP的数据量,否则,会增加直播用户观看延时。
步骤103:从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,以便于利用所述第二通信网络将所述第一缓冲数据发送至所述终端设备,使所述终端设备获取到的第一缓冲数据的数据量与网络特征信息相匹配。
例如,如图3所示,当所述网络设备确定出目标数据量,并确定出了具有该目标数据量的第一缓冲数据后,可以利用第二通信网络将所述第一缓冲数据发送至所述终端设备,以便于使所述终端设备呈现所述第一缓冲数据对应的多媒体信息;这里,由于目标数据量是基于实际网络情况而确定出的,所以,终端设备接收到的第一缓冲数据的数据量能够与实际网络情况相匹配,如此,降低了由于缓冲数据量固定而导致的卡顿现象的风险,进而为提升用户体验奠定了基础。
在实际应用中,当用户网络环境拥塞,或者CDN节点接入到源站的网络拥塞时,可以根据缓冲数据量(也即目标数据量)的大小淘汰掉历史缓冲数据,并缓冲最近的GOP数据,以确保直播流畅。具体地,所述网络设备根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定是否需要对所述第一缓冲数据进行丢帧处理;若需要,则获取音频帧和/或视频帧的淘汰优先级策略,基于淘汰优先级策略对所述第一缓冲数据中的音频帧和/或视频帧进行丢帧处理,以减小所述第一缓冲数据的数据量,便于在第一缓冲数据中添加最近的GOP数据。例如,优先丢视频帧再丢音频帧;这里,视频帧中优先丢B帧,B帧是双向预测编码帧压缩率高,编解码耗CPU延时大,次优先级丢P帧,最后再丢I帧。
本实施例中,值得注意的是,利用本实施例所述方法确定出的具有目标数据量的第一缓冲数据可以是用户的终端设备在连入所述网络设备后,即所述网络设备与所述终端设备建立完成所述第二通信网络后,利用所述第二通信网络发送至所述终端设备的,例如,在一具体实施例中,所述网络设备确定出针对所述终端设备的第一缓冲数据,且检测到所述第二通信网络的网络建立成功信息后,利用所述第二通信网络将所述第一缓冲数据发送至所述终端设备;此时,所述目标数据量的确定还可以参考终端设备对应的用于呈现多媒体信息的呈现特征信息,例如,所述网络设备获取终端设备所能够忍受的最大延时,或者能够忍受的卡顿情况,进而再参考终端设备所能够忍受的最大延时,或者能够忍受的卡顿情况最终确定出目标数据量,进而当终端设备接入网络设备后,网络设备可以先向终端设备发送第一缓冲数据,这里,由于所述第一缓冲数据是基于终端配置而生成的,所以,利用第一缓冲数据能够让观看用户播放器有一定缓存,如当终端设备连入网络设备时,所述网络设备可以一次把配置好的第一缓冲数据下发给该网络设备,如此,能够减少用户观看过程中如网络抖动、主播上行音视频数据不稳定、CDN节点回源网络(也即CDN节点与源站之间的网络)等异常而导致用户观看过程中的直播卡顿。实际应用中,目标数据量不是越大越好,太大会增加用户直播观看延时。
或者,具有目标数据量的第一缓冲数据可以是第二通信网络建立完成后,所述网络设备利用所述第二通信网络发送至所述终端设备的。例如,以直播为例,所述第一缓冲数据可是用户的终端设备刚连入时,所述网络设备发送至终端设备的,或者是在直播过程中,所述网络设备发送至终端设备的。
进一步地,由于所述第一缓冲数据的数据量是基于实际网络情况而确定出的,所以,无论所述第一缓冲数据是直播建立初期发送至终端设备的,还是直播过程中发送至终端设备的,均能够避免由于网络拥塞而导致的卡顿问题。同时,当网络拥塞时,利用本实施例所述的方法可以确定出数据量较小的第一缓冲数据,如此,来避免为网络带来更大的负担。
这样,本发明实施例所述的方法,由于针对终端设备的目标数据量是网络设备基于实际网络情况而确定出的,所以,网络设备确定出的具有目标数据量的第一缓冲数据能够与实际网络情况相匹配,因此,本发明实施例能够降低由于缓冲数据量固定而导致的卡顿现象的风险,提升抗卡顿能力,进而为提升用户体验奠定了基础。
实施例二
基于实施例一所述的方法,本实施例提供了利用两级缓冲方法来解决现有由于缓冲数据量固定而导致的卡顿现象的方案,具体地,如图4所示,所述网络设备获取多媒体信息,以及,获取所述终端设备对应的用于呈现所述多媒体信息的呈现特征信息,例如,所述网络设备获取终端设备所能够忍受的最大延时,或者能够忍受的卡顿情况,并至少基于所述呈现特征信息确定出针对所述终端设备的预设数据量,从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述预设数据量的第二缓冲数据,进而在检测到目标指令时,根据所述目标指令将所述第二缓冲数据发送至所述终端设备,使所述终端设备获取到的第二缓冲数据的数据量与呈现特征信息相匹配,并使所述终端设备播放所述第二缓冲数据对应的多媒体信息;这里,所述目标指令至少是基于所述终端设备与所述网络设备建立所述第二通信网络的网络建立成功信息而生成的,也就是说,所述目标指令至少是基于终端设备接入网络设备的接入成功信息而生成,这样,当终端设备接入网络设备后,网络设备可以先向终端设备发送第一级的缓冲数据,也即第二缓冲数据,这里,由于所述第二缓冲数据是基于终端配置而生成的,所以,利用第一级的缓冲数据能够让观看用户播放器有一定缓存,如当终端设备连入网络设备时,所述网络设备可以一次把配置好的第二缓冲数据下发给该网络设备,如此,能够减少用户观看过程中如网络抖动、主播上行音视频数据不稳定、CDN节点回源网络(也即CDN节点与源站之间的网络)等异常而导致用户观看过程中的直播卡顿。这里,预设数据量也不是越大越好,太大会增加用户直播观看延时。
本实施例中,所述预设数据量也可以是通过预设图像单元的数量来表征的,例如,所述预设数据量可以具体配置为至少一个GOP缓存,GOP的个数可以根据用户网络情况实时动态调整。
进一步地,所述网络设备向终端设备发送第一级缓冲数据(也即第二缓冲数据)后,还会根据网络实际情况而发送第二级缓冲数据,例如,如图4所示,所述网络设备还获取用于传输多媒体信息的通信网络的网络特征信息,并根据所述通信网络的网络特征信息确定出针对所述终端设备的目标数据量,进而确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,将所述第一缓冲数据发送至所述终端设备,以使所述终端设备播放所述第一缓冲数据对应的多媒体信息;也就是说,所述第一缓冲数据具体为第二级缓冲数据,这里,由于第二级缓冲数据是在直播过程中根据网络的实际情况而确定出的,所以,本实施例能够利用两级缓冲方式来最大可能地降低直播卡顿的风险。
这里,确定目标数据量以及第一缓冲数据的具体过程可以参照实施例一所述的方法,本实施例不再赘述。
在一具体实施例中,所述网络设备在确定第一级缓冲数据时,也可以参考终端设备的缓存特征信息,具体地,所述终端设备获取所述终端设备的缓存特征信息,进而基于所述呈现特征信息以及所述缓存特征信息确定出与所述终端设备相匹配的预设数据量,如此,为避免由于终端配置较差、缓冲数据大而导致的黑闪屏现象奠定了基础,进一步为提升用户直播观看体验奠定了基础。
当然,在实际应用中,所述预设数据量还可以根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息而确定,具体确定过程可以参考目标数据量的确定过程,本实施例对此不再赘述。
以下结合具体应用场景对本发明实施例对进一步详细说明书;具体地,如图5所示,直播终端设备(例如,带摄像头终端如台式机、智能手机等)对音视频数据进行采集、量化、编码、封装后通过实时消息传输协议(Real Time Messaging Protocol,RTMP)上传到直播平台中的upload接入模块。upload接入模块根据用户上传所携带的鉴权信息参数到鉴权中心鉴定该直播终端设备是否具有直播权限。若具有,则将该直播终端设备对应的音视频数据传输至转码模块,转码模块根据下行用户(例如,接收方终端)观看的音视频格式进行转码并分发到各CDN集群;实际应用中,所述CDN集群包含至少两个CDN节点。这里,当下行用户支持的音视频格式为RTMP/FLV(Flash Video)时,转码模块直接将音视频数据通过分发模块发送至CDN集群,并通过CDN集群中的特定CDN节点(如距下行用户最近的CDN节点)将音视频数据分发至下行用户;而当下行用户支持的音视频格式为HLS(HyperText TransferProtocol Live Streaming)时,转码模块则通过录制、截图、切片将音视频数据发送至分布式文件系统,并通过分布式文件系统将音视频数据发送至CDN集群,进而通过CDN集群中的特定CDN节点(如距下行用户最近的CDN节点)将音视频数据分发至下行用户。这里,只要下行用户支持的音视频格式为HLS时,转码模块就会将音视频数据进行切片处理,进而将切片处理后的音视频数据发送至分布式文件系统;而是否需要进行录制或截图处理,则可根据用户需求而确定。进一步地,实际应用中,所述直播平台中还设置有鉴黄监控模块(图5中未示出),利用该鉴黄监控模块可以对分布式文件系统中的截图进行鉴黄鉴定,如果是违法视频实时通知鉴权中心禁止主播直播和用户观看,同理,在鉴权中心对直播用户进行鉴权的同时,也可以对直播用户上传的音视频数据进行鉴黄鉴定,如此,来避免违法视频的传播。最后,下行用户根据自己需求选择音视频格式到CDN集群就近观看直播。
进一步地,如图6所示,给出了在图5框架的基础上实现本发明实施例所述的方法的具体示例,具体地,观看用户就近访问CDN集群中的CDN节点,该CDN节点根据观看用户(也即下行用户)的配置需求(例如,应用程序APP的配置需求)确定首帧下发的缓冲数据量(也即第一级缓冲数据量,最少要包含一个GOP),观看用户连接该CDN节点后,CDN节点一次把配置具有第一级缓冲数据量的首帧缓冲数据(也即第一级缓冲数据)下发给观看用户,这里,首帧缓冲数据主要是让观看用户播放器有一定缓存,进而为减少用户观看过程中如网络抖动、主播上行音视频数据不稳定、CDN节点回源网络异常等导致用户观看过程中的直播卡顿。实际应用中,首帧缓冲数据也不是越大越好,太大会导致用户直播观看延时较大。
进一步地,CDN节点向观看用户发送第二级缓冲数据,这里,所述第二级缓冲数据的数据量,也即第二级缓冲数据量为动态缓冲数据量,实际应用中,当观看用户对实时性要求不是很苛刻时,CDN节点可以配置第二级缓冲数据量,例如配置为包括至少一个GOP缓存,GOP的个数可以根据用户网络情况实时动态调整,例如,
A.主播上行稳定,观看用户网络环境拥塞,第二级缓冲数据为最近一个GOP。
B.主播上行稳定,观看用户网络环境正常,第二级缓冲数据为零个或最多一个最近GOP。
C.主播上行不稳定,观看用户网络环境拥塞,第二级缓冲数据为最近二个或以上GOP。
D.上播上行不稳定,观看用户网络环境正常,第二级缓冲数据为最近三个或以上GOP。
进一步地,实际应用中,网络拥塞时,还可以对缓冲数据中的视频帧和/或音频帧进行淘汰;具体地,
若下行用户网络环境或CDN接入到源站的回源点网络拥塞,此场景下就可以根据缓冲数据量的大小淘汰掉老缓冲数据,缓冲最近的GOP数据,进而为降低卡顿奠定基础,具体地,可以优先丢视频帧再丢音频帧。进一步地,在视频帧中可以优先丢B帧,这里,因此B帧是双向预测编码帧压缩率高,编解码耗CPU延时大,次优先级丢P帧,最后再丢I帧。
这样,本实施例降低了由于缓冲数据量固定而导致的卡顿现象的风险,提升了用户体验奠定了基础。
实施例三
本实施例提供了一种网络设备,如图7所示,所述网络设备包括:
获取单元71,用于获取多媒体信息,以及获取用于传输所述多媒体信息的通信网络的网络特征信息,所述通信网络包含有将所述多媒体信息传输至所述网络设备的第一通信网络,和/或将所述多媒体信息发送至终端设备的第二通信网络;
处理单元72,用于至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量;
缓冲单元73,用于从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,以便于利用所述第二通信网络将所述第一缓冲数据发送至所述终端设备,使所述终端设备获取到的第一缓冲数据的数据量与网络特征信息相匹配。
在一具体实施例中,所述获取单元71,还用于获取所述终端设备对应的用于呈现所述多媒体信息的呈现特征信息;
所述处理单元72,还用于至少基于所述呈现特征信息确定出针对所述终端设备的预设数据量;
所述缓冲单元73,还用于从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述预设数据量的第二缓冲数据;
对应地,所述处理单元72,还用于检测到目标指令,根据所述目标指令将所述第二缓冲数据发送至所述终端设备,使所述终端设备获取到的第二缓冲数据的数据量与呈现特征信息相匹配;所述目标指令至少是基于所述终端设备与所述网络设备建立所述第二通信网络的网络建立成功信息而生成的。
在另一具体实施例中,所述获取单元71,还用于获取所述终端设备的缓存特征信息;对应地,
所述处理单元72,还用于基于所述呈现特征信息以及所述缓存特征信息确定出与所述终端设备相匹配的预设数据量。
在另一具体实施例中,所述获取单元71,还用于获取所述终端设备的缓存特征信息;
对应地,所述处理单元72,还用于至少根据所述缓存特征信息以及所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量。
在另一具体实施例中,所述目标数据量是通过预设图像单元的数量来表征的;对应地,
所述处理单元72,还用于确定出需要缓冲的针对所述终端设备的预设图像单元的第一数量,将所述第一数量的预设图像单元的总数据量作为针对所述终端设备的目标数据量。
在另一具体实施例中,所述处理单元72,还用于根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定是否对所述第一缓冲数据进行丢帧处理;确定出对所述第一缓冲数据进行丢帧处理时,获取音频帧和/或视频帧的淘汰优先级策略,基于淘汰优先级策略对所述第一缓冲数据中的音频帧和/或视频帧进行丢帧处理,以减小所述第一缓冲数据的数据量。
这里需要指出的是:以上网络设备实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明网络设备实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
进一步地,本实施例还提供了上述网络设备的硬件结构,如图8所示,所述网络设备包括发射器81、接收器82、存储介质83以及处理器84。所述处理器84可为微处理器、中央处理器、数字信号处理器或可编程逻辑阵列等具有处理功能的电子元器件。所述存储介质83中存储有计算机可执行代码,用于执行以上所述的数据缓冲方法。实际应用中,所述获取单元71、处理单元72以及缓冲单元73均可以具体通过所述处理器84来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种数据缓冲方法,其特征在于,所述方法包括:
网络设备获取多媒体信息、终端设备的缓存特征信息、用于传输所述多媒体信息的通信网络的网络特征信息、以及用于呈现所述多媒体信息的呈现特征信息,所述通信网络包含有将所述多媒体信息传输至所述网络设备的第一通信网络,所述缓存特征信息为所述终端设备的缓冲容量或缓冲剩余容量,所述呈现特征信息为所述终端设备所能够忍受的最大延时或卡顿情况,和/或
将所述多媒体信息发送至终端设备的第二通信网络;
至少根据所述缓存特征信息和所述呈现特征信息,确定出针对所述终端设备的预设数据量,以及至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量;
从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,以及表征多媒体信息的具有所述预设数据量的第二缓冲数据;
检测到目标指令,所述目标指令至少是基于所述终端设备与所述网络设备建立所述第二通信网络的网络建立成功信息而生成的;
根据所述目标指令,将所述第一缓冲数据和所述第二缓冲数据发送至所述终端设备,使所述终端设备获取到的所述第一缓冲数据的数据量与网络特征信息相匹配,以及使所述终端设备获取到的所述第二缓冲数据的数据量与呈现特征信息相匹配。
2.根据权利要求1所述的方法,其特征在于,所述至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量,包括:
至少根据所述缓存特征信息以及所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量。
3.根据权利要求1所述的方法,其特征在于,所述目标数据量是通过预设图像单元的数量来表征的;对应地,所述确定出针对所述终端设备的目标数据量,包括:
确定出需要缓冲的针对所述终端设备的预设图像单元的第一数量,将所述第一数量的预设图像单元的总数据量作为针对所述终端设备的目标数据量。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定是否对所述第一缓冲数据进行丢帧处理;
确定出对所述第一缓冲数据进行丢帧处理时,获取音频帧和/或视频帧的淘汰优先级策略,基于淘汰优先级策略对所述第一缓冲数据中的音频帧和/或视频帧进行丢帧处理,以减小所述第一缓冲数据的数据量。
5.一种网络设备,其特征在于,所述网络设备包括:
获取单元,用于获取多媒体信息、终端设备的缓存特征信息、用于传输所述多媒体信息的通信网络的网络特征信息、以及用于呈现所述多媒体信息的呈现特征信息,所述通信网络包含有将所述多媒体信息传输至所述网络设备的第一通信网络,所述缓存特征信息为所述终端设备的缓冲容量或缓冲剩余容量,所述呈现特征信息为所述终端设备所能够忍受的最大延时或卡顿情况,和/或将所述多媒体信息发送至终端设备的第二通信网络;
处理单元,用于至少根据所述缓存特征信息和所述呈现特征信息,确定出针对所述终端设备的预设数据量,以及至少根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量;还用于检测到目标指令,所述目标指令至少是基于所述终端设备与所述网络设备建立所述第二通信网络的网络建立成功信息而生成的;
缓冲单元,用于从获取到的所述多媒体信息中确定出表征多媒体信息的具有所述目标数据量的第一缓冲数据,以及表征多媒体信息的具有所述预设数据量的第二缓冲数据;根据所述目标指令,将所述第一缓冲数据和所述第二缓冲数据发送至所述终端设备,使所述终端设备获取到的所述第一缓冲数据的数据量与网络特征信息相匹配,以及使所述终端设备获取到的所述第二缓冲数据的数据量与呈现特征信息相匹配。
6.根据权利要求5所述的网络设备,其特征在于,所述处理单元,还用于至少根据所述缓存特征信息以及所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定出针对所述终端设备的目标数据量。
7.根据权利要求5所述的网络设备,其特征在于,所述目标数据量是通过预设图像单元的数量来表征的;对应地,
所述处理单元,还用于确定出需要缓冲的针对所述终端设备的预设图像单元的第一数量,将所述第一数量的预设图像单元的总数据量作为针对所述终端设备的目标数据量。
8.根据权利要求5所述的网络设备,其特征在于,所述处理单元,还用于根据所述通信网络包含的第一通信网络和/或第二通信网络的网络特征信息,确定是否对所述第一缓冲数据进行丢帧处理;确定出对所述第一缓冲数据进行丢帧处理时,获取音频帧和/或视频帧的淘汰优先级策略,基于淘汰优先级策略对所述第一缓冲数据中的音频帧和/或视频帧进行丢帧处理,以减小所述第一缓冲数据的数据量。
9.一种数据缓冲装置,其特征在于,所述装置包括:
存储器,用于存储可执行程序;
处理器,用于执行所述存储器中存储的可执行程序时,实现如权利要求1至4任一项所述的数据缓冲方法。
10.一种计算机可读存储介质,其特征在于,存储有可执行程序,所述可执行程序被处理器执行时,实现如权利要求1至4任一项所述的数据缓冲方法。
CN201710345070.4A 2017-05-16 2017-05-16 一种数据缓冲方法及网络设备 Active CN108881931B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201710345070.4A CN108881931B (zh) 2017-05-16 2017-05-16 一种数据缓冲方法及网络设备
JP2019534822A JP6876131B2 (ja) 2017-05-16 2018-05-02 データバッファリング方法、ネットワーク機器、及び記憶媒体
KR1020197025444A KR102216622B1 (ko) 2017-05-16 2018-05-02 데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체
EP18801525.9A EP3627791A4 (en) 2017-05-16 2018-05-02 INTERMEDIATE DATA STORAGE METHOD, NETWORK DEVICE AND STORAGE MEDIUM
PCT/CN2018/085383 WO2018210130A1 (zh) 2017-05-16 2018-05-02 数据缓冲方法、网络设备及存储介质
US16/391,395 US11146606B2 (en) 2017-05-16 2019-04-23 Data buffering method, network device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710345070.4A CN108881931B (zh) 2017-05-16 2017-05-16 一种数据缓冲方法及网络设备

Publications (2)

Publication Number Publication Date
CN108881931A CN108881931A (zh) 2018-11-23
CN108881931B true CN108881931B (zh) 2021-09-07

Family

ID=64273271

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710345070.4A Active CN108881931B (zh) 2017-05-16 2017-05-16 一种数据缓冲方法及网络设备

Country Status (6)

Country Link
US (1) US11146606B2 (zh)
EP (1) EP3627791A4 (zh)
JP (1) JP6876131B2 (zh)
KR (1) KR102216622B1 (zh)
CN (1) CN108881931B (zh)
WO (1) WO2018210130A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109756789B (zh) * 2018-12-28 2021-10-19 视联动力信息技术股份有限公司 一种音视频数据包的丢包处理方法和系统
CN110381351A (zh) * 2019-07-09 2019-10-25 西安万像电子科技有限公司 数据处理方法及设备
CN112235642B (zh) * 2020-10-15 2023-03-24 北京百度网讯科技有限公司 视频数据处理方法、装置、设备及存储介质
CN113395266B (zh) * 2020-11-06 2022-08-19 中软数智信息技术(武汉)有限公司 应用于物联网和直播平台的数据处理方法及云计算中心
CN113365089B (zh) * 2021-05-31 2023-02-24 浙江大华技术股份有限公司 一种数据传输方法、装置、存储介质及电子装置
CN114339294B (zh) * 2022-01-04 2023-02-10 腾讯科技(深圳)有限公司 网络抖动的确认方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002319971A (ja) * 2001-04-20 2002-10-31 Fujitsu Ltd パケットデータ中継装置及び配信装置
JP2005244315A (ja) * 2004-02-24 2005-09-08 Kddi Technology Corp 映像ストリーミング伝送のネットワーク品質安定化装置
WO2010041469A1 (ja) * 2008-10-09 2010-04-15 日本電気株式会社 コンテンツ配信システム、コンテンツ配信方法およびコンピュータプログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010047517A1 (en) * 2000-02-10 2001-11-29 Charilaos Christopoulos Method and apparatus for intelligent transcoding of multimedia data
US20020174434A1 (en) * 2001-05-18 2002-11-21 Tsu-Chang Lee Virtual broadband communication through bundling of a group of circuit switching and packet switching channels
US8218439B2 (en) * 2004-11-24 2012-07-10 Sharp Laboratories Of America, Inc. Method and apparatus for adaptive buffering
CN1996942A (zh) * 2006-06-26 2007-07-11 华为技术有限公司 一种实现流量控制的方法及系统
JP2009060425A (ja) * 2007-08-31 2009-03-19 Hitachi Ltd トラフィック制御システムおよびトラフィック制御方法
US9047236B2 (en) * 2008-06-06 2015-06-02 Amazon Technologies, Inc. Client side stream switching
US8745677B2 (en) * 2009-06-12 2014-06-03 Cygnus Broadband, Inc. Systems and methods for prioritization of data for intelligent discard in a communication network
CA2786200C (en) * 2011-09-23 2015-04-21 Cygnus Broadband, Inc. Systems and methods for prioritization of data for intelligent discard in a communication network
US20160198199A1 (en) * 2013-08-01 2016-07-07 Telefonaktebolaget L M Ericsson (Publ) Method and apparatus for controlling streaming of video content
GB2524958A (en) * 2014-04-03 2015-10-14 Orbital Multi Media Holdings Corp Data flow control method
CN106256132B (zh) * 2014-04-18 2019-06-18 Sk电信有限公司 用于实时发送广播内容的方法及其装置
EP3210384B1 (en) * 2014-10-20 2020-05-20 Telefonaktiebolaget LM Ericsson (publ) Network node and method for handling a process of controlling a data transfer related to video data of a video streaming service
CN104394440B (zh) * 2014-11-27 2017-10-27 北京邮电大学 一种http视频流调度方法及装置
CN105992023B (zh) * 2015-02-11 2019-06-04 杭州海康威视数字技术股份有限公司 视频图像数据的处理方法及装置
CN106612456A (zh) * 2015-10-26 2017-05-03 中兴通讯股份有限公司 网络视频播放方法和系统及用户终端、家庭流服务节点
CN105430475A (zh) * 2015-11-04 2016-03-23 北京奇虎科技有限公司 视频数据的缓冲方法及装置
CN105848011A (zh) * 2016-03-31 2016-08-10 乐视控股(北京)有限公司 一种视频直播方法及装置
CN105847944A (zh) * 2016-04-21 2016-08-10 乐视控股(北京)有限公司 基于http实时流的多媒体内容的提供方法及提供装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002319971A (ja) * 2001-04-20 2002-10-31 Fujitsu Ltd パケットデータ中継装置及び配信装置
JP2005244315A (ja) * 2004-02-24 2005-09-08 Kddi Technology Corp 映像ストリーミング伝送のネットワーク品質安定化装置
WO2010041469A1 (ja) * 2008-10-09 2010-04-15 日本電気株式会社 コンテンツ配信システム、コンテンツ配信方法およびコンピュータプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Adaptive rate control for streaming stored fine-grained scalable video;Philippe de Cuetos;《Network and operating systems support for digital audio and video》;20021231;全文 *
流媒体传输拥塞控制机制的研究;方灵鹏;《中国优秀硕士学位论文全文数据库》;20170215;全文 *

Also Published As

Publication number Publication date
JP6876131B2 (ja) 2021-05-26
EP3627791A1 (en) 2020-03-25
US11146606B2 (en) 2021-10-12
JP2020507235A (ja) 2020-03-05
CN108881931A (zh) 2018-11-23
EP3627791A4 (en) 2020-03-25
KR102216622B1 (ko) 2021-02-17
KR20190112780A (ko) 2019-10-07
US20190253470A1 (en) 2019-08-15
WO2018210130A1 (zh) 2018-11-22

Similar Documents

Publication Publication Date Title
CN108881931B (zh) 一种数据缓冲方法及网络设备
CN111135569B (zh) 云游戏处理方法、装置、存储介质与电子设备
US10602210B2 (en) Method and system for message notification
US10764623B2 (en) Method and system for media adaption
US10530825B2 (en) Catching up to the live playhead in live streaming
US10834161B2 (en) Dash representations adaptations in network
US10567825B2 (en) Cloud DVR storage
US9338204B2 (en) Prioritized side channel delivery for download and store media
US10091265B2 (en) Catching up to the live playhead in live streaming
EP3466081A1 (en) Catching up to the live playhead in live streaming
US9742749B1 (en) Live stream encryption
US10708667B1 (en) Combining fragments with different encodings
CN111083536A (zh) 调节视频码率的方法和装置
US20180048727A1 (en) Transmission apparatus and method, and storage medium
US11350160B1 (en) Management of a client device buffer
US20230199267A1 (en) Method and apparatus for processing adaptive multi-view streaming
Kim et al. Context-aware multimedia quality adaptation for smart streaming
KR20150106839A (ko) 가변 비트율 미디어 전송을 위한 보장 비트율 반환 방법 및 장치
KR20230008323A (ko) 엣지 캐싱 시스템

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