Title of Invention | A DIGITAL VIDEO RECEPTION DEVICE AND PROCESS. |
---|---|
Abstract | This invention relates to a digital video reception device comprising: - means of reception (101,102,103) and of demultiplexing (113) of audio and video packets for a multiplexed digital stream; - a first video writing memory (205a) for accumulating a predetermined quantity of demultiplexed video packets; - a second audio writing memory (205b) for accumulating demultiplexed audio packets; - means of storage (201) of the multiplexed audio and video packets in the form of blocks, each block comprising a first area for recording the video packets and of fixed size equal to said predetermined quantity, and a second area for recording for audio packets and of fixed size such that it is greater than or equal to the maximum quantity of audio data which can be accumulated while obtaining the predetermined quantity of video data. The invention also relates to a recording process and to recording device. |
Full Text | The invention relates to a receiver for storing a digital audio and video datastream, in particular but not solely an audio and video datastream compressed according to the MPEG II standard. The invention also relates to a process for recording data of the stream and is more generally adapted to the recording of synchronized components (for example audio and video) of a digital datastream. Lastly, the invention relates to a storage device. In a datastream of MPEG II TS type (standing for Transport Stream'), the audio and video data are present in the form of elementary stream packets, also referred to as 'PES' packets. These PES packets] are included in TS transport packets which comprise an identifier ('PID') of the PES packets. A TS stream is a temporaj multiplex of the audio and video PES packets relating to a large number of different programs. The stream can also transport other digital data, such as signaling data and so-called private data. A digital television decoder receives this stream and demultiplexes and then decodes the PES packets corresponding to a particular program. During work aimed at including a hard disk-type storage device within a digital television receiver, the inventors have recognized that the disparate nature of the data to be recorded (audio/video streams on the one hand, data of the code file or parameter file type on the other) rendered access to the storage device inefficient if file systems arising from the world of computing were used as they stand. The subject of the invention is a digital video reception device, characterized in that it comprises: - means of reception and of demultiplexing of a multiplexed digital stream; - means of storage comprising two file systems having different recording block sizes. By providing a double system of files on one and the same recording medium, it is possible to improve the behavior of the medium, depending on the nature of the data to be manipulated. For the recording of audio and video data, a file system possessing blocks of large size is provided for, this size being much larger than that reserved for the blocks of the file system reserved for the data other than audio/video. According to the particular exemplary embodiment described later, the size of an audio/video block is here 256 disk sectors or else 128 Kb, whilst the size of a standard block is only 4 sectors, it is also possible to conceive of audio/video blocks of much larger size than 128 Kb. Thus, given the substantially sequential nature of audio/video data, large blocks make it possible to reduce the quantity of memory required for the service data of the audio/video file system, since fewer blocks need to be managed. However, the maintaining of a second, more conventionally crafted, file system also makes it possible to record files of smaller size, without appreciable loss of space on account of incompletely filled blocks. It is quite clear that data streams having substantially sequential access or isochronous streams or streams of large size other than audio and/or video streams may benefit from the invention. According to a particular embodiment, the blocks of the first file system are of large size and adapted to the recording of audio/video streams and in that the blocks of the second file system are of smaller size and adapted to the recording of files of smaller size than the audio/video streams. According to a particular embodiment, the block size of the first file system is larger by at least an order of magnitude than the block size of the second file system. According to a particular embodiment, the first file system is adapted to sequential access of the recorded data, whilst the second file system is adapted to random access of the data recorded therein. Indeed, the data of audio and video type are better suited to sequential access, whereas data of 'service' or 'private' type, for example databases for compiling a program guide or else program code files, may be managed more efficiently with random access. It is thus possible to store data of different types on a single medium, for example a hard disk. According to a particular embodiment, the first file system comprises simple indirect addressing, whilst the second file system comprises multiple indirect addressing. According to a particular embodiment, the storage means comprise a recordable disk comprising a single boot block, a first area reserved for the service data of the first file system and for the corresponding data blocks, and a second area reserved for the service data of the second file system and for the corresponding data blocks. According to a particular embodiment, the device furthermore comprises a first video writing memory for accumulating a predetermined quantity of demultiplexed video packets; a second audio writing memory for accumulating demultiplexed audio packets; the means of storage being adapted to store the remultiplexed audio and video packets in the form of blocks of the first file system, each block comprising a first area for recording the video packets and of fixed size equal to said predetermined quantity, and a second area for recording for audio packets and of fixed size such that it is greater than or equal to the maximum quantity of audio data which can be accumulated while obtaining the predetermined quantity of video data. The audio and video PES packets of a program which emanate from the demultiplexer are poorly adapted, as they stand, to recording on an appropriate medium. Specifically, the audio and video PES packets being multiplexed, the nature of their content is not easily identifiable once these packets are rid of the transport layer. A labeling of these packets would represent a considerable loss of storage space complex to manage. The recording, on a data medium such as a hard disk, is performed in blocks comprising (among other things) two areas of fixed size, one of which is reserved for video data and the other for audio data. Once a quantity of video data corresponding to the size of the video area has been demultiplexed, a complete block is written, regardless of the quantity of audio data received at that moment. By dint of the arrangement of the areas inside a block, the nature of the PES packets recorded therein is known, thus avoiding labeling of each PES packet. Moreover, even if the initial multiplexing order within the TS stream of the packets recorded is not maintained strictly at block level, the overall audio and video transmission rate is retranscribed. The order relationship between the ratio of the sizes of the areas for recording a block and the ratio of the bit rates guarantees that the area reserved for audio never overflows before the area reserved for video is filled. The subsystem for the formation of the audio/video blocks is considered as being an invention in itself. According to a particular embodiment, the inventive device comprises a third video reading memory for reading video data from the storage means and a fourth audio reading memory for the reading of audio data, the respective sizes of the third and fourth memories, video and audio reading respectively, being equal to the sizes of the first and second memories, video and audio writing respectively. According to a particular embodiment, the device furthermore comprises: - a writing memory for transmitting data to the storage means, which memory is organized as an area comprising N video writing memories of FIFO type and an audio writing area comprising a memory of FIFO type having the size of N audio writing memories; - means for controlling the transfer of video data to a first of the N video writing memories and of audio data to the audio writing area, the transfer of video data being continued to a next video writing memory when said first of the N video writing memories is full; - means for storing the location, in the area for recording audio data, of the audio data corresponding to each of the N video writing memories. The implementation of a series of video writing memories makes it possible to buffer write accesses to the storage means, in the case where these would lag behind. Management of audio data is performed with the aid of a single FIFO memory, whereas management of the video data is performed with the aid of a plurality of FIFO memories. The set of audio FIFO memories and of video FIFO memories can be physically included in a single memory, whose various areas are managed as individual FIFO memories. According to a particular embodiment, the device furthermore comprises means for initiating the transfer of video and audio data stored in said writing memory to the storage means as soon as one of the N video writing memories has been filled. The management of the writing memories is of the 'video buffer' type. According to a particular embodiment, the device comprises: - a reading memory for receiving data from storage means, which memory is organized as an area comprising N video reading memories of FIFO type and an audio reading area comprising a memory of FIFO type having the size of N audio reading memories; - means for controlling the transfer of video data to a first of the N video reading memories and of audio data to the audio reading area, the transfer of video data being continued to a next video reading memory when said first of the N video reading memories is full; means for storing the location, in the area for reading audio data, of the audio data corresponding to each of the N video reading memories. According to a particular embodiment, the device furthermore comprises means for initiating the transfer of video and audio data stored in said reading memory to a decoder of said data when the set of N video reading memories has been filled. In read mode, management of the memories is of a 'full buffer' type. The subject of the invention is also a process for recording audio and video data in a digital television receiver, characterized in that it comprises the steps of: - demultiplexing audio and video packets relating to one and the same program; . - simultaneous accumulation of the demultiplexed video data in a first memory and of the demultiplexed audio data in a second memory; - stopping the accumulation in said memories following the obtaining of a predetermined quantity of video data in said first memory; - recording of the video data accumulated in said first memory and of the audio data accumulated in the second memory respectively in a first area of a block whose fixed size is equal to said predetermined quantity and in a second area of this block, the size of this second area being fixed and chosen in such a way that it is greater than or equal to the maximum quantity of audio data which can be accumulated while obtaining said predetermined quantity of video data. According to a variant embodiment, the process furthermore comprises the step of recording in each block of a data item indicating the quantity of audio data recorded in this block. This makes it possible easily to determine the end of the audio data of a block, without having to perform comparisons to detect a particular binary word contained in the area reserved for the audio data and which would identify the end thereof. The subject of the invention is also an audio and video data recording device, characterized in that it comprises a double file system wherein the first system is adapted to files of audio/video stream type and wherein the second file system is adapted to files of smaller size than the audio/video streams. According to a particular embodiment, the recording device comprises a recordable disk divided into sectors, data blocks of the first file system having a size of at least 256 sectors, data blocks of the second file system having a size of a few sectors. Other characteristics and advantages of the invention will become apparent through the description of a particular nonlimiting exemplary embodiment illustrated by the accompanying among which: - figure 1 is a block diagram of a digital receiver/decoder comprising a storage device in accordance with the present exemplary embodiment; - figure 2 is a block diagram of an exemplary embodiment of the storage device, in this instance a hard disk; - figure 3 is a diagram illustrating the split of audio and video areas in a FIFO-type memory used as buffer for the writing of data; - figure 4 is a diagram of a block of 128 Kbytes of a part of the hard disk reserved for the recording of audio and video streams; - figure 5 is a diagram illustrating the two types of file system present on the hard disk; - figure 6 is a diagram illustrating various areas for recording the 'stream'-type file system; - figure 7 is a flow chart for the writing of a file to the disk; - figure 8 is a diagram illustrating the respective durations of various operations during a reading of blocks; - figures 9a and 9b are diagrams illustrating a process making it possible to reduce the movements of a disk writing/reading head when recording and reading simultaneously; - figure 10 is a block diagram of a clock recovery circuit. Although the description hereinbelow relates especially to the recording of demultiplexed audio and video PES packets, the invention can easily be applied to the direct recording or transport stream (TS) packets or program stream (PS) packets or else of other types of streams, for example of Digital Video (DV) type. According to the present exemplary embodiment, the storage device is a hard disk built into a digital television decoder meeting the DVB standard. Figure 1 is a block diagram of such a decoder. The latter comprises a tuner 101 linked to a demodulation and error correction circuit 102 which also comprises an analog/digital converter for digitizing the signals originating from the tuner. Depending on the type of reception, cable or satellite, the modulation used is of QAM or QPSK type, and the circuit 102 comprises the demodulation means appropriate for the type of reception. The demodulated and corrected data are serialized by a converter 103, connected to a serial input of a demultiplexing and decoding circuit 104. According to the present example, this circuit 104 is an STi5500 circuit manufactured by ST Microelectronics. The latter comprises, linked to a central 32-bit parallel bus 105, a DVB demultiplexer 106, a microprocessor 107, a cache memory 108, an external memory interface 109, a serial communication interface 110, a parallel input/output interface 111, a chip card interface 112, an audio and video MPEG decoder 113, a PAL and RGB encoder 114 and a character generator 115. The external memory interface 109 is linked to a 16-bit parallel bus to which are respectively linked a parallel interface 116 of IEEE 1284 type, a random access memory 117, a 'Flash' memory 118 and a hard disk 119. The latter is of EIDE type for the requirements of the present example. The parallel interface 116 is also connected to an external connector 120 and to a modem 121, the latter being linked to an external connector 122. The serial communication interface 110 is linked to an external connector 123, as well as to the output of an infrared reception subassembly 124 intended to receive signals from a remote control (not illustrated). The infrared reception subassembly is integrated into a front panel of the decoder, which also comprises a display device and control buttons. The chip card interface 112 is linked to a chip card connector 125. The audio and video decoder 113 is linked to a 16-Mbit random access memory 126 intended for storing the nondecoded audio and video packets. The decoder transmits the decoded video data to the PAL and RGB encoder 114 and the decoded audio data to a digital/analog converter 127. The encoder supplies the RGB signals to an SECAM encoder 132, and also provides a video signal in the form of a luminance component Y and of a chrominance component C, these two components being separated. These various signals are multiplexed through a switching circuit 128 to an audio output 129, television output 130 and video recorder output 131. The route taken by the audio and video data through the decoder is as follows: the demodulated datastream possesses a transport stream format or more simply a 'TS' format with reference to the MPEG II Systems standard. This standard possesses the reference ISO/IEC 13818-1. In their header, the TS packets comprise identifiers called PIDs which indicate the elementary stream to which the useful data of the packet pertain. Typically, an elementary stream is a video stream associated with a particular program, whereas an audio stream of this program is another one. The data structure used to transport the compressed audio and video data is referred to as an elementary stream packet or else 'PES1 packet. The demultiplexer 106 is programmed by the microprocessor 107 so as to extract from the transport stream the packets corresponding to certain values of PID. The useful data of a demultiplexed packet are, as appropriate, descrambled (if the rights stored by a chip card of the user authorize this descrambling), before storing these data in buffer areas of the various memories of the decoder. The buffer areas reserved for the audio and video PES packets are situated in the memory 126. The decoder 113 reads back these audio and video data depending on its needs, and transmits the decompressed audio and video samples to the encoder 114 and to the converter 127 respectively. Certain of the circuits mentioned above are controlled in a known manner, for example through a bus of I2C type. The typical case described hereinabove corresponds to the direct decoding of a demultiplexed program by the MPEG decoder 113. According to the invention, the receiver/ decoder comprises a hard disk for the mass storage mainly of audio and video data in their compressed form. Figure 2 is a block diagram of the assembly 119 comprising the hard disk and the interfacing circuits linking it to the external memory interface 109. The hard disk 201 is a commercial hard disk furnished with an Ultra ATA/EIDE interface. 'ATA' designates the communication protocol, known elsewhere, of the specific disk used within the framework of the present example. According to the present exemplary embodiment, the disk comprises a double file system. Two file systems; associated with respective data areas are used in parallel to read and write data from and to the disk, the first file system being adapted to the writing and to the reading of data of computer file, program, code type, etc. referred to hereinbelow as the 'block' file system, whilst the second file system is intended for the writing and for the reading of audio and video streams, this file system being referred to hereinbelow as the 'stream' file system. This duality is also found at the level of the architecture of the interface circuits of figure 2. The writing and reading of data blocks are performed by way of respectively a memory of first-in-first-out (FIFO) type 202 for writing and of a memory 203 of the same type for reading. The two FIFO memories have a respective size of 16 bytes and are controlled by a block transfer circuit 204 which manages the address pointers for these two FIFO memories. According to the present exemplary embodiment, these are double synchronous port type memories. The data exchanges according to the 'block1 mode are carried out in direct memory access mode, by sending bursts of 16 bytes. These bursts are buffered both in write mode and in read mode by the two FIFO memories 202 and 203, which allow the adaptation of the disk bit rate to the bus bit rate 215 and vice versa. Two FIFO memories 205 and 206 are provided for respectively writing and reading the audio and video streams. Each FIFO memory 205 and 206 comprises, according to the present exemplary embodiment, a physical memory of 512 Kbytes, divided up into four video banks of 112 Kbytes (clustered into a 'video' area, referenced 205a, respectively 206a) and an audio area of 64 Kbytes (referenced 205b, respectively 206b), and is controlled by a stream transfer control circuit 207. Each video bank and audio area is managed as a first-in-first-out (FIFO) memory. The circuit 207 manages two write pointers and two read pointers which are independent for each of the series 205 and 206, namely a pair of video pointers and a pair of audio pointers. A single memory 205 and 206 is active in read mode and a single is active in write mode at a given moment. Access to the two memories 205 and 206 is however independent, allowing so-called simultaneous reading and writing from and to the disk. According to a variant of the present exemplary embodiment, the memories 202, 203, 205 and 206 are areas of the random access memory 117, each of these areas being managed as one, or if appropriate several, memory (memories) of the first-in-first-out type. Moreover, an adaptation of the present exemplary embodiment to the management of additional components, such as for example several elementary audio streams, would be easily achievable by the person skilled in the art, by providing the additional memories required for this purpose. Moreover, it is also possible to record TS stream packets directly, without having extracted the PES packets therefrom. In this case, one is not concerned with the nature (audio, video or other) of the content of the recorded packets, and the demultiplexed TS packets are recorded in blocks of 128Kb, that is to say by managing the 112 and the 16Kb continuously. In this particular case, there is therefore no reframing depending on the nature of the elementary packets contained in the TS packets, contrary to what is performed during the recording of PES packets stripped of the transport layer. The two transfer control circuits 204 and 207 are state machines whose operation is controlled by the microprocessor 107. The microprocessor tells the controllers the transfer tasks to be performed in direct memory access mode (the mode referred to hereinafter as the 'UDMA' or Ultra Direct Memory Access mode), and is forewarned of the accomplishing of these tasks through an interrupt generated by an interrupt control circuit 208 linked to the two transfer control circuits 204 and 207. Within the framework of the example described here, use is made of the 33 Mbyte/s UDMA mode, but the invention is obviously not limited to this mode. The two transfer control circuits manage disk access proper through a control circuit 209 which allows implementation of the disk and its mode of access, namely access to the command and control registers and direct UDMA memory access. The command circuit is also linked to the microprocessor 107, for the direct management of the control and command registers of the disk, this not implementing the transfer control circuits 204 and 207. The interfacing circuit of figure 2 furthermore comprises two multiplexers 210 and 211, which receive as input respectively the three input paths for the data, that is to say the data to be written to the disk, and the three output paths for the data, that is to say for the data read from the disk. Each multiplexer therefore possesses at input three 16-bit buses and one 16-bit bus at output. The switching between the various paths is managed by the microprocessor 107. As far as the writing multiplexer 210 is concerned, the first input path consists of a direct access of the data bus 215 of the external memory interface 109 to the data bus 212 of the disk 201, the second path consists of the output of the FIFO memory 202 for the writing of blocks, whilst the third path consists of the output of the FIFO memory 205, for the writing of the streams. As far as the reading multiplexer 211 is concerned, the first output path consists of a direct access of the data bus of the disk to the data bus of the external memory interface 109, whilst the second path consists of the output of the memory 203 for the reading of blocks, and the third path of the output of the FIFO memory 206, for the reading of streams. The respective outputs of the two multiplexers 210 and 211 are connected respectively to the data bus of the disk and to the data bus of the external memory interface across three-state output stages 213 and 214, controlled by the automata 204 and 207. Each memory 205 and 206 serves as cache memory for the data heading for the disk or coming from it. The disk according to the present exemplary embodiment comprises sectors of 512 bytes. The content of 256 sectors therefore corresponds to the size of a video memory bank of a FIFO memory of one of the memories 205a and 206a, plus a quarter of the size of one of the audio areas 205b and 206b, namely a total of 128 Kbytes. This is substantially the quantity of data transferable from or to the disk during the mean time of movement of a reading head of the disk used in the present example, namely around 10 ms. The use of FIFO memories having the characteristics defined hereinabove has made it possible to obtain simultaneous reading and writing bit rates of 15 Mbit/s. The writing of an audio/video stream to the disk will be described in conjunction with figures 3 and 4. Figure 3 illustrates the splitting of the PES format audio and video data in accordance with the MPEG II standard to two FIFO memories, namely a video bank (one of the banks of the part 205a of the memory 205) and an audio area (part 205b of the memory 205). The data are written to the disk in audio/video blocks of 128 Kbytes each. According to the present invention, a fixed part of the block of 128 Kbytes is reserved for video data (112 Kbytes) and another part, which is variable, for the audio data (16 Kbytes maximum). The blocks being written sequentially, the audio and video data are therefore interleaved on the disk. It has been found that the ratio of the minimum bit rate of a video stream to the maximum bit rate of an audio stream is around 10. By defining in a block of 128 Kbytes an area of 112 Kbytes reserved for video and of 16 Kbytes for audio, the ratio is 7. Stated otherwise, by taking into consideration an audio/video stream whose video data (in the form of video PES packets) are stored as soon as they are multiplexed in the area of 112 Kbytes and whose audio data (in the form of audio PES packets) in the area of 16 Kbytes, the video area will always be filled before the audio area. It is obvious that, depending on the streams and the bit rates to be managed, ratios other than 7 may also be used. This is the case in particular if compression algorithms other than those advocated by the MPEG standard are implemented. When the video bank of 112 Kbytes is filled, the content of this bank is written to the disk, followed by the audio data accumulated during the same time as the 112 Kbytes of video data, this being irrespective of the state of fill of the audio area. By construction, one nevertheless knows that fewer than 16 Kbytes have been accumulated. In this context, there is no correlation between the limits of the PES packets and the start or the end of a video bank or of the audio data accumulated. The first data items of the content of a video bank may in fact fall in the middle of a video PES packet, whilst the last audio data items accumulated do not necessarily correspond to the end of an audio PES packet. It will be assumed that the measures required for opening a file for writing a stream have been taken beforehand at the disk file system level. Appended to the video and audio data are an identifier of the file to which the block of the disk belongs and a data item indicating the quantity of audio data, which is derived from the state of the write pointer of the audio area 205b of the memory 205 at the time the limit of fill of the video bank is reached. The identifier is coded on 16 bits, whilst the quantity of audio data is coded on 14 bits. Figure 4 illustrates the layout of the data in a block on the disk. Part of the audio area of the block not containing any audio data is filled with stuffing bits so as to make these data up to 16 Kbytes. In the case of TS packet recording, it is obviously not necessary to indicate a quantity of audio data. The file identifier is the same for all the blocks belonging to the same file. The identifier of a file is an item of information which is redundant to that contained in a data structure referred to as a node and associated with each file. The identifier is however used if a write-open file has not been correctly closed: the file system then identifies all the blocks belonging to one and the same file by virtue of the file identifier and updates the corresponding parameters in the node of the file and in the other data structures recorded at the start of the part of the hard disk reserved for the 'stream' file system. The receiver knows the identifier of the open file since the latter is written in a flag on the disk (at node number 0) at the start of each file opening, this flag being reset to zero upon the closure of this file. It is apparent that the aligning of the audio data with the video data brings about the nonuse of a variable part of the 16-Kbyte audio area of a block of the disk. However, the size of this unused part is relatively small compared with the 128 Kbytes of the complete block. If the recording of the video and audio packets were performed in the order of demultiplexing of the PES packets, then the recording of the nature of each packet (audio or video, for example in the form of a PID identifier) would have been necessary. The room required for this recording would have been on the one hand greater than that reserved for the stuffing bits in the audio part of the recorded blocks and on the other hand more complex to manage. The advantages of aligning the audio data with the video data are however considerable. Specifically, even if the audio and video data are not multiplexed in the same way as in the incoming audio/video stream, the synchronism between audio and video data is maintained overall. The audio data in a block are in fact those having been received temporally multiplexed with the video data of the same block. It is thus possible to restore an audio/video stream at the decoder without any drift in synchronism which could cause overflow of audio or video buffers during read back. The synchronism is also maintained if the TS stream is recorded directly. The use of four video memory banks of 112 Kbytes each in read and/or write mode, as well as of an audio area of 64 Kbytes, makes it possible to compensate for the disk write head movement times and for any disk access problems which could delay writing. The microprocessor 107 nevertheless attempts to keep the largest number of banks of the memory 205 empty, and this may be referred to as management of empty buffer type. To transfer the audio/video data to the disk, the microprocessor 107 triggers a direct memory access mechanism ('DMA') which performs the transfer of the audio/video data from the demultiplexer 106 to a video bank and the audio area of the FIFO memory 205. Within the framework of the exemplary embodiment, this is a DMA built directly into the demultiplexer 106. When a video bank of the memory 205 is full, the write transfer control circuit 207 generates an interrupt destined for the microprocessor 107, writing being continued in the next video FIFO memory bank. The video FIFO memory banks are implemented in rotation. The microprocessor, which also manages the disk file system, determines the first write sector of 512 bytes of the block of 128 Kbytes, and supplies it to the disk by way of the control circuit 209. The microprocessor also initializes the direct memory access mechanism at the disk for the transfer of data from the first video FIFO memory bank and the corresponding quantity of audio from the audio FIFO 205b of the memory 205. The disk then writes 128 Kbytes to 256 sectors under control of the circuit 207. After transferring the 128 Kbytes of data, the hard disk exits the Ultra DMA mode, the control circuit 207 frees the Ultra DMA mode and tells the microprocessor through an interrupt. This transfer is repeated each time the microprocessor receives an interrupt request by way of the control circuit 207 and until there is a decision to stop the recording. The microprocessor then updates the node corresponding to the file in which writing took place, as well as the corresponding bit tables. The role of the bit tables and of the node will be seen in greater detail hereinbelow. It should be noted that, according to the present exemplary embodiment, the audio area of each memory 205 and 206 is not organized as banks of fixed size, as is the case for the video banks of 112 Kbytes. The audio areas are managed by storing, in write mode, the quantity of audio data written for each associated video bank and, in read mode, by taking into account the information relating to the audio quantity read from each block. According to the present exemplary embodiment, only the PES data are recorded on the disk. This implies that the reference clock values ('PCR') are not recorded. However, as already mentioned, it would also be conceivable to record packets of the TS transport layer. The reading mechanism differs substantially from the writing mechanism. We consider a reading initialization phase and a steady reading condition. To initialize reading in stream mode, the microprocessor sends the hard disk the address of the first sector of the first block to be transferred and requests the transfer of 256 sectors. Once the transfer is completed, the transfer control circuit 207 generates an interrupt to indicate the end of the transfer. The microprocessor then requests the transfer of the next block, and so on and so forth until four video FIFO memory banks of the block 206 (and a part of the audio area 206b) are filled. The transfer and the decoding of data to the decoder 113 are initialized only then by the microprocessor. Once initialization has been performed, the data are transferred without the intervention of the microprocessor: the decoder 113 reads the audio and video data as and when the requirements alter. The speed with which the FIFO memories are emptied depends in fact on the content of the compressed audio and video packets. The steady condition is as follows: when a memory bank of 112 Kbytes of video FIFO is completely emptied (and the corresponding audio data have also been read), an interrupt request will notify the microprocessor thereof, and the latter triggers the transfer of a new block, in such a way as if possible to keep all the FIFO video banks full. This management is of the full buffer type. According.to the present exemplary embodiment, the recovery of the system clock is performed by demultiplexing transport packets corresponding to a program in progress, and by locking a phase-locked loop to the reference clock values ('PCR') of an incoming TS stream. This operation makes it possible to obtain the required clock frequency of 27 MHz. Hence, an incoming TS stream is used to recover the reference clock rate, even if this clock is used in conjunction with audio and video data which are not broadcast in real time in this stream. This principle of clock rate recovery is illustrated by the block diagram of figure 10, which comprises a phase-locked loop (PLL) composed of a comparator/subtracter 1001, followed by a low-pass filter 1002 and by a voltage-controlled oscillator 1003. A counter 1004 closes the loop between the output of the oscillator 1003 and an input of the comparator/ subtracter 1001. The comparator/subtracter furthermore receives the PCR clock values emanating from a TS stream. The difference between a local clock value emanating from the counter 1004 and the PCR clock value is sent to the low-pass filter 1002, and the rate of the loop output signal is adapted accordingly. The clock value contained in the counter 1004 is regularly updated with the demultiplexed PCR clock value, this having the effect of synchronizing the counter 1004 with the clock of the encoder of the TS stream. This clock is used for the decoding and presentation of the TS stream received in real time. As described hereinbelow, only the clock rate at the output of the PLL loop is used for the decoding and presentation of data read from the hard disk. Other clock recovery processes can be employed. It is in particular possible to use a free clock. Specifically, the accuracy required for the 27-MHz clock is not necessarily as high as that imposed by the MPEG II standard at the level of the encoder, namely 30 ppm. This accuracy is actually required only if a stream originating directly from an encoder needs to be decoded. In fact, in such a case, excessive drifting of the clock of the decoder can cause the buffer memory of the decoder to dry up or overflow. However, in the case of the reading of a stream from a local hard disk, the inventors have found that this constraint disappears: the decoder can in fact regulate the bit rate of the stream in read mode as a function of its requirements, this not being the case when the stream reaches it directly, without it having passed through the buffer constituted by the disk. The decoding of the video frames is triggered at a given level of fill of a decoding buffer, forming part of the random access memory 126. This level is for example 1.5 Mbit for a buffer with a capacity of 1.8 Mbit. This instant, called top buffer video, is regarded as reference instant for the decoding and presentation of the video frames. The DTS clock value of the first frame read from the buffer of the decoder is loaded into the counter 1005 of figure 10. This counter counts at the clock rate generated by the PLL loop. Decoding of the first video frame is triggered immediately, whilst the presentation of this first frame and the decoding and presentation of the following frames is performed according to the corresponding DTS and PTS clock values, relative to the clock generated by the counter 1005. The decoding and presentation of the audio frames also call upon the clock thus regenerated. Figure 5 illustrates the way in which the two file systems 'block1 and 'stream' share the use of the hard disk. According to the present exemplary embodiment, the file system and its associated 'block' data area occupy several hundred megabytes, whilst the 'stream' file system and its data area occupy several gigabytes. The 'block' file system will not be detailed further, the organization of the corresponding file system being devised in a conventional manner, of the UNIX or MINIX type for example, comprising a 'superblock', a node table, a data block table, as well as the actual node and data areas. A characteristic of this file system is however that it favors random access to the data, for example through the use of multiple indirect addressing (that is to say a series of address pointers only the last of which gives the address of the sought-after data block), whilst the 'stream' file system has the characteristic of optimizing sequential access. The hard disk furthermore comprises a single boot block for the whole of the two file systems. The parameters appearing in the boot block are the index of the boot program, the name of the volume, the number of bytes per sector, the number of sectors of the volume, and the number of sectors of the boot block. As already mentioned, the parameters chosen for the 'stream' file system are the following: the size of a sector is 512 bytes, a 'stream' block comprising 256 sectors. This is to be compared with the size of a block of the 'block' file system, namely 4 sectors. Figure 6 illustrates the organization of the 'stream' file system. This file system comprises firstly a block referred to as a 'superblock', containing general information about the file system. Table 1 gives the information contained in this superblock: The addresses are given in terms of sector numbers, all the sectors of the disk being numbered from 0 up to the maximum number of sectors of the disk. Associated with each file or directory of the file system is a data structure referred to as a 'node' which indicates the name of the file or of the directory, its size, its location and that of its attributes. The nodes are grouped together in the file system after the superblock. Table 2 indicates the composition of a node: A sequence is a run of contiguous blocks forming part of one and the same file. It is defined by the address of the first block of the sequence, followed by the number of contiguous blocks. If the file is fragmented, a pointer returns to an extension area comprising additional sequences (sequence file area) with the aid of an appropriate file identifier. In turn, a sequence file can return to an additional file, and so on and so forth. This type of simple indirect addressing is well suited to the sequential nature of the data. Successive manipulation with several pointers is thus avoided, such manipulation being expensive in terms of time. The multiple indirect addressings are reserved for the 'block' file system, with a view to facilitating random access to the data. The attributes are stored in the 'block' file system. It is thus possible to refer to one file system with data managed in the other. The additional sequence files are grouped together in the 'Sequences' section after the area reserved for the nodes (see figure 6). The 'stream' file system furthermore comprises a 'bit table' indicating for each node, each file additional sequence and each data block whether or not it is occupied. To this end, a bit is associated with each node, additional sequence file and block. Figure 7 is a flow chart of the process for writing a file. Initially, a node associated with the file is created. A locating of this node on the disk js determined by scanning the table of bits of the nodes. By using the table of bits of the blocks, the microprocessor 107 determines a free sequence of blocks and writes the data to be recorded to it, block after block. At the end of the sequence, the address and the length of the sequence are stored in the node of the file in memory. The flags of the table of bits of the blocks corresponding to the blocks allocated to the recording of the sequence are then updated in a table in memory. The operation of detecting and writing a sequence is repeated if necessary, until the complete file has been recorded. Once the recording of the data is completed, the updated information relating to the location of the data (that is to say the node and the bit tables updated) are themselves recorded on the disk. The information is written to the disk only at the end of recording, so as to avoid incessant toings and froings by the read/write head. To read a file, the microprocessor firstly reads the node of this file, as well as the definitions of all the additional sequences referring thereto. This avoids movement of the disk read/write head during reading to the areas at the start of the file system. One of the envisaged applications of the disk is the non-real-time reading of a program currently being recorded. For example, the television viewer watching a live program has to go away for a few minutes and wishes to resume watching at the exact moment at which this was interrupted. When he goes away, he starts the recording of the program. On his return, he triggers the reading of the program, although the recording of the latter is still in progress. Given that the read/write head must perform movements from the reading areas to the writing areas and vice versa and that the time of movement of the head is of the order of 10 ms for the disk used within the framework of the present example, certain precautions have to be taken to guarantee the minimum bit rate required for reading and writing. To assess the influence of head jumps on bit rate, we consider the least favorable conditions by taking the example of the maximum bit rate of an MPEG II stream, namely 15 Mbit/s, a block of 128 Kbytes thus corresponding to 66.7 ms of audio and video data, as illustrated by figure 8. The reading or writing of a block, at a transfer rate of 96 Mbit/s, lasts 10.4 ms. If reading is not preceded by a jump, 56.3 ms remain available as a safety margin. As indicated in the previous paragraph, a head jump from a first block to a second block which is not adjacent to the first block takes 10 ms. Hence, a free interval of 46.3 ms remains. If a read and a write each preceded by a jump are to be performed within an interval of 66.7 ms, only 25.9 ms remain available. Since defective sectors within a block may also give rise to jumps of the head, it is preferable to limit the number of jumps in read mode and write mode to the minimum. According to the present exemplary embodiment, the number of head jumps during simultaneous recording and reading is reduced by effecting interleaved writing of the blocks, as illustrated by figures 9a and 9b. When the recording of the program is triggered (for example by the television viewer), writing is performed every other block in a sequence of adjacent blocks. This is illustrated by figure 9a. A jump of the read head is therefore performed before writing each block. When the reading of the program is triggered, writing is continued in the blocks left free previously. For example, following the reading of the first block written (the one furthest to the left in figure 9b), the next write is performed in the immediately adjacent block. No jump of the read/write head is then performed between reading in the first block and writing in the second block. The reduction in the number of jumps of the head also results in a consequent reduction in the noise generated by these movements. Once all the blocks written before the start of reading have been read out, writing is continued in a noninterleaved manner. According to a variant embodiment, if the purpose is solely the non-real-time viewing of the program, without it being intended that recording should be permanent, writing is continued by overwriting the content of the previously read blocks. According to a variant embodiment, if a recording is to be kept, then the corresponding interleaved blocks are rewritten sequentially in such a way as to deinterleave these blocks. Thus, during subsequent reading, the read head will not need to perform jumps due to the interleaving. Of course, the invention is not limited to the exemplary embodiment given. For example, other types of disk may be used. It will be sufficient to adapt the corresponding interfaces. Consideration will in particular be given to hard disks having characteristics other than that presented hereinabove, rerecordable magneto-optical disks or other data storage media. It should be noted that the invention applies also in the case where the audio and video data are coded differently, in particular in the case where the PES packets are contained in a program-type stream ('Program Stream') according to the MPEG standard, or the audio and video data are contained in different structures from those of the PES packets. Moreover, although certain elements of the embodiment are presented in a distinct structural form, it is obvious to the person skilled in the art that their implementation within a single physical circuit does not depart from the scope of the invention. Likewise, the software rather than hardware implementation, or vice versa, of one or more elements does not depart from the scope of the invention: the FIFO-type memories may for example be emulated by using a conventional-addressing memory, with software management of address pointers. It will also be noted that the data to be stored may originate from a means of transmission other than that indicated in the exemplary embodiment. In particular, certain data may travel via modem. According to the exemplary embodiment described hereinabove, the areas of the hard disk which are reserved for each of the two file systems are fixed. According to a variant embodiment, the sizes of these areas are dynamically adapted to the requirements. There is thus provided a first system data area for the 'block' file system, a second system data area for the 'stream' file system, then a single area of blocks of 'stream' type. The management of the 'stream' file system is performed as before. The management of the 'block' file system is performed as follows: when a file of this type is to be recorded, the 'block' file system reserves the minimum of necessary blocks of large size, and fragments these large-size blocks (256 sectors according to the present example) into small-size blocks (4 sectors). The bit table of the nodes and the bit table of areas of the 'block' file system manage these fragments of blocks as if it were dealing with small-size blocks. WE CLAIM 1. A digital video reception device, comprising: - means of reception (101,102,103) and of demultiplexing (113) of a multiplexed digital stream; - means of storage (201) comprising two file systems having different recording block sizes. 2. The device as claimed in claim 1, wherein the blocks of the first file system are of large size and adapted to the recording of audio/video streams and in that the blocks of the second file system are of smaller size and adapted to the recording of files of smaller size and adapted to the recording of files of smaller size than the audio/video streams. 3. The device as claimed in claim 1 or 2, wherein the block size of the first file system is larger by at least an order of magnitude than the block size of the second file system. 4. The device as claimed in one of claims 1 to 3, wherein the first file system is adapted to sequential access of the recorded data, and wherein the second file system is adapted to random access of the data recorded therein. 5. The device as claimed in claim 4, wherein the first file system comprises simple indirect addressing, and wherein the second file system comprise multiple indirect addressing. 6. The device as claimed in one of claims 1 to 5, wherein the storage means (201) comprise a recordable disk comprising a single boot block, a first area reserved for the data of the first fie system and for the corresponding data blocks, and a second area reserved for the service data of the second file system and for the corresponding data blocks. 7. The device as claimed in one of the claims 1 to 6, wherein comprising: a first video writing memory (205a) for accumulating a predetermined quantity of demultiplexed video packets; a second audio writing memory (205b) for accumulating demultiplexed audio packets; the means of storage (201) being adapted to store the remultiplexed audio video packets in the form of blocks of the first file system, each block comprising a first area for recording the video packets and of fixed size equal to said predetermined quality and a second area for recording for audio packets and of fixed size such that it is than or equal to the maximum quantity of audio data which can be accumulated while obtaining the predetermined quantity of video data. 8. The device as claimed in claim 7, wherein comprising: a third video reading memory (206a) for reading video data from the storage means (201); and a fourth audio reading memory (206b) for the reading of audio data, the respective sizes of the third and fourth memories, video and audio reading respectively, being equal to the sizes of the first and second memories, video and audio writing respectively. 9. The device as claimed in either of claims 7 and 8, wherein comprising: - a writing memory (205) for transmitting data to the storage means, which memory is organized as an area (205a) comprising N video writing memories of FIFO type and an audio writing area (205b) comprising a memory of FIFO type having the size of N audio writing memories; - means (107) for controlling the transfer of video data to a first of the N video writing memories and of audio data to the audio writing area, the transfer of video data being continued to a next video writing memory when said first of the N video writing memories is full; - means (207) for storing the location, in the area for recording audio data, of the audio data corresponding to each of the N audio writing memories. 10. The device as claimed in claim 9, comprising means (107) for initiating the transfer of video and audio data stored in said writing memory to the storage means (201) as soon as one of the N video writing memories has been filled. 11. The device as claimed in claim 8, comprising: - a reading memory (206) for receiving data from storage means, which memory is organized as an area (206a) comprising N video reading memories of FIFO type and an audio reading area (206b) comprising a memory of FIFO type having the size of N audio reading memories; - means (107) for controlling the transfer of video data to a first of the N video reading memories and of audio data to the audio reading area, the transfer of video data being continued to a next video reading memory when said first of the N video reading memories is full; - means (207) for storing the location, in the area for reading audio data, of the data corresponding to each of the N video reading memories. 12. The device as claimed in claim 11, comprising means (107) for initiating the transfer of video and audio data stored in said reading memory to a decoder of said data when the set of N video reading memories has been filled. 13. The device as claimed in claim 1, wherein said means of storage (201) comprises a rerecordable disk divided into sectors, data blocks of the first file system having a size of at least 256 sectors, data blocks of the second file system having a size of a few sectors. 14. A process for recording audio and video data in a digital television receiver, comprising the steps of: - demultiplexing audio and video packets relating to one and the same program; - simultaneously accumulation of the demultiplexed video data in a first memory and if the demultiplexed audio data in a second memory; - stopping the accumulation in said memories following the obtaining of a predetermined quantity of video data in said first memory; - recording of the video data accumulated in said first memory and of the audio data accumulated in the second memory respectively in a first area of a block whose fixed size is equal to said predetermined quantity and in a second area of this block, the size of this second area being fixed and chosen in such a way that it is greater than or equal to the maximum quantity of audio data which can be accumulated while obtaining said predetermined quantity of video data. 15. The process as claimed in claim 14, wherein the ratio of the sizes of the first and second areas is such tat it is greater than or equal to the maximum ratio of the bit rate of video data and of the bit rate of audio data in the digital stream. 16. The process as claimed in claim 14 or 15, comprising the step of recording in each block of a data item indicating the quantity of audio data recorded in this block. 17.The process as claimed in one of claims 14 to 16, wherein the recorded audio and video data are elementary stream packets, with the exclusion of information emanating from the transport layer. This invention relates to a digital video reception device comprising: - means of reception (101,102,103) and of demultiplexing (113) of audio and video packets for a multiplexed digital stream; - a first video writing memory (205a) for accumulating a predetermined quantity of demultiplexed video packets; - a second audio writing memory (205b) for accumulating demultiplexed audio packets; - means of storage (201) of the multiplexed audio and video packets in the form of blocks, each block comprising a first area for recording the video packets and of fixed size equal to said predetermined quantity, and a second area for recording for audio packets and of fixed size such that it is greater than or equal to the maximum quantity of audio data which can be accumulated while obtaining the predetermined quantity of video data. The invention also relates to a recording process and to recording device. |
---|
in-pct-2001-644-kol-granted-abstract.pdf
in-pct-2001-644-kol-granted-claims.pdf
in-pct-2001-644-kol-granted-correspondence.pdf
in-pct-2001-644-kol-granted-description (complete).pdf
in-pct-2001-644-kol-granted-drawings.pdf
in-pct-2001-644-kol-granted-examination report.pdf
in-pct-2001-644-kol-granted-form 1.pdf
in-pct-2001-644-kol-granted-form 18.pdf
in-pct-2001-644-kol-granted-form 2.pdf
in-pct-2001-644-kol-granted-form 26.pdf
in-pct-2001-644-kol-granted-form 3.pdf
in-pct-2001-644-kol-granted-form 5.pdf
in-pct-2001-644-kol-granted-reply to examination report.pdf
in-pct-2001-644-kol-granted-specification.pdf
in-pct-2001-644-kol-granted-translated copy of priority document.pdf
Patent Number | 225458 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Indian Patent Application Number | IN/PCT/2001/644/KOL | ||||||||||||
PG Journal Number | 46/2008 | ||||||||||||
Publication Date | 14-Nov-2008 | ||||||||||||
Grant Date | 12-Nov-2008 | ||||||||||||
Date of Filing | 20-Jun-2001 | ||||||||||||
Name of Patentee | THOMSON MULTIMEDIA , | ||||||||||||
Applicant Address | 46 QUAI ALPHONSE LE GALLO, F-92100 BOULOGNE-BILLANCOURT | ||||||||||||
Inventors:
|
|||||||||||||
PCT International Classification Number | H04N 5/781 | ||||||||||||
PCT International Application Number | PCT/FR99/03244 | ||||||||||||
PCT International Filing date | 1999-12-22 | ||||||||||||
PCT Conventions:
|