Abstract:
Content providers, such as television companies, may multicast adaptive bitrate content, using playlist-oriented streaming techniques, to recipient devices (such as set-top boxes (“STBs”)). In a playlist-oriented streaming technique, segment files (e.g., segments of the content) may correspond to predetermined time segments. In order to mitigate lag time, when a channel is selected by a user of an STB, which may ordinarily be caused by the nature of playlist-oriented streaming techniques, an STB may obtain content, associated with the selected channel, via a unicast, non-playlist-oriented technique. Once the next segment file has been received by the STB, the STB may cease obtaining the content by the unicast technique, and may use the segment files received via multicast.
Abstract:
A method, a system, and a non-transitory storage medium provides to receive a program including audio and video data; generate Moving Picture Experts Group (MPEG) Dynamic Adaptive Streaming over Hypertext Transfer Protocol (HTTP) (MPEG-DASH) segments that have multiple bit rates; transmit first packets that include the MPEG-DASH segments; divide each of the MPEG-DASH segments into first multiple slices of program data; generate a first header for each first slice of the first multiple slices, wherein the first header includes sequence information; multicast second packets that include first headers and the first multiple slices of each of the MPEG-DASH segments; assemble the MPEG-DASH segments; divide each of the MPEG-DASH segments into second multiple slices of the program data; encapsulate the second multiple slices into third packets; generate forward error correction packets; and multicast to a user device of a multicast, the third packets and the forward error correction packets.
Abstract:
Content providers, such as television companies, may multicast adaptive bitrate content, using playlist-oriented streaming techniques, to recipient devices (such as set-top boxes (“STBs”)). In a playlist-oriented streaming technique, segment files (e.g., segments of the content) may correspond to predetermined time segments. In order to mitigate lag time, when a channel is selected by a user of an STB, which may ordinarily be caused by the nature of playlist-oriented streaming techniques, an STB may obtain content, associated with the selected channel, via a unicast, non-playlist-oriented technique. Once the next segment file has been received by the STB, the STB may cease obtaining the content by the unicast technique, and may use the segment files received via multicast.
Abstract:
A method, a system, and a non-transitory storage medium provides to receive Moving Picture Experts Group Dynamic Adaptive Streaming over Hypertext Transfer Protocol (MPEG-DASH) segments that have multiple bit rates of a program; divide each of the MPEG-DASH segments into first multiple slices of program data of the program; generate first header slices for the first multiple slices, wherein each of the first header slices includes sequence information and an identifier of one of the MPEG-DASH segments; and multicast second packets that include the first headers and the first multiple slices.
Abstract:
A method, a system, and a non-transitory storage medium provides to receive multicast protocol packets, wherein each of the multicast protocol packets includes one of a slice of program data of a Moving Picture Experts Group (MPEG) Dynamic Adaptive Streaming over Hypertext Transfer Protocol (HTTP) (MPEG-DASH) segment and a header of the slice that indicates sequence information of the slice relative to other slices, or forward error correction data; order, in response to the receipt of the multicast protocol packets, each slice received based on the sequence information; determine whether any slice is missing that is a part of the MPEG-DASH segment; determine, in response to a determination that there are missing slices, whether the missing slices can be recovered; and use, in response to a determination that the missing slices can be recovered, the forward error correction data to recover the missing slices.
Abstract:
Content streams, such as video streams, may be seamlessly provided as both multicast and unicast transmissions. For example, in one implementation, a mobile device may receive a request, from a user of the mobile device, to play streaming content at the mobile device. The mobile device may receive, from a wireless network, and using multicast techniques, a sequence of content segments that correspond to the requested streaming content, and determine when a content segment is missing from the sequence of content segments. The mobile device may request, in response to the determination of the missing content segment, the missing content segment, from the wireless network, using unicast techniques; and insert the received missing content segment into the sequence of content segments to obtain the sequence of content segments as a sequence that includes content segments received using both multicast and unicast techniques.
Abstract:
In various embodiments, an encoder may be configured to divide received content in a first format into one or more segments and then to transcode the previously-divided segments into other formats and/or bitrates for presentation. In various embodiments, the encoder may include multiple segmenting computing devices configured to perform the dividing of the content into segments. The encoder may also include multiple transcoding computing devices configured to transcode the divided segments into a format for presentation. In various embodiments, the computing devices may be configured to communicate with each other via a network to determine which content has been divided into segments and which divided segments have been transcoded. The determination may be performed autonomously by the devices. Thus, in various embodiments, the devices included in the encoder may be configured to perform segmenting and transcoding on a distributed basis without necessarily requiring coordination by any one device.
Abstract:
An exemplary web services provider system remote from and communicatively coupled to a local digital video recording (“DVR”) system by way of a network detects an input command provided by a user and representative of a request for the local DVR system to perform a DVR operation with respect to a media program provided by a television service, identifies, in response to the request, a status of the media program, determines, based on the identified status of the media program, an optimal manner in which to perform the DVR operation, and directs the local DVR system to perform the DVR operation in accordance with the optimal manner. Corresponding systems and methods are also described.
Abstract:
In embodiments, apparatuses, methods and storage media are described that are associated with determination of frame alignment. In embodiments, a similarity value matrix may be determined representing similarity values for pairs of frames from two pieces of video content. An alignment score matrix may be determined from the similarity scores. Multiple sets of frames may be selected from the two pieces of video content and alignment score matrices determined for each set. From these alignment score matrices, an alignment of frames may be determined. In embodiments, a Needleman-Wunsch process may be used to compute alignment scores as well as to compute alignments based on alignment score matrices. Other embodiments may be described and claimed.
Abstract:
In various embodiments, an encoder may be configured to divide received content in a first format into one or more segments and then to transcode the previously-divided segments into other formats and/or bitrates for presentation. In various embodiments, the encoder may include multiple segmenting computing devices configured to perform the dividing of the content into segments. The encoder may also include multiple transcoding computing devices configured to transcode the divided segments into a format for presentation. In various embodiments, the computing devices may be configured to communicate with each other via a network to determine which content has been divided into segments and which divided segments have been transcoded. The determination may be performed autonomously by the devices. Thus, in various embodiments, the devices included in the encoder may be configured to perform segmenting and transcoding on a distributed basis without necessarily requiring coordination by any one device.