Macro-block based content replacement by PID mapping
First Claim
1. A method of content substitution, comprising:
- receiving data representing video content, the data having a plurality of packet identifiers (PIDs) where a first PID is associated with a stream of original content, where the original content is made up of frames of content with each frame being made up of a plurality of original macroblocks;
where a second PID is associated with substitute content, and where the substitute content comprises one or more substitute macroblocks of content but constitutes less than an entire frame of macroblocks;
initiating processing of the original content having the first PID;
determining that a substitution criterion has been met to replace one or more macroblocks in the at least one frame of original content with one or more macroblocks of substitute content, wherein the replacing modifies at least one frame of the original content by replacement of less than all original macroblocks in a full frame of the original content;
replacing the one or more macroblocks of the original content having the first PID with one or more macroblocks of substitute content having the second PID to produce modified content;
where, the replacing is carried out by selectively switching a controller from a bypass mode to a mode that effects replacement of the substitute macroblocks for the original macroblocks; and
processing the modified content.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for content substitution, consistent with certain embodiments of the present invention involves receiving data representing one or more macroblocks of content, the data having at least first and second packet identifiers (PIDs) associated with first and second portions of content. The content having the first PID is placed into a data stream. An initiation flag is received indicating initiation of a PID mapping operation. The substitute macroblocks of content having the second PID is then mapped to the first PID and the mapped content is placed into the data stream. A termination flag is received indicating termination of the PID mapping operation at which point the process returns to placing content having the first PID into the data stream. The content substitution process can be used to replace advertisements, provide multiple plots, multiple endings, multiple views as well as other applications. This abstract should not be considered limiting, since other embodiments may incorporate more, fewer or different elements that those described in this abstract.
-
Citations
36 Claims
-
1. A method of content substitution, comprising:
-
receiving data representing video content, the data having a plurality of packet identifiers (PIDs) where a first PID is associated with a stream of original content, where the original content is made up of frames of content with each frame being made up of a plurality of original macroblocks; where a second PID is associated with substitute content, and where the substitute content comprises one or more substitute macroblocks of content but constitutes less than an entire frame of macroblocks; initiating processing of the original content having the first PID; determining that a substitution criterion has been met to replace one or more macroblocks in the at least one frame of original content with one or more macroblocks of substitute content, wherein the replacing modifies at least one frame of the original content by replacement of less than all original macroblocks in a full frame of the original content; replacing the one or more macroblocks of the original content having the first PID with one or more macroblocks of substitute content having the second PID to produce modified content; where, the replacing is carried out by selectively switching a controller from a bypass mode to a mode that effects replacement of the substitute macroblocks for the original macroblocks; and processing the modified content. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method of content substitution, comprising:
-
receiving data representing content, the data having a plurality of packet identifiers (PIDs) where a first PID is associated with a stream of original content, where the original content is made up of frames of content with each frame being made up of a plurality of original macroblocks; where a second PID is associated with substitute content, and where the substitute content comprises one or more substitute macroblocks of content but constitutes less than an entire frame of macroblocks; placing the original content having a primary PID into a data stream; receiving an initiation flag indicating initiation of a PID mapping operation; at a PID mapper, mapping content having a secondary PID to a primary PID and placing the mapped content into the data stream so as to modify at least one frame of the original content by replacement of less than all original macroblocks in a full frame of the original content; responsive to the initiation flag, selectively switching a controller from a bypass mode to a mode that effects replacement of the substitute macroblocks for the original macroblocks; receiving a termination flag indicating termination of the PID mapping operation; responsive to the termination flag, selectively switching the controller back to the bypass mode; and continuing to place content having a primary PID into the data stream. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A decoder, comprising:
-
a receiver receiving data that represents content, the data having a plurality of packet identifiers (PIDs) where a first PID is associated with a stream of original content, where the original content is made up of frames of content with each frame being made up of a plurality of original macroblocks; where a second PID is associated with substitute content, and where the substitute content comprises one or more substitute macroblocks of content but constitutes less than an entire frame of macroblocks; a content decoder configured to play content having the first PID; a controller that determines that a substitution criterion has been met to substitute one or more macroblocks of substitute content for one or more macroblocks of original content and switches the decoder from a bypass mode to a mode that effects replacement of the substitute macroblocks for the original macroblocks, wherein substitution of the substitute macroblocks into the original content modifies at least one frame of the original content by replacement of less than all original macroblocks in a full frame of the original content; and a PID mapper that maps content having the second PID to the first PID so that the content originally having the second PID is played. - View Dependent Claims (27)
-
-
28. A television set-top box decoder, comprising:
-
a receiver receiving data that represents content, the data having a plurality of packet identifiers (PIDs) where a first PID is associated with a stream of original content, where the original content is made up of frames of content with each frame being made up of a plurality of original macroblocks; where a second PID is associated with substitute content, and where the substitute content comprises one or more substitute macroblocks of content but constitutes less than an entire frame of macroblocks; a content decoder configured to play content having the first PID; a state machine controller and PID mapper in which the controller determines that a substitution criterion has been met to substitute one or more macroblocks of original content, and the PID mapper maps content having the second PID to the first PID so that the content originally having the second PID is played; wherein the state machine controller determines that the substitution criterion is met as a result of receipt of a flag forming a part of an adaptation layer of packets in the data received by the receiver, where the adaptation layer is in a packet having one of the first and second PIDs; wherein the substituting comprises using private signaling to select the one or more macroblocks of content with the secondary PID and discarding the one or more macroblocks of content with the primary PID;
where, the substituting is carried out by selectively switching the state machine controller from a bypass mode to a mode that effects replacement of the substitute macroblocks for the original macroblocks, and wherein the substituting of the substitute macroblocks into the original content modifies at least one frame of the original content by replacement of less than all original macroblocks in a full frame of the original content.
-
-
29. A method of content substitution, comprising:
-
receiving data representing video content, the data having a plurality of packet identifiers (PIDs) where a first PID is associated with a stream of original content, where the original content is made up of frames of content with each frame being made up of a plurality of original macroblocks; where a second PID is associated with substitute content, and where the substitute content comprises one or more substitute macroblocks of content but constitutes less than an entire frame of macroblocks; receiving mode data representing a content substitution mode of operation of a controller, where the controller is operative in either a bypass mode or a mode in which content substitution is carried out; initiating processing of content having the first PID; determining that a substitution criterion has been met to replace one or more macroblocks in the at least one frame of original content with one or more macroblocks of substitute content; selecting the mode of operation of the decoder in which content substitution is carried out based on the mode data; substituting the one or more macroblocks having a second PID for the one or more macroblocks having a first PID, where the substituting of the substitute macroblocks into the original content modifies at least one frame of the original content by replacement of less than all original macroblocks in a full frame of the original content ; and processing the substituted content. - View Dependent Claims (30, 31, 32, 33, 34)
-
-
35. A decoder, comprising:
-
a receiver receiving data that represents content, the data having a plurality of packet identifiers (PIDs) where a first PID is associated with a stream of original content, where the original content is made up of frames of content with each frame being made up of a plurality of original macroblocks; where a second PID is associated with substitute content, and where the substitute content comprises one or more substitute macroblocks of content but constitutes less than an entire frame of macroblocks; the receiver further receiving mode data representing a content substitution mode of operation of a controller, where the content substitution mode represents one of a plurality of content substitution modes; a content decoder configured to play content having the first PID; where the controller determines that a substitution criterion has been met to substitute one or more macroblocks of original content, and further selects a content substitution mode of the decoder based on the mode data in which one or more original macroblocks are deleted and replaced with one or more substitute macroblocks, and wherein substitution of the substitute macroblocks into the original content modifies at least one frame of the original content by replacement of less than all original macroblocks in a full frame of the original content; and a PID mapper that maps content having the second PID to the first PID so that the content originally having the second PID is played. - View Dependent Claims (36)
-
Specification