# US 8,789,081 B2 · Video quality scoring

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,789,081 B2
- Document ID: US8789081B2
- Status: Granted
- Kind: B2
- Application number: 13/224,592
- Filed: 2011-09-02
- Published: 2013-03-07
- Granted: 2014-07-22
- Earliest claimed: 2011-09-02
- Assignees: Verizon Patent and Licensing Inc.
- Applicants: Benjamin J. Parker; Brian W. Joe
- Inventors: Benjamin J. Parker; Brian W. Joe
- Web page: https://patentgrep.com/patent/US8789081B2

## CPC

- H04N 21/647: Control 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 {(real-time session protocols H04L65/1101)}
- H04N 17/004: {for digital television systems}
- H04N 21/234309: {by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo (conversion of standards in analog television systems H04N7/01)}
- H04N 21/238: Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams {(hybrid fiber coaxial [HFC] networks for downstream channel allocation for video distribution H04L12/2801; flow control in packet networks H04L47/10; real-time communication protocols in data switching networks H04L65/00; scheduling or organising the servicing of application requests H04L67/60)}
- H04N 21/239: Interfacing the upstream path of the transmission network, e.g. prioritizing client {content} requests (hybrid fiber coaxial [HFC] networks for upstream channel allocation for video distribution H04L12/2801; flow control in data networks H04L47/10; real-time communication protocols in data switching networks H04L65/00; scheduling or organising the servicing of application requests H04L67/60)
- H04N 21/26216: {involving the channel capacity, e.g. network bandwidth (admission control, resource allocation in open networks H04L12/5692; flow control in packet networks H04L47/10; establishing a schedule or organising the servicing of application requests taking into account QoS H04L67/61)}
- H04N 21/64723: {Monitoring of network processes or resources, e.g. monitoring of network load (traffic related reporting in data switching networks H04L43/062)}
- H04N 21/64738: {Monitoring network characteristics, e.g. bandwidth, congestion level (data switched network analysis H04L41/14; monitoring functioning in data switched networks H04L43/0817; flow control in packet networks H04L47/10)}
- H04N 21/64784: {Data processing by the network (data processing in packet switching systems H04L12/56; flow control in packet networks H04L47/10; intermediate storage or scheduling H04L49/90; provisioning of proxy services in data packet switching networks H04L67/56)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A network device may be configured to receive video quality data that includes information corresponding to a delivery of video content from a content source to a user device via a network and information corresponding to video presentation conditions corresponding to the user device. The network device may also be configured to determine video quality metrics based on the video quality data. Each of the video quality metrics may correspond to a characteristic of the delivery of the video content from the content source to the user device or the video presentation conditions corresponding to the user device. The network device may also be configured to determine, based on the video quality metrics, a video quality score that corresponds to an estimated user viewing experience corresponding to the video content. The network device may also be configured to communicate the video quality score to an operator of the network.

## Claims

### Claim 1

A method, comprising:
receiving, by a network device, video quality data comprising information corresponding to a delivery of video content from a content source to a user device via a network and information corresponding to video presentation conditions corresponding to the user device;
determining, by the network device, video quality metrics based on the video quality data, where each of the video quality metrics corresponds to a characteristic of the delivery of the video content from the content source to the user device or one of the video presentation conditions corresponding to the user device; and
determining, by the network device and based on the video quality metrics, a video quality score, the video quality score corresponding to an estimated user viewing experience corresponding to the video content; and
communicating the video quality score to an operator of the network.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
generating a video quality report comprising the video quality score; and
communicating the video quality report to the operator of the network.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
prior to communicating the video quality score to the operator of the network,
determining that the video quality score is below a video score threshold.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
prior to determining the video quality score,
determining that a quantity of the video quality metrics exceeds a particular threshold corresponding to a required quantity of video quality metrics for determining the video quality score.

### Claim 5 (depends on 1)

The method of claim 1, where:
determining the video quality metrics comprises assigning an individual quality score to each of the video quality metrics, and
determining the video quality score comprises determining an average of the individual quality scores.

### Claim 6 (depends on 1)

The method of claim 1, where receiving the video quality data comprises:
receiving the video quality data from at least two of:
an optimization system to measure latency in the network;
a radio access network modeler to measure network congestion;
a transcoder to convert the video content from one encoded format to another encoded format;
a video identification controller to identify a video identifier corresponding to the video content; or
a client application to collect the information corresponding to video presentation conditions corresponding to the user device.

### Claim 7 (depends on 6)

The method of claim 6, where receiving the video quality data further comprises:
receiving, from the optimization system, information regarding a quantity of bytes delivered to the user device, a quantity of videos delivered to the user device, or a total quantity of video bytes delivered to the user device,
receiving, from the transcoder, information regarding a format width corresponding to the video content, a format height corresponding to the video content, a frame rate corresponding to the video content, a uniform resource locator corresponding to the video content, a duration corresponding to the video content, a transcoder start time corresponding to the video content, a transcoder run time corresponding to the video content, a video duration corresponding to the video content, an input file wait time corresponding to the video content, a raw encoding time corresponding to the video content, a quantity of video frames corresponding to the video content, a quantity of video bytes corresponding to the video content, a quantity of audio frames corresponding to the video content, a quantity of audio bytes corresponding to the video content, a total quantity of bytes corresponding to the video content, or a source file corresponding to the video content,
receiving, from the radio access network modeler, information regarding network congestion corresponding to the video content being delivered to the user device,
receiving, from the video identification controller, information regarding a video title corresponding to the video content, a genre corresponding to the video content, a codec corresponding to the video content, or a video time corresponding to the video content, or
receiving, from the client application, information regarding an internet protocol address corresponding to the user device, a client version corresponding to the client application, operator information corresponding to the user device, a result code corresponding to the client application, an exit code corresponding to the client application, a frame rate mean corresponding to the video content, a frame rate standard deviation corresponding to the video content, a bandwidth mean corresponding to the video content, a bandwidth standard deviation corresponding to the video content, a jitter mean corresponding to the video content, a jitter standard deviation corresponding to the video content, an original file format corresponding to the video content, an original video codec corresponding to the video content, an original audio codec corresponding to the video content, an original width corresponding to the video content, an original height corresponding to the video content, an original quantity of transcoded bytes corresponding to the video content, an original average bit rate corresponding to the video content, an original video frame rate corresponding to the video content, an output average video frame rate corresponding to the video content, or an overall compression rate corresponding to the video content.

### Claim 8 (depends on 1)

The method of claim 1, where the video quality metrics comprise a jitter value corresponding to the video content, a video start delay corresponding to the video content, a frame rate corresponding to the video content, a congestion level corresponding to the video content being delivered, a video stall level corresponding to the video content, an output file size corresponding to the video content, an original width corresponding to the video content, an original height corresponding to the video content, an original average bit rate corresponding to the video content, or an amount of video content delivered corresponding to the video content.

### Claim 9

A network device, comprising:
a memory to store instructions; and
a processor, connected to the memory, to:
receive video quality data that comprises information corresponding to a delivery of video content from a content source to a user device via a network and information corresponding to video presentation conditions corresponding to the user device;
determine video quality metrics based on the video quality data, where each of the video quality metrics corresponds to a characteristic of the delivery of the video content from the content source to the user device or the video presentation conditions corresponding to the user device;
determine, based on the video quality metrics, a video quality score, where the video quality score represents an estimated user viewing experience corresponding to the video content;
determine whether the video quality score is below a video score threshold; and
when the video quality score is below the video score threshold,
notify a network operator of the video quality score, and
when the video quality score is not below the video score threshold,
archive the video quality score.

### Claim 10 (depends on 9)

The network device of claim 9, where the processor is to:
generate a video quality report comprising the video quality score,
communicate the video quality report when the video quality score is below the video score threshold, and
archive the video quality report when the video quality score is not below the video score threshold.

### Claim 11 (depends on 9)

The network device of claim 9, where the processor is to:
verify that a quantity of video quality metrics exceeds a particular threshold prior to determining the video quality score.

### Claim 12 (depends on 9)

The network device of claim 9, where:
to ascertain the video quality metrics, the processor is to assign an individual quality score to each of the video quality metrics, and,
to determine the video quality score, the processor is to determine an average of the individual quality scores.

### Claim 13 (depends on 9)

The network device of claim 9, where, to receive the video quality data, the processor is to communicate with:
an optimization system to measure latency in the network;
a transcoder to convert the video content from one encoded format to another encoded format;
a video identification controller to identify a video identifier corresponding to the video content; or
a client application to collect the information corresponding to video presentation conditions corresponding to the user device.

### Claim 14 (depends on 13)

The network device of claim 13, where to receive the video quality data, the processor is to:
receive, from the optimization system, information regarding a quantity of bytes delivered to the user device, a quantity of videos delivered to the user device, or a total quantity of video bytes delivered to the user device,
receive, from the transcoder, information regarding a format width corresponding to the video content, a format height corresponding to the video content, a frame rate corresponding to the video content, a uniform resource locator corresponding to the video content, a duration corresponding to the video content, a transcoder start time corresponding to the video content, a transcoder run time corresponding to the video content, a video duration corresponding to the video content, an input file wait time corresponding to the video content, a raw encoding time corresponding to the video content, a quantity of video frames corresponding to the video content, a quantity of video bytes corresponding to the video content, a quantity of audio frames corresponding to the video content, a quantity of audio bytes corresponding to the video content, a total quantity of bytes corresponding to the video content, or a source file corresponding to the video content,
receive, from the radio access network modeler, information regarding network congestion corresponding to the video content being delivered to the user device,
receive, from the video identification controller, information regarding a video title corresponding to the video content, a genre corresponding to the video content, a codec corresponding to the video content, or a video time corresponding to the video content, or
receive, from the client application, information regarding an internet protocol address corresponding to the user device, a client version corresponding to the client application, operator information corresponding to the user device, a result code corresponding to the client application, an exit code corresponding to the client application, a frame rate mean corresponding to the video content, a frame rate standard deviation corresponding to the video content, a bandwidth mean corresponding to the video content, a bandwidth standard deviation corresponding to the video content, a jitter mean corresponding to the video content, a jitter standard deviation corresponding to the video content, an original file format corresponding to the video content, an original video codec corresponding to the video content, an original audio codec corresponding to the video content, an original width corresponding to the video content, an original height corresponding to the video content, an original quantity of transcoded bytes corresponding to the video content, an original average bit rate corresponding to the video content, an original video frame rate corresponding to the video content, an output average video frame rate corresponding to the video content, or an overall compression rate corresponding to the video content.

### Claim 15 (depends on 9)

The network device of claim 9, where the video quality metrics comprise a jitter value corresponding to the video content, a video start delay corresponding to the video content, a frame rate corresponding to the video content, a network congestion level corresponding to the video content being delivered, a video stall level corresponding to the video content, an output file size corresponding to the video content, an original width corresponding to the video content, an original height corresponding to the video content, an original average bit rate corresponding to the video content, or an amount of video content delivered corresponding to the video content.

### Claim 16

One or more non-transitory computer-readable storage media, comprising:
one or more instructions that, when executed by a processor, cause the processor to:
receive video quality data from a plurality of content delivery subsystems, where the video quality data comprises information corresponding to a delivery of video content from a content source to a user device via a network and information corresponding to video presentation conditions corresponding to the user device,
ascertain video quality metrics based on the video quality data, where each of the video quality metrics corresponds to a characteristic of the delivery of the video content from the content source to the user device or the video presentation conditions corresponding to the user device,
determine that a quantity of video quality metrics exceeds a particular threshold, and
produce, based on the video quality metrics, a video quality score corresponding to an estimated user viewing experience corresponding to the video content when the quantity of video quality metrics exceed the particular threshold.

### Claim 17 (depends on 16)

The one or more non-transitory computer-readable storage media of claim 16, where the one or more instructions cause the processor to:
generate a video quality report comprising the video quality score, and
communicate the video quality report to an operator of the network.

### Claim 18 (depends on 17)

The one or more non-transitory computer-readable storage media of claim 17, where the one or more instructions cause the processor to:
verify that the video quality score is below a video score threshold prior to communicating the video quality report to the operator of the network.

### Claim 19 (depends on 16)

The one or more non-transitory computer-readable storage media of claim 16, where:
to ascertain the video quality metrics, the one or more instructions cause the processor to assign an individual quality score to each of the video quality metrics, and
to produce the video quality score, the one or more instructions cause the processor to, combine the individual quality scores.

### Claim 20 (depends on 16)

The one or more non-transitory computer-readable storage media of claim 16, where:
to receive the video quality data from the plurality of content delivery subsystems, the one or more instructions cause the processor to:
receive, from a transcoder, a format width corresponding to the video content, a format height corresponding to the video content, or a frame rate corresponding to the video content,
receive, from a video identification controller, a video title corresponding to the video content, a genre corresponding to the video content, a codec corresponding to the video content, or a video time corresponding to the video content,
receive, from an optimization system, a quantity of bytes delivered to the user device or a quantity of videos delivered to the user device, or
receive, from a client application, a jitter mean, a jitter standard deviation, a frames-per-second mean, a frames-per-second standard deviation, a bandwidth mean, a bandwidth standard deviation, or an output average video frame rate.
