Patent classifications
H04N19/40
Transcoding of video content
Dynamic transcoding can be used to provide supplemental content, selected to be played during breaks in a stream of primary content, that has the same format as the primary content. It can be desirable to provide supplemental content that is personalized. This may include additional content or advertising that may be of interest or relevance to a viewer. In many instances, the supplemental content will come from a different source and thus can be in a different format. Approaches in accordance with various embodiments can take advantage of dynamic transcoding of the supplemental content to provide properly formatted supplemental content through the same stream as the primary content. A custom manifest can be provided to the media player that points to the transcoded supplemental content. At an appropriate break in the playback, the media player can use the manifest to obtain the formatted supplemental content.
Transcoding of video content
Dynamic transcoding can be used to provide supplemental content, selected to be played during breaks in a stream of primary content, that has the same format as the primary content. It can be desirable to provide supplemental content that is personalized. This may include additional content or advertising that may be of interest or relevance to a viewer. In many instances, the supplemental content will come from a different source and thus can be in a different format. Approaches in accordance with various embodiments can take advantage of dynamic transcoding of the supplemental content to provide properly formatted supplemental content through the same stream as the primary content. A custom manifest can be provided to the media player that points to the transcoded supplemental content. At an appropriate break in the playback, the media player can use the manifest to obtain the formatted supplemental content.
SALIENCY-BASED VIDEO COMPRESSION SYSTEMS AND METHODS
Examples of systems and methods described herein may provide saliency-based video compression. A saliency map associated with a video may be generated and/or provided. A tile configuration may be selected for the video and quality settings assigned to each tile in accordance with the saliency map. The video may then be compressed (e.g., encoded) in tiles in accordance with the quality settings. Compressed videos may be stored together with saliency metadata, facilitating storage management and/or re-compression.
SALIENCY-BASED VIDEO COMPRESSION SYSTEMS AND METHODS
Examples of systems and methods described herein may provide saliency-based video compression. A saliency map associated with a video may be generated and/or provided. A tile configuration may be selected for the video and quality settings assigned to each tile in accordance with the saliency map. The video may then be compressed (e.g., encoded) in tiles in accordance with the quality settings. Compressed videos may be stored together with saliency metadata, facilitating storage management and/or re-compression.
Space efficiency and management of content
A transcoder resource retrieves content stored in a repository. The stored content can be encoded in accordance with a first encoding format. The transcoder resource transcodes the retrieved content into a second encoding format. To increase available capacity, the transcoder resource stores the content in the second encoding format as a replacement to the content encoded according to the first encoding format. The second encoding format can support a higher compression ratio than the first encoding format. Additionally, the transcoding can be performed as one of multiple tasks executed in parallel. In such an instance, during parallel processing, a content management resource interleaves execution of the main processing task and the background task of transcoding the content into the second encoding format. The transcoding task can be assigned a lower execution priority than one or more other tasks executed in parallel.
Space efficiency and management of content
A transcoder resource retrieves content stored in a repository. The stored content can be encoded in accordance with a first encoding format. The transcoder resource transcodes the retrieved content into a second encoding format. To increase available capacity, the transcoder resource stores the content in the second encoding format as a replacement to the content encoded according to the first encoding format. The second encoding format can support a higher compression ratio than the first encoding format. Additionally, the transcoding can be performed as one of multiple tasks executed in parallel. In such an instance, during parallel processing, a content management resource interleaves execution of the main processing task and the background task of transcoding the content into the second encoding format. The transcoding task can be assigned a lower execution priority than one or more other tasks executed in parallel.
AI-assisted programmable hardware video codec
A video processing apparatus includes a programmable hardware encoder configured to execute an encoding process on a plurality of input video frames. The video processing apparatus further includes a controller coupled with the programmable hardware encoder. The controller is configured to execute a set of instructions to cause the video processing apparatus to: determine first information of the plurality of input video frames, and adjust the encoding process based on the first information.
REMOTELY GENERATED ENCODING METADATA FOR LOCAL CONTENT ENCODING
Embodiments are directed towards remotely generating encoding metadata at a remote content distributor for use by a local user computing device. The remote content distributor receives and encodes content. During or after the encoding process, the remote content distributor generates encoding metadata that indicates how the content was encoded by the remote content distributor. The remote content distributor provides the encoding metadata to the user computer device. The user computing device receives the content and the encoding metadata and encodes the content based on the encoding metadata. The user computing device can then provide the encoded content to another computing device for decoding and presentation to a user.
Partial Video Decoding Method, Device and System
Encoded video data representing partial video images is decoded from a first video stream such as a HEVC bitstream. The first video stream comprises video images divided into a spatial array of independently decodable slices. The first video stream comprises network abstraction layer units that each contain video content data for a respective one of the slices preceded by a header that comprises parameters relating to the respective one of the slices in relation to the first video stream. Previously prepared information such as meta data about positions of parameters in the network abstraction layer units or a plurality of different versions of the network abstraction layer units for different partial image sizes (different picture sizes) is used. The meta data may be used for partially rewriting the network abstraction layer units for a sub-array of slices, the network abstraction layer units being rewritten at a location selected on the basis of meta data, to make the network abstraction layer units consistent with a second video stream of encoded video data only for the sub-array of slices. Versions of the network abstraction layer units may be selected for the sub-array of slices, from the plurality of different versions. Subsequently, the partial video images are generated by decoding the encoded video data from the rewritten network abstraction layer units.
Partial Video Decoding Method, Device and System
Encoded video data representing partial video images is decoded from a first video stream such as a HEVC bitstream. The first video stream comprises video images divided into a spatial array of independently decodable slices. The first video stream comprises network abstraction layer units that each contain video content data for a respective one of the slices preceded by a header that comprises parameters relating to the respective one of the slices in relation to the first video stream. Previously prepared information such as meta data about positions of parameters in the network abstraction layer units or a plurality of different versions of the network abstraction layer units for different partial image sizes (different picture sizes) is used. The meta data may be used for partially rewriting the network abstraction layer units for a sub-array of slices, the network abstraction layer units being rewritten at a location selected on the basis of meta data, to make the network abstraction layer units consistent with a second video stream of encoded video data only for the sub-array of slices. Versions of the network abstraction layer units may be selected for the sub-array of slices, from the plurality of different versions. Subsequently, the partial video images are generated by decoding the encoded video data from the rewritten network abstraction layer units.