H04N21/64769

NETWORK STREAM QUALITY MANAGEMENT
20220141545 · 2022-05-05 ·

A network element seamlessly provides a flow of adjustable quality to a receiver endpoint. The network element obtains from the receiver endpoint a request for a media stream. The network element subscribes to multiple flows of the media stream, with each flow corresponding to a different quality level of the media stream. The network element monitors the network performance of each of the flows and selects a first flow based on the network performance of each of the flows. The network element provides the first flow to the receiver endpoint and continues to monitor the network performance of the flows.

APPARATUS AND METHOD FOR MEDIA STREAMING

A system that incorporates teachings of the subject disclosure may include, for example, dividing a media content item into a plurality of media content segments, at each media content segment of the plurality of media content segments, applying motion estimation between at least two video frames of the media content segment to determine a content weight for the media content segment, determining a bit rate for the media content segment according to the determined content weight for the media content segment, and encoding the media content segment at the determined bit rates to generate a data stream for the media content segment, whereby a plurality of data streams for the plurality of media content segments of the media content are generated, and transmitting the plurality of data streams for the plurality of media content segments of the media content to the one or more media devices. Other embodiments are disclosed.

Viewer importance adaptive bit rate delivery

Examples of the present invention provide a method of delivering media, such as a video sequence, to a client device from a server, taking into account the relative importance of different portions of the video sequence. The sequence is divided into temporal segments, with each segment encoded at a plurality of bitrates (and hence qualities). A viewer importance parameter is assigned to each segment, indicating the relative importance of that segment, with the information stored in a manifest file or similar. The client receives this segment and viewer importance data in a manifest file. As soon as the client is aware of a future segment marked as having higher viewer importance than the next segment for download, the client initiates the download of this further segment by making a request (e.g. HTTP request), while making a concurrent request for the delivery of the next segment.

Distributed encoding

Techniques are disclosed relating to encoding recorded content for distribution to other computing devices. In some embodiments, a first computing device creates recorded content for transmission to a second computing device configured to present the recorded content. To encode the recorded content, the first computing device detects, via a network interface of the first computing device, one or more computing nodes available to encode the recorded content in one or more formats supported by the second computing device. The first computing device offloads the recorded content via the network interface to the one or more computing nodes for encoding in the one or more formats. In some embodiments, the second computing device receives a request from a user to stream content recorded by a first computing device and requests the content in a first format being encoded by a computing node assisting the first computing device.

OPTIMIZATION OF ENCODING PROFILES FOR MEDIA STREAMING

Techniques described herein are directed toward creating one or more “dynamic profiles” for media (video) streaming in which an encoding bit rate (and optionally other profile settings) is optimized for particular content. More specifically, techniques involve performing one or more “probe” encodings of the particular content to determine an encoding bit rate (and optionally other profile settings) that results in an encoding having a quality value sufficiently near (within a threshold) a target quality value.

Software-defined media platform

A software-defined media platform having one or more media processing units that may be dynamically instantiated, interconnected and configured according to changes in demand, resource availability, and other parameters affecting system performance relative to demand. In one example media processing method, a source media stream may be received via multicast or unicast. The source media stream may be processed into one or more levels of work product segments having different media characteristics by a plurality of transcoding processing units, as needed. One or more levels of work product segments, or the source media stream, may be packaged (e.g., including resegmenting) into final work product segments having select media characteristics, which may be uploaded to a cloud storage unit for delivery to end users.

Apparatus and method for media streaming

A system that incorporates teachings of the subject disclosure may include, for example, dividing a media content item into a plurality of media content segments, at each media content segment of the plurality of media content segments, applying motion estimation between at least two video frames of the media content segment to determine a content weight for the media content segment, determining a bit rate for the media content segment according to the determined content weight for the media content segment, and encoding the media content segment at the determined bit rates to generate a data stream for the media content segment, whereby a plurality of data streams for the plurality of media content segments of the media content are generated, and transmitting the plurality of data streams for the plurality of media content segments of the media content to the one or more media devices. Other embodiments are disclosed.

APPARATUS AND METHOD FOR ACCELERATING SUPER-RESOLUTION IN REAL-TIME VIDEO STREAMING

The present disclosure seeks to perform real-time video streaming on a mobile device toward maintaining user QoE even under bandwidth constraints while being acceptable to the lightweight computing capacity of the mobile device. To this end, the embodiments apply deep neural network-based SR to a small number of pre-selected video frames and utilize the video frames to which SR is applied to enhance the resolution of the remaining frames, wherein the pre-selected frames are chosen for SR within a preset quality margin. Additionally, the present disclosure provides an apparatus and a method for SR acceleration for real-time video streaming under the lightweight computing capacity and video-specific constraints of a mobile device, which allow a server to deliver multiple options on a deep neural network and a cache profile including SR application information and enable the mobile device to select an option suitable for its computing capacity.

Architecture and algorithms for high availability statmuxing

Techniques for using statmuxes are described. In some examples, each statmux is to perform activities such as receiving complexity and quality data per frame per encoder of each channel of a first zone of a provider network, wherein a first channel of the first zone is associated with a first source and a second channel of the first zone is associated with a second source; receiving complexity and quality data per frame per encoder of each channel of a second zone of the provider network, wherein a first channel of the second zone is associated with the first source and a second channel of the second zone is associated with the second source; determining, based on the received complexity data and quality data, which channels are to be active, wherein an active channel's content data is to be included in the multi program transport stream output; providing an indication to the channels of which channels have been determined to be active based upon the encoder determination; receiving content data from the encoders of the active channels; and generating a multi program transport stream output from the received content data.

SOFTWARE-DEFINED MEDIA PLATFORM
20210344733 · 2021-11-04 ·

A software-defined media platform having one or more media processing units that may be dynamically instantiated, interconnected and configured according to changes in demand, resource availability, and other parameters affecting system performance relative to demand. In one example media processing method, a source media stream may be received via multicast or unicast. The source media stream may be processed into one or more levels of work product segments having different media characteristics by a plurality of transcoding processing units, as needed. One or more levels of work product segments, or the source media stream, may be packaged (e.g., including resegmenting) into final work product segments having select media characteristics, which may be uploaded to a cloud storage unit for delivery to end users.