Patent ID: 8483078

Claim:
An apparatus for management of digital programs, comprising: an input port configured to receive at least one transport stream, the at least one transport stream including a plurality of program elementary streams, each program elementary stream comprising a plurality of packets each including a packet identifier (PID) that identifies a corresponding program elementary stream for a respective program and program content data for the respective program; plural content modifying units arranged in a communication path between the input port and an output port of the apparatus, the plural content modifying units being operative to: select at least one program corresponding to at least one of the plurality of program elementary streams based on a respective control signal to provide a selected program; modify at least the program content data of the selected program, the program content data including actual program content of the at least one of the plurality of program elementary streams corresponding to the selected program; and a processor programmed to provide the respective control signal signals to each of the content modifying units based on user-programmable management data stored in associated memory, wherein the user programmable management data defines rules that characterize conditions for modified program content provided at the output port, wherein the conditions specify at least one of an encryption format, a bitrate and an encoding format for the modified program content provided at the output port, wherein the processor selectively controls the plural content modifying units to satisfy the conditions for the modified program content provided at the output port; the plural content modifying units being further operative to modify the actual program content in the at least one of the plurality of program elementary streams corresponding to the selected program by performing at least two of transcryption, transrating, and transcoding of the actual program content based on the respective control signal to provide the modified program content data at the output port.