Device and method in a multimedia broadcast system
The present patent application relates to the field of multimedia broadcast systems, and particularly to a multimedia broadcast system allowing for facilitating identification of characteristic point information in an encrypted digital transport stream as well as a method for facilitating such identification.
Digital multimedia broadcast uses e.g. an MPEG-2 transport stream (TS). In such digital broadcast, the contents (mainly video information) to be broadcasted are time- divided into groups of data each having a predetermined size (e.g., 188 bytes) called transport packets, and broadcast data is sent in units of transport packets. The multimedia synchronization and timebase recovery are achieved by time-stamps for system time clock and presentation/decoding. In either case, the streams encode audio and especially video data in a compressed format, such that it is not possible to enter the stream at an arbitrary location and find data valid for decoding.
Characteristic point information (CPI) is used to determine the location of relevant data elements in a transport stream. One example of when CPI may be used is at fast-forward (or reverse) playing by skipping rapidly through the sequence of frames of a recorded transport stream to find and extract the I-frames only and send them to a decoder. An I- frame is a frame that is independent and does not rely upon other frames to decode it. Other pictures are encoded as P- or B-frames and these frames require data from at least one other frame to be decoded. The I-, P- and B-frames are explained in more detail in the detailed description. Thus, in e.g. a video playback operation to begin playback of the transport stream from a recording medium by making random accesses to the medium, it is necessary to search the medium for I-frames to start the playback.
One prior art approach is disclosed in US 2001/0026561, in which CPI is generated by parsing a received transport stream of a selected audio-visual program recorded on an optical disc, whereby the CPI is recorded in a separate file to facilitate location of entry points in the recorded program.
However, this prior art approach requires reading and parsing of the received transport stream in order to generate the CPI. Since the broadcast provider usually encrypts the transport stream in order to protect its content, the transport stream must be decrypted before the CPI is generated. Thus, extraction of the CPI out of fully encrypted transport streams without decryption of the transport stream is not possible with the presently known technique.
Accordingly, it is an object of the present invention to provide an improved method allowing for facilitating identification of characteristic point information in an encrypted digital data transport stream.
This object is achieved through a method of providing an encrypted digital data transport stream comprising unencrypted extra packets containing characteristic point information.
Another object of the invention is to provide an improved multimedia broadcast system allowing for facilitating identification of characteristic point information in an encrypted digital data transport stream.
This object is achieved through providing means for inserting unencrypted extra packets containing characteristic point information into an encrypted digital data transport stream. Still another object of the invention is to provide an improved signal format allowing for facilitating identification of characteristic point information in an encrypted digital data transport stream.
This object is achieved through providing unencrypted extra packets before characteristic points into the encrypted digital data transport stream. Still other objects and features of the present invention will become apparent from the following detailed description considered in conjunction with the accompanying drawings. It is to be understood, however, that the drawings are designed solely for purposes of illustration and not as a definition of the limits of the invention, for which reference should be made to the appended claims. It should be further understood that the drawings are not necessarily drawn to scale and that, unless otherwise indicated, they are merely intended to conceptually illustrate the structures and procedures described herein.
In the drawings, wherein like reference characters denote similar elements:
Fig. 1 discloses an inventive digital data transport stream comprising extra packets;
Fig. 2 discloses a multimedia broadcast system according to a preferred embodiment of the present invention; Fig. 3 discloses a multimedia broadcast system according to another embodiment of the present invention.
The following description considers in particular A/V devices operating according to the MPEG standards (ISO/IEC 11172 for MPEG-I and lSO/IEC 13818 for
MPEG-2) although, the person skilled in the art will recognize the applicability of the present invention to other A/V coding schemes not in conformance with the MPEG standard.
In MPEG-2 three types of frames can appear. The distinguishing feature among the frame types is the compression method used. The first type, Intracoded frames or I-frames, are compressed independently of any other frame. Although there is no fixed upper bound on the distance between I-frames, it is expected that they will be interspersed frequently throughout a sequence to facilitate random access and other special modes of operation.
Predictively motion-compensated frames or P-frames, are reconstructed from the compressed data in that frame and from the most recently reconstructed data from previously displayed I- or P-frames.
Bi-directionally interpolated prediction frames or B-frames, are reconstructed from the compressed data in that frame plus the reconstructed data from a previously displayed I- or P-frame and the reconstructed data from I- or P-frames that will be displayed in the future. Because reconstructed I- or P-frames can be used to reconstruct other frames, they are called anchor frames.
Characteristic point information (CPI) is used to determine the location of relevant data elements in a digital data transport stream, without having to read and parse the stream itself. This is important for several different system operations. Major examples of such operations are the following:
1. Trickplay operation, such as fast forward and fast reverse play. During highspeed forward or reverse play of a transport stream that contains video stream data, the stream cannot be read and decoded completely. Instead, only selected parts of the stream will
be read and decoded. The selection of these parts is based on CPI. For this purpose, CPI includes e. g. characteristic points that indicate the location of I-frame data.
2. Interactive playback. In case of interactive playback, the user may require playback to start at some particular time position in a stream, rather than at the beginning of the stream. In such a case, CPI is used to find the data locations for reading and decoding that match this time position. For this purpose CPI includes e. g. time-stamp values for relevant audio and video access units.
3. Quick edit-like operations involving stream truncation. The essential characteristic of this kind of operations is that they produce truncated versions of streams without actually touching any data in the streams themselves. Typically, these kinds of operations manipulate stream references to produce new streams with references to truncated versions of such streams. Possible examples are division of streams into smaller ones, creation of new streams by means of non-seamless edit connections etc. In all of these cases, CPI can be used to determine where truncated versions of the stream should start or end. In the present invention, e.g. the broadcast provider inserts unencrypted extra transport stream packets as CPI in the encrypted digital data transport stream. In these extra packets, or CPI-packets, information about which type of frame that follows is found. Figure 1 shows an example of a transport stream 10 comprising the extra CPI-packets. The CPI- packets are inserted just before CPI-points in the transport stream. The example shown in figure 1 shows three CPI-packets X, Y and Z, which may contain information like:
Packet X: the next frame is an I-frame;
Packet Y: the next frame is a P-frame; and
Packet Z: the next frame is a B-frame.
The CPI-packets may, however, contain more information, such as: Packet X: packets following this packet are packets from an I-frame and the first packet following this packet is the start of an I-frame; and
Packet Y: packets following this packet are packets from a P-frame and the first packet following this packet is the start of a P-frame. The previous frame was an I- frame and this point indicates that the I-frame has ended. Packet Z: packets following this packet are packets from a B-frame and the first packet following this packet is the start of a B-frame. The previous frame was a P-frame and this point indicates that the P-frame has ended.
Available information in these CPI-packets may be for example: Start of frame; End of frame; Length in packets of frame; Type of frame; Sizes in bytes of frame, etc.
Another kind of information that may be available in the extra inserted packets is the type of encryption algorithm used for encryption of the digital data transport stream.
It is not necessary to insert CPI-packets for every frame type. In a preferred embodiment of the present invention, this is done only for the I-frames. A transport stream consists of several elementary streams (e.g. audio streams and video streams and maybe other streams). Each elementary stream is carried in a stream of packets identified by a packet identifier (PID). Which PID-number that refers to each elementary stream is identified in the MPEG program specific information (PSI) tables. These tables are the program association tables (PAT) and the program map table (PMT). There is, thus, a PMT for each program in the transport stream. The CPI- packets are in the present invention indicated in the PMT as a private stream for that program. In MPEG-2 transport streams, such private stream information is placed in separate transport packets which have a packet identifier uniquely assigned to the private stream over the entire transport stream. These private stream bearing transport packets are then multiplexed into the transport stream which carries the compressed video signal(s).
A receiver, thus, searches for the extra transport stream packets that are in the clear and determines what type of frame that is expected next, just by looking at the data contained in the extra packet. This is e.g. useful for generating a CPI-file for a fully encrypted transport stream. It is also useful for on the fly searching for I-frames without making use of a CPI-file.
The additional overhead for the insertion of these extra packets is relatively small, but it highly simplifies the extraction of the CPI out of the fully encrypted transport stream packets. It should be noted, however, that the invention not only is applicable on encrypted transport streams, but obviously also on transport streams that are in the clear, i.e. unencrypted transport streams.
The present invention is preferably used in a multimedia broadcast system. Such a broadcast system comprises a plurality of head end equipments belonging to the broadcast providers and a plurality of integrated receiver decoders, such as set-top-boxes (STB's), belonging to end users or provided by the broadcast providers. For example, a storage device (a recorder) comprises a recorded digital data transport stream which is encrypted but has unencrypted extra packets inserted before each different encoded frame. The recorder is not allowed to decrypt the transport stream only an STB has the right to decrypt the transport stream. Normally, this causes no problem since the recorder just plays back the stream to the STB. However, if an end user wants to perform
trickplay, such as fast forward play, the recorder has to select I-frames and use a trickplay generating tool to create a new transport stream that can be sent to the STB. Therefore, it needs to know the location of the I-frames and since it is not allowed to decrypt the data, the unencrypted extra packets are very important. The extra packets can be inserted into the encrypted digital data transport stream either by the broadcast provider (in the head end equipment) or by the recorder if it is allowed to decrypt the transport stream so it knows where to insert the extra packets.
In the preferred embodiment of the present invention, shown in figure 2, the broadcast provider is responsible for correct insertion of the extra packets into the transport stream multiplex.
In figure 2 a block diagram of the inventive multimedia broadcast system according to the preferred embodiment is shown. A head end apparatus 105 comprises an encoder 112, which receives an analog signal and compresses the signal into frames. The encoder 112 informs an extra packet generator 116 of what type of frame it is and sends the encoded signal to an encryption device 114 for encryption of the frame. The extra packet generator 116 generates an extra packet with information about the next frame. The encrypted signal is then sent to a multiplexer 118, which multiplexes the generated extra packet(s) into the encrypted signal. A signal 125 is thus obtained finally transmitted by a transmitter 120 to at least one integrated receiver decoder 140 via a physical channel 130, which can be any type of channel like for instance copper wire, optical or wireless.
The integrated receiver decoder appartus 160 comprises in the preferred embodiment a receiver 142, which receives the transmitted signal from the head end equipment 110. The input signal is stored on a storage device 146, such as an input buffer, a memory or a recording medium. Simultaneously, the received data is processed by an extra packet detector 144 in order to generate a CPI-file. Optionally, the extraction of CPI from the encrypted input signal may be done later on. The CPI-file and the stored encrypted transport stream is used in an operating unit 148 for e.g. generate a valid trickplay stream or extract a keyframe, etc. The signal is then forwarded to a decoder 150.
The packet generator 116 and the multiplexer 118 form a first circuit 110 as an embodiment of the circuit for providing information according to the invention.
The packet detector 144, the operating unit 148 and the decoder 150 form a second circuit 140 as embodiment of the circuit for selectively decoding packets.
In another embodiment of the present invention, shown in figure 3, the insertion of the extra packets is done in the integrated receiver decoder.
In figure 3 a block diagram of the inventive multimedia broadcast system according to another embodiment is shown. A head end equipment 210 comprises an encoder 212, which receives an analog signal and compresses the signal into frames. The encoded signal is then sent to an encryption device 214 for encryption of the signal. The encoded and encrypted signal is finally transmitted by a transmitter 220 to at least one integrated receiver decoder 240 via a physical channel 230, which can be any type of channel like for instance copper wire, optical or wireless.
The integrated receiver decoder 240 comprises a receiver 242, which receives the transmitted signal from the head end equipment 210. A decryption device 244 decrypts the encrypted received signal and sends the decrypted signal to a frame detector device 246. The frame detector device 246 determines what type of frames that are in the stream, I, P or B-frames. An extra packet generator 248 generates an extra packet with information about what type of frame that is next. The receiver 242 sends the received encrypted signal to a multiplexer 250, where the extra packets generated by the extra packet generator 248 is inserted into the encrypted signal. Finally the encrypted signal having inserted unencrypted extra packets is stored on a storage device 252.
In the following will be described a method for facilitating identification of characteristic point information in an encrypted digital data transport stream, which method comprises the steps of: generating unencrypted extra packets containing characteristic point information; and inserting said unencrypted extra packets into said encrypted digital data transport stream.
As illustrated by the above, a multimedia broadcast system and a method for identifying characteristic point information has been described, where the CPI is extracted from fully encrypted transport streams without decryption of the transport stream. Thus, e.g. packets containing I-frames can easily be identified and decoded for fast-forward/reverse playback.
Thus, while there have been shown and described and pointed out fundamental novel features of the invention as applied to a preferred embodiment thereof, it will be understood that various omissions and substitutions and changes in the form and details of the devices illustrated, and in their operation, may be made by those skilled in the art without departing from the spirit of the invention. For example, it is expressly intended that all combinations of those elements and/or method steps which perform substantially the same
function in substantially the same way to achieve the same results are within the scope of the invention. Moreover, it should be recognized that structures and/or elements and/or method steps shown and/or described in connection with any disclosed form or embodiment of the invention may be incorporated in any other disclosed or described or suggested form or embodiment as a general matter of design choice. It is the intention, therefore, to be limited only as indicated by the scope of the claims appended hereto.
For example, besides for encryption, the method described can also be used for other types of encoding.