P
US9106934B2ActiveUtilityPatentIndex 78

Distribution of adaptive bit rate live streaming video via hyper-text transfer protocol

Assignee: ESPIAL GROUP INCPriority: Jan 29, 2013Filed: Jan 29, 2013Granted: Aug 11, 2015
Est. expiryJan 29, 2033(~6.6 yrs left)· nominal 20-yr term from priority
Inventors:HOREN ROBERT SSARTO EIVINDTRUONG KHAI
H04L 65/80H04N 21/64707H04L 67/2842H04N 21/23439G06F 17/30017H04N 21/222H04L 65/00H04L 65/608H04N 21/2181H04L 67/568H04L 65/65H04N 21/6125H04N 21/64322H04N 21/6373H04N 21/4621H04N 21/8456H04N 21/44209H04N 21/2221G06F 16/40
78
PatentIndex Score
14
Cited by
15
References
22
Claims

Abstract

A system, method and apparatus of distributing a video stream is provided. At a publishing point relay, a plurality of video files encoded from a portion of the video stream from a Hypertext Transfer Protocol (HTTP) Live Streaming (HLS) Adaptive Bit Rate (ABR) encoding device are received. Each of the encoded video files having a different bit-rate, the encoded video files received using a protocol for transferring files. Edge publishing point servers are determined that are registered with the publishing point relay to distribute the audio/video stream. Each of the encoded video files received by the publishing point relay are relayed to each of the determined edge publishing points as each video file is received from the HTTP ABR encoding device.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A system for distributing a video stream, the system comprising:
 a Hypertext Transfer Protocol (HTTP) Live Streaming (HLS) Adaptive Bit Rate (ABR) encoding device adapted to:
 receive a portion of the live video stream from a content source; 
 encode the received portion of the video stream into a plurality of encoded video files, each of the encoded video files having associated with a different bit rate stream; and 
 make each of the plurality of encoded video files available to one or more networked devices using a protocol for transferring files over a network; 
 
 a publishing point relay adapted to:
 receive each of the plurality of the encoded video files from the HLS ABR encoding device and which are accessible to the publishing point relay from a network storage location wherein a sliding window of video files is maintained by deleting older video files from the publishing point relay and each edge publishing point as new video files are received at the network storage location; 
 determine edge publishing points to transfer the encoded video files to, from the publishing point relay, from a list of one or more edge publishing points registered with the publishing point relay wherein the list of edge publishing points can be dynamically updated by removing an edge publishing point from the list when the edge publishing point is non-responsive; and 
 transfer each of the encoded video files received by the publishing point relay to each of the determined edge publishing points as each file is received from the HLS ABR encoding device; and 
 
 a plurality of edge publishing points, each adapted to:
 receive and store the encoded video files transferred from the publishing point relay; 
 receive HTTP GET requests for one of the stored encoded video files from HTTP clients; and 
 transfer the requested encoded video files via HTTP GET responses to the requesting HTTP clients; 
 wherein the HLS ABR encoding device writes the video files to the network storage location, and wherein the publishing point relay receives each of the plurality of the encoded video files by receiving an indication that the individual video files are available at the a network storage location and retrieves the video files from the network storage location. 
 
 
     
     
       2. The system of  claim 1 , wherein the publishing point relay is further adapted to dynamically update the list of the plurality of edge publishing points registered with the publishing point relay without any service affecting down time. 
     
     
       3. The system of  claim 1 , further comprising a second publishing point relay, wherein the HLS ABR encoding device is further adapted to transfer each of the encoded video files to both the publishing point relay and the second publishing point relay. 
     
     
       4. The system of  claim 1 , wherein each of the plurality of video files encoded from the portion of the video stream encode the same length time of the video stream into separate files each having different bit-rates. 
     
     
       5. The system of  claim 1 , wherein a protocol for transferring files over a network used by HLS ABR encoding device to make the video files available is a network file system (NFS) protocol, wherein the HLS ABR encoding device writes the video files to an NFS drive, and wherein the publishing point relay receives each of the plurality of the encoded video files by receiving an indication that the individual video files are available and retrieves the video files. 
     
     
       6. The system of  claim 1 , wherein at least one of the edge publishing points is adapted to store a copy of each of the received video files to provide a live capture of the video stream for later nPVR play outs to provide “Catch Up TV” and similar enhanced services. 
     
     
       7. The system of  claim 2 , wherein the publishing point relay is adapted to receive a file transfer protocol address of an edge publishing point to be registered with the relay and update the list of the plurality of registered edge publishing points to include the received file transfer protocol address. 
     
     
       8. The system of  claim 3 , wherein the second publishing point relay provides fail-over capabilities to the publishing point relay. 
     
     
       9. The system of  claim 7 , wherein the publishing point relay is adapted to receive an identification of one of the plurality of edge publishing points registered with the publishing point relay and to remove the identified edge publishing point from the plurality of publishing point registered with the publishing point relay to receive the encoded video files. 
     
     
       10. A method of distributing a video stream comprising:
 receiving, at a publishing point relay, a plurality of video files encoded from a portion of the video stream from a Hypertext Transfer Protocol (HTTP) Live Streaming (HLS) Adaptive Bit Rate (ABR) encoding device and which are accessible to the publishing point relay from a network storage location wherein a sliding window of video files is maintained by deleting older video files from the publishing point relay and each edge publishing point as new video files are received at the network storage location, each of the encoded video files having a different bit-rate; 
 determining edge publishing point servers from a list of one or more edge publishing points registered with the publishing point relay to distribute the audio/video stream wherein the list of edge publishing points can be dynamically updated by removing an edge publishing point from the list when the edge publishing point is non-responsive; 
 relaying each of the encoded video files received by the publishing point relay to each of the determined edge publishing points as each video file is received from the HLS ABR encoding device; and 
 providing a plurality of edge publishing points, each adapted to:
 receive and store the encoded video files transferred from the publishing point relay; 
 receive HTTP GET requests for one of the stored encoded video files from HTTP clients; and 
 transfer the requested encoded video files via HTTP GET responses to the requesting HTTP clients; 
 
 wherein receiving, at the publishing point relay, the plurality of video files comprises:
 receiving at the publishing point relay, for each of the plurality of video files, a respective indication that the video file has been written to the network storage location; and 
 retrieving, by the publishing point relay, each of the video files from the network storage location. 
 
 
     
     
       11. The method of  claim 10 , further comprising maintaining at the publishing point relay the list of edge publishing points to transfer the encoded video files to. 
     
     
       12. The method of  claim 10 , wherein receiving, at the publishing point relay, the plurality of video files comprises:
 receiving, for each of the plurality of video files, a respective indication that the video file has been written to a network file system (NFS) disk; and 
 retrieving each of the video files from the NFS disk. 
 
     
     
       13. The method of  claim 10 , further comprising:
 receiving a portion of the video stream from a content source by a HLS ABR encoding device; 
 encoding the received portion of the video stream into the plurality of encoded video files, each of the encoded video files having different bit rates; and 
 making each of the plurality of encoded video files available to the publishing point relay. 
 
     
     
       14. The method of  claim 10 , registering at least one of the edge publishing points with the publishing point relay to receive the encoded video files. 
     
     
       15. The method of  claim 10 , further comprising transferring each of the encoded video files to both the publishing point relay and a second publishing point relay. 
     
     
       16. The method of  claim 10 , wherein a protocol for transferring files over a network used by HLS ABR encoding device to make the video files available is a network file system (NFS) protocol, wherein the HLS ABR encoding device writes the video files to an NFS drive, and wherein the publishing point relay receives each of the plurality of the encoded video files by receiving an indication that the individual video files are available and retrieves the video files. 
     
     
       17. The method of  claim 11 , wherein maintaining the list of edge publishing points comprises:
 receiving the IP address and port of an edge publishing point to be registered with the publishing point relay; and 
 updating the list of the plurality of registered edge publishing points to include the new edge publishing point. 
 
     
     
       18. The method of  claim 17 , wherein maintaining the list of edge publishing points further comprises:
 receiving an identification of one of the edge publishing points of the plurality of edge publishing points registered with the publishing point relay; and 
 removing the identified edge publishing point from the plurality of edge publishing points registered with the publishing point relay. 
 
     
     
       19. An apparatus for use in streaming video, the apparatus comprising:
 a processor for executing instruction; and 
 a memory for storing instructions, the instructions when executed by the processor configuring the apparatus to:
 receive each of a plurality of encoded video files from a Hypertext Transfer Protocol (HTTP) Live Streaming (HLS) Adaptive Bit Rate (ABR) encoding device and which are accessible to the publishing point relay from a network storage location wherein a sliding window of video files is maintained by deleting older video files from the publishing point relay and each edge publishing point as new video files are received at the network storage location; 
 determine edge publishing points to transfer the encoded video files to, from the publishing point relay, from a list of one or more edge publishing points registered with the publishing point relay wherein the list of edge publishing points can be dynamically updated by removing an edge publishing point from the list when the edge publishing point is non-responsive; and 
 transfer each of the encoded video files received by the publishing point relay to each of the determined edge publishing points as each file is received from the HLS ABR encoding device; 
 
 a plurality of edge publishing points, each adapted to:
 receive and store the encoded video files transferred from the publishing point relay; 
 receive HTTP GET requests for one of the stored encoded video files from HTTP clients; and 
 transfer the requested encoded video files via HTTP GET responses to the requesting HTTP clients; 
 wherein the HLS ABR encoding device writes the video files to the network storage location, and wherein the publishing point relay receives each of the plurality of the encoded video files by receiving an indication that the individual video files are available at the a network storage location and retrieves the video files from the network storage location. 
 
 
     
     
       20. The apparatus of  claim 19 , wherein the publishing point relay is further configured to receive an identification of one of the plurality of edge publishing points registered with the publishing point relay and to remove the identified publishing point from the plurality of publishing point registered with the publishing point relay to receive the encoded video files. 
     
     
       21. The apparatus of  claim 19 , wherein each of the plurality of the received video files encode the same length time of the video stream into separate files each having different bit-rates. 
     
     
       22. The apparatus of  claim 19 , wherein a protocol for transferring files over a network used by HLS ABR encoding device to make the video files available is a network file system (NFS) protocol, wherein the HLS ABR encoding device writes the video files to an NFS drive, and wherein the publishing point relay receives each of the plurality of the encoded video files by receiving an indication that the individual video files are available and retrieves the video files.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.