IP Library Granted Patent US 10,439,910
Granted Patent B2
US 10,439,910 · App. 14/653,849 · Granted Oct 8, 2019

Low-latency streaming

Inventors: Arian Koster (Mijdrecht, NL); Dolf Schinkel (Hillegom, NL); Ray Van Brandenburg (The Hague, NL); Emmanuel Thomas (Delft, NL); Mattijs Oskar Van Deventer (Leidschendam, NL)
Assignee: KONINKLIJKE KPN N.V.
H04L43/08G06F16/951H04L65/4069H04L65/604H04L65/608H04L65/80H04L67/32H04L43/0829H04L43/0852H04L65/1059
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,439,910
App. No.
14/653,849
Granted
Oct 8, 2019
Kind
B2
Abstract

Method and systems for enabling low-latency streaming of segments over at least one network to a client are described wherein said client is configured to request and receive segments from at least one server on the basis of a manifest file. Said method comprises: collecting quality of service information experienced by said client in at least a part of said network and storing said quality of service information in a quality database in said network; sending at least part of said quality of service information to said content processing device; determining on the basis of said at least part of said quality of service information one or more configuration parameters for a buffer, preferably a play-out buffer; and/or, for a segment request function in said content processing device; and, configuring said buffer and/or, said segment request function in accordance with said configuration parameters.

Claims (41)

1. Method for enabling low-latency streaming of segments via a network to a HTTP Adaptive Streaming (HAS) client in a content processing device, said client being configured to request and receive segments from a server system on the basis of a manifest file, said segments identified in said manifest file, said method comprising:

collecting, at a monitoring system in said network, quality metrics associated with one or more streaming paths between said client and one or more streaming servers in said server system and storing said quality metrics in a quality database in said network;

determining quality of service information on the basis of said quality metrics, said quality of service information defining one or more QoS levels;

providing the content processing device with the quality of service information; and

on the basis of said quality of service information, configuring, at a configuration module in said content processing device, using at least one of one or more configuration parameters, a buffer in said content processing device and/or a segment request function in said content processing device, the one or more configuration parameters comprising:

at least one buffer size parameter for determining a minimum size of the buffer before play-out of data in said buffer is started; and/or,

at least one segment request parameter for determining a first segment selected from segments identified in said manifest file that the segment request function will request from said streaming server.

2. Method according to claim 1 comprising:

wherein said one or more QoS levels comprise at least a low latency level associated with one or more preconfigured configuration parameters for configuring the client in a low-latency mode and a high latency level associated with one or more preconfigured configuration parameters for configuring the client in a high-latency mode.

3. Method according to claim 1 , wherein at least part of said quality of service information is determined by said monitoring system and stored in said quality database.

4. Method according to claim 1 , wherein said providing comprises sending said quality of service information to said content processing device, said quality of service information enabling the configuration module to determine one or more configuration parameters for the buffer and/or for the segment request function in said content processing device.

5. Method according to claim 1 wherein said providing comprises:

the client requesting at least part of a manifest file or a manifest file update from said server system;

said server system retrieving said quality of service information from said quality database and sending a manifest file comprising said quality of service information to said client.

6. Method according to claim 1 wherein at least part of said quality of service information is sent over a streaming control channel to said client.

7. Method according to claim 6 comprising:

providing said client with channel set-up information for setting up a (bi-directional) streaming control channel between said server system and said client,

establishing said (bi-directional) streaming control channel on the basis of said channel set-up information.

8. Method according to claim 1 comprising:

at least a first monitoring agent in said content processing device collecting first metrics associated with said content processing device; and/or, at least a second monitoring agent in said network collecting second metrics associated with at least part of said network;

on the basis of said first and/or second metrics said monitoring system determining quality metrics associated with one or more streaming paths between said one or more streaming servers in said server system and said client; and, storing said quality metrics in said quality database.

9. A content delivery system for enabling low-latency streaming of segments over at least one network to a content processing device, said system comprising:

a content processing device comprising a HTTP Adaptive Streaming (HAS) client, wherein said client is configured to request and receive segments from one or more streaming servers on the basis of a manifest file;

said content processing device further configured for being provided with quality of service information determined on the basis of at least part of stored quality metrics, said quality of service information defining one or more QoS levels;

a monitoring system configured for collecting quality metrics associated with one or more paths between said client and said one or more streaming servers and storing quality metrics in a quality database in said network; and,

a configuration module in said content processing device arranged to use at least one or more configuration parameters for configuring a buffer in said content processing device; and/or, for configuring a segment request function in said content processing device on the basis of said quality of service information, the one or more configuration parameters comprising:

at least one buffer size parameter for determining a minimum size of the buffer before play-out of data in said buffer is started; and/or,

at least one segment request parameter for determining a first segment selected from segments identified in said manifest file that the segment request function will request from said streaming server.

10. A configuration module for use in a content processing device, said configuration module being configured for enabling low-latency streaming to a HTTP Adaptive Streaming (HAS) client in said content processing device, wherein said client is configured to request and receive segments from one or more streaming servers in a server system on the basis of a manifest file, wherein said configuration module is further configured for:

using one or more configuration parameters to configure a buffer in said content processing device and/or a segment request function in said content processing device on the basis of quality of service information determined on the basis of quality metrics, said quality of service information defining one or more QoS levels and wherein said quality metrics are associated with one or more streaming paths between said client and one or more streaming servers in said server system and wherein said quality metrics are collected by a monitoring system in said network and stored in a quality database in said network, said one or more configuration parameters comprising:

at least one buffer size parameter for determining a minimum size of the buffer before play-out of data in said buffer is started; and/or,

at least one segment request parameter for determining a first segment selected from segments identified in said manifest file that the segment request function will request from said streaming server.

11. A configuration module according to claim 10 ,

wherein said buffer is configured on the basis of one or more configuration parameters for determining a minimum size of the buffer before play-out of data in said buffer is stated; and/or,

wherein said segment request function is configured on the basis of one or more configuration parameters for determining a first segment selected from segments identified in said manifest file that the segment request function will request from said streaming server.

12. A non-transitory storage medium comprising a manifest file for use by a HTTP Adaptive Streaming (HAS) client in a content processing device, wherein said client is configured to request and receive segments from at least one server on the basis of said manifest file, said manifest file enabling low-latency streaming to said client, said manifest file comprising one or more segment identifiers and segment play-out information; and wherein said manifest file further comprises quality of service information comprising one or more QoS levels associated with a streaming path between said client and a streaming server, wherein said quality of service information enables a configuration module associated with said client to determine one or more configuration parameters for a buffer and/or for a segment request function in said content processing device.

13. Non-transitory storage medium comprising a computer program product, the computer program product comprising software code portions configured for, when run in the memory of a computer, executing the method steps according to claim 1 .

14. Method according to claim 6 wherein said streaming control channel is a Web Socket based streaming control channel.

15. A content delivery system according to claim 9 ,

wherein said buffer is configured on the basis of one or more configuration parameters for determining a minimum size of the buffer before play-out of data in said buffer is stated; and/or,

wherein said segment request function is configured on the basis of one or more configuration parameters for determining a first segment selected from segments identified in said manifest file that the segment request function will request from said streaming server.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2016
From: KOSTER, ARIAN; SCHINKEL, DOLF; VAN BRANDENBURG, RAY; THOMAS, EMMANUEL; VAN DEVENTER, MATTIJS OSKAR
To: KONINKLIJKE KPN N.V.
Reel/Frame 037625/0894 →
Priority Claims (2)
EP 12198896 · Dec 21, 2012 · regional
EP 13177087 · Jul 18, 2013 · regional
Continuity (1)
Related Publication 20150334153A1 · Nov 19, 2015
Cited By (1)
US 12,720,137