- Number
- 9621928
- Published
- 2017-04-11
- Filed
- 2015-10-06
- Assignee
- Disney Enterprises, Inc.
- Inventors
- Manzari; Giuseppe et al.
- CPC
- G06Q30/02; G06Q30/0277; H04L65/612; H04L65/70; H04L65/762; H04L65/764; H04L67/02; H04N19/127; H04N19/152; H04N19/187; H04N19/196; H04N21/23424; H04N21/2662; H04N21/812
- Verdict
- Set aside streaming playback + ad-insertion plumbing
- Source
- Google Patents · FreePatentsOnline
Abstract
There is provided a system and method for dynamically generated client side streaming playlists. There is provided a method comprising receiving a request to stream a video asset for playback, retrieving, from a network, a video asset playlist corresponding to the video asset and an ad campaign playlist, generating a consolidated video playlist including the video asset playlist and the ad campaign playlist, and processing the consolidated video playlist using a media playback framework to stream a plurality of video files from the network for decoding and output to a display. Discontinuity tags within the video asset playlist may be utilized as insertion points for portions of the ad campaign playlist. The consolidated video playlist may be accessed through a local HTTP web server, advantageously allowing the use of commonly installed media playback framework models such as QuickTime X to trigger adaptive bitrate support through HTTP Live Streaming.
Background
BRIEF DESCRIPTION OF THE DRAWINGS(1) The features and advantages of the present invention will become more readily apparent to those ordinarily skilled in the art after reviewing the following detailed description and accompanying drawings, wherein:(2) FIG. 1 presents a diagram of media content being prepared to support dynamically generated client side streaming playlists, according to one embodiment of the present invention;(3) FIG. 2 presents a system diagram for serving media content through dynamically generated client side streaming playlists,according to one embodiment of the present invention; and(4) FIG. 3 shows a flowchart describing the steps, according to one embodiment of the present invention, by which dynamically generated client side streaming playlists may be provided for streaming media content.DETAILED DESCRIPTION OF THE INVENTION(5) The present application is directed to a system and method for dynamically generated client side streaming playlists. The following description contains specific information pertaining to the implementation of the present invention. One skilled in the art will recognize that the present invention may be implemented ina manner different from that specifically discussed in the present application. Moreover,some of the specific details of the invention are not discussed in order not to obscure the invention. The specific details not described in the present application are within theknowledge of a person of ordinary skill in t
Claims
1. A system comprising: a memory; a processor configured to: obtain a video asset including a first act and a second act from the memory; divide the first act into a plurality of first segments, and divide the second act into a plurality of second segments; encode each of the plurality of first segments using a first bit rate profile to generate first segments of a first bit rate, and encode each of the plurality of second segments using the first bit rate profile to generate second segments of the first bit rate; generate a first playlist file including the first segments of the first bit rate and the second segments of the first bit rate separated by a first discontinuity tag; encode each of the plurality of first segments using a second bit rate profile to generate first segments of a second bit rate, and encode each of the plurality of second segments using the second bit rate profile to generate second segments of the second bit rate, wherein the firs bit rate is different than the second bit rate; generate a second playlist file including the first segments of the second bit rate and the second segments of the second bit rate separated by a second discontinuity tag; and provide a first ad segment having a first bit rate for insertion at the first discontinuity tag, and provide the first ad segment having a second bit rate for insertion at the second discontinuity tag. 10.A method for use by a system having a processor, the method comprising: obtaining, using the processor, a video asset including a first act and a second act; dividing, using the processor, the first act into a plurality of first segments, and dividing the second act into a plurality of second segments; encoding, using the processor, each of the plurality offirst segments using a first bit rate profile to generate first segments of a first bit rate, and encoding each of the plurality of second segments using the first bit rate profile to generate second segments of the first bit rate; generating, using the processor, a first playlist file including the first segments of the first bit rate and the second segments of the first bit rate separated by a first discontinuity tag; encoding, using the processor, each of the plurality of first segments using a second bit rate profile to generate first segments of a second bit rate, and encoding each of the plurality of second segmentsusing the second bit rate profile to generate second segments of the second bit rate, wherein the firs bit rate is different than the second bit rate; generating, using the processor, a second playlist file including the first segments of the second bit rate and the second segments of the second bit rate separated by a second discontinuity tag; and providing a first ad segment having a first bit rate for insertion at the first discontinuity tag,and provide the first ad segment having a second bit rate for insertion at the second discontinuity tag.
19. A system comprising: a memory; one or more processors configured to: obtain a video asset including a first act and a second act from the memory; divide the first act into a plurality of first segments, and divide the second act into a plurality of second segments; encode each of the plurality of first segments using a first profile to generate first segments of the first profile, and encode each of the plurality of second segments using the first profile to generate second segments of the first profile; generate afirst playlist file including the first segments of the first profile and the second segments of the first profile separated by first discontinuity tags; encode each of the plurality of first segments using a second profile to generate first segments of the second profile, and encode each of the plurality of second segments using the second profile to generate second segments of the second profile, wherein the firs profile is different than the second profile; generate a second playlist file including the first segments of the secondprofile and the second segments of the second profile separated by second discontinuity tags; provide first ad segments of the first profile for insertion at the first discontinuity tags, and provide the first ad segments of the second profile for insertion at the second discontinuity tags; and adaptively switch between streaming the first segments of the first profile and the second segments of the second profile.