Adaptive bit rate system architectures using named domain networking

US10187680B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10187680-B2
Application numberUS-201414538691-A
CountryUS
Kind codeB2
Filing dateNov 11, 2014
Priority dateNov 11, 2014
Publication dateJan 22, 2019
Grant dateJan 22, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one implementation, a method includes obtaining a plurality of representations of a digital video asset. The plurality of representations may include a plurality of frames The method also includes generating first data comprising data indicative of temporal dependencies and frame decoding dependencies for the plurality of frames. The frame decoding dependencies may include a plurality of switching points between the plurality of representations of the digital video asset. The method further includes receiving a request for a first representation of the digital video asset from a first computing device and transmitting the first data to the first computing device based on the request. In another implementation, a method includes transmitting a request for a first representation of a plurality of representations of a digital video asset to a first computing device. The plurality of representations may include a plurality of frames. The method also includes receiving first data comprising data indicative of temporal dependencies and frame decoding dependencies for the plurality of frames based on the request. The frame decoding dependencies may include switching points between the plurality of representations of the digital video asset.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: obtaining a plurality of representations of a digital video asset, wherein the plurality of representations comprise a plurality of video frames; generating an acyclic directed graph comprising a plurality of nodes representing the plurality of video frames and a plurality of arcs representing temporal dependencies and frame decoding dependencies between each video frame of the plurality of video frames, wherein the frame decoding dependencies comprise a plurality of switching points between the plurality of representations of the digital video asset, wherein a first arc of the plurality of arcs is associated with a first switching point from the plurality of switching points and wherein the first arc comprises a quality loss metric; receiving, from a first computing device, a request for a first representation of the plurality of representations of the digital video asset; and transmitting, to the first computing device, the acyclic directed graph in response to receiving the request. 2. The method of claim 1 , wherein obtaining the plurality of representations of the digital video asset comprises: generating a plurality of named domain network (NDN) data objects, wherein each NDN data object of the plurality of NDN data object comprises at least a portion of a video frame of the plurality of video frames; and generating a plurality of NDN names for the plurality of video frames, wherein the plurality of NDN names identifies the plurality of video frames. 3. The method of claim 1 , wherein obtaining the plurality of representations of the digital video asset comprises: generating a plurality of content centric networking (CCN) data objects, wherein each CCN data object of the plurality of CCN data object comprises at least a portion of a video frame of the plurality of video frames; and generating a plurality of CCN names for the plurality of video frames, wherein the plurality of CCN names identifies the plurality of video frames. 4. The method of claim 1 , wherein each node of the plurality of nodes comprises a storage size of a video frame, an importance level of the video frame, and one or more video quality metrics associated with the video frame. 5. The method of claim 1 , further comprising: receiving, from the first computing device, a first set of requests for a first set of video frames of the first representation, wherein each video frame in the first set of video frames is associated with a first importance level; and transmitting, to the first computing device, the first set of video frames in response to receiving the first set of requests. 6. The method of claim 1 , further comprising: receiving, from the first computing device, a plurality of requests for a plurality of video frames, wherein the plurality of video frames are not in consecutive order; and transmitting, to the first computing device, the plurality of video frames in response to receiving the plurality of requests. 7. The method of claim 1 , wherein transmitting the acyclic directed graph comprises: transmitting a manifest file comprising the acyclic directed graph. 8. A method comprising: transmitting, to a first computing device, a request for a first representation of a plurality of representations of a digital video asset, the plurality of representations comprising a plurality of video frames; and receiving, from the first computing device in response to transmitting the request, an acyclic directed graph comprising a plurality of nodes representing the plurality of video frames and a plurality of arcs representing temporal dependencies and frame decoding dependencies between each video frame of the plurality of video frames, wherein the frame decoding dependencies comprise a plurality of switching points between the plurality of representations of the digital video asset, wherein a first arc of the plurality of arcs is associated with a first switching point from the plurality of switching points and wherein the first arc comprises a quality loss metric. 9. The method of claim 8 , further comprising: transmitting, to the first computing device, a request for a first video frame of the first representation; and receiving, from the first computing device in response to transmitting the request, the first video frame of the first representation. 10. The method of claim 9 , wherein receiving the first video frame of the first representation comprises: receiving a named domain network (NDN) data object comprising at least a portion of the first video frame. 11. The method of claim 8 , wherein receiving the acyclic directed graph comprises: receiving a manifest file comprising the acyclic directed graph. 12. The method of claim 8 , wherein each node of the plurality of nodes comprises a storage size of a video frame, an importance level of the video frame, and one or more video quality metrics of the video frame. 13. The method of claim 8 , further comprising: adjusting playback of the digital video asset based on the acyclic directed graph. 14. The method of claim 13 , wherein adjusting playback of the digital video asset comprises: identifying a set of nodes from the plurality of nodes based on one or more of a current bandwidth, an estimated bandwidth, or an amount of available space in a buffer; identifying a set of video frames associated with the set of nodes; and transmitting, to the first computing device, a set of requests for the set of video frames. 15. The method of claim 13 , wherein adjusting playback of the digital video asset comprises: identifying a set of nodes from the plurality of nodes, wherein each node is associated with a same importance level; identifying a set of video frames associated with the set of nodes; and transmitting, to the first computing device, a set of requests for the set of video frames. 16. The method of claim 13 , wherein adjusting playback of the digital video asset comprises: identifying a set of nodes from the plurality of nodes; identifying a set of video frames associated with the set of nodes, wherein the set of video frames is not in consecutive order; and transmitting, to the first computing device, a set of requests for the set of frames. 17. The method of claim 13 , wherein adjusting playback of the digital video asset comprises: determining that at least one requested video frame for a portion of the first representation was not received; and continuing playback of the portion of the digital video asset using received video frames for the portion of the first representation. 18. The method of claim 8 , further comprising: transmitting, to the first computing device, a request for a first video frame of the first representation; determining that the first video frame was not received during a period of time; and re-transmitting, to the first computing device, the request for the first video frame. 19. An apparatus, comprising: one or more processors; and a memory comprising instructions that when executed cause the one or more processors to perform operations comprising: obtaining a plurality of representations of a digital video asset, wherein the plurality of representations comprise a plurality of video frames; generating an acyclic directed graph comprising a plurality of nodes representing the plurality of video frames and a plurality of arcs representing temporal dependencies and frame decoding dependencies between each video frame of the plurality of video frames, wherein the frame decoding dep

Assignees

Inventors

Classifications

  • 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) · CPC title

  • involving management of server-side video buffer · CPC title

  • for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server (ARQ protocols H04L1/18; implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] H04L69/16) · CPC title

  • for rate control (flow control in packet networks H04L47/10) · CPC title

  • Channel allocation (H04N21/266 takes precedence); Bandwidth allocation (H04N21/24 takes precedence {; allocation of channels according to the instantaneous demands of the users in time-division multiplex systems H04J3/1682; admission control, resource allocation in open networks H04L12/5692; arrangements for maintenance or administration in data switching networks involving bandwidth and capacity management H04L41/0896; negotiating bandwidth in wireless networks H04W28/16}) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10187680B2 cover?
In one implementation, a method includes obtaining a plurality of representations of a digital video asset. The plurality of representations may include a plurality of frames The method also includes generating first data comprising data indicative of temporal dependencies and frame decoding dependencies for the plurality of frames. The frame decoding dependencies may include a plurality of swi…
Who is the assignee on this patent?
Cisco Tech Inc
What technology area does this patent fall under?
Primary CPC classification H04L65/1083. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 22 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).