Devices for recording and/or reproducing or transmitting and/or receiving compressed data

Abstract: In a recording/reproducing or transmitting/receiving device for compressed data, the temporal size of a processing block during the compression process is rendered variable in response to larger amplitude changes in the input signals. The device includes power calculating circuits (304 to 306) for calculating the masking effect on the processing block based on amplitude changes in the waveform on the time axis of various frequency bands of the processing block as well as on the power of a processing block(s) other than the processing block in subject for determining the temporal size of the processing block in subject, a primary block size decision circuit (310) and a block size correction circuit (311). The device enables the achievement of high efficiency compression and expansion with superior sound quality as perceived by the ear.

Description: This invention relates to a device for encoding a digital signal. Embodiments of the invention relate to recording and/or reproducing or transmitting and/or receiving compressed data, for example bit-compressed digital audio signals or the like, and to recording media therefor. Our US Patents Nos. US-A-5 243 588 and US-A-5 244 705 disclose a technique consisting in bit-compressing input digital audio signals and recording the bit-compressed signals in a burst fashion with a pre-set data volume as a recording unit. This technique resides in employing a magneto-optical disc as a recording medium and recording and/or reproducing AD (adaptive differential) PCM audio data as prescribed in audio data formats such as CD-I (CD-Interactive) or CD-ROM XA. The AD-PCM audio data is recorded in a burst fashion on the magneto-optical disc with e.g. 32 sectors of the AD-PCM data and a few linking sectors for interleaving as one recording unit. Several modes of the AD-PCM audio data may be selected in the recording and/or reproducing device employing the magneto-optical disc. For example, a level A with a compression ratio twice that of the conventional compact disc (CD) and a sampling frequency of 37.8 kHz, a level B with a compression ratio four times that of the conventional compact disc (CD) and a sampling frequency of 37.8 kHz and a level C with a compression ratio eight times that of the conventional compact disc (CD) and a sampling frequency of 18.9 kHz, are prescribed. That is, with the above-mentioned level B, the digital audio data is compressed to approximately one fourth of the original volume, with the replay time of the disc recorded with the level B mode being four times that with the standard CD format. This indicates that a recording/reproducing time about as long as that achieved with a standard size disc of 12 cm in diameter may be achieved with a smaller sized disc and hence the device may be reduced in size. However, since the rotational speed of the disc is the same as that of a standard CD, the amount of the compressed data obtained with the level B per pre-set time is four times that of the standard CD. Consequently, the same compressed data is read in superimposition four times, in a time unit of e.g. a sector or a cluster, and only one of the four superimposed compressed data is transmitted for audio reproduction. Specifically, during scanning or tracking of a spiral recording track, a track jump of returning to the starting track position is performed for each revolution for repeatedly tracking the same track four times on end by way of reproduction. This indicates that at least one sound compressed data of the four superposed reading operations suffices, and hence the disclosed technique is strongly effective against errors caused by disturbances so that it may be desirably applied above all to a small-sized portable type device. We have also proposed in our co-pending US Patent Applications Serial Nos. 07/553,608 (filed 18 July 1990) and 07/664,300 (filed 4 March 1991) a technique in which the processing block is changed during the compression process in response to large amplitude changes of the input signals, for improving temporal resolution and response characteristics of the processing system. With this technique, the temporal resolution and the frequency resolution of a processing system, which conflict with each other, are changed in dependence on the properties of input signals for improving adaptability to input signals and producing high sound quality as perceived by the aural sense. For transform coding employing orthogonal transformation, as one of numerous high efficiency compression methods, such technique is particularly effective for combatting the pre-echo which is produced when input signals having acute changes in signal amplitude are entered. The term pre-echo is used to denote a phenomenon according to which, if signals in an orthogonal transform block are compressed or expanded with orthogonal transform or inverse orthogonal transform while larger amplitude changes are produced within the transform block, temporally uniform quantization noise is generated in the block so that the quantization noise thus produced becomes objectionable to the aural sense in the small amplitude signal portion that was present before the orthogonal transform or the inverse orthogonal transform. If, in the above-described transform coding, the temporal length of the transform block is diminished, the frequency response is lowered due to the properties of the orthogonal transform, thus resulting in dispersion of the spectrum or orthogonal transform coding. Consequently, if the spectrum or the orthogonal transform coefficients are quantized for signal compression, the bit allocation efficiency is lowered. Therefore, if the temporal duration of the orthogonal transform block is reduced excessively for diminishing the effect of the pre-echo, the quantization noise is increased to such a degree that it can be noticed by the aural sense. For the above reason, the orthogonal transform block size needs to be changed by control adapted to changes in the input signals. To this end, one may arrive readily at the concept of controlling the orthogonal transform block size with an eye to amplitude changes in the waveform in the time domain which is an input signal to the orthogonal transform block in subject (the orthogonal transform block for the current input signals). However, the actual input waveform in the time domain is highly complex. Besides, human aural sense characteristics also act as an influencing factor. The result is that, with the above-described technique, the temporal size of the orthogonal transform block tends to be diminished responsive to actual input signals to cause relative deterioration in the sound quality. WO 92/17884 discloses an encoding apparatus in which digital data are arranged into blocks by plural samples and orthogonal transform is effected in each block to produce coefficient data, which are encoded with an adaptive number of bits. A plurality of orthogonal transform units transform the input digital data with different block lengths. Only one of outputs is selected on the basis of outputs of the orthogonal transform units. The apparatus includes a block length decision circuit for determining the block length for orthogonal transform of each band based on characteristics of block data prior to orthogonal transform of each band. Orthogonal transform of each band is effected with the block length determined by the block length decision circuit. EP-A-612158 is part of the state of the art pursuant to Article 54(3) and (4) EPC and is thus relevant to the question of novelty only. It discloses apparatus for encoding a digital signal comprising means for dividing the digital signal into a plurality of temporal signals in respective frequency bands, means for performing a transform on blocks of data of the temporal signals, and means responsive to the temporal signals for determining the lengths of the blocks. According to the present invention, there is provided apparatus for encoding a digital signal comprising means for dividing the digital signal into a plurality of temporal signals occupying respective frequency bands, means for performing in each band a transform on blocks of digital data representing the signal in the band, and means responsive to the digital signal for determining the lengths of the blocks, characterised in that the block length determining means determines the length of a current block in one band in dependence on the temporal signal powers in that band and in at least one other of the bands. This allows block length in one band to be determined not only on the basis of signal power in that one band, but also taking account of other band(s). Thus, for example, the effect of a transient in one band may be masked by a signal in another band, allowing a better choice of block length. In an embodiment of the said one aspect, the blocks have a maximum block length, and the said block length determining means of each band determines the current block length in dependence on temporal variation of signal power in said one of the bands over a time period greater than a time period corresponding to the maximum block length, and in dependence on signal power in the or each other frequency band. This allows the block length to be determined with better adaptation to a complex signal. A further embodiment comprises means for storing a value of block length determined for at least one block preceding the current block and wherein the block length determining means determines block length in dependence upon the or each said stored value of block length. This enhances the quality of block length decision making. It becomes possible to take into account the periodic changes or features continuing for a longer time duration than that of the processing block of the current input signals in selecting the temporal size of the processing block for the current input signals. For audio signals, this produces an optimum sound quality as perceived by the ears. An embodiment of the present invention is effective for optimum compatibility between high sound quality as perceived by the ears and efficient reduction in the effect of the pre-echo in the transform coding. However, it is similarly effective in any other high efficiency coding method in establishing optimum compatibility between frequency resolution and temporal resolution. With the preferred device embodying the invention for recording and/or reproducing or transmitting and/or receiving compressed data, there is little or no risk of selecting a block of temporal length shorter than is necessary when changing the temporal size and the window shape of the orthogonal transform block in response to acute amplitude changes of the input signals, whereby a more satisfactory sound quality may be achieved for the same bit rate or a lower bit rate may be employed for recording or transmission for the same sound quality. The invention will now be further described, by way of illustrative and nonlimiting example, with reference to the accompanying drawings, in which: Fig. 1 is a block circuit diagram showing a typical construction of a disc recording and/or reproducing device embodying a recording and/or reproducing device for compressed data according to the present invention; Fig.2 is a block circuit diagram showing a concrete example of a high efficiency compression coding encoder that may be used for bit rate compression coding by the embodiment shown in Fig.1; Figs.3A, 3B and 3C show the construction of orthogonal transform blocks for bit compression; Fig.4 is a block circuit diagram showing a typical construction of a block size decision circuit for deciding an orthogonal transform block size; Figs.5a, 5b and 5c show the relation between changes in the temporal length of temporally consecutive orthogonal transform blocks and a window shape employed for orthogonal transformation; Fig.6 shows a detailed window shape employed for orthogonal transformation; Figs.7A and 7B show the pre-echo masking effect among the functions of the block decision circuit; Figs.8A and 8B show the effect of relating information concerning the changes in input signals over plural processing blocks with the block decision among the functions of the block decision circuit; Fig.9 is a block circuit diagram showing a concrete construction for realizing a bit allocation arithmetic-logic function; Fig.10 is a graph showing spectral components for critical bands and bands sub-divided from the critical bands for taking block floating into account; Fig.11 is a graph showing a masking spectrum; Fig.12 is a graph showing a minimum audibility curve and the masking spectrum combined together; and Fig.13 is a block circuit diagram showing a concrete example of a decoder associated with high efficiency compression coding which may be employed for bit rate compression coding with the embodiment shown in Fig.1. A preferred embodiment of the invention will now be described in detail with reference to the drawings. Fig.1 shows a schematic arrangement (block circuit diagrams) of a recording and/or reproducing device for compressed data according to an embodiment of the invention. In a magneto-optical disc recording/replay unit of the compressed data recording and/or reproducing device shown in Fig.1, a magneto-optical disc 1 rotated by a spindle motor 51 is employed as a recording medium. In recording data on the magneto-optical disc 1, a modulated magnetic field corresponding to the recording data is applied by a magnetic head 54, while the magneto-optical disc 1 is irradiated with a laser light beam by the optical head 53, by way of performing the recording by magnetic field modulation for recording data along a recording track of the magneto-optical disc 1. In reproducing the recorded data, the recording track on the magneto-optical disc 1 is traced by a laser light beam for reproduction photomagnetically. The optical head 53 is made up of a laser light source, such as a laser diode, optical components, such as a collimator lens, an objective lens, a polarized light beam splitter or a cylindrical lens, and a photodetector having a light receiving section having a pre-set pattern. The optical head 53 is placed at a position facing the magnetic head 54 with the magneto-optical disc 1 in-between. For recording data on the magneto-optical disc 1, the magnetic head 54 is driven by a head driving circuit 66 of a recording system as later explained for applying a modulated magnetic field corresponding to the recording data to the disc 1, while a laser light beam is radiated by the optical head 53 on a target track of the magneto-optical disc 1 for thermo-magnetic recording in accordance with magnetic field modulation. Besides, the optical head 53 detects the reflected laser light from the target track for detecting the focusing error by an astigmatic method, while detecting the tracking error by a push-pull method. When reproducing data from the magneto-optical disc 1, the optical head 53 detects the focusing error or the tracking error, while also detecting the difference in the angle of polarization (the Kerr rotation angle) of the reflected light from the target track for generating the playback signals. An output of the optical head 53 is supplied to an RF circuit 55 which extracts the above-mentioned focusing error signals and the tracking error signals from an output of the optical head 53 to transmit the extracted signals to a servo control circuit 56. The RF circuit 55 also converts the replay signals into bi-level signals which are supplied to a decoder 71 of the reproducing system as later explained. The servo control circuit 56 is made up of, for example, a focusing servo control circuit, a tracking servo control circuit, a spindle servo control circuit, a thread servo control circuit and so forth. The focusing servo control circuit focusingcontrols the optical system of the optical head 53 so that the focusing signal is reduced to zero. The tracking servo control circuit tracking-controls the optical system of the optical head 53 so that the tracking signal is reduced to zero. The spindle motor servo controlling circuit controls the spindle motor 51 for running the magneto-optical disc 1 into rotation at a pre-set rotational velocity, for example, at a constant linear velocity. The thread servo control circuit shifts the optical head 53 and the magnetic head 54 to a target track position of the magneto-optical disc 1 as designated by a system controller 57. The servo control circuit 56 transmits the information indicating the operating states of the various components controlled by the servo control circuit 56 to the system controller 57. A key input unit 58 and a display 59 are connected to the system controller 57 which controls the recording system and the reproducing system under the operating mode as designated by the input information entered at the key input unit 58. The system controller 57 also supervises the recording position and the replay position on the recording track traced by the optical head 53 and the magnetic head 54 based on the sector-based address information reproduced from the recording track of the magneto-optical disc 1 by Q-data such as header time or sub-code data. Besides, the system controller 57 causes the replay time to be displayed on the display 59 based on the data compression ratio in the bit compression mode and the playback position information on the recording track. For playback time display, the sector-based address information (absolute time information) reproduced from the recording track of the magneto-optical disc 1 by header time or sub-code Q data is multiplied by a reciprocal of the data compression ratio for the bit compression mode, such as 4 for the bit compression ratio of 1/4, to find the actual time information, which is displayed on the display 59. Meanwhile, during recording, if the absolute time information is prerecorded on the recording track of the magneto-optical disc 1, that is if the magneto-optical disc 1 is pre-formatted, it is possible to display the current position by the actual recording time by reading the pre-formatted absolute time information and multiplying it with a reciprocal of the data compression ratio. In a recording system of the present disc recording/ reproducing device, analog audio input signals AIN are supplied from an input terminal 60 via a low-pass filter 61 to an A/D converter 62 which quantizes the analog audio input signals AIN. Digital audio signals produced by the A/D converter 62 are supplied to an adaptive transform coding (ATC) PCM encoder 63. On the other hand, the digital audio input signals DIN from an input terminal 67 are supplied via an input interfacing circuit 68 to the ATC encoder 63 in which bit compression or data compression is performed on the digital audio PCM data of a pre-set transfer speed which is the input signal AIN quantized by the A/D converter 62. Although the following description is made in connection with the compression rate of four, the present embodiment is not dependent on the specific value of the compression rate which may be set to desired values depending on the particular applications. The memory 64 is a buffer memory which is controlled as to data writing and data reading by the system controller 57 for transiently storing ATC data supplied from the ATC encoder 63 for recording on the disc when the necessity arises. That is, the compressed audio data supplied from the ATC encoder 63 has its data transfer rate diminished to one-fourth of the data transfer rate for the standard CD-DA format of 75 sector per sec, or to 18.75 sectors per sec. The compressed data is written continuously in the memory 64. Although it suffices to record the compressed data (ATC data) at a rate of one per eight sectors, as mentioned above, such recording at every eight sectors is practically impossible, so that sector-continuous recording is performed, as later explained. This recording is performed in a burst fashion at the data transfer rate of 75 sectors per sec, which is the same as the standard CD-DA format, with a cluster made up of pre-set plural sectors, for example, 32 + several sectors, as a recording unit, with the interposition of a non-recording period. That is, in the memory 64, the stereo B mode ATC audio data, continuously written at a low transfer rate of 9.375 (= 75/8) sectors per sec associated with the bit compression mode, is read as the recorded data in a burst fashion at the above-mentioned transfer rate of 75 sectors per sec. The overall data transfer rate of the data read out and recorded, inclusive of the non-recording period, is the low rate of 18.75 sectors per sec. However, the instantaneous data transfer rate within the time period of the recording operation performed in a burst fashion is the above-mentioned standard data transfer rate of 75 sectors per sec. Therefore, if the disc rotating velocity is the same as that of the standard CD-DA format, that is a constant linear velocity, recording is made at the same recording density and with the same recording pattern as those of the CD-DA format. The ATC audio data read from the memory 64 at the above-mentioned instantaneous transfer rate of 75 sectors per sec, that is the recorded data, are supplied to an encoder 65. The unit by which the data string supplied from the memory 64 to the encoder 65 is recorded for each recording is a cluster consisting of plural sectors, such as 32 sectors, and several cluster-linking sectors arrayed ahead and at back of the cluster. The cluster-linking sectors are selected to be longer than an interleaving length at the encoder 65 so that data of neighboring clusters are not affected by data interleaving. The encoder 65 performs encoding for error correction, such as parity appendage and data interleaving, or EFM encoding, on the recording data supplied from the memory 64 in the burst fashion. The recorded data encoded by the encoder 65 is supplied to a magnetic head driving circuit 66. The magnetic head 54 is connected to the magnetic head driving circuit 66 which drives the magnetic head 54 for applying the modulated magnetic field corresponding to the recording data to the magneto-optical disc 1. The system controller 57, controlling the memory 64 as described above, also controls the recording position in such a manner that the recorded data read in the burst fashion by the memory control is continuously recorded on the recording track of the magneto-optical disc 1. The recording position is controlled by supervising the recording position of the recorded data read in the burst fashion by the system controller 57 from the memory 64 and by supplying a control signal designating the recording position on the recording track of the magneto-optical disc 1 to the servo control circuit 56. The reproducing system of the recording/reproducing unit for the magneto-optical disc 1 is hereinafter explained. The reproducing system is employed for reproducing the recorded data continuously recorded on the recording track of the magneto-optical disc 1, and includes a decoder 71 to which a playback output produced on tracing the recording track of the magneto-optical disc 1 with a laser light beam from the optical head 53 is supplied after conversion into bi-level data by the RF circuit 55. Recorded data may be read not only from the magneto-optical disc 1 but also from the replay-only optical disc of the same type as the so-called compact disc. The decoder 71 is a counterpart of the encoder 65 of the above-described recording system and performs the above-mentioned decoding for error correction or EFM decoding on the bi-level playback output of the RF circuit 55, while reproducing the ATC audio data at a transfer rate of 75 sectors per sec which is faster than the normal transfer rate. The playback data obtained by the decoder 71 is supplied to a memory 72. The memory 72 has its data writing and reading controlled by the system controller 57 in such a manner that the playback data supplied from the decoder 71 at the transfer rate of 75 sectors per sec is written therein in the burst fashion at the transfer rate of 75 sectors per sec. On the other hand, the playback data written in the burst fashion at the transfer rate of 75 sectors per sec in the memory 72 is continuously read from the memory 72 at the normal transfer rate of 18.75 sectors per sec. The system controller 57 controls the memory 72 in such a manner as to write the replay data in the memory 72 at the transfer rate of 75 sectors per sec and to continuously read the replay data from the memory 72 at the above-mentioned transfer rate of 18.75 sectors per sec. The system controller 57, controlling the memory 72 as described above, controls the replay position in such a manner that the replay data written in a burst fashion from the memory 72 under control by the system controller 57 is continuously reproduced from the recording track of the magneto-optical disc 1. The replay position is controlled in such a manner that the replay position of the replay data read in the burst fashion from the memory 72 is supervised by the system controller 57 and a control signal designating the replay position on the recording track of the magneto-optical disc 1 or the optical disc is transmitted to the servo control circuit 56. The ATC audio data obtained as the replay data continuously read from the memory 72 at the transfer rate of 18.75 sectors per sec is supplied to an ATC decoder 73. The ATC decoder 73 expands the ATC data by a factor of eight by way of bit expansion for reproducing 16-bit digital audio data. The digital audio data from the ATC decoder 73 is supplied to a D/A converter 74. The D/A converter 74 translates the digital audio data supplied from the ATC decoder 73 into analog signals for forming analog audio output signals AOUT. The analog audio output signals AOUT are outputted at an output terminal 76 via a low-pass filter 75. The high efficiency compression and encoding is explained in detail. That is, the technique of performing high efficiency encoding on input digital signals, such as audio PCM signals, by sub-band coding (SBC), adaptive transform coding (ATC) and adaptive bit allocation, is explained by referring to Fig.2 ff. In the concrete high-efficiency encoding device, shown in Fig.2, the frequency range of the input digital signals is divided into plural frequency bands so that two neighboring lower most bands are of an equal bandwidth and the bandwidths become progressively broader in the direction of increasing frequencies. The input digital signals are orthogonally transformed from one frequency band to another to produce frequency-domain spectral data which is encoded with the numbers of bits which are adaptively allocated on the basis of so-called critical bands for the lower frequency range for taking into account the characteristics of the human aural sense as later explained and on the basis of smaller width bands sub-divided from the critical bands for the higher frequency range for raising the block floating efficiency. This block usually becomes the block subject to the quantization noise, that is the block based on which the quantization noise is produced. Besides, with the present embodiment, the block size or block length is adaptively changed prior to orthogonal transform depending on input signals and floating is performed on the block basis. Referring to Fig.2, audio PCM signals having a frequency range of 0 to 22 kHz, with the sampling frequency of 44.1 kHz, are supplied to an input terminal 10. These input signals are divided by a frequency dividing filter 11, such as, for example, a QMF (Quadrature Mirror Filter) filter, into signals having a frequency range of 0 to 11 kHz and a frequency range of 11 to 22 kHz. The signals having the frequency range of 0 to 11 kHz are similarly divided by a similar frequency dividing filter 12, such as a QMF filter, into signals having a frequency band of 0 to 5.5 kHz and signals having a frequency band of 5.5 kHz to 11 kHz. The signals in the range of 11 to 22 kHz from the frequency dividing filter 11 are transmitted to an MDCT circuit 13, which is a kind of the orthogonal transform circuit, for MDCT processing. Similarly, the signals in the range of 5.5 to 11 kHz from the frequency dividing filter 12 are transmitted to an MDCT circuit 14, while the signals in the range of 0 to 5.5 kHz from the frequency dividing filter 12 are transmitted to an MDCT circuit 15, for MDCT processing. Among the techniques of dividing the above-mentioned input digital signals into plural frequency bands, there is a QMF filter, for example, as discussed in 1976, R.E. Crochiere, "Digital Coding of Speech in Sub-bands," Bell Syst. Tech. J. Vol.55 No.8 1976. The technique of filter division into equal bandwidths is discussed in ICASSP 83, BOSTON, "Polyphase Quadrature Filters -A New Sub-band Coding Technique," Joseph H. Rothweiler. As examples of the above-described orthogonal transform, there is such orthogonal transform in which input audio signals are divided into time blocks of pre-set length (frames) and processed with fast Fourier transform (FFT), discrete cosine transform (DCT) or modified DCT (MDCT) for transformation of time-domain signals into frequency-domain signals. Discussions on MDCT may be found in ICASSP 1987, "Sub-band/ Transform Coding Using Filter Bank Designs Based on Time Domain Aliasing Cancellation, "J.P. Princen, A.B. Bradley, Univ. of Surrey, Royal Melbourne Inst. of Tech. Fig.3 shows concrete examples of standard input signals in band-based blocks supplied to the MDCT circuits 13 to 15. In the concrete example of Fig.3, each of three filter output signals has plural orthogonal block sizes independently in each band and is adapted to be changed over as to the temporal resolution depending on e.g. temporal characteristics or the frequency distribution of the filter output signals. If the signals are temporally pseudo-stationary, the orthogonal transform block size is set to a larger value of 11.6 ms, that is to a long mode shown in Fig.3A, whereas, if the signals are non-stationary, the orthogonal block size is further divided by factors of two or four. By further dividing the block size into four parts (short mode), with each part being 2.9 ms, as shown in Fig.3B, or dividing the block size partially into two parts, with the part being 5.8 ms, and partially into four parts, with each part being 2.9 ms (middle mode), as shown in Figs.3C and 3D, complex input signals as actually met may be accommodated fairly satisfactorily. Further complex division of the orthogonal block size is evidently more effective insofar as the processing device scale permits. The block size decision is made in the block size decision circuits 19, 20 and 21 and transmitted to the MDCT circuits 13, 14 and 15, while being outputted at output terminals 28, 29 and 30 as the block size information of the respective blocks. The block size decision circuits are shown in detail in Fig.4. The block decision circuit 19 shown in Fig.2 is taken as an example. Of the outputs of the frequency dividing filter 11 shown in Fig.2, the output in the range of 11 to 22 kHz is supplied via an input terminal 301 in Fig.4 to a power calculating circuit 304, while the output in the range of 5.5 to 11 kHz is supplied via an input terminal 302 in Fig.4 to a power calculating circuit 305 and the output in the range of 0 to 5.5 kHz is supplied via an input terminal 303 in Fig.4 to a power calculating circuit 306. The block size decision circuits 20, 21 are the same in operation as the block size decision circuit 19, except that the signals entered at the input terminals 301 to 303 are different from those of the decision circuit 19. The input terminals 301 to 303 in each of the block size decision circuits 19 to 21 are of a matrix configuration in the sense that the 5.5 kHz to 11 kHz output and the 0 kHz to 5,5 kHz output are connected to the input terminals 301 and 302 of the block size decision circuit 20, respectively. The same may be said of the block size decision circuit 21. In Fig.4, the power calculating circuits 304, 305 and 306 find the powers in the respective bands by integrating the input temporal waveforms for a pre-set time duration. The integration time duration needs to be shorter than the minimum time block of the above-mentioned block sizes. Besides the above calculating method, the absolute value of the maximum amplitude or the mean value of the amplitudes in a minimum time width of the orthogonal block sizes may also be employed as the representative power value. An output of the power calculating circuit 304 is supplied to a variant extraction circuit 308 and a power comparator circuit 309, while outputs of the power calculating circuits 305, 306 are supplied to a power comparator circuit 309. The variant extracting circuit 308 finds the differential coefficient of the power supplied from the power calculating circuit 304 to supply the coefficient thus found to the primary block size decision circuit 310 and to the memory 307 as the power variant information. The memory 307 stores the power variation information supplied from the extraction circuit 308 for a time duration longer than the maximum time duration of the above-mentioned orthogonal transform block sizes, because the temporally consecutive orthogonal transform blocks affect one another by the windowing operation during the orthogonal transform and hence the power variation information of the immediately temporally preceding block is required by the primary block size decision circuit 310. Based on the power variation information of the block in subject, supplied from the variant extracting circuit 308, and the power variation information for the immediately preceding block from the memory 307, the primary block size decision circuit 310 finds the orthogonal transform block size for the relevant frequency band from the temporal variation of the power within the relevant frequency band. If the variation in excess of a pre-set value is produced, the orthogonal transform block size of a shorter time duration is selected. However, similar effects may also be produced if the point of variation remains fixed. More favorable effects could be obtained by setting the block size so as to be proportionate to the frequency in such a manner that the block size is of shorter time duration with a larger variation for a higher frequency and of a shorter time duration with a smaller variation for a lower frequency. Although smooth transition is desirable, plural step-like changes may also be tolerated. The block sizes determined as described above are transmitted to a block size correction circuit 311. The power comparator circuit 309 compares the band-based power data from the power calculating circuits 304 to 306 both concurrently and for a time duration during which the masking effect is manifested on the time axis to find the effect on the output band of the power calculating circuit by the other bands to transmit the effect to the block size correction circuit 311. Based on the masking information supplied from the power comparator circuit 309 and on the past block size information supplied from the taps of groups of delay units 312 to 314, the block size correction circuit 311 corrects the block size so that a block size longer than the block size supplied from the primary block size decision circuit 310 is selected, and transmits the selected block size to the delay units 312 and to a window shape decision circuit 317. The operation by the block size correction circuit 311 is based on the fact that, if an objectionable pre-echo is produced in a given frequency band, but there exists a signal of a larger amplitude in other frequency bands, above all, in a frequency band lower in frequency than the given frequency band, the pre-echo may become imperceptible by the masking effect, or may become less objectionable. The masking means the phenomenon in which certain signals are masked by other signals and become inaudible due to characteristics of the human aural sense. The masking effect may be classified into time-domain masking effect produced by the time-domain audio signals and concurrent masking effect produced by the frequency-domain signals. By this masking, any noise present in a masked portion becomes inaudible. In actual audio signals, the noise within the masked range is an allowable noise. The groups of the delay units 312 to 314 store the past orthogonal transform block sizes sequentially and output the stored block size values to the block size decision circuit 311. Simultaneously, outputs of the delay units 312 are coupled to an output terminal 315, while outputs of the delay units 312, 313 are coupled to the window shape decision circuit 317. The outputs of the delay units 312 to 314 play the role of enabling the block size change of a longer time duration to be utilized in the block size correction circuit 311 in deciding the block size. For example, if the block sizes of short time durations are selected frequently in the past, the block sizes of short time duration are enabled to be selected, whereas, if the block sizes of short time durations are not selected in the past, the block sizes of longer time duration are enabled to be selected. Meanwhile, except for the delay units 312, 313 associated with the window decision circuit 317 and the output terminal 315, the number of taps of the delay units may occasionally be increased or decreased depending on the constitution and scale of the actual device. The window shape decision circuit 317 selects from the output of the block size correction circuit 311, that is from the block size of the block directly temporally succeeding the relevant block, the output of the delay unit 312, that is the block size of the block in subject, and the output of the delay unit 313, that is the block size of the block directly temporally preceding the relevant block, the shape of the window employed by the MDCT circuits 13 to 15 shown in Fig.2, and outputs the window shape thus selected at an output terminal 319. The block size information at the output terminal 315 and the window shape information at the output terminal 319 are supplied to various components of the device as outputs of the block size decision circuits 19 to 21. The shape of the window as selected by the window shape decision circuit 317 is hereinafter explained. Figs.5a to 5c show the window shapes in conjunction with neighboring blocks. The windows employed for orthogonal transform have portions overlapping with each other between temporally neighboring blocks, as indicated by solid and broken lines in Fig.5. Since the overlapping shapes up to the center of the neighboring blocks are used in the present embodiment, the window shape is changed depending on the orthogonal transform sizes of the temporally neighboring blocks. Fig.6 shows details of the window shape. In Fig.6, window functions f(n) and g(n + N) are given as functions satisfying the following equations (i): f(n) x f(L - 1 - n) = g(n) x g(L - 1 - n) f(n) x f(n) + g(n) x g(n) = = 1 ··· 0 ≤ n ≤ L - 1 In the above equation (1), L directly represents the transform block length if neighboring transform block lengths remain the same. If the neighboring transform block lengths differ, assuming that a shorter one of the transform block is L and a longer transform block length is K, the following equation (2) applies: f(n) = g(n) = 1 ··· K ≤ n ≤ 3K / 2 - L / 2 f(n) = g(n) = 0 ··· 3K / 2 + L ≤ n ≤ 2K Thus, by selecting the window overlapping length to be of a longer length, it become possible to improve the frequency resolution of the spectrum during the orthogonal transform. It is seen from above that the shape of the window employed for orthogonal transform is determined after the orthogonal transform sizes of three temporally consecutive blocks are determined. Consequently, a difference corresponding to one block is generated between the block of the signals entered at the input terminals 301, 302 and 303 in Fig.4 and the block of the signals outputted at the output terminals 315, 319. By referring to Figs.7 and 8, the operation of the above-mentioned block size decision circuit 310 is explained. In Fig.7, it is assumed for simplicity that the input for each band is a single sine wave input and that the same input signals are entered for the band of 11 to 22 kHz for Figs.7A and 7B. If the temporal size of the orthogonal transform block for a block N is determined based solely on amplitude changes for the above band, the same block size is set for Figs.7A and 7B. However, if attention is directed to the input signals for the frequency ranges of 0 to 5.5 kHz or of 5.5 kHz to 11 kHz, the energy or power values of the bands other than the band of 11 kHz to 22 kHz are lower than those of the frequency band of 11 to 22 kHz, so that the pre-echo produced in the band of 11 kHz to 22 kHz is not masked and hence problems are raised in connection with the aural sense. Consequently, the block N of the band of 11 kHz to 22 kHz in Fig.7A needs to be selected to be a block of a shorter time duration. On the other hand, in Fig.7B, the energy or power values of the bands of 0 to 5.5 kHz and 5.5 to 11 kHz are large enough to mask the pre-echo, as compared to those of the band of 11 to 22 kHz, so that the pre-echo generated in the band of 11 to 22 kHz is masked without raising problems in connection with the aural sense. Therefore, for Fig.7B, it is desirable to place more emphasis on the frequency resolution and to select an orthogonal transform block size which is longer than that in the case of Fig.7A. In the present embodiment, by the operation of the power calculating circuits 305, 306, power comparator circuit 309 and the block size correction circuit 311, shown in Fig.4, it becomes possible to set the block size for the case of Fig.7A so as to be different from that for the case of Fig.7B. Figs.8A and 8B show a signal undergoing significant amplitude changes periodically and a signal undergoing a sole significant amplitude change, respectively. For both of these signals, the same input signals are entered between temporally neighboring blocks (N - 1) and (N + 1). If the temporal size of the orthogonal transform block is determined with an eye directed only to the blocks of from (N-1) to (N + 1), the block length for the block N is the same for both Figs.8A and 8B. However, with the signal shown in Fig.8A, the amplitude changes similar to those for the block N are produced before the block N in a manner of characterizing the present input signals. Consequently, there is a risk of changes in the sound quality being produced in connection with the aural sense if the orthogonal transform block size is set in a manner of disregarding the amplitude changes in the blocks temporally preceding the block N. Conversely, with the signal shown in Fig.8B, the amplitude change in the block is a sole change, while analogous amplitude changes are not produced temporally upstream of the block N, so that hindrances to the aural sense are not likely to be produced if the block size for the block L is selected with an eye directed solely to near-by blocks. In the present embodiment, mistaken decision of the orthogonal transform block size caused by analogous signals is inhibited by the groups of delay units 312 to 314 and the block size correction circuit 311 of Fig.4. In the present embodiment, the band division employed before orthogonal transform is directly employed in order to take into account the state of masking by the pre-echo. However, more satisfactory results may be obtained by conducting calculations for masking by employing independent orthogonal transform or by dividing the frequency range into a larger number of bands. Besides, periodic temporal changes in the input signals for a longer period of time may be realized in the above embodiment by storing the orthogonal transform block sizes of past blocks by delay units 312 to 314. However, it is possible to produce more satisfactory results by employing data processed with orthogonal transform different from that employed during the compression process or data divided into smaller frequency bands. Returning to Fig.2, low frequency components of the frequency-domain spectral data or MDCT coefficient data, obtained on MDCT processing by MDCT circuits 13 to 15, are grouped for each of the critical bands, while mid to high frequency components thereof are sub-divided from the critical bands in consideration of the block floating efficiency and supplied to adaptive bit allocation encoding circuits 22, 23 and 24 and to the bit allocation calculating circuit 18. The critical bands mean the frequency bands divided from the entire audible frequency range in order to take the characteristics of the human aural sense into account, and denote the bands proper to the narrow-band noise which masks a pure tone of the same intensity as the noise and which has the frequency in the vicinity of the noise. With the critical bands, the bandwidths become broader towards the higher frequencies, with the total audible frequency range being divided into 25 critical bands. The bit allocation calculating circuit 18 calculates, in view of the masking effect, the amounts of masking for each critical band and each band divided from the critical band to take into account the block floating based on the spectral data divided to take into account the above-mentioned critical bands and block floating. Besides, the bit allocation calculating circuit 18 calculates the numbers of allocated bits for the respective bands, based on the energies or peak values for each of the critical bands and the bands divided from the critical bands to take the block floating into account, and on the amounts of masking, and transmits the resulting information to the adaptive bit allocation and encoding circuits 22, 23 and 24. The adaptive bit allocation and encoding circuits 22 to 24 quantize the spectral data or the MDCT coefficient data depending on the numbers of bits allocated to the respective bands in the adaptive bit allocation and encoding circuits 22 to 24. The data encoded in this manner is outputted at output terminals 25 to 27. Fig.9 shows, in a schematic block circuit diagram, an arrangement of a concrete embodiment of the bit allocation calculating circuit 18, in which the frequency-domain spectral data from the MDCT circuits 13 to 15 are supplied to an input terminal 701. The frequency-domain input data is transmitted to a band-based energy calculating circuit 702 in which the energies of the critical bands and the bands divided from the critical bands to take into account the block floating and the amounts of masking are found by calculating the sum total of the amplitudes in the respective bands. The amplitude peak values or mean values may also be employed in place of the energies in the respective bands. Each spectral component indicating the sum value of the amplitudes of each of the respective bands is indicated as SB in Fig. 10 as an output of the energy calculating circuit 702. In Fig. 10, 12 bands B1 to B12 are shown as indicating the critical bands and the bands sub-divided from the critical bands to take into account the block floating, and the amounts of masking, for simplifying the drawing. It is noted that an operation of multiplying each spectral component SB by a pre-set weighting function for taking into account the effects of masking is now performed by way of convolution. To this end, an output of the band-based energy calculating circuit 702, that is each value of the spectral component SB, is transmitted to a convolution filter circuit 703. The convolution filter circuit 703 is made up of a plurality of delay elements for sequentially delaying input data, a plurality of multipliers, such as 25 multipliers associated with the respective bands, for multiplying outputs of the delay elements with filter coefficients or weighting functions, and an adder for finding the sum of the outputs of the respective multipliers. By such convolution, the sum of the portions indicated by broken lines in Fig.10 is found. By way of a concrete example of multiplication coefficients or filter coefficients of the respective filters of the convolution filter circuit 703, if the coefficient of a multiplier M for an arbitrary band is 1, outputs of the delay elements are multiplied by coefficients 0.15, 0.0019, 0.0000086, 0.4, 0.06 and 0.007 at the multipliers M-1, M-2, M-3, M+1, M+2 and M+3, M being an arbitrary integer of from 1 to 25, for performing convolution of the spectral components SB. An output of the convolution filter circuit 703 is transmitted to a subtractor 704 for finding a level α corresponding to the allowable noise level in the convolved region. Meanwhile, the allowable noise level α is such a level which will give an allowable noise level for each of the critical bands by deconvolution as will be described subsequently. The subtractor 704 is supplied with an allowance function (a function representative of the masking level) for finding the level α. The level α is controlled by increasing or decreasing the allowance function. The allowance function is supplied from an (n - ai ) function generator 705 now to be explained. That is, the level α corresponding to the allowable noise level is found from the equation (3): α = S - (n - ai) where i is the number accorded sequentially to the critical bands beginning from the lower side, n and a are constants where a > 0 and S the intensity of the convolved Bark spectrum. In the equation (1), (n - ai) represents the allowance function. In the present embodiment, by setting n = 38 and a = 1, optimum encoding may be achieved without deterioration in the sound quality. The level α is found in this manner and transmitted to a divider 706 for deconvolving the level α in the convolved region. By this deconvolution, the masking spectrum is found from the level α . This masking spectrum becomes the allowable noise level. Although the deconvolution necessitates complex arithmetic-logical steps, it is performed in the present embodiment in a simplified manner by using the divider 706. The masking spectrum is transmitted via a synthesizing circuit 707 to a subtractor 708 which is supplied with an output of the band-based energy detection circuit 702, that is the above-mentioned spectral components SB. The subtractor 708 subtracts the masking spectrum from the spectrum SB for masking the portions of the spectral components SB lower than the level of the masking spectrum MS, as shown in Fig.11. An output of the subtractor 708 is outputted via an allowable noise correction circuit 710 at an output terminal 711 and thence transmitted to a ROM, not shown, in which the information concerning the number of the allocated bits is stored previously. The ROM outputs the information concerning the number of allocated bits for each band, depending on an output of the subtraction circuit 708 supplied via an allowable noise correction circuit 710, that is on the level of a difference between the energies of the respective bands and outputs of the noise level setting means. The information concerning the number of the allocated bits is transmitted to the adaptive bit allocation and encoding circuits 22 to 24 to permit the frequency-domain spectral data from the MDCT circuits 13 to 15 (Fig.2) to be quantized with the numbers of bits allocated to the respective bands. In sum, the adaptive bit allocation and encoding circuits 22 to 24 (Fig.2) quantize the band-based spectral data with the numbers of bits allocated depending on the amounts of masking and the level of the difference between the output of the noise level setting means and the energies in the critical bands and the bands divided from the critical bands to take the block floating into account. The delay circuit 709 (Fig.9) is provided for delaying the spectral components SB from the energy detection circuit 702 in consideration of the delay produced in the circuitry upstream of the synthesizing circuit 707. The synthesizing circuit 707 synthesizes the masking spectrum MS and data from the minimum audibility curve RC from the minimum audibility curve generating circuit 712 representing characteristics of the human aural sense as shown in Fig.12. If the absolute noise level is lower than the minimum audibility curve, the noise becomes inaudible. The minimum audibility curve RC differs with the difference in the replay level even although the coding is made in the same manner. However, since there is no marked difference in the manner of entering into the 16-bit dynamic range in music in actual digital systems, it may be presumed that, if the quantization noise of the frequency range in the vicinity of 4 kHz most perceptible to the ear is not heard, the quantization noise lower than the level of the minimum audibility curve is not heard in any other frequency range. Assuming that the recording/replay device is employed so that the noise in the vicinity of 4 kHz of a word length owned by the system is not heard, and the allowable noise level is to be obtained by synthesizing the minimum audibility curve RC and the masking spectrum MS, the allowable noise level may be up to the level indicated by hatched lines in Fig.12. In the present embodiment, the level of 4 kHz of the minimum audibility curve is matched to the minimum level corresponding to e.g. 20 bits. In Fig.12, the signal spectrum SS is also shown. Besides, the allowable noise correction circuit 710 corrects the allowable noise level in the output of the subtractor 708 based on the information of the equal-loudness curve transmitted from a correction information outputting circuit 713. The equal-loudness curve is a characteristic curve concerning characteristics of human aural sense, and is obtained by finding the sound pressures of the sound at the respective frequencies heard with the same loudness as the pure tone of 1 kHz and by connecting the sound pressures by a curve. It is also known as an equal loudness sensitivity curve. The equal-loudness curve also delineates a curve which is substantially the same as the minimum audibility curve shown in Fig.12. With the equal-loudness curve, the sound in the vicinity of 4 kHz is heard with the same loudness as the sound of 1 kHz, even although the sound pressure is decreased by 8 to 10 dB from the sound of 1 kHz. Conversely, the sound in the vicinity of 50 kHz cannot be heard with the same loudness as the sound of 1 kHz unless the sound pressure is higher by about 15 db than that of the sound of 1 kHz. Thus it may be seen that the noise in excess of the level of the minimum audibility curve and within the allowable noise level preferably has frequency characteristics represented by a curve conforming to the equal-loudness curve. Thus it can be seen that correction of the allowable noise level in view of the equal-loudness curve is in conformity to the characteristics of the human aural sense. Meanwhile, the correction information outputting circuit 713 may be designed to correct the allowable noise level based on the information of the error between the detection output of the volume of the output information (data quantity) at the time of quantization at the adaptive bit allocation and encoding circuits 22 to 24 and the target bit rate of the ultimately encoded data. There are occasions where the total number of bits as obtained by temporary adaptive bit allocation for the totality of the bit allocation unit blocks is different from the pre-set number of bits (target number of the bits) as determined by the bit rate of the ultimate encoded data and hence the bit allocation is again made so that the difference becomes equal to zero. That is, if the total number of allocated bits is less than the target number of the bits, the bits corresponding to the difference are additively allocated to respective unit blocks, whereas, if the total number of allocated bits is larger than the target number of the bits, the bits corresponding to the difference are deductively allocated to the respective unit blocks. To this end, an error of the total number of allocated bits from the target number is detected and correction data for correcting the number of allocated bits is outputted by the correction information output circuit 713 depending on the error data. If the error data indicates the shortage of the number of bits, it is probable that more bits are employed per unit block so that the amount of the data is in excess of the target number of bits. If the error data indicates an excess of the number of bits, it is probable that a smaller number of bits per unit block suffices so that the amount of the data is less than the target number. Consequently, the correction information outputting circuit 713 is responsive to the error data to output the data of correction values by which the allowable noise level at an output of the subtractor 708 is corrected based on the information of the equal-loudness curve. The correction values are transmitted to the allowable noise correction circuit 710 for correcting the allowable noise from the subtractor 708. With the above-described system, data obtained by processing the orthogonal transform output spectrum by the subsidiary information for quantization is obtained as the main information, while the scale factor indicating the state of block floating or the word length data are produced as the subsidiary information for quantization. The main information and the subsidiary information are transmitted from the encoder to the decoder. Fig.13 shows the ATC decoder 73 shown in Fig,1, that is decoding circuits for re-combining the above-mentioned high efficiency encoded signals. The quantized MDCT signals of the respective bands, that is data equivalent to the output signals at the output terminals 25 to 27 in Fig.2, are supplied to input terminals 152, 154 and 156, respectively, while the block size information, that is data equivalent to output signals at the output terminals 28 to 30 in Fig.2, are supplied to input terminals 153, 155 and 157, respectively. Decoding circuits 146, 147 and 148 annul the bit allocation using the adaptive bit allocation information. The frequency-domain signals are transformed by IMDCT circuits 143, 144 and 145 into time-domain signals. These partial range time domain signals are decoded by IQMF circuits 142 and 141 into full-range signals which are outputted at an output terminal 130. The present invention is not limited to the above-described embodiments. For example, the two recording/replay media may be interconnected by a data transfer cable without it being necessary to have the two media built into one system. The present invention may be applied not only to audio PCM signals but also to digital speech signals or digital video signals. The synthesis of the above-mentioned minimum audibility curve may also be omitted, in which case the minimum audibility curve generating circuit 712 or the synthesizing circuit 707 may be omitted and an output of the subtractor 704 may be directly transmitted to the subtractor 708 after deconvolution by the divider 706. Besides, a wide variety of bit allocation techniques may be employed, such as fixed bit allocation, bit allocation based on signal band energies or bit allocation consisting in a combination of fixed bit allocation and variable bit allocation. It can be seen from the above that there is provided a technique of selecting the temporal size of the processing block whereby a temporal size of the processing block desirable as regards the aural sense may be set when it is desired to compress information signals experiencing temporal fluctuations, thereby ensuring high efficiency compression and expansion with superior sound quality as perceived by the ears.

Claims: Apparatus for encoding a digital signal comprising means (11, 12) for dividing the digital signal into a plurality of temporal signals occupying respective frequency bands, means (13, 14, 15) for performing in each band a transform on blocks of digital data representing the signal in the band, and means responsive to the digital signal for determining the lengths of the blocks, characterised in that the block length determining means (19, 20, 21) determines the length of a current block in one band in dependence on the temporal signal powers in that band and in at least one other of the bands. Apparatus according to claim 1, wherein the blocks have a maximum block length and the said block length determining means (19, 20, 21), of each band, determines the current block length in dependence on temporal variation of signal power in said one of the bands over a time period greater than a time period corresponding to the maximum block length, and in dependence on signal power in the or each other frequency band. Apparatus according to claim 2, wherein the block length determining means further comprises means (304, 305, 306) for calculating signal power in each frequency band, and means (309) for comparing the signal powers in the said bands, the block length being determined in response to the comparison. Apparatus according to claim 3, wherein the comparing means (309) compares the signal powers over a predetermined time duration. Apparatus according to claim 2, 3 or 4, wherein the block length determining means (19) of said one band includes means (304) for determining the said signal power, means (308) for determining the said variation in signal power, and means (307) for storing the variations in signal power determined over the said time period greater than the time period corresponding to the maximum block length and a block length decision circuit (310) for determining block length in dependence upon the current variation in signal power and the preceding stored variations in signal power. Apparatus according to claim 5 when dependent upon claim 3 or 4, wherein the block length determining means (19, 20, 21) further comprises means (311) for adjusting the block length determined by the decision circuit, in dependence on the comparison by the comparing means (309). Apparatus according to claim 1, 2, 3, 4, 5 or 6, further including means (312, 313, 314) for storing a value of block length determined for at least one block preceding the current block and wherein the block length determining means determines block length in dependence upon the or each said stored value of block length. Apparatus according to any one of claim 1 to 7, further comprising means (317) for selecting a window function to be applied to the current block, the window function being selected in dependence upon the block length determined for at least one block. Apparatus according to any one of claims 1 to 8, wherein the blocks have a predetermined minimum length and the said signal power is the power of the signal over a preset time duration less than the time corresponding to the minimum block length. Apparatus according to any one of claims 1 to 8, wherein the blocks have a predetermined minimum length, and the said signal power is represented by the absolute maximum amplitude of the signal within a block having the said minimum length. Apparatus according to any one of claims 1 to 8, wherein the blocks have a predetermined minimum length, and the said signal power is represented by the mean value of the signal within a block having the said minimum length. Apparatus according to any preceding claim, wherein the said transform is a Modified Discrete Cosine Transform. Apparatus according to any preceding claim, wherein the band-width of a higher frequency band is greater than the band width of a lower frequency band. Apparatus according to claim 13, wherein there are at least three bands and the bandwidths of the two lowermost bands are equal. Apparatus according to any preceding claim, wherein the dividing means comprises Quadrature Mirror Filter means (11, 12). Apparatus according to any preceding claim, arranged to encode an audio signal.

Inventors: AKAGIRI KENZO, MITSUNO MAKOTO, SHIMOYOSHI OSAMU, SUZUKI HIROSHI, AKAGIRI, KENZO, MITSUNO, MAKOTO, SHIMOYOSHI, OSAMU, SUZUKI, HIROSHI, AKAGIRI, KENZO, C/O INTELLECTUAL PROPERTY DIV., MITSUNO, MAKOTO, C/O INTELLECTUAL PROPERTY DIV., SHIMOYOSHI, OSAMU, C/O INTELLECTUAL PROPERTY DIV., SUZUKI, HIROSHI, C/O INTELLECTUAL PROPERTY DIV.
Applicants: SONY CORP, SONY CORPORATION
Application year: 1994
Main classification: H04B1
IPC codes: H04B1, G11B20, H04B14, H03G9, H03M7