This application claims priority from Korean Patent Application No. 10-2004-36963, filed on May 24, 2004 in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.
1. Field of the Invention
The present general inventive concept relates to an audio error correcting system, and more particularly, to a method and an apparatus to correct an error when reproducing a magnetic tape in an audio system having a cylindrical head structure, and a digital audio signal processing system employing the method and apparatus.
2. Description of the Related Art
Apparatuses for recording/reproducing a digital audio signal include audio-only apparatuses, such as compact disc (CD) players, mini disk (MD) players, and digital audio tape (DAT) recorders, and apparatuses for recording/reproducing a digital audio signal related to image data, such as digital video cassette recorders (VCRs). Since these digital audio signal recording/reproducing apparatuses cannot avoid errors generated during a recording/reproducing process, the apparatuses take countermeasures against such errors using an error correction code. In particular, an audio reproducing apparatus using a cylindrical or rotary head and a recording medium (tape), may periodically reproduce two or three normal samples (i.e., non-erroneous) and then erroneous samples. In a conventional method used to reduce an effect of errors, interpolation values for the erroneous samples are determined using temporally adjacent normal samples.
A commonly used linear interpolation equation that corresponds to the conventional linear interpolation method is given by Equation 1:
y(n+w)=(1−w)·y(n)+w·y(n+1) [Equation 1]
Here, w is a number between 0 and 1 used to interpolate a signal y between a time “n” and a time “n+1.”
Referring to
However, as illustrated in
The present general inventive concept provides a method and an apparatus to interpolate erroneous audio samples between normal audio samples using values estimated by a conventional linear interpolation method and values located on a continuous line of samples, in a reproducing apparatus in which a plurality of normal samples and erroneous samples are periodically generated.
The present general inventive concept also provides an audio signal processing system employing the audio sample interpolation method and apparatus.
Additional aspects and advantages of the present general inventive concept will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the general inventive concept.
The foregoing and/or other aspects and advantages of the present general inventive concept may be achieved by providing a method of interpolating erroneous audio samples between normal audio samples in a reproducing apparatus, in which a plurality of normal audio samples and erroneous audio samples are generated periodically, the method comprising counting a number of erroneous samples based on a number of error flags, and when at least one erroneous sample is counted between a first normal sample and a second normal sample, calculating a first value obtained by adding a first product of the first normal sample value and a first weight and a second product of the second normal sample value and a second weight, calculating a second value located on a continuous line of the first normal sample or the second normal sample, and setting a mean value of the first value and the second value to a sample value of a position where the error is generated.
The foregoing and/or other aspects and advantages of the present general inventive concept may also be achieved by providing an audio error correcting apparatus to interpolate erroneous samples, the apparatus comprising a counter to count a number of erroneous samples based on a number of error flags, and an interpolator, when at least one erroneous sample is counted between a first normal sample and a second normal sample, to calculate a first value obtained by adding a first product of the first normal sample value and a first weight and a second product of the second normal sample value and a second weight, to calculate a second value located on a continuous line of the first normal sample or the second normal sample, and to set a mean value of the first value and the second value to a sample value of a position in which the error is generated.
The foregoing and/or other aspects and advantages of the present general inventive concept may also be achieved by providing a digital audio signal processing system to interpolate erroneous samples, the system comprising a decoder to decode audio data reproduced from a deck and to perform error correction on the decoded audio data using an error correction code, a storage unit to store the audio data decoded by the decoder and one or more error flags indicating whether there are errors in one or more corresponding samples, and a signal processor to interpolate erroneous sample values between normal samples using mean values of linear-interpolated values and values located on continuous lines of the normal samples in response to the one or more error flags stored in the storage unit.
These and/or other aspects and advantages of the present general inventive concept will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
Reference will now be made in detail to the embodiments of the present general inventive concept, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below in order to explain the present general inventive concept while referring to the figures.
In a general audio recording/reproducing system, a mecha deck includes a pair of magnetic heads installed on a rotating drum 180° apart from each other, a magnetic tape wrapped around the rotating drum, and a tape traveling assembly that guides the magnetic tape along a predetermined path.
On the magnetic tape, a signal is alternately recorded by the pair of magnetic heads, and inclined tracks are sequentially formed. In a 525-line/60-field magnetic tape, a video signal and an audio signal of 1 frame are recorded on 10 tracks. Track numbers 0 through 9 are assigned to these tracks. Each track has an area on which video data is recorded and an area on which a sub code is recorded. One sample of the audio signal is composed of 16 bits, and the audio signal is digitalized with a sampling frequency of 48 kHz, 44.1 kHz, or 32 kHz. The audio signal includes two channels and a signal of one channel is recorded on the first half of the 10 tracks, and a signal of the other channel is recorded on the remaining 5 tracks. The number of audio samples included in one frame is 1620 (D0-D1619).
Referring to
An output signal of the sync detector 450 is provided to an error correction code (ECC) decoder 460. The ECC decoder 460 decodes an error correction code and corrects erroneous samples of the reproduced signal. For example, a product code may be used for the error correction code. For illustration purposes, description of signal processing for the video data and the sub code is omitted, and only signal processing of the audio data from the latter part of the ECC decoder 460 will be described. However, it should be understood that the present general inventive concept is usable with the video data and/or the sub code.
Error flags indicating whether errors are generated in data and samples decoded by the ECC decoder 460 are stored in a memory 470. A deshuffling unit 480 is combined with the memory 470 and deshuffles data that was shuffled when the data was recorded.
Even though the errors are corrected by the ECC decoder 460, if a foreign substance exists on one of the magnetic heads, errors are generated when the audio data is reproduced. For example, a head1 and a head2 are included in the magnetic heads. If the foreign substance exists on the head1, a track0, a track2, and a track4 cannot be read. Accordingly, not only data samples (D0, D5, D10, . . . , D1615) of the track0 but also data samples (D1, D6, D11, . . . , D1616) of the track2 and data samples (D2, D7, D12, . . . , D1617) of the track4 are considered erroneous.
Referring to the deshuffled data, a repeating pattern of three erroneous data samples followed by two normal (i.e., non-erroneous) data samples, or two erroneous data samples followed by three normal data samples, is periodically generated when the deshuffled data is reproduced.
A signal processor 490 interpolates the erroneous samples periodically generated between the normal samples of data deshuffled by the deshuffling unit 480 using previous and subsequent normal samples in response to the error flags input from the memory 470.
A digital to analog (D/A) converter 492 reproduces audio samples output from the signal processor 490, as an analog signal or a reproduced voice signal.
A 16-bit sample “a” of the audio data is input to a buffer 530. An error flag indicating whether an error has been generated in the sample is provided to an error counter 510. The error counter 510 counts error flags.
If two erroneous samples have been generated, the buffer 530 stores normal samples “a,” “b,” “e,” and “f,” and erroneous samples “c” and “d,” generated when the audio data is reproduced. Alternatively, if three erroneous samples have been generated, the buffer 530 can store three erroneous samples “c,” “d,” and “e” between normal samples “a” and “b” and “f” and “g.” The normal samples and the erroneous samples may be repeated periodically among the audio data due to the foreign substance existing on one of the magnetic heads.
An interpolator 520 calculates interpolation values of the erroneous samples “c” and “d” using the samples “a,” “b,” “e,” and “f” stored in the buffer 530 when the error counter 510 counts two erroneous samples. The interpolation values of the erroneous samples “c” and “d” are set using values estimated by the conventional linear interpolation method and values located on continuous lines of the normal samples. Alternatively, the interpolator 520 calculates interpolation values of the erroneous samples “c,” “d,” and “e” using the samples “a,” “b,” “f,” and “g” stored in the buffer 530 when the error counter 510 counts three erroneous samples. The interpolation values of the erroneous samples “c,” “d,” and “e” are set using values estimated by the conventional linear interpolation method and values located on continuous lines of the normal samples.
Referring to
Referring to
Referring to
The interpolator 520 determines whether there is an error in a sample “b” using an error flag EF_b in operation 912. If the error flag EF_b indicates that there is an error in the sample “b” (i.e., EF_b=1) in operation 912, an error count value is checked. If the error count value is 0, 1, or 2, the error count value is increased by 1, and if the error count value is 3, the error count value remains at 3, in operation 914. At this time, an erroneous sample value “c” is set to the erroneous sample value “b” by holding the erroneous sample value “b” in operation 916.
If the error flag EF_b indicates that there is no error in sample “b” (i.e., EF_b=0) in operation 912, the error count value is checked in operation 922. At this time, according to the error count value, the following interpolation operations performed:
1) If the error count value is 0, an interpolation is not performed.
2) If the error count value is 1, the erroneous sample “c” between the sample “b” and a sample “d” is interpolated using a conventional linear interpolation equation, for example, b/2+d/2. After the interpolation, the error count value becomes 0, in operation 926.
3) If the error count value is 2, different interpolation equations are used according to a state of an error flag EF_a indicating whether there is an error in sample “a,” a value of sample “e”, and a value of sample “f”, in operation 932. That is, if the error flag EF_a of sample “a” is 1 (i.e., sample “a” is erroneous), and if the value of sample “e” and the value of sample “f” are equal to each other, erroneous samples “c” and “d” are set using interpolation equations (⅔*b+⅓*e and ⅓*b+⅔*e), in operation 934. If the error flag EF_a of sample “a” is 0 (i.e., sample “a” is normal), and if the value of sample “e” and the value of sample “f” are not equal to each other, the erroneous samples “c” and “d” are set using an interpolation equation according the present embodiment of the general inventive concept, in operation 936. That is, the erroneous sample “c” is set to {(⅔*b+⅓*e)+(2*b-a)}/2, and the erroneous sample “d” is set to {(⅓*b+⅔*e)+(2*e-f)}/2.
4) If the error count value is 3, different interpolation equations are used according to a state of the error flag EF_a indicating whether there is an error in the sample “a”, a value of sample “f,” and a value of sample “g,” in operation 942. That is, if the error flag EF_a of sample “a” is 1 (i.e., sample “a” is erroneous), and the values of samples “f” and “g” are equal, erroneous samples “c,” “d,” and “e” are set using interpolation equations (¾*b+¼*f, ½*b+½*f, and ¼*b+¾*f), in operation 944. If the error flag EF_a of sample “a” is 0 (i.e., sample “a” is normal), and the values of samples “f” and “g” are not equal, the erroneous samples “c,” “d,” and “e” are set using an interpolation according to the present embodiment of the general inventive concept, in operation 946. That is, the erroneous sample “c” is set to {(¾*b+¼*f)+(2*b-a)}/2, the erroneous sample “d” is set to {(½*b+½*f)+(2*c-b)+(2*e-f)}/3, and the erroneous sample “e” is set to {(¼*b+¾*f)+(2*f-g)}/2.
After the interpolation, the error count value becomes 0, in operation 926.
A buffer shift process is performed to examine another group of samples in the audio data in operation 940.
After the buffer shifts to samples “b,” “c,” “d,” “e,” and “f,” a subsequent new sample “a” is input to the interpolator in operation 950. Operations 912 through 950 are continuously repeated for the remaining audio data. Although a buffer size used to describe the present embodiment includes six or seven samples depending on the error count, it should be understood that other buffer sizes may be used with the present general inventive concept.
Comparing
Referring to
The present general inventive concept may be implemented in hardware, software, or a combination thereof. The present general inventive concept can also be embodied as computer-readable codes on a computer-readable recording medium. The computer-readable recording medium may include any data storage device that can store data which can thereafter be read by a computer system. Examples of the computer-readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as data transmission over the Internet). The computer-readable recording medium can also be distributed over a network of coupled computer systems so that the computer-readable code is stored and executed in a decentralized fashion.
As described above, since an audio sample interpolation method according to an embodiment of the present general inventive concept corrects audio errors generated in reproducing apparatuses using a cylindrical or a rotary head (e.g., camcorders, video cassette players, etc.), and remarkably reduces harmonic components generated when the errors are corrected so that audio data can be more clearly reproduced.
Although a few embodiments of the present general inventive concept have been shown and described, it will be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the general inventive concept, the scope of which is defined in the appended claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
2004-36963 | May 2004 | KR | national |