Patent classifications
H04N21/64769
Video complexity detection for network traffic management
Aspects of the subject disclosure may include, for example, a method in which a processing system obtains encoded video content, and transmits the encoded video content over a network for presentation at a communication device by a video player executing on the communication device. The encoded video content is decoded in a decoding process by a decoder of an operating system of the communication device to generate decoded video content; the decoded video content is analyzed by a complexity analyzer of the operating system to generate a video complexity report. The method also includes receiving the video complexity report over the network from the communication device, and adjusting a data rate for the encoded video content, based at least in part on the video complexity report, to generate adjusted video content for transmission to the communication device. Other embodiments are disclosed.
SYSTEMS AND METHODS FOR ADJUSTING BUFFER SIZE
Methods and systems are provided for adjusting a size of a buffer based on a probability that a rewind request will be received during a currently playing segment of media. When the system determines that receiving a rewind request is likely, the system will increase the size of a buffer such that the rewind request can be accommodated using data from the buffer. When the system determines that receiving a rewind request is unlikely, the system will decrease the size of the buffer to free resources for other system components.
Systems and methods for adjusting buffer size
Methods and systems are provided for adjusting a size of a buffer based on a probability that a rewind request will be received during a currently playing segment of media. When the system determines that receiving a rewind request is likely, the system will increase the size of a buffer such that the rewind request can be accommodated using data from the buffer. When the system determines that receiving a rewind request is unlikely, the system will decrease the size of the buffer to free resources for other system components.
Methods and systems for data transmission
Methods and systems for transmitting data are presented. Data received from at least one data source is retained in at least one buffer. In one example, initial hierarchical data may be provided from the at least one buffer to a device, followed by additional hierarchical data. In one example, the data is received into the at least one buffer via a multicast connection, and the data is provided to the device via a point-to-point connection.
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.
DEVICE, SYSTEM AND METHOD FOR ALLOCATING RESOURCES FOR VIDEO STREAMING
A device, system and method for allocating resources for video streaming is provided. A device determines, respective differences between reserved and actual allocated resources for videos provided to a streaming system by client devices, and selects, at the streaming system, from a plurality of discrete selectable allocated resources available at the streaming system, first reserved aggregate allocated resources based on the actual allocated resources for the videos, the first reserved aggregate allocated resources for streaming the videos to video-playing devices. The device monitors used resources for streaming the videos to the video-playing devices and, in response to determining that the used resources are within a threshold value of the first reserved aggregate allocated resources: from the plurality of discrete selectable allocated resources, selects second reserved aggregate allocated resources based on the respective differences between the reserved allocated resources and the actual allocated resources for the videos.
SYSTEMS AND METHODS FOR MANAGING CONTENT DISTRIBUTION TO AN IN-TRANSIT MEDIA SYSTEM
Systems and methods for dynamically multiplexing requested linear media channels and network data on forward link traffic streams of a communication link to a craft media delivery system are provided. Furthermore, systems and methods for receiving dynamically multiplexed requested linear media channels and network data on forward link traffic streams of a communication link by a craft media delivery system are also provided.
APPARATUS, SYSTEM, AND METHOD FOR MULTI-BITRATE CONTENT STREAMING
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.
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.
METHODS AND SYSTEMS FOR VIDEO PROCESSING
A method for processing an online video stream may include determining a transmission performance of a network for a queue of video frames, wherein each video frame in the queue may be associated with a priority level. The method may also include determining a maximum discarding level based on the transmission performance of the network. The method may further include removing a target video frame of which the associated priority level is lower than or equal to the maximum discarding level from the queue.