Abstract:
Systems, devices and processes are described to adapt segment requests placed by an autonomous media player during media streaming to compensate for fluctuations in the bandwidth consumed by the requested segments due to variances in the underlying video content. By providing predictive data about the bandwidth consumption of upcoming video segments, client devices can adapt requests for future segments accordingly. Further, predictive consumption data can be shared between players operating within shared bandwidth to assist players needing additional bandwidth for upcoming video sequences.
Abstract:
An apparatus, system, and method for maintaining a programming lineup of adaptive-bitrate content streaming is provided. The apparatus includes a timeline module configured to maintain a programming lineup of media content available over a network. The media content may comprise a plurality of streamlets. The apparatus also includes at least one data module configured to maintain multi-bitrate streamlet information. The system includes the apparatus and a client module configured to acquire content based upon the programming lineup provided by the timeline module. The method includes maintaining a programming lineup of media content available over a network, and maintaining multi-bitrate streamlet information.
Abstract:
A method for operating a programming receiver is provided. The method displays, by the programming receiver, a sequence of recorded video content comprising a video presentation and a plurality of segments of interstitial content; receives, at the programming receiver, a command to skip one of the plurality of segments of interstitial content; and presents a screen comprising a picture advertisement for the one of the plurality of segments of interstitial content, the screen requesting confirmation to skip the one of the plurality of segments of interstitial content in the sequence.
Abstract:
Systems, devices and methods are provided to support multiple audio tracks in an adaptive media stream. Segments of the adaptive stream are encoded so that the player is able to locate and request a specific one of the available audio tracks using byte range requests or the like. Audio content can be removed from video segments, or at least moved to the end of the segments so that a byte range request obtains just the video content when the default audio is not desired. The audio content can be obtained from a separate audio segment. Indeed, multiple audio tracks can be packaged into a common audio segment so that byte range requests can obtain just the particular audio track desired.
Abstract:
A system and method are provided of minimizing network bandwidth used from an external network by client peers in a local network. The method can include the operation of organizing a plurality of clients each having media streamlets and a client parent in a structure within the local network. Mapping information propagates through the structure. The mapping information represents local streamlet locations as stored by the plurality of clients. Another operation is retrieving a local streamlet from a client identified in the mapping information as having the local streamlet for the requesting client.
Abstract:
A method for operating a programming receiver is provided. The method displays, by the programming receiver, a sequence of recorded video content comprising a video presentation and a plurality of segments of interstitial content; receives, at the programming receiver, a command to skip one of the plurality of segments of interstitial content; and presents a screen comprising a picture advertisement for the one of the plurality of segments of interstitial content, the screen requesting confirmation to skip the one of the plurality of segments of interstitial content in the sequence.
Abstract:
Systems, devices and methods are provided to support multiple audio tracks in an adaptive media stream. Segments of the adaptive stream are encoded so that the player is able to locate and request a specific one of the available audio tracks using byte range requests or the like. Audio content can be removed from video segments, or at least moved to the end of the segments so that a byte range request obtains just the video content when the default audio is not desired. The audio content can be obtained from a separate audio segment. Indeed, multiple audio tracks can be packaged into a common audio segment so that byte range requests can obtain just the particular audio track desired.
Abstract:
Systems and methods are described for providing trick play functions such as fast forward, rewind or slow motion during playback of streaming media content. Multiple sets of streamlets or other media files that represent the same media stream are encoded differently from each other (e.g., at different frame rates and/or frame directions), and each set of files is simultaneously maintained at a server. Files encoded at a first format are made available to the client device during regular playback, and files encoded at a different frame rate and/or a different direction of encoding are made available to support trick play.
Abstract:
Systems, devices and methods are provided to support placeshifting of adaptive media streams. A home device acts as an intermediary that passes requests for segments of an adaptive stream from a remote device to a content source. The content source responds with the requested segments, which are forwarded to the remote device. A connection service may be provided to facilitate placeshifting sessions between home and remote devices.
Abstract:
Various systems, methods and devices adaptively manage the multicast delivery of multiple media programs. Each of the media programs is encoded into multiple media streams, each stream having a different bitrate, frame rate, resolution or other encoding parameter. A computer receives feedback about the delivery of the multiple streams and automatically adapts the number of streams available for at least one of the multiple media programs in response to the received feedback. This allows resources to be applied to those multicast streams having the greatest user demand.