KR20190112780A - 데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체 - Google Patents

데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체 Download PDF

Info

Publication number
KR20190112780A
KR20190112780A KR1020197025444A KR20197025444A KR20190112780A KR 20190112780 A KR20190112780 A KR 20190112780A KR 1020197025444 A KR1020197025444 A KR 1020197025444A KR 20197025444 A KR20197025444 A KR 20197025444A KR 20190112780 A KR20190112780 A KR 20190112780A
Authority
KR
South Korea
Prior art keywords
data
terminal device
communication network
network
data volume
Prior art date
Application number
KR1020197025444A
Other languages
English (en)
Other versions
KR102216622B1 (ko
Inventor
즈청 리
Original Assignee
텐센트 테크놀로지(센젠) 컴퍼니 리미티드
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 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 filed Critical 텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Publication of KR20190112780A publication Critical patent/KR20190112780A/ko
Application granted granted Critical
Publication of KR102216622B1 publication Critical patent/KR102216622B1/ko

Links

Images

Classifications

    • H04L65/601
    • 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
    • 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
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream 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 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
    • 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/234336Processing 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 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

데이터 버퍼링 방법이 본 발명의 실시예에 개시된다. 방법은: 네트워크 디바이스가 멀티미디어 데이터를 획득하고 멀티미디어 데이터를 전송하기 위한 통신 네트워크의 특성 네트워크 정보를 획득하는 단계 ― 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하기 위한 제1 통신 네트워크 및/또는 멀티미디어 데이터를 단말 디바이스에 송신하기 위한 제2 통신 네트워크를 포함함 ― ; 통신 네트워크에 포함된 제1 통신 네트워크 및/또는 제2 통신 네트워크의 적어도 특성 네트워크 정보에 따라, 단말 디바이스에 대한 타겟 데이터 볼륨을 결정하는 단계; 획득된 멀티미디어 데이터로부터, 타겟 데이터 볼륨을 가지며 멀티미디어 데이터를 나타내는 제1 버퍼 데이터를 결정하는 단계, 및 제2 통신 네트워크를 통해 제1 버퍼 데이터를 단말 디바이스에 송신하여, 단말 디바이스에 의해 획득된 제1 버퍼 데이터의 데이터 볼륨이 특성 네트워크 정보에 매치하도록 하는 단계를 포함한다. 네트워크 디바이스 및 저장 매체 역시 본 발명의 실시예에 개시된다.

Description

데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체
관련 출원
이 출원은 2017년 5월 16일에 출원되었으며 그 전체가 참조로 포함되는, 중국 특허 출원 번호 201710345070.4를 우선권 주장한다.
기술 분야
본 개시내용은 통신 기술들에 관한 것이며, 특히, 데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체에 관한 것이다.
전통적인 라이브 스트리밍 프로세스에서, 콘텐츠 전달 네트워크(CDN, Content Delivery Network) 노드는 앵커/스트리머의 오디오/비디오 데이터(버퍼링된 데이터라고도 지칭됨)를 저장하기 위해, 사용자 요건(예컨대 지연 요건)에 기초하여 사용자를 위한 버퍼링 영역을 구성하여, 사용자가 CDN 노드에 액세스할 때, CDN 노드는 구성된 버퍼링 영역 내에 버퍼링된 스트리머의 오디오/비디오 데이터를 사용자에게 한번에 송신한다. 라이브 스트리밍을 시청하는 프로세스에서, 사용자는 실시간으로 CDN 노드에 의해 전달되는 스트리머의 오디오/비디오 데이터를 수신할 수 있다. 이 경우, 사용자가 CDN 노드에 액세스할 때, CDN 노드가 버퍼링 영역 내의 버퍼링된 스트리머의 오디오/비디오 데이터 모두를 사용자에게 한번에 송신하기 때문에, 사용자가 오디오/비디오를 재생할 때 프레임 멈춤(frame freezing)이 발생할 수 있다.
본 개시내용의 실시예들은 라이브 스트리밍 동안 데이터를 유창하게 재생하기 위해, 데이터 버퍼링 방법 및 네트워크 디바이스를 제공한다.
본 개시내용의 실시예들의 기술적 해법들은 이 방식으로 구현된다:
제1 양태에 따르면, 본 개시내용의 실시예는 데이터 버퍼링 방법을 제공하고, 데이터 버퍼링 방법은:
네트워크 디바이스에 의해, 멀티미디어 데이터 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하는 단계 ― 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계;
획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터를 나타내며 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하는 단계; 및
제2 통신 네트워크를 사용함으로써 단말 디바이스에 제1 버퍼링된 데이터를 송신하여, 제1 버퍼링된 데이터의 데이터 볼륨이 네트워크 특성 정보에 매치하도록 하는 단계를 포함한다.
제2 양태에 따르면, 본 개시내용의 실시예는 네트워크 디바이스를 제공하고, 네트워크 디바이스는:
멀티미디어 데이터 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하도록 구성되는, 획득 유닛 ― 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
적어도 통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하도록 구성되는, 프로세싱 유닛;
획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터를 나타내며 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하도록 구성되는, 버퍼링 유닛; 및
제2 통신 네트워크를 사용함으로써 단말 디바이스에 제1 버퍼링된 데이터를 송신하도록 구성되는, 송신 유닛 ― 제1 버퍼링된 데이터의 데이터 볼륨은 네트워크 특성 정보에 매치함 ― 을 포함한다.
제3 양태에 따르면, 본 개시내용의 실시예는 데이터 버퍼링 방법을 추가로 제공하며, 방법은 네트워크 디바이스에 의해 수행되고, 네트워크 디바이스는 하나 이상의 프로세서, 메모리, 및 하나 이상의 프로그램을 포함하고, 하나 이상의 프로그램은 메모리에 저장되고, 프로그램은 하나 이상의 유닛을 포함하고, 하나 이상의 유닛 각각은 명령들의 세트에 대응하고, 하나 이상의 프로세서는 명령들을 실행하도록 구성되고; 방법은:
멀티미디어 데이터 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하는 단계 ― 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계;
획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터를 나타내며 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하는 단계; 및
제2 통신 네트워크를 사용함으로써 단말 디바이스에 제1 버퍼링된 데이터를 송신하는 단계를 포함하고, 제1 버퍼링된 데이터의 데이터 볼륨은 네트워크 특성 정보에 매치한다.
제4 양태에 따르면, 본 개시내용의 실시예는 네트워크 디바이스를 추가로 제공하고, 네트워크 디바이스는 프로세서 및 프로세서 상에서 실행가능한 컴퓨터 프로그램을 저장하도록 구성되는 메모리를 포함하고; 그리고
프로세서는 컴퓨터 프로그램이 실행할 때 앞의 데이터 버퍼링 방법을 수행하도록 구성된다.
제5 양태에 따르면, 본 개시내용의 실시예는 컴퓨터 실행가능한 명령을 저장하는 컴퓨터-판독가능한 저장 매체를 추가로 제공하고, 컴퓨터 실행가능한 명령은 앞의 데이터 버퍼링 방법을 수행하기 위해 사용된다.
본 개시내용의 실시예들에 따른 데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체의 응용은 적어도 후속하는 유리한 기술적 효과들을 가진다:
단말 디바이스에 대응하는 타겟 데이터 볼륨은 실제 네트워크 상태에 기초하여 네트워크 디바이스에 의해 결정되고, 따라서, 타겟 데이터 볼륨을 가지며 네트워크 디바이스에 의해 결정된 제1 버퍼링된 데이터가 실제 네트워크 상태에 매치할 수 있어서, 버퍼링 데이터의 고정된 볼륨에 의해 야기되는 프레임 멈춤이 감소될 수 있고, 재생 유창성(playing fluency)이 개선될 수 있다.
도 1은 본 개시내용의 실시예에 따라 데이터 버퍼링 방법을 구현하는 것의 개략적인 플로우차트이다.
도 2는 본 개시내용의 실시예에 따라 데이터 버퍼링 방법의 응용 시나리오의 개략도이다.
도 3은 본 개시내용의 실시시예에 따른 데이터 버퍼링 방법의 개략적인 플로우차트이다.
도 4는 본 개시내용의 실시예에 따라 데이터 버퍼링 방법을 구현하는 것의 개략적인 플로우차트이다.
도 5는 본 개시내용의 실시예에 따른 적용 동안 데이터 버퍼링 방법의 프레임워크의 개략적인 다이어그램이다.
도 6은 본 개시내용의 실시예에 따른 데이터 버퍼링 방법에서 네트워크 디바이스와 단말 디바이스 간의 상호작용의 다이어그램이다.
도 7은 본 개시내용의 실시예에 따른 네트워크 디바이스의 기능적 구조들의 개략도이다.
도 8은 본 개시내용의 실시예에 따른 네트워크 디바이스의 하드웨어의 개략적인 구조도이다.
다음은 첨부 도면들 및 실시예들에 관해 상세하게 본 개시내용을 추가로 기술한다. 본원에 기술된 특정 실시예들이 단지 본 개시내용을 설명하기 위해 사용되지만, 본 개시내용을 제한하도록 의도되지 않는다는 것에 유의해야 한다.
CDN의 실제 응용에서, 관련 기술에서는, 버퍼링 영역 내에서 버퍼링된 스트리머의 모든 오디오/비디오 데이터가 CDN 노드에 의해 사용자에게 한번에 송신되기 때문에, 후속하는 문제점들이 존재할 수 있다.
첫째: 네트워크가 혼잡할 때, 라이브 스트리밍에서 비교적 큰 볼륨의 오디오/비디오 데이터가 존재하고, 일부 고-비트-레이트 오디오/비디오 데이터의 업링크 전송이 심지어 초당 2메가바이트(Mbps, Megabytes Per Second)의 대역폭을 요구하기 때문에, 5초의 버퍼링 기간이 사용자를 위해 구성되는 경우, 대응하는 데이터 볼륨은 10M이며, 따라서 일단 사용자가 CDN 노드에 액세스하면 전달될 10M 데이터가 존재한다. 불안정한 네트워크 환경, 예컨대, 나쁜 네크워크 액세스 조건에 의해 야기되는 업링크/다운링크 속도 지터 및 빈번한 오프라인 이슈들을 가지는 사용자에 대해, 사용자는 네트워크 혼잡 및 전송 제어 프로토콜(TCP, Transmission Control Protocol) 제로 윈도우를 경험할 가능성이 매우 높다.
둘째: 고-비트-레이트 라이브 스트리밍의 시나리오에서, 캐시 데이터가 고정되는 경우, 자신의 단말 구성이 나쁜 사용자에 대해, 고정된 사이즈이며 사용자가 CDN 노드에 액세스한 이후 전달되는 버퍼링된 데이터가 단말 구성의 캐시 용량보다 더 큰 경우, 블랙 스크린 /스플래시 스크린이 프레임 건너뛰기로 인해 야기될 수 있다.
셋째: 캐시 용량이 고정되기 때문에, 라이브 스트리밍을 시청하는 프로세스에서, 프레임 멈춤이 발생하고 스트리머가 네트워크에 다시-액세스하는 경우, 프레임-멈춤-방지 능력이 감소된다. 이 경우, 단말의 최대 프레임-멈춤-방지 능력은 단말에 대해 구성되는 버퍼링 기간이다.
따라서, 앞의 문제들을 해결하기 위해, 본 개시내용의 실시예들은 데이터 버퍼링 방법 및 네트워크 디바이스를 제공하여, CDN 노드의 버퍼링된 오디오/비디오 데이터가 사용자 네트워크 환경 및 단말 구성에 기초하여 동적으로 조정되어 많은 프레임 멈춤 횟수를 감소시키기 위한 토대를 마련하고(lay), 라이브 스트리밍의 시청 경험을 개선하기 위한 토대를 마련할 수 있다.
도 1은 본 개시내용의 실시예에 따른 데이터 버퍼링 방법을 구현하는 것의 개략적 플로우차트이다. 방법은 네트워크 디바이스, 예를 들어, CDN 노드에 적용될 수 있다. 도 1에 도시된 바와 같이, 본 개시내용의 이 실시예에 따른 데이터 버퍼링 방법은 후속하는 단계들을 포함한다:
단계 101: 네트워크 디바이스는 멀티미디어 데이터 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득한다.
통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성된다.
이 실시예에서, 멀티미디어 데이터는 오디오 데이터 및/또는 비디오 데이터일 수 있다.
여기서, 제1 통신 네트워크는 전송 단부와 네트워크 디바이스 사이의 통신 네트워크일 수 있다.
예를 들어, 라이브 스트리밍 시나리오에서, 제1 통신 네트워크는 스트리머의 디바이스와 CDN 노드 사이의 통신 네트워크일 수 있거나, 또는 제1 통신 네트워크는 네트워크 디바이스(예를 들어, CDN 노드)와 소스 사이트 사이의 통신 네트워크일 수 있다. 소스 사이트는 라이브 스트리밍의 스트리머에 의해 업로드되고 저장되는 대부분의 원래 오디오/비디오 데이터를 저장하는 서버이다.
실제 응용 동안, 제1 통신 네트워크는 네트워크 디바이스가 멀티미디어 데이터를 획득할 때 사용되는 통신 네트워크일 수 있다. 대응적으로, 제2 통신 네트워크는 네트워크 디바이스와 라이브 스트리밍에서 멀티미디어 데이터를 수신하는 수신기 단말(즉, 이 실시예에 기술되는 단말 디바이스) 사이의 통신 네트워크, 예를 들어, CDN 노드와 라이브 스트리밍을 시청하는 사용자 디바이스 사이의 통신 네트워크이다.
도 2는 본 개시내용의 실시예에 따른 데이터 버퍼링 방법의 응용 시나리오의 개략도이다. 도 2에 도시된 바와 같이, 이 실시예는 라이브 스트리밍의 시나리오에 적용될 수 있다. 라이브 스트리밍의 시나리오에서, CDN 노드는 2가지 방식, 소위 방식 1 및 방식 2로 스트리머 단말로부터 오디오/비디오 데이터를 획득할 수 있다.
예를 들어, 방식 1에서, CDN 노드는, 제1 통신 네트워크를 사용함으로써 스트리머 단말로부터, 스트리머 단말에 의해 수집되는 오디오/비디오 데이터를 실시간으로(즉, 라이브 스트리밍 데이터) 직접 획득하여, 획득된 오디오/비디오 데이터를 제2 통신 네트워크를 사용함으로써 수신기 단말에 추가로 전송하여, 라이브 스트리밍 시청 절차를 구현할 수 있다.
또 다른 예를 들어, 방식 2에서, CDN 노드는, 제1 통신 네트워크를 사용함으로써 소스 사이트로부터, 스트리머 단말에 대응하는 오디오/비디오 데이터(소위, 라이브 스트리밍 데이터)를 획득하여, 제2 통신 네트워크를 사용함으로써, 획득된 오디오/비디오 데이터를 수신기 단말에 추가로 전송한다. 여기서, CDN 노드가 소스 사이트로부터 오디오/비디오 데이터를 획득하기 전에, 스트리머 단말은 스트리머 단말에 의해 실시간으로 수집되는 오디오/비디오 데이터를 소스 사이트에 업로드하여 오디오/비디오 데이터를 저장한다(라이브 스트리밍 단말과 소스 사이트 사이의 접속 관계는 도 2에 도시되지 않는다). 이 방식으로, 라이브 스트리밍 시청 절차가 구현된다. 명백히, 실제 응용 동안, CDN 노드에 의해 오디오/비디오 데이터를 획득하는 방식은, 실제 상황, 예를 들어, 네트워크 혼잡 상태에 기초하여 결정될 수 있다.
실제 응용 동안, 네트워크 특성 정보는 후속하는 정보: 지연, 대역폭, 지연 변경(소위, 지터), 트래픽 등 중 적어도 하나를 포함하지만, 이에 제한되지 않는다. 이 경우, 네트워크 성능은 네트워크 특성 정보에 기초하여 평가될 수 있다. 예를 들어, 네트워크가 혼잡한지는 네트워크 특성 정보를 사용함으로써 결정될 수 있다.
단계 102: 통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정한다.
실시예에서, 타겟 데이터 볼륨을 결정할 때, 네트워크 디바이스는 단말 디바이스의 캐시 상태를 추가로 고려하여, 결정된 타겟 데이터 볼륨과 단말 디바이스 사이의 매치 정도를 추가로 개선할 수 있다(예를 들어, 단말 디바이스에 대응하는 실제 네트워크 환경, 및 단말 디바이스의 실제 버퍼링 용량). 실시예에서, 네트워크 디바이스는 단말 디바이스의 캐시 용량을 획득하여, 적어도 캐시 용량 및 통신 네트워크에 포함되는 제1 통신 네트워크 및/또는 제2 통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 추가로 결정한다. 예를 들어, 단말 디바이스의 재생 파라미터의 가중치와 캐시 용량의 가중치가 구성될 수 있고, 그 다음에 가중 프로세싱이 재생 파라미터 및 캐시 용량에 대해 수행되고, 가중된 재생 파라미터 및 가중된 캐시 용량에 기초하여, 단말 디바이스에 매치하는 미리 설정된 데이터 볼륨이 결정된다. 실제 응용 동안, 캐시 용량의 타입은 원래 캐시 용량 및 나머지 캐시 용량 중 적어도 하나를 포함한다.
실시예에서, 타겟 데이터 볼륨은 미리 설정된 이미지 유닛들의 개수를 사용함으로써 표현된다. 예를 들어, 타겟 데이터 볼륨은 픽처들의 그룹들(GOP, Group Of Pictures)의 개수를 사용함으로써 표현된다. 이 경우, 단계(102)에서 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 것은 네트워크 디바이스가 단말 디바이스에 대응하는 버퍼링될 필요가 있는 미리 설정된 이미지 유닛들의 제1 개수를 결정하고; 그리고 단말 디바이스에 대응하는 타겟 데이터 볼륨으로서 제1 개수의 미리 설정된 이미지 유닛들의 전체 데이터 볼륨을 사용하는 것을 포함할 수 있다.
여기서, GOP는 고정된 모드에서 일련의 I 프레임들, P 프레임들, 및 B 프레임들을 포함한다. I 프레임은 키 프레임을 나타내는 인트라-코딩된 프레임이다. 이것은, I 프레임이 완전한 이미지이며, I 프레임이 디코딩될 때, I 프레임의 데이터만 요구됨을 의미한다. P 프레임은 프레임과 이전 키 프레임 사이의 또는 프레임과 이전 P 프레임 사이의 차이를 나타내는 순방향 예측 코딩된 프레임이고, P 프레임이 디코딩될 때, 이전에-버퍼링된 이미지 더하기 프레임에 의해 정의되는 차이는 최종 이미지를 생성하기 위해 사용될 필요가 있다. B 프레임은 양방향 차이 프레임을 나타내는 양방향으로 예측되는 보간된 코딩된 프레임이다. 구체적으로, B 프레임은 프레임과 이전 프레임 사이의 그리고 프레임과 다음 프레임 상이의 차이들을 기록하고, 높은 압축률을 가진다. P 프레임 및 B 프레임은 I 프레임보다는 디코딩 동안 중앙 프로세서(CPU)와 같은 더 많은 하드웨어 리소스를 소모한다.
실시예에서, 실시간 요건의 견지에서 지연 임계(즉, 명백하게 인지될 수 있는 지연 시간, 예를 들어, 10초)보다 더 큰 비디오 지연을 용인할 수 있는 사용자에 대해, 타겟 데이터 볼륨은 적어도 하나의 GOP 버퍼로 설정될 수 있고, GOP들의 개수는 사용자 네트워크 상태에 기초하여 실시간으로 동적으로 조정될 수 있다. 명백히, 네트워크 디바이스는 타겟 데이터 볼륨을 설정하지 않을 수 있는데, 소위, 네트워크 디바이스는 버퍼링을 수행하지 않는다. 예를 들어:
시나리오 1: 스트리머 단말의 비디오 지연의 지터가 지터 임계 미만일 때, 즉, 업링크가 안정적이고, 청중(즉, 수신기 단말)의 네트워크 환경이 혼잡할 때, 타겟 데이터 볼륨은 가장 가까운 GOP의 데이터 볼륨이다. 말하자면, 제1 버퍼링된 데이터는 가장 가까운 GOP이다.
시나리오 2: 스트리머 단말의 업링크가 안정적이고, 청중의 네트워크 환경이 정상일 때, 타겟 데이터 볼륨은 제로이거나, 또는 기껏해야 가장 가까운 GOP의 데이터 볼륨이다. 말하자면, 제1 버퍼링된 데이터는 가장 가까운 GOP를 저장하지 않거나, 기껏해야 가장 가까운 GOP를 저장한다.
시나리오 3: 스트리머 단말의 비디오 지연의 지터가 지터 임계보다 더 크고, 즉, 업링크가 불안정하고, 청중의 네트워크 환경이 혼잡할 때, 타겟 데이터 볼륨은 둘 이상의 가장 가까운 GOP에 대응하는 데이터 볼륨이다. 말하자면, 제1 버퍼링된 데이터는 둘 이상의 가장 가까운 GOP이다.
시나리오 4: 스트리머 단말의 업링크가 불안정하고, 청중의 네트워크 환경이 정상일 때, 타겟 데이터 볼륨은 가장 가까운 3개 이상의 GOP에 대응하는 데이터 볼륨이다. 말하자면, 제1 버퍼링된 데이터는 3개 이상의 가장 가까운 GOP이다.
앞에 열거된 시나리오들이 단지 예들이며, GOP들의 개수는 실제 상황에 기초하여 조정될 수 있다는 것에 유의해야 한다. 실제 응용 동안, 라이브 스트리밍의 과도하게 긴 시청 지연을 회피하기 위해, 타겟 데이터 볼륨의 제한, 즉, 미리 설정된 개수를 초과하지 않는 GOP들의 최대 데이터 볼륨이 존재하고; 또는 그렇지 않은 경우, 라이브 스트리밍의 시청 지연이 증가될 수 있다.
단계 103: 획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터를 나타내고 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정한다.
단계 104: 제2 통신 네트워크를 사용함으로써 단말 디바이스에 제1 버퍼링된 데이터를 송신한다.
제1 버퍼링된 데이터의 데이터 볼륨은 네트워크 특성 정보에 매치한다.
예를 들어, 도 3은 본 개시내용의 실시예에 따른 데이터 버퍼링 방법의 개략적인 플로우차트이다. 도 3에 도시된 바와 같이, 방법은 후속하는 단계들을 포함한다.
단계 301: 네트워크 디바이스는 멀티미디어 데이터를 획득한다.
단계 302: 네트워크 디바이스는 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득한다.
단계 303: 네트워크 디바이스는, 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정한다.
단계 304: 네트워크 디바이스는 멀티미디어 데이터의 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정한다.
단계 305: 네트워크 디바이스는 단말 디바이스에 제1 버퍼링된 데이터를 송신한다.
단계 306: 제1 버퍼링된 데이터에 대응하는 멀티미디어 데이터를 재생한다.
타겟 데이터 볼륨을 결정하고 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정한 이후, 네트워크 디바이스는 제2 통신 네트워크를 사용함으로써 단말 디바이스에 제1 버퍼링된 데이터를 송신할 수 있어서, 단말 디바이스가 제1 버퍼링된 데이터에 대응하는 멀티미디어 데이터를 재생한다. 그 결과, 타겟 데이터 볼륨이 실제 네트워크 상태에 기초하여 결정되기 때문에, 단말 디바이스에 의해 수신되는 제1 버퍼링된 데이터의 데이터 볼륨은 실제 네트워크 상태에 매치할 수 있다. 이 방식으로, 버퍼링된 데이터의 고정된 볼륨에 의해 야기되는 프레임 멈춤의 위험성이 감소될 수 있고, 프레임-멈춤-방지 능력이 개선된다.
실제 응용에서, 사용자 네트워크 환경이 혼잡할 때, 또는 CDN 노드가 소스 사이트에 액세스하는 네트워크가 혼잡할 때, 버퍼링된 이력 데이터가 버퍼링된 데이터의 볼륨(즉, 타겟 데이터 볼륨)의 크기에 기초하여 폐기될 수 있고, 가장 가까운 GOP의 데이터가 버퍼링되어, 라이브 스트리밍의 매끄러움을 보장한다. 실시예에서, 네트워크 디바이스는, 통신 네트워크에 포함되는 제1 통신 네트워크 및/또는 제2 통신 네트워크의 네트워크 특성 정보에 기초하여, 그것이 제1 버퍼링된 데이터에 대해 프레임 폐기를 수행할 필요가 있는지를 결정한다. 프레임 폐기가 제1 버퍼링된 데이터에 대해 수행될 필요가 있는 경우, 네트워크 디바이스는 오디오 프레임들 및/또는 비디오 프레임들의 프레임 타입들의 우선순위들의 순서를 획득하고, 프레임 타입들의 우선순위들의 순서에 기초하여 제1 버퍼링된 데이터 내의 오디오 프레임들 및/또는 비디오 프레임들에 대해 프레임 폐기를 수행하여, 제1 버퍼링된 데이터 내에 가장 가까운 GOP 데이터를 추가하기 위해, 제1 버퍼링된 데이터의 데이터 볼륨을 감소시킨다. 예를 들어, 비디오 프레임들의 폐기된 이후 오디오 프레임들이 폐기될 수 있다. 여기서, B 프레임이 높은 압축률을 가지는 양방향으로 예측되는 코딩된 프레임이며, B 프레임을 인코딩 및 디코딩하는 것이 큰 CPU 지연을 소모함에 따라, 비디오 프레임들 내의 B 프레임이 먼저 우선적으로 폐기된다. 두번째로 바람직하게, P 프레임이 폐기된다. 마지막으로, I 프레임이 폐기된다.
이 실시예에서, 타겟 데이터 볼륨을 가지며 이 실시예에서의 방법을 사용함으로써 결정되는 제1 버퍼링된 데이터가, 사용자의 단말 디바이스가 네트워크 디바이스에 액세스한 이후, 즉, 네트워크 디바이스가 단말 디바이스와의 제2 통신 네트워크를 설정한 이후, 제2 통신 네트워크를 사용함으로써 단말 디바이스에 송신될 수 있다는 것에 유의해야 한다. 예를 들어, 실시예에서, 단말 디바이스에 대응하는 제1 버퍼링된 데이터를 결정하고, 제2 통신 네트워크의 네트워크 설정 성공 정보를 검출한 이후, 네트워크 디바이스는 제2 통신 네트워크를 통해 단말 디바이스에 제1 버퍼링된 데이터를 송신한다. 이 경우, 타겟 데이터 볼륨은 멀티미디어 데이터를 재생하기 위해 사용되고 단말 디바이스에 대응하는 재생 파라미터에 대해 결정될 수 있다. 본원에서의 재생 파라미터는 단말 디바이스에 의해 멀티미디어 데이터를 재생하는 재생 성능, 예를 들어, 단말 디바이스에서의 최대 지연 또는 프레임 멈춤 정도를 나타내기 위해 사용된다. 이후, 타겟 데이터 볼륨은 단말 디바이스에서 최대 지연 또는 프레임 멈춤 정도에 대해 최종적으로 결정된다. 단말 디바이스가 네트워크 디바이스에 접속될 때, 네트워크 디바이스는 먼저 제1 버퍼링된 데이터를 단말 디바이스에 송신할 수 있다. 이 경우, 제1 버퍼링된 데이터가 단말 구성에 기초하여 생성되기 때문에, 제1 버퍼링된 데이터를 사용하는 것은 청중의 하나의 플레이어 내의 다수의 버퍼들을 인에이블시킨다. 예를 들어, 단말 디바이스가 네트워크 디바이스에 접속될 때, 네트워크 디바이스는 구성된 제1 버퍼링된 데이터를 네트워크 디바이스에 한번에 전달할 수 있다. 이 방식으로, 네트워크 지터, 스트리머의 업링크 오디오/비디오 데이터의 불안정성, 및 CDN 노드의 검색 네트워크(즉, CDN 노드와 소스 사이트 사이의 네트워크)와 같은 예외들에 의해 야기되는 라이브 스트리밍 동안의 프레임 멈춤은 청중의 시청 프로세스에서 감소될 수 있다. 실제 응용에서, 타겟 데이터 볼륨은 반드시 크지는 않은데, 왜냐하면, 과도하게 큰 데이터 볼륨이 라이브 스트리밍을 시청할 때 사용자의 시청 지연을 증가시키기 때문이다.
대안적으로, 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터는, 제2 통신 네트워크가 설정된 이후, 제2 통신 네트워크를 사용함으로써 네트워크 디바이스에 의해 단말 디바이스에 송신될 수 있다. 예를 들어, 예로서 라이브 스트리밍을 사용하여, 제1 버퍼링된 데이터가, 네트워크 디바이스에 의해, 사용자의 단말 디바이스가 막 액세스될 때 단말 디바이스에 송신될 수 있거나, 또는 네트워크 디바이스에 의해, 라이브 스트리밍 프로세스에서 단말 디바이스에 송신된다.
실시예에서, 제1 버퍼링된 데이터의 데이터 볼륨이 실제 네트워크 상태에 기초하여 결정되기 때문에, 제1 버퍼링된 데이터가 라이브 스트리밍의 설정의 조기 스테이지에서 단말 디바이스에 송신되는지 또는 라이브 스트리밍 프로세스에서 단말 디바이스에 송신되는지와는 무관하게, 네트워크 혼잡에 의해 야기되는 프레임 멈춤 문제가 회피될 수 있다. 추가로, 네트워크가 혼잡할 때, 비교적 작은 데이터 볼륨을 가지는 제1 버퍼링된 데이터는 이 실시예에서의 방법을 사용함으로써 결정될 수 있다. 이 방식으로, 더 큰 네트워크 부하가 회피될 수 있다.
이 방식으로, 본 개시내용의 이 실시예의 방법에서, 단말 디바이스에 대응하는 타겟 데이터 볼륨이 실제 네트워크 상태에 기초하여 네트워크 디바이스에 의해 결정되기 때문에, 네트워크 디바이스에 의해 결정되며 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터는 실제 네트워크 상태에 매치할 수 있다. 따라서, 본 개시내용의 이 실시예는 버퍼링되는 데이터의 고정된 볼륨에 의해 야기되는 프레임 멈춤의 위험성을 감소시키고 프레임-멈춤-방지 능력을 개선하여, 사용자 경험을 개선시키는 토대를 추가로 마련할 수 있다.
실시예에서, 2-레벨 버퍼링 방법이 사용되어 버퍼링된 데이터의 고정된 볼륨에 의해 야기되는 프레임 멈춤의 문제를 해결할 수 있다. 도 4는 본 개시내용의 실시예에 따른 데이터 버퍼링 방법을 구현하는 것의 개략적인 플로우차트이다. 도 4에 도시된 바와 같이, 방법은 후속하는 단계들을 포함할 수 있다.
단계 401: 네트워크 디바이스는 멀티미디어 데이터, 및 멀티미디어 데이터를 재생하기 위해 사용되며 단말 디바이스에 대응하는 재생 파라미터를 획득한다.
실시예에서, 재생 파라미터는 단말 디바이스 상에서 발생할 수 있는 최대 지연일 수 있거나, 또는 발생할 수 있는 프레임 멈춤 정도일 수 있다.
단계 402: 네트워크 디바이스는, 재생 파라미터에 기초하여, 단말 디바이스에 대응하는 미리 설정된 데이터 볼륨을 결정하고, 획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터에 대응하는 제2 버퍼링된 데이터를 결정한다.
제2 버퍼링된 데이터는 미리 설정된 데이터 볼륨을 가진다.
단계 403: 네트워크 디바이스는 단말 디바이스와의 제2 통신 네트워크를 설정한다.
제2 통신 네트워크가 성공적으로 설정된 이후, 단말 디바이스는 타겟 명령을 생성한다. 타겟 명령은 제2 버퍼링된 데이터를 송신하도록 네트워크 디바이스에 명령한다.
단계 404: 네트워크 디바이스는 타겟 명령을 검출할 때 단말 디바이스에 제2 버퍼링된 데이터를 송신한다.
단말 디바이스에 의해 획득되는 제2 버퍼링된 데이터의 데이터 볼륨은 재생 파라미터에 매치한다.
단계 405: 단말 디바이스는 제2 버퍼링된 데이터에 대응하는 멀티미디어 데이터를 재생한다.
본 개시내용의 이 실시예에서, 타겟 명령은 적어도 단말 디바이스에 의해 네트워크 디바이스와 설정된 제2 통신 네트워크의 네트워크 설정 성공 정보에 기초하여 생성된다. 말하자면, 타겟 명령은 적어도 단말 디바이스에 의해 네트워크 디바이스에 액세스하는 것의 액세스 성공 정보에 기초하여 단말 디바이스에 의해 생성된다. 이 방식으로, 단말 디바이스가 네트워크 디바이스에 액세스한 이후, 네트워크 디바이스는 단말 디바이스에 제1-레벨 버퍼링된 데이터, 소위, 제2 버퍼링된 데이터를 먼저 송신할 수 있다. 여기서, 제2 버퍼링된 데이터가 단말 구성에 기초하여 생성되기 때문에, 제1-레벨 버퍼링된 데이터를 사용하는 것은 청중의 플레이어 내의 다수의 버퍼들을 인에이블시킨다. 예를 들어, 단말 디바이스가 네트워크 디바이스에 액세스할 때, 네트워크 디바이스는 구성된 제2 버퍼링된 데이터를 네트워크 디바이스에 한번에 전달할 수 있다. 이 방식으로, 예를 들어, 네트워크 지터, 스트리머의 업링크 오디오/비디오 데이터의 불안정성, 및 CDN 노드의 검색 네트워크(즉, CDN 노드와 소스 사이트 사이의 네트워크)의 예외들에 의해 야기되는 라이브 스트리밍 동안의 프레임 멈춤은 청중의 시청 프로세스에서 감소될 수 있다. 여기서, 과도하게 큰 데이터 볼륨이 라이브 스트리밍을 시청할 때 사용자의 시청 지연을 증가시킬 수 있기 때문에, 미리 설정된 데이터 볼륨은 반드시 크지는 않다.
이 실시예에서, 미리 설정된 데이터 볼륨은 미리 설정된 이미지 유닛들의 개수를 사용함으로써 표현될 수 있다. 예를 들어, 미리 설정된 데이터 볼륨은 적어도 하나의 GOP로서 구성될 수 있고, GOP들의 개수는 사용자 네트워크 상태에 기초하여 실시간으로 동적으로 조정될 수 있다.
실시예에서, 제1-레벨 버퍼링된 데이터(즉, 제2 버퍼링된 데이터)를 단말 디바이스에 송신한 이후, 네트워크 디바이스는 실제 네트워크 상태에 기초하여 제2-레벨 버퍼링된 데이터를 추가로 송신할 수 있다.
단계 406: 네트워크 디바이스는 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득한다.
단계 407: 네트워크 디바이스는, 통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨 및 타겟 데이터 볼륨을 가지는 멀티미디어 데이터의 제1 버퍼링된 데이터를 결정한다.
단계 408: 네트워크 디바이스는 제1 버퍼링된 데이터를 단말 디바이스에 송신한다.
단계 409: 단말 디바이스는 제1 버퍼링된 데이터에 대응하는 멀티미디어 데이터를 재생한다.
소위, 제1 버퍼링된 데이터는 제2-레벨 버퍼링된 데이터이다. 여기서, 제2-레벨 버퍼링된 데이터가 라이브 스트리밍 프로세스에서 실제 네트워크 상태에 기초하여 결정되기 때문에, 이 실시예는 2-레벨 버퍼링의 방식으로 라이브 스트리밍 동안 프레임 멈춤의 위험성을 가능한 많이 감소시킬 수 있다.
여기서, 타겟 데이터 볼륨 및 제1 버퍼링된 데이터를 결정하는 프로세스에 대해서는, 앞의 실시예에서의 방식을 참조하라.
제1-레벨 버퍼링된 데이터를 결정할 때, 네트워크 디바이스는 단말 디바이스의 캐시 용량을 지칭할 수 있다. 실시예에서, 단말 디바이스는 단말 디바이스의 캐시 용량을 획득하여, 재생 파라미터 및 캐시 용량에 기초하여, 단말 디바이스에 매치하는 미리 설정된 데이터 볼륨을 결정한다. 이 방식으로, 그것은 나쁜 단말 구성 및 많은 수의 버퍼링된 데이터에 의해 야기되는 블랙 스크린/스플래시 스크린을 감소시키는 것을 도우며, 사용자의 라이브 스트리밍 시청 경험을 개선하기 위한 토대를 추가로 마련한다.
명백히, 실제 응용 동안, 미리 설정된 데이터 볼륨은 통신 네트워크에 포함되는 제1 통신 네트워크 및/또는 제2 통신 네트워크의 네트워크 특성 정보에 기초하여 추가로 결정될 수 있다. 결정 프로세스는 타겟 데이터 볼륨을 결정하는 앞의 프로세스를 지칭한다.
다음은 후속하는 응용 시나리오에 대해 본 개시내용의 실시예들을 상세하게 기술한다. 도 5에 도시된 바와 같이, 라이브 스트리밍의 단말 디바이스(예를 들어, 데스크톱 또는 스마트폰과 같은, 카메라를 가지는 단말)는 오디오/비디오 데이터를 수집하고, 정량화하고, 인코딩하고, 캡슐화하며, 캡슐화된 오디오/비디오 데이터를 실시간 메시징 프로토콜(RTMP)을 사용함으로써 실시간 스트리밍 플랫폼 내의 업로드 액세스 모듈에 캡슐화된 오디오/비디오 데이터를 업로드한다. 업로드 액세스 모듈은, 사용자에 의해 업로드된 캡슐화된 오디오/비디오 데이터 내에 반송되는 인증 정보 파라미터에 기초하여 인증 센터에서, 라이브 스트리밍의 단말 디바이스가 라이브 스트리밍 허가를 가지는지를 인증한다. 라이브 스트리밍의 단말 디바이스가 라이브 스트리밍 허가를 가지는 경우, 업로드 액세스 모듈은 라이브 스트리밍의 단말 디바이스에 대응하는 오디오/비디오 데이터를 트랜스코딩 모듈에 전송하고, 트랜스코딩 모듈은 다운링크 사용자(예를 들어, 수신기 단말)에 의해 시청되는 오디오/비디오의 포맷에 기초하여 트랜스코딩을 수행하고, 트랜스코딩된 오디오/비디오 데이터를 각각의 CDN 클러스터에 전달한다. 실제 응용 동안, CDN 클러스터는 적어도 2개의 CDN 노드를 포함한다. 여기서, 다운링크 사용자에 의해 지원되는 오디오/비디오 포맷이 RTMP/FLV(플래시 비디오)일 때, 트랜스코딩 모듈은 전달 모듈을 사용함으로써 CDN 클러스터에 오디오/비디오 데이터를 직접 송신하고, CDN 클러스터 내의 특정 CDN 노드(예를 들어, 다운링크 사용자에게 가장 가까운 CDN 노드)를 사용함으로써 다운링크 사용자에게 오디오/비디오 데이터를 전달한다. 다운링크 사용자에 의해 지원되는 오디오/비디오 포맷이 하이퍼텍스트 전송 프로토콜 라이브 스트리밍(HyperText Transfer Protocol Live Streaming)(HLS)일 때, 트랜스코딩 모듈은 레코딩, 스크린샷 및 슬라이싱을 수행함으로써 분산형 파일 시스템에 오디오/비디오 데이터를 송신하고, 분산형 파일 시스템을 사용함으로써 CDN 클러스터에 오디오/비디오 데이터를 송신하여, CDN 클러스터 내의 특정 CDN 노드(예를 들어, 다운링크 사용자에게 가장 가까운 CDN 노드)를 사용함으로써 다운링크 사용자에게 오디오/비디오 데이터를 추가로 전달한다. 여기서, 트랜스코딩 모듈은, 다운링크 사용자에 의해 지원되는 오디오/비디오 포맷이 HLS인 경우 오디오/비디오 데이터에 대한 슬라이싱을 수행하고, 슬라이싱된 오디오/비디오 데이터를 분산형 파일 시스템에 추가로 송신한다. 레코딩 또는 스크린샷이 수행될 필요가 있는지는 사용자 요건에 기초하여 결정될 수 있다. 실시예에서, 라이브 스트리밍 플랫폼에는 불법 콘텐츠 모니터링 모듈(도 5에 미도시됨)이 추가로 제공되며, 불법 콘텐츠 모니터링 모듈을 사용함으로써, 불법 콘텐츠 인증이 분산형 파일 시스템 내의 스크린샷에 대해 수행될 수 있다. 비디오가 불법 비디오인 경우, 인증 센터는 스트리머가 라이브 스트리밍하는 것을 금지하도록 실시간으로 통지받으며, 사용자는 라이브 스트리밍을 시청하는 것이 금지된다. 마찬가지로, 라이브 스트리밍의 사용자를 인증할 때, 인증 센터는 라이브 스트리밍의 사용자에 의해 업로드되는 오디오/비디오 데이터에 대한 불법 콘텐츠 인증을 수행할 수 있다. 그 결과, 불법 비디오가 전달되는 것이 방지된다. 마지막으로, 다운링크 사용자는 사용자의 선택에 기초하여 오디오/비디오 포맷을 선택하고, CDN 클러스터 근처에서 라이브 스트리밍을 시청한다.
도 6에 도시된 바와 같이, 본 개시내용의 실시예들에 따른 방법이 도 5의 프레임워크에 기초하여 구현되는 예가 예시된다. 실시예에서, 청중은 CDN 클러스터 내의 근처 CDN 노드에 액세스하고, CDN 노드는 청중(즉, 다운링크 사용자)의 구성 요건(예를 들어, 애플리케이션 APP의 구성 요건)에 기초하여 전달될 제1 프레임의 버퍼링된 데이터 볼륨(즉, 적어도 하나의 GOP를 포함하는, 제1-레벨 버퍼링된 데이터 볼륨)을 결정한다. 청중이 CDN 노드에 액세스한 이후, CDN 노드는 제1-레벨 버퍼링된 데이터 볼륨을 가지고 구성되는 제1 프레임의 버퍼링된 데이터(즉, 제1-레벨 버퍼링된 데이터)를 청중에게 한번에 전달한다. 여기서, 제1 프레임의 버퍼링된 데이터는 사용자의 플레이어에서 주로 버퍼링되고, 버퍼링된 데이터는 재생되는데, 이는 예를 들어, 네트워크 지터, 스트리머의 업링크 오디오/비디오 데이터의 불안정성에 의해 야기되는 라이브 스트리밍 동안의 프레임 멈춤을 추가로 회피할 수 있거나, 또는 CDN 노드의 검색 네트워크의 예외들이 청중의 시청 프로세스에서 감소될 수 있다.
실제 응용 동안, 제1 프레임 캐시 용량(제1 프레임의 버퍼링된 데이터를 저장하는데 사용됨)은 단말에 대해 구성되는 캐시 용량 및 네트워크 특성 정보(예를 들어, 대역폭, 지연, 및 지터)에 기초하여 포괄적으로 결정된다. 예를 들어, 제1 프레임 캐시 용량은 대응하는 가중치들을 구성함으로써 결정된다. 캐시 용량의 가중치는 재생 매끄러움을 제어하기 위해 사용되고, 네트워크 특성 정보의 가중치는 지연을 제어하기 위해 사용되어, 가중치들은 지연 시간과 재생 매끄러움 사이의 균형을 이루고, 비교적 큰 캐시 용량이 구성될 때 사용자에 의해 라이브 스트리밍을 시청하는 것의 지연이 비교적 크다는 문제를 해결할 수 있다.
실시예에서, CDN 노드는 제2-레벨 버퍼링된 데이터를 청중에게 송신한다. 여기서, 제2-버퍼링된 데이터의 데이터 볼륨, 즉, 제2-레벨 버퍼링된 데이터 볼륨은 동적 버퍼링된 데이터 볼륨이다. 실제 응용 동안, 청중에 의해 용인될 수 있는 비디오 지연이 지연 임계(즉, 명백히 느껴질 수 있는 지연 시간, 예를 들어, 10초)보다 더 클 때, CDN 노드는 제2-레벨 버퍼링된 데이터 볼륨을 구성할 수 있다. 예를 들어, 제2-레벨 버퍼링된 데이터 볼륨은 적어도 하나의 GOP 버퍼를 포함하도록 구성되고, GOP들의 개수는 사용자 네트워크 조건에 기초하여, 예를 들어, 업링크가 안정적인지에 기초하여 동적으로 조정될 수 있다. 기재들의 예들은 다음과 같다.
A. 스트리머 업링크가 안정적이고, 청중의 네트워크 환경이 혼잡하고, 제2-레벨 버퍼링된 데이터는 가장 가까운 GOP이다.
B. 스트리머 업링크가 안정적이고, 청중의 네트워크 환경이 정상이고, 제2-레벨 버퍼링된 데이터는 제로이거나 또는 기껏해야 1개의 가장 가까운 GOP이다.
C. 스트리머 업링크가 불안정하고, 청중의 네트워크 환경이 혼잡하고, 제2-레벨 버퍼링된 데이터는 2개 이상의 가장 가까운 GOP이다.
D. 스트리머 업링크가 불안정하고, 청중의 네트워크 환경이 정상이고, 제2-레벨 버퍼링된 데이터는 3개 이상의 가장 가까운 GOP이다.
실시예에서, 네트워크가 혼잡할 때, 버퍼링된 데이터 내의 비디오 프레임들 및/또는 오디오 프레임들은 폐기될 수 있다.
예를 들어, 다운링크 사용자 네트워크 환경 또는 CDN 노드가 소스 사이트에 액세스하는 검색 네트워크가 혼잡할 때, 버퍼링된 이력 데이터는 데이터 볼륨의 크기에 기초하여 이 시나리오에서 폐기되어, 가장 가까운 GOP 데이터를 버퍼링하고, 이에 의해 프레임 멈춤을 감소시키는 토대를 마련할 수 있다. 예를 들어, 비디오 프레임들이 폐기된 이후 오디오 프레임들이 폐기될 수 있다. B 프레임이 높은 압축률을 가지는 양방향으로 예측되는 프레임이며, B 프레임을 인코딩 및 디코딩하는 것이 큰 CPU 지연을 소모함에 따라, 비디오 프레임들 내의 B 프레임이 먼저 우선적으로 폐기된다. 두번째로 바람직하게, P 프레임이 폐기된다. 마지막으로, I 프레임이 폐기된다.
이 방식으로, 이 실시예는 버퍼링된 데이터의 고정된 볼륨에 의해 야기되는 프레임 멈춤의 위험성을 감소시키고, 사용자 경험을 개선시키는 토대를 마련한다.
실시예는 네트워크 디바이스를 추가로 제공한다. 도 7에 도시된 바와 같이, 네트워크 디바이스는:
멀티미디어 데이터, 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하도록 구성되는, 획득 유닛(71) ― 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
적어도 통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하도록 구성되는, 프로세싱 유닛(72);
획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터의, 그리고 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하도록 구성되는, 버퍼링 유닛(73); 및
제2 통신 네트워크를 사용함으로써 제1 버퍼링된 데이터를 단말 디바이스에 송신하도록 구성되는 송신 유닛(74)
을 포함하고, 단말 디바이스에 의해 획득된 제1 버퍼링된 데이터의 데이터 볼륨은 네트워크 특성 정보에 매치한다.
실시예에서, 획득 유닛(71)은 멀티미디어 데이터를 재생하기 위해 사용되며 단말 디바이스에 대응하는 재생 파라미터를 획득하도록 추가로 구성되고;
프로세싱 유닛(72)은 적어도 재생 파라미터에 기초하여, 단말 디바이스에 대응하는 미리 설정된 데이터 볼륨을 결정하도록 추가로 구성되고;
버퍼링 유닛(73)은 획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터의 그리고 미리 설정된 데이터 볼륨을 가지는 제2 버퍼링된 데이터를 결정하도록 추가로 구성되고; 그리고
송신 유닛(74)은: 타겟 명령을 검출하고; 그리고 타겟 명령에 기초하여 단말 디바이스에 제2 버퍼링된 데이터를 송신하여, 단말 디바이스에 의해 획득되는 제2 버퍼링된 데이터의 데이터 볼륨이 재생 파라미터에 매치하게 하도록 추가로 구성되고, 타겟 명령은 적어도 단말 디바이스에 의해 네트워크 디바이스와 설정된 제2 통신 네트워크의 네트워크 설정 성공 정보에 기초하여 생성된다.
실시예에서, 획득 유닛(71)은 단말 디바이스의 캐시 용량을 획득하도록 추가로 구성되고; 그리고 대응적으로
프로세싱 유닛(72)은 가중된 재생 파라미터 및 가중된 캐시 용량에 기초하여, 단말 디바이스에 매치하는 미리 설정된 데이터 볼륨을 결정하도록 추가로 구성된다.
실시예에서, 획득 유닛(71)은 단말 디바이스의 캐시 용량을 획득하도록 추가로 구성되고; 그리고 대응적으로
프로세싱 유닛(72)은, 적어도 캐시 용량 및 통신 네트워크에 포함된 제1 통신 네트워크 및/또는 제2 통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하도록 추가로 구성된다.
실시예에서, 타겟 데이터 볼륨은 미리 설정된 이미지 유닛들의 개수를 사용함으로써 표현되고; 그리고 대응적으로
프로세싱 유닛(72)은: 단말 디바이스에 대응하며 버퍼링될 필요가 있는 미리 설정된 이미지 유닛들의 제1 개수를 결정하고; 그리고 단말 디바이스에 대응하는 타겟 데이터 볼륨으로서 제1 개수의 미리 설정된 이미지 유닛들의 전체 데이터 볼륨을 사용하도록 추가로 구성된다.
또 다른 실시예에서, 프로세싱 유닛(72)은: 통신 네트워크에 포함되는 제1 통신 네트워크 및/또는 제2 통신 네트워크의 네트워크 특성 정보에 기초하여, 제1 버퍼링된 데이터에 대해 프레임 폐기를 수행할지를 결정하고; 제1 버퍼링된 데이터에 대해 프레임 폐기를 수행하도록 결정할 때 오디오 프레임들 및/또는 비디오 프레임들의 프레임 타입들의 우선순위들의 순서를 획득하고; 그리고 프레임 타입들의 우선순위들의 순서에 기초하여 제1 버퍼링된 데이터 내의 오디오 프레임 및/또는 비디오 프레임에 대해 프레임 폐기를 수행하여, 제1 버퍼링된 데이터의 데이터 볼륨을 감소시키도록 추가로 구성된다.
본 개시내용의 실시예는 프로세서 및 프로세서 상에서 실행할 수 있는 컴퓨터 프로그램을 저장하도록 구성되는 메모리를 포함하는, 네트워크 디바이스를 추가로 제공하고,
프로세서는 컴퓨터 프로그램을 실행할 때 다음:
멀티미디어 데이터 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하는 것 ― 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 것;
획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터를 나타내며 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하는 것; 및
제2 통신 네트워크를 사용함으로써 단말 디바이스에 제1 버퍼링된 데이터를 송신하는 것 ― 제1 버퍼링된 데이터의 데이터 볼륨은 네트워크 특성 정보에 매치함 ― 을 수행하도록 구성된다.
추가로, 본 개시내용의 실시예들에서의 기능 유닛들은 프로세싱 유닛 내에 모두 통합될 수 있거나, 또는 각각의 유닛이 하나의 유닛으로서 별도로 사용되거나, 또는 둘 이상의 유닛이 하나의 유닛 내에 통합된다. 통합된 유닛은 하드웨어의 형태로 구현될 수 있거나, 또는 소프트웨어의 형태로 구현될 수 있다.
기술된 디바이스들은 단지 예들이다. 예를 들어, 유닛 분할은 단지 논리적 기능 분할이며, 실제 구현 동안 다른 분할일 수 있다. 예를 들어, 다수의 유닛 또는 컴포넌트가 또 다른 시스템 내로 조합되거나 통합될 수 있거나, 또는 일부 특징들이 무시되거나 또는 수행되지 않을 수 있다. 또한, 컴포넌트들 사이의 디스플레이되거나 논의된 상호 커플링들 또는 직접 커플링들 또는 통신 접속들은 일부 인터페이스들, 디바이스들 또는 유닛들 사이의 간접 커플링들 또는 통신 접속들, 또는 전기적 접속들, 기계적 접속들, 또는 다른 형태들의 접속들을 통해 구현될 수 있다.
별도 부분들로서 기술되는 유닛들은 물리적으로 분리될 수 있거나 또는 분리되지 않을 수도 있다. 디스플레이 유닛으로서 사용되는 부분은 물리적 유닛일 수 있거나 또는 물리적 유닛이 아닐 수 있다. 즉, 유닛들은 동일한 장소에 위치될 수 있거나, 또는 다수의 네트워크 유닛들에 분산될 수 있다. 유닛들 중 일부 또는 전부는 실시예들의 해법의 목적을 구현하기 위해 실제 요건들에 따라 선택될 필요가 있다.
실시예는 앞의 네트워크 디바이스의 하드웨어 구조를 추가로 제공한다. 도 8에 도시된 바와 같이, 네트워크 디바이스는 송신기(81), 수신기(82), 저장 매체(83), 및 프로세서(84)를 포함한다. 프로세서(84)는 프로세싱 기능을 가지는 전자 컴포넌트, 예를 들어, 마이크로프로세서, 중앙 처리 장치, 디지털 신호 프로세서, 또는 프로그래밍가능 논리 어레이일 수 있다. 저장 매체(83)는 모바일 저장 디바이스, 랜덤 액세스 메모리(RAM, Random Access Memory), 판독-전용 메모리(ROM, Read-Only Memory), 자기 디스크, 또는 광학 디스크와 같은, 프로그램 코드를 저장할 수 있는 다양한 매체들을 포함한다. 저장 매체(83)는 앞의 데이터 버퍼링 방법을 수행하기 위한, 컴퓨터 실행가능한 코드를 저장한다.
대응적으로, 본 개시내용의 실시예는 컴퓨터 명령을 저장하는 저장 매체를 추가로 제공한다. 명령은, 프로세서에 의해 실행될 때, 다음:
멀티미디어 데이터 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하는 것 ― 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
통신 네트워크의 네트워크 특성 정보에 기초하여, 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 것;
획득된 멀티미디어 데이터에 기초하여, 멀티미디어 데이터를 나타내며 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하는 것; 및
제2 통신 네트워크를 사용함으로써 단말 디바이스에 제1 버퍼링된 데이터를 송신하는 것 ― 제1 버퍼링된 데이터의 데이터 볼륨은 네트워크 특성 정보에 매치함 ― 을 실행한다.
이전 기재들은 본 개시내용의 단지 특정 구현들이지만, 본 개시내용의 보호 범위를 제한하도록 의도되지 않는다. 본 개시내용에 개시되는 기술적 범위 내에서 본 기술분야의 통상의 기술자가 용이하게 알아내는 임의의 변형 또는 대체는 본 개시내용의 보호 범위 내에 든다. 따라서, 본 개시내용의 보호 범위는 청구항들의 보호 범위를 대상으로 한다.
산업적 응용가능성
본 개시내용의 실시예들에서, 네트워크 디바이스는 멀티미디어 데이터 및 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하고, 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 제1 통신 네트워크는 멀티미디어 데이터를 네트워크 디바이스에 전송하도록 구성되고, 제2 통신 네트워크는 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성되고; 단말 디바이스에 대응하는 타겟 데이터 볼륨은 적어도 통신 네트워크의 네트워크 특성 정보에 기초하여 결정되고; 멀티미디어 데이터를 나타내며 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터는 획득된 멀티미디어 데이터에 기초하여 결정되고; 그리고 제1 버퍼링된 데이터는 제2 통신 네트워크를 사용함으로써 단말 디바이스에 송신되고, 제1 버퍼링된 데이터의 데이터 볼륨은 네트워크 특성 정보에 매치한다. 이 방식으로, 버퍼링된 데이터의 고정된 볼륨에 의해 야기되는 프레임 멈춤의 위험성들이 감소될 수 있고, 프레임-멈춤-방지 능력이 개선되어, 사용자 경험을 개선시키는 토대를 추가로 마련한다.

Claims (20)

  1. 데이터 버퍼링 방법으로서,
    네트워크 디바이스에 의해, 멀티미디어 데이터 및 상기 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하는 단계 ― 상기 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 상기 제1 통신 네트워크는 상기 멀티미디어 데이터를 상기 네트워크 디바이스에 전송하도록 구성되고, 상기 제2 통신 네트워크는 상기 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
    상기 통신 네트워크의 상기 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계;
    상기 획득된 멀티미디어 데이터에 기초하여, 상기 멀티미디어 데이터를 나타내며 상기 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하는 단계; 및
    상기 제2 통신 네트워크를 사용함으로써 상기 단말 디바이스에 상기 제1 버퍼링된 데이터를 송신하는 단계
    를 포함하고, 상기 제1 버퍼링된 데이터의 데이터 볼륨은 상기 네트워크 특성 정보에 매치하는, 방법.
  2. 제1항에 있어서,
    상기 단말 디바이스에 대응하는 재생 파라미터를 획득하는 단계 ― 상기 재생 파라미터는 상기 멀티미디어 데이터를 재생하기 위해 사용됨 ― ;
    상기 재생 파라미터에 기초하여, 상기 단말 디바이스에 대응하는 미리 설정된 데이터 볼륨을 결정하는 단계;
    상기 획득된 멀티미디어 데이터에 기초하여, 상기 멀티미디어 데이터의 제2 버퍼링된 데이터를 결정하는 단계 ― 상기 제2 버퍼링된 데이터의 데이터 볼륨은 상기 미리 설정된 데이터 볼륨임 ― ; 및
    상기 단말 디바이스가 상기 네트워크 디바이스와의 상기 제2 통신 네트워크를 설정할 때 상기 단말 디바이스에 상기 제2 버퍼링된 데이터를 송신하는 단계
    를 더 포함하고, 상기 제2 버퍼링된 데이터의 데이터 볼륨은 상기 재생 파라미터에 매치하는, 방법.
  3. 제2항에 있어서,
    상기 재생 파라미터에 기초하여, 상기 단말 디바이스에 대응하는 미리 설정된 데이터 볼륨을 결정하는 단계는:
    상기 재생 파라미터의 가중치 및 상기 단말 디바이스의 캐시 용량의 가중치를 획득하는 단계;
    상기 재생 파라미터의 획득된 가중치 및 상기 캐시 용량의 획득된 가중치에 기초하여 상기 재생 파라미터 및 상기 캐시 용량에 대해 가중 프로세싱을 각자 수행하는 단계; 및
    가중된 재생 파라미터 및 가중된 캐시 용량에 기초하여, 상기 단말 디바이스에 매치하는 상기 미리 설정된 데이터 볼륨을 결정하는 단계
    를 포함하는, 방법.
  4. 제1항 또는 제2항에 있어서,
    상기 통신 네트워크의 상기 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계는:
    상기 재생 파라미터의 가중치 및 상기 통신 네트워크의 상기 네트워크 특성 정보의 가중치를 획득하는 단계;
    상기 재생 파라미터의 획득된 가중치 및 상기 통신 네트워크의 상기 네트워크 특성 정보의 획득된 가중치에 기초하여 상기 재생 파라미터 및 상기 통신 네트워크의 네트워크 특성 정보에 대해 가중 프로세싱을 각자 수행하는 단계; 및
    가중된 캐시 용량 및 상기 통신 네트워크의 가중된 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 상기 타겟 데이터 볼륨을 결정하는 단계
    를 포함하는, 방법.
  5. 제1항 또는 제2항에 있어서,
    상기 타겟 데이터 볼륨은 픽처들의 그룹들의 개수를 사용함으로써 표현되고;
    상기 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계는:
    버퍼링될 필요가 있는 상기 단말 디바이스의 픽처들의 그룹들의 제1 개수를 결정하는 단계; 및
    상기 단말 디바이스에 대응하는 타겟 데이터 볼륨으로서 상기 픽처들의 그룹들의 제1 개수의 전체 데이터 볼륨을 결정하는 단계
    를 포함하는, 방법.
  6. 제1항 또는 제2항에 있어서,
    상기 통신 네트워크의 네트워크 특성 정보에 기초하여 상기 제1 버퍼링된 데이터에 대해 프레임 폐기를 수행하도록 결정할 때 오디오 프레임들 및/또는 비디오 프레임들의 프레임 타입들의 우선순위들의 순서를 획득하는 단계; 및
    상기 프레임 타입들의 우선순위들의 순서에 기초하여 상기 제1 버퍼링된 데이터 내의 오디오 프레임 및/또는 비디오 프레임에 대해 상기 프레임 폐기를 수행하는 단계
    를 더 포함하는, 방법.
  7. 네트워크 디바이스로서,
    멀티미디어 데이터 및 상기 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하도록 구성되는, 획득 유닛 ― 상기 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 상기 제1 통신 네트워크는 상기 멀티미디어 데이터를 상기 네트워크 디바이스에 전송하도록 구성되고, 상기 제2 통신 네트워크는 상기 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
    상기 통신 네트워크의 상기 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하도록 구성되는, 프로세싱 유닛;
    상기 획득된 멀티미디어 데이터에 기초하여, 상기 멀티미디어 데이터를 나타내며 상기 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하도록 구성되는, 버퍼링 유닛; 및
    상기 제2 통신 네트워크를 사용함으로써 상기 단말 디바이스에 상기 제1 버퍼링된 데이터를 송신하도록 구성되는, 송신 유닛
    을 포함하고, 상기 제1 버퍼링된 데이터의 데이터 볼륨은 상기 네트워크 특성 정보에 매치하는, 네트워크 디바이스.
  8. 제7항에 있어서,
    상기 획득 유닛은 상기 단말 디바이스에 대응하는 재생 파라미터를 획득하도록 추가로 구성되고, 상기 재생 파라미터는 상기 멀티미디어 데이터를 재생하기 위해 사용되고 ;
    상기 프로세싱 유닛은 상기 재생 파라미터에 기초하여, 상기 단말 디바이스에 대응하는 미리 설정된 데이터 볼륨을 결정하도록 추가로 구성되고;
    상기 버퍼링 유닛은 상기 획득된 멀티미디어 데이터에 기초하여, 상기 멀티미디어 데이터의 제2 버퍼링된 데이터를 결정하도록 추가로 구성되고, 상기 제2 버퍼링된 데이터의 데이터 볼륨은 상기 미리 설정된 데이터 볼륨이고;
    상기 송신 유닛은 타겟 명령을 검출하는 것에 응답하여 상기 단말 디바이스에 상기 제2 버퍼링된 데이터를 송신하도록 추가로 구성되고, 상기 제2 버퍼링된 데이터의 데이터 볼륨은 상기 재생 파라미터에 매치하고, 상기 타겟 명령은 상기 단말 디바이스가 상기 네트워크 디바이스와의 상기 제2 통신 네트워크를 설정할 때 상기 단말 디바이스에 의해 생성되는, 네트워크 디바이스.
  9. 제8항에 있어서,
    상기 프로세싱 유닛은: 상기 재생 파라미터의 가중치 및 상기 단말 디바이스의 캐시 용량의 가중치를 획득하고;
    상기 재생 파라미터의 획득된 가중치 및 상기 캐시 용량의 획득된 가중치에 기초하여 상기 재생 파라미터 및 상기 캐시 용량에 대해 가중 프로세싱을 각자 수행하고;
    가중된 재생 파라미터 및 가중된 캐시 용량에 기초하여, 상기 단말 디바이스에 매치하는 상기 미리 설정된 데이터 볼륨을 결정하도록 추가로 구성되는, 네트워크 디바이스.
  10. 제7항 또는 제8항에 있어서,
    상기 프로세싱 유닛은: 상기 재생 파라미터의 가중치 및 상기 통신 네트워크의 상기 네트워크 특성 정보의 가중치를 획득하고;
    상기 재생 파라미터의 획득된 가중치 및 상기 통신 네트워크의 상기 네트워크 특성 정보의 획득된 가중치에 기초하여 상기 재생 파라미터 및 상기 통신 네트워크의 상기 네트워크 특성 정보에 대해 가중 프로세싱을 각자 수행하고;
    가중된 캐시 용량 및 상기 통신 네트워크의 가중된 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 상기 타겟 데이터 볼륨을 결정하도록 추가로 구성되는, 네트워크 디바이스.
  11. 제7항 또는 제8항에 있어서,
    상기 타겟 데이터 볼륨은 픽처들의 그룹들의 개수를 사용함으로써 표현되고;
    상기 프로세싱 유닛은 버퍼링될 필요가 있는 상기 단말 디바이스의 픽처들의 그룹들의 제1 개수를 결정하고;
    상기 단말 디바이스에 대응하는 타겟 데이터 볼륨으로서 상기 픽처들의 그룹들의 제1 개수의 전체 데이터 볼륨을 결정하도록 추가로 구성되는, 네트워크 디바이스.
  12. 제7항 또는 제8항에 있어서,
    상기 프로세싱 유닛은: 상기 통신 네트워크의 네트워크 특성 정보에 기초하여 상기 제1 버퍼링된 데이터에 대해 프레임 폐기를 수행하도록 결정할 때 오디오 프레임들 및/또는 비디오 프레임들의 프레임 타입들의 우선순위들의 순서를 획득하고;
    상기 프레임 타입들의 우선순위들의 순서에 기초하여 상기 제1 버퍼링된 데이터 내의 오디오 프레임 및/또는 비디오 프레임에 대해 상기 프레임 폐기를 수행하도록 추가로 구성되는, 네트워크 디바이스.
  13. 데이터 버퍼링 방법으로서,
    상기 방법은 네트워크 디바이스에 의해 수행되고, 상기 네트워크 디바이스는 하나 이상의 프로세서, 메모리, 및 하나 이상의 프로그램을 포함하고, 상기 하나 이상의 프로그램은 상기 메모리에 저장되고, 프로그램은 하나 이상의 유닛을 포함하고, 상기 하나 이상의 유닛 각각은 명령들의 세트에 대응하고, 상기 하나 이상의 프로세서는 명령들을 실행하도록 구성되고; 상기 방법은:
    멀티미디어 데이터 및 상기 멀티미디어 데이터를 전송하도록 구성되는 통신 네트워크의 네트워크 특성 정보를 획득하는 단계 ― 상기 통신 네트워크는 제1 통신 네트워크 또는 제2 통신 네트워크를 포함하고, 상기 제1 통신 네트워크는 상기 멀티미디어 데이터를 상기 네트워크 디바이스에 전송하도록 구성되고, 상기 제2 통신 네트워크는 상기 멀티미디어 데이터를 단말 디바이스에 전송하도록 구성됨 ― ;
    상기 통신 네트워크의 상기 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계;
    상기 획득된 멀티미디어 데이터에 기초하여, 상기 멀티미디어 데이터를 나타내며 상기 타겟 데이터 볼륨을 가지는 제1 버퍼링된 데이터를 결정하는 단계; 및
    상기 제2 통신 네트워크를 사용함으로써 상기 단말 디바이스에 상기 제1 버퍼링된 데이터를 송신하는 단계
    를 포함하고, 상기 제1 버퍼링된 데이터의 데이터 볼륨은 상기 네트워크 특성 정보에 매치하는, 방법.
  14. 제13항에 있어서,
    상기 단말 디바이스에 대응하는 재생 파라미터를 획득하는 단계 ― 상기 재생 파라미터는 상기 멀티미디어 데이터를 재생하기 위해 사용됨 ― ;
    상기 재생 파라미터에 기초하여, 상기 단말 디바이스에 대응하는 미리 설정된 데이터 볼륨을 결정하는 단계;
    상기 획득된 멀티미디어 데이터에 기초하여 상기 멀티미디어 데이터의 제2 버퍼링된 데이터를 결정하는 단계 ― 상기 제2 버퍼링된 데이터의 데이터 볼륨은 상기 미리 설정된 데이터 볼륨임 ― ; 및
    타겟 명령을 검출하는 단계 ― 상기 타겟 명령은 상기 단말 디바이스가 상기 네트워크 디바이스와의 상기 제2 통신 네트워크를 설정할 때 상기 단말 디바이스에 의해 생성됨 ― ; 및
    상기 타겟 명령에 기초하여 상기 단말 디바이스에 상기 제2 버퍼링된 데이터를 송신하는 단계
    를 더 포함하고, 상기 제2 버퍼링된 데이터의 데이터 볼륨은 상기 재생 파라미터에 매치하는, 방법.
  15. 제14항에 있어서,
    상기 재생 파라미터에 기초하여, 상기 단말 디바이스에 대응하는 미리 설정된 데이터 볼륨을 결정하는 단계는:
    상기 재생 파라미터의 가중치 및 상기 단말 디바이스의 캐시 용량의 가중치를 획득하는 단계;
    상기 재생 파라미터의 획득된 가중치 및 상기 캐시 용량의 획득된 가중치에 기초하여 상기 재생 파라미터 및 상기 캐시 용량에 대해 가중 프로세싱을 각자 수행하는 단계; 및
    가중된 재생 파라미터 및 가중된 캐시 용량에 기초하여, 상기 단말 디바이스에 매치하는 상기 미리 설정된 데이터 볼륨을 결정하는 단계
    를 포함하는, 방법.
  16. 제13항 또는 제14항에 있어서,
    상기 통신 네트워크의 상기 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계는:
    상기 재생 파라미터의 가중치 및 상기 통신 네트워크의 상기 네트워크 특성 정보의 가중치를 획득하는 단계;
    상기 재생 파라미터의 획득된 가중치 및 상기 통신 네트워크의 상기 네트워크 특성 정보의 획득된 가중치에 기초하여 상기 재생 파라미터 및 상기 통신 네트워크의 네트워크 특성 정보에 대해 가중 프로세싱을 각자 수행하는 단계; 및
    가중된 캐시 용량 및 상기 통신 네트워크의 가중된 네트워크 특성 정보에 기초하여, 상기 단말 디바이스에 대응하는 상기 타겟 데이터 볼륨을 결정하는 단계
    를 포함하는, 방법.
  17. 제13항 또는 제14항에 있어서,
    상기 타겟 데이터 볼륨은 픽처들의 그룹들의 개수를 사용함으로써 표현되고;
    상기 단말 디바이스에 대응하는 타겟 데이터 볼륨을 결정하는 단계는:
    버퍼링될 필요가 있는 상기 단말 디바이스의 픽처들의 그룹들의 제1 개수를 결정하는 단계; 및
    상기 단말 디바이스에 대응하는 타겟 데이터 볼륨으로서 상기 픽처들의 그룹들의 제1 개수의 전체 데이터 볼륨을 결정하는 단계
    를 포함하는, 방법.
  18. 제13항 또는 제14항에 있어서,
    상기 통신 네트워크의 네트워크 특성 정보에 기초하여 상기 제1 버퍼링된 데이터에 대해 프레임 폐기를 수행하도록 결정할 때 오디오 프레임들 및/또는 비디오 프레임들의 프레임 타입들의 우선순위들의 순서를 획득하는 단계; 및
    상기 프레임 타입들의 우선순위들의 순서에 기초하여 상기 제1 버퍼링된 데이터 내의 오디오 프레임 및/또는 비디오 프레임에 대해 상기 프레임 폐기를 수행하는 단계
    를 더 포함하는, 방법.
  19. 네트워크 디바이스로서,
    프로세서 및 상기 프로세서 상에서 실행할 수 있는 컴퓨터 프로그램을 저장하도록 구성되는 메모리
    를 포함하고, 상기 프로세서는 상기 컴퓨터 프로그램을 실행할 때 제1항 내지 제6항 중 어느 한 항에 따른 상기 데이터 버퍼링 방법을 수행하도록 구성되는, 네트워크 디바이스.
  20. 컴퓨터 실행가능한 명령들을 저장하는 컴퓨터-판독가능한 저장 매체로서,
    상기 컴퓨터 실행가능한 명령들은 제1항 내지 제6항 중 어느 한 항에 따른 상기 데이터 버퍼링 방법을 수행하기 위해 사용되는, 컴퓨터-판독가능한 저장 매체.
KR1020197025444A 2017-05-16 2018-05-02 데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체 KR102216622B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710345070.4 2017-05-16
CN201710345070.4A CN108881931B (zh) 2017-05-16 2017-05-16 一种数据缓冲方法及网络设备
PCT/CN2018/085383 WO2018210130A1 (zh) 2017-05-16 2018-05-02 数据缓冲方法、网络设备及存储介质

Publications (2)

Publication Number Publication Date
KR20190112780A true KR20190112780A (ko) 2019-10-07
KR102216622B1 KR102216622B1 (ko) 2021-02-17

Family

ID=64273271

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197025444A KR102216622B1 (ko) 2017-05-16 2018-05-02 데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체

Country Status (6)

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

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 北京百度网讯科技有限公司 视频数据处理方法、装置、设备及存储介质
CN112333189B (zh) * 2020-11-06 2021-07-30 北京木铭春天文化传媒有限公司 基于物联网通信和直播平台的数据处理方法及云计算中心
CN113365089B (zh) * 2021-05-31 2023-02-24 浙江大华技术股份有限公司 一种数据传输方法、装置、存储介质及电子装置
CN114339294B (zh) * 2022-01-04 2023-02-10 腾讯科技(深圳)有限公司 网络抖动的确认方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2574010A2 (en) * 2011-09-23 2013-03-27 Cygnus Broadband, Inc. Systems and methods for prioritization of data for intelligent discard in a communication network
WO2016064308A1 (en) * 2014-10-20 2016-04-28 Telefonaktiebolaget L M Ericsson (Publ) Network node and method for handling a process of controlling a data transfer related to video data of a video streaming service

Family Cites Families (19)

* 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
JP2002319971A (ja) * 2001-04-20 2002-10-31 Fujitsu Ltd パケットデータ中継装置及び配信装置
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
JP2005244315A (ja) * 2004-02-24 2005-09-08 Kddi Technology Corp 映像ストリーミング伝送のネットワーク品質安定化装置
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
US20110185018A1 (en) * 2008-10-09 2011-07-28 Toru Osuga Content delivery system, content delivery method and computer program
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
WO2015014403A1 (en) * 2013-08-01 2015-02-05 Telefonaktiebolaget 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
JP6302597B2 (ja) * 2014-04-18 2018-03-28 エスケーテレコム カンパニー リミテッドSk Telecom Co., Ltd. リアルタイム放送コンテンツ伝送方法及びそのための装置
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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2574010A2 (en) * 2011-09-23 2013-03-27 Cygnus Broadband, Inc. Systems and methods for prioritization of data for intelligent discard in a communication network
WO2016064308A1 (en) * 2014-10-20 2016-04-28 Telefonaktiebolaget L M Ericsson (Publ) Network node and method for handling a process of controlling a data transfer related to video data of a video streaming service

Also Published As

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

Similar Documents

Publication Publication Date Title
KR102216622B1 (ko) 데이터 버퍼링 방법, 네트워크 디바이스, 및 저장 매체
CN111135569B (zh) 云游戏处理方法、装置、存储介质与电子设备
US11743519B2 (en) Fragment server directed device fragment caching
US10728594B2 (en) Method and apparatus for transmitting data of mobile terminal
US10250664B2 (en) Placeshifting live encoded video faster than real time
US10263875B2 (en) Real-time processing capability based quality adaptation
US9699518B2 (en) Information processing apparatus, information processing system, recording medium, and method for transmission and reception of moving image data
JP2021514167A (ja) メディアコンテンツの配信および再生
WO2020192152A1 (zh) 视频传输的方法、根节点、子节点、p2p服务器和系统
US10530825B2 (en) Catching up to the live playhead in live streaming
US8719440B2 (en) Intelligent device media stream caching
JPWO2014057896A1 (ja) コンテンツ再生装置
US10887363B1 (en) Streaming decision in the cloud
CN112752115A (zh) 直播数据传输方法、装置、设备及介质
US20230045876A1 (en) Video Playing Method, Apparatus, and System, and Computer Storage Medium
EP3466081A1 (en) Catching up to the live playhead in live streaming
JP2019029931A (ja) 映像送信装置、映像受信装置、映像送受信システム、制御方法、並びにプログラム
Callens Cloud-based video stabilization processing in real-time
KR20110123644A (ko) 멀티미디어 스트리밍 파일 포맷 구조 및 그를 이용한 멀티미디어 스트리밍 서비스 방법 및 장치
KR20170039916A (ko) 애플리케이션의 구동을 처리하는 클라우드 서버, 미디어 재생 장치 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant