KR101291197B1 - 오디오 신호 복호화 방법 및 장치 - Google Patents
오디오 신호 복호화 방법 및 장치 Download PDFInfo
- Publication number
- KR101291197B1 KR101291197B1 KR1020120109727A KR20120109727A KR101291197B1 KR 101291197 B1 KR101291197 B1 KR 101291197B1 KR 1020120109727 A KR1020120109727 A KR 1020120109727A KR 20120109727 A KR20120109727 A KR 20120109727A KR 101291197 B1 KR101291197 B1 KR 101291197B1
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- error
- current frame
- previous
- spectrum
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 145
- 230000005236 sound signal Effects 0.000 title claims abstract description 49
- 230000000873 masking effect Effects 0.000 claims 1
- 238000001228 spectrum Methods 0.000 description 147
- 230000003595 spectral effect Effects 0.000 description 18
- 230000006866 deterioration Effects 0.000 description 6
- 238000012805 post-processing Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 101000591286 Homo sapiens Myocardin-related transcription factor A Proteins 0.000 description 2
- 102100034099 Myocardin-related transcription factor A Human genes 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/89—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
- H04N19/895—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0212—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Error Detection And Correction (AREA)
- Stereo-Broadcasting Methods (AREA)
Abstract
오디오 신호의 오류은폐방법 및 장치가 개시된다. 이 오류은폐방법은 현재 프레임에 오류가 있는 경우, 기 설정된 기준에 의해 주파수 영역 방식의 반복 방식, 보간 방식 또는 시간 영역 방식 중에서 현재 프레임의 오류를 은폐하기 위한 방식을 선택하고, 선택된 방식에 따라 현재 프레임의 오류를 은폐한다. 이렇게 함으로써 주파수 영역의 반복 방식, 보간 방식 및 시간 영역의 오류은폐방식을 적절히 조합하여 프레임 오류를 은폐하므로 반복방식에 의해서만 프레임 오류를 은폐하므로 발생할 수 있는 변조 노이즈에 의함 음질 저하를 방지할 수 있다.
Description
본 발명은 오디오 신호의 오류를 은폐하는 방법 및 장치에 관한 것으로서, 특히 주파수 영역에서 반복 방식에 의해 긴 구간에 걸쳐 발생한 오류를 은폐하므로 발생할 수 있는 변조 노이즈(modulation noise)의 발생을 방지할 수 있는 오류은폐방법 및 장치에 관한 것이다.
T-DMB 또는 IP 망과 같은 유무선 망을 통하여 부호화된 오디오 신호를 전송하는 과정에서 오류가 발생할 수 있다. 이러한 경우 오류를 적절하게 처리하지 않으면, 전송 오류로 인해 어노잉 디스토션(annoying distortion)이 발생하여 음질이 상당히 저하된다.
종래에는 이러한 오디오 신호의 오류를 은폐하기 위하여 이전 정상 프레임(Previous Good Frame)의 스펙트럼을 반복하여 오류가 발생된 프레임을 복원하는 반복(repetition) 방식, 이전 정상 프레임과 다음 정상 프레임(Next Good Frame)의 스펙트럼을 보간하여 오류가 발생된 프레임을 복원하는 보간 방식(interpolation) 등이 사용되었다.
그러나 오류가 발생된 구간의 길이가 길어지게 되면, 이전 정상 프레임의 스펙트럼이 반복되는 구간의 길이가 길어지면서 동일 스펙트럼이 계속하여 반복됨으로 인해 발생하는 변조 노이즈(modulation noise)가 발생하는 문제가 생긴다.
따라서 본 발명이 이루고자 하는 기술적 과제는 프레임에 발생된 오류를 은폐하기 위하여 주파수 영역의 반복 방식과 보간 방식을 조합하여 적용하고, 주파수 영역에서 은폐가 불가능하거나 어려운 경우는 추가적으로 시간 영역의 오류은폐방식을 적용함으로써 변조 노이즈로 인한 음질 저하를 방지할 수 있는 오디오 신호의 오류은폐방법 및 장치를 제공하는 것이다.
또한, 본 발명이 이루고자 하는 다른 기술적 과제는 상기 본 발명에 따른 오디오 신호의 오류은폐방법 및 장치를 이용하여 오류가 발생된 프레임을 복원함으로써 노이즈로 인한 음질 저하를 방지하여 지각적인 음질을 개선시킬 수 있는 오디오 신호의 복호화방법 및 장치를 제공하는 것이다.
또한, 본 발명이 이루고자 하는 또 다른 기술적 과제를 상기 본 발명에 따른 오디오 신호의 오류은폐방법 및 복호화방법 중 어느 하나의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 것이다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 오디오 신호의 오류은폐방법은 (a) 현재 프레임에 오류가 있는 경우, 기 설정된 기준에 의해 주파수 영역 방식 또는 시간 영역 방식 중에서 상기 현재 프레임의 오류를 은폐하기 위한 방식을 선택하는 단계; (b) 상기 주파수 영역 방식이 선택된 경우에 기 설정된 기준에 의해 주파수 영역상의 반복 방식 또는 보간 방식 중에서 상기 현재 프레임의 오류를 은닉하기 위한 방식을 선택하는 단계; 및 (c) 상기 선택된 방식에 따라 상기 오류를 은폐하는 단계를 포함한다.
또한, 상기 (a)단계는 상기 현재 프레임 전후 프레임의 오류발생여부 및 윈도우 타입을 기준으로 상기 주파수 영역 방식 또는 시간 영역 방식 중에서 상기 현재 프레임의 오류를 은폐하기 위한 방식을 선택하는 것이 바람직하다.
또한, 상기 (a)단계는 상기 현재 프레임의 이전 및 다음 프레임 중 적어도 하나의 프레임이 정상 프레임(good frame)이면 상기 정상 프레임의 윈도우 타입을 기준으로 상기 주파수 영역의 오류은폐방식 또는 상기 시간 영역의 오류은폐방식 중에서 상기 현재 프레임의 오류를 은폐하기 위한 방식을 선택하는 것이 바람직하다.
또한, 상기 (a)단계는 상기 현재 프레임의 이전 및 다음 프레임이 모두 오류 프레임이면, 상기 이전 프레임의 오류를 은폐하기 위해 사용된 방식을 기준으로 상기 주파수 영역의 오류은폐방식 또는 상기 시간 영역의 오류은폐방식 중에서 선택하는 것이 바람직하다.
또한, 상기 (a)단계는 상기 오류가 발생된 프레임 구간의 길이를 기준으로 상기 주파수 영역 방식 또는 시간 영역 방식 중에서 상기 현재 프레임의 오류를 은폐하기 위한 방식을 선택하는 것이 바람직하다.
또한, 상기 (c)단계는 상기 (b)단계에서 상기 보간 방식이 선택되면, 상기 보간 방식에 따라 상기 이전 및 다음 정상 프레임 중에서 어느 하나의 프레임의 스펙트럼 크기 및 나머지 프레임의 스펙트럼 부호를 이용하여 상기 오류를 은폐할 수 있다.
또한, 상기 (c)단계는 상기 (b)단계에서 상기 보간 방식이 선택되면, 스케일팩터밴드 별로 상기 보간 방식에 따라 상기 이전 및 다음 정상 프레임의 스케일팩터밴드 중에서 어느 하나의 스케일팩터밴드의 스펙트럼 크기 및 나머지 스케일팩터밴드의 부호를 이용하여 상기 오류를 은폐할 수 있다.
또한, 상기 (c)단계는 상기 (b)단계에서 상기 보간 방식이 선택되면, 주파수 빈(frequency bin) 별로 상기 보간 방식에 따라 상기 이전 및 다음 정상 프레임의 스펙트럼 중에서 어느 하나의 스펙트럼 크기 및 나머지 하나의 스펙트럼 부호 이용하여 상기 오류를 은폐할 수 있다.
또한, 상기 (c)단계는 상기 (b)단계에서 상기 보간 방식이 선택되면, 상기 보간 방식에 따라 상기 이전 및 정상 프레임 중에서 에너지의 크기에 따라 선택된 어느 하나의 프레임의 스펙트럼을 이용하여 상기 오류를 은폐할 수 있다.
또한, 상기 (c)단계는 상기 (b)단계에서 상기 보간 방식이 선택되면, 스케일팩터밴드 별로 상기 보간 방식에 따라 상기 이전 및 정상 프레임의 스케일팩터밴드 중에서 에너지의 크기에 따라 선택된 어느 하나의 스케일팩터밴드의 스펙트럼을 이용하여 상기 오류를 은폐할 수 있다.
또한, 상기 (c)단계는 상기 (b)단계에서 상기 반복 방식이 선택되면, 상기 반복 방식에 따라 상기 이전 및 다음 프레임 중에서 윈도우 타입이 롱인 정상 프레임의 스펙트럼을 이용하여 상기 오류를 은폐할 수 있다.
또한, 상기 (c)단계는 상기 (a)단계에서 상기 시간 영역의 오류은폐방식이 선택되면, 상기 이전 및 다음 프레임 중 적어도 어느 하나의 프레임이 정상 프레임인 경우, 상기 시간 영역의 오류은폐방식에 따라 상기 적어도 하나의 정상 프레임을 이용하여 상기 오류를 은폐할 수 있다.
또한, 상기 오디오 신호의 오류은폐방법은 (d) 상기 주파수 영역 또는 시간 영역에서 오류가 은폐된 현재 프레임의 오디오 신호에 페이드인(fade-in) 및 페이드아웃(fade-out) 방식을 적용하는 단계를 더 포함하는 것이 바람직하다.
또한, 상기 오디오 신호의 오류은폐방법은 상기 현재 프레임에 오류가 있는지 여부를 판단하는 단계를 더 포함하는 것이 바람직하다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 오디오 신호의 오류은폐장치는 현재 프레임에 오류가 있는 경우, 기 설정된 기준에 의해 주파수 영역 방식 또는 시간 영역 방식 중에서 상기 현재 프레임의 오류를 은폐하기 위한 방식을 선택하는 제1 선택부; 상기 제1 선택부에서 상기 주파수 영역 방식이 선택된 경우에 기 설정된 기준에 의해 주파수 영역상의 반복 방식 또는 보간 방식 중에서 상기 현재 프레임의 오류를 은닉하기 위한 방식을 선택하는 제2 선택부; 및 상기 선택된 방식에 따라 상기 오류를 은폐하는 오류 은폐부를 포함한다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 오디오 신호의 복호화 방법은 현재 프레임에 오류가 있는지 여부를 판단하는 단계; 상기 현재 프레임에 오류가 없는 경우, 상기 현재 프레임을 복호화하는 단계; 상기 현재 프레임에 오류가 있는 경우, 기 설정된 기준에 의해 주파수 영역 방식 또는 시간 영역 방식 중에서 상기 현재 프레임의 오류를 은폐하기 위한 방식을 선택하는 단계; 상기 주파수 영역 방식이 선택된 경우에 기 설정된 기준에 의해 주파수 영역상의 반복 방식 또는 보간 방식 중에서 상기 현재 프레임의 오류를 은닉하기 위한 방식을 선택하는 단계; 및 상기 선택된 방식에 따라 상기 오류를 은폐하는 단계를 포함한다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 오디오 신호의 복호화 장치는 현재 프레임에 오류가 있는지 여부를 판단하는 오류 검출부; 상기 현재 프레임에 오류가 없는 경우, 상기 현재 프레임을 복호화하는 복호화부; 상기 현재 프레임에 오류가 있는 경우, 기 설정된 기준에 의해 주파수 영역 방식 또는 시간 영역 방식 중에서 상기 현재 프레임의 오류를 은폐하기 위한 방식을 선택하는 제1 선택부; 상기 주파수 영역 방식이 선택된 경우에 기 설정된 기준에 의해 주파수 영역상의 반복 방식 또는 보간 방식 중에서 상기 현재 프레임의 오류를 은닉하기 위한 방식을 선택하는 제2 선택부; 및 상기 선택된 방식에 따라 상기 오류를 은폐하는 오류 은폐부를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위하여 본 발명에 따른 오디오 신호의 오류은폐방법 및 복호화 방법 중 어느 하나의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 발명에 따른 오디오 신호의 오류은폐방법 및 장치는 프레임에 발생된 오류를 은폐하기 위하여 주파수 영역의 반복 방식과 보간 방식을 조합하여 적용하고, 주파수 영역에서 은폐가 불가능하거나 어려운 경우는 추가적으로 시간 영역의 오류은폐방식을 적용함으로써 변조 노이즈로 인한 음질 저하를 방지할 수 있다.
또한, 본 발명에 따른 오디오 신호의 복호화 방법 및 장치는 상기 본 발명에 따른 오디오 신호의 오류은폐방법 및 장치를 이용하여 오류가 발생된 프레임을 복원함으로써 노이즈로 인한 음질 저하를 방지하여 지각적인 음질을 개선시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 오디오 신호의 오류은폐방법을 이용하는 오디오 신호의 복호화 방법을 나타내는 플로우차트이다.
도 2는 본 발명의 일 실시예에 따라 이전 프레임과 다음 프레임의 오류발생상황 및 윈도우 타입을 고려하여 결정된 현재 프레임의 오류은폐방식을 나타낸 표이다.
도 3a 내지 도 8b는 본 발명의 실시예들에 따른 도 1에 도시된 제 170단계의 보다 자세한 플로우차트들이다.
도 9는 본 발명의 일 실시예에 따른 오디오 신호의 오류은폐장치를 포함하는 오디오 신호의 복호화장치의 구성을 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따라 이전 프레임과 다음 프레임의 오류발생상황 및 윈도우 타입을 고려하여 결정된 현재 프레임의 오류은폐방식을 나타낸 표이다.
도 3a 내지 도 8b는 본 발명의 실시예들에 따른 도 1에 도시된 제 170단계의 보다 자세한 플로우차트들이다.
도 9는 본 발명의 일 실시예에 따른 오디오 신호의 오류은폐장치를 포함하는 오디오 신호의 복호화장치의 구성을 도시한 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 오디오 신호의 오류은폐방법 및 장치, 이를 이용하는 오디오 신호의 복호화 방법 및 장치에 관하여 상세히 설명하겠다.
도 1은 본 발명의 일 실시예에 따른 오디오 신호의 오류은폐방법을 이용하는 오디오 신호의 복호화 방법을 나타내는 플로우차트이다.
우선, 현재 프레임에 오류가 발생되었는지 여부를 검사한다(제 100단계). 제 100단계에서 검사한 결과, 현재 프레임에 오류가 발생되지 않았으면(즉, 현재 프레임이 정상 프레임(good frame)이면 현재 프레임의 스펙트럼 계수를 역(inverse) MDCT(Modulated Discrete Cosine Transformation)하여 현재 프레임의 오디오 신호를 복원한다(제 110단계).
제 100단계에서 검사한 결과, 현재 프레임에 오류가 발생되었으면, 오류가 발생된 위치가 미리 설정된 임계 위치 이후인지 여부를 검사한다(제 120단계). 제 120단계에서 검사한 결과, 현재 프레임에서 오류가 발생된 위치가 상기 임계 위치 이후인 것으로 판단되면, 제 110단계로 진행하여 현재 프레임을 정상적으로 복호화한다. BSAC과 같이 복수의 계층들로 구성된 비트스트림의 경우는 오류가 발생된 위치 이전에 마련된 계층들은 정상적으로 복호화가 가능하다. 따라서 오류가 오디오 신호의 음질에 영향을 거의 미치지 않는 마지막 계층에서 발생된 경우, 오류가 발생된 마지막 계층의 이전 계층들을 정상적으로 복원하고, 복원된 계층들의 스펙트럼 정보로부터 마지막 계층의 스펙트럼 정보를 충분히 복원할 수 있다. 그러므로 제 100단계에서 현재 프레임에 오류가 발생되었다고 판단된 경우라도, 오류가 발생된 모든 프레임을 오류은폐방식에 복원하는 것이 아니라 오류가 발생된 위치가 오디오 신호의 음질에 영향을 미치지 않는 임계 위치 이후의 계층인 경우에는 현재 프레임에 발생된 오류를 은폐하기 않고 정상적으로 현재 프레임을 복호화하도록 함으로써 오류가 발생되지 않은 계층 정보를 최대로 활용할 수 있을 것이다. 그리고, 제 110단계에서 정상적으로 복호화된 정상 프레임의 복호화 결과는 이후 프레임에 발생된 오류를 은폐하기 위해 사용될 수 있도록 저장해 놓는 것이 바람직할 것이다.
제 120단계에서 검사한 결과, 현재 프레임에서 오류가 발생된 위치가 상기 임계 위치 이전인 것으로 판단되면, 현재 프레임의 이전 프레임(previous frame)과 다음 프레임(next frame)의 오류발생여부 및 윈도우 타입(window type)을 고려하여 현재 프레임의 오류를 주파수 영역에서 은폐할 수 있는지 여부(즉. 주파수 영역의 오류은폐방식의 적용이 가능한지 여부)를 판단한다(제 130단계). 제 130단계에서 현재 프레임의 오류를 주파수 영역에서 은폐할 수 있는지 여부를 판단하는 구체적인 판단기준에 대해서는 후술하기로 한다.
제 130단계에서 주파수 영역에서 은폐할 수 없다고 판단되면, 현재 프레임의 오류를 시간 영역에서 은폐한다(제 140단계). 제 130단계에서 주파수 영역에서 은폐할 수 있다고 판단되면, 오류가 발생된 구간의 길이를 고려하여 다시 한번 주파수 영역에서 오류를 은폐할 것인지 아니면 시간 영역에서 오류를 은폐할 것인지 여부를 결정한다(제 150단계). 구체적으로, 오류가 발생된 프레임 구간의 길이가 미리 설정된 임계 길이보다 긴 경우는 시간 영역에서 오류를 은폐하는 것으로 결정하고, 임계 길이보다 짧은 경우는 주파수 영역에서 오류를 은폐하는 것으로 결정한다. 이는 긴 구간에서 오류가 발생된 경우, 주파수 영역에서 오류를 은폐하는 경우는 보간 방식을 적용하여 오류를 은폐하더라도 반복 방식에 의해 오류가 은폐되는 구간이 길어져서 동일한 스펙트럼이 긴 구간 반복되므로 변조 노이즈가 발생될 수 있기 때문이다. 이처럼, 긴 구간에서 오류가 발생된 경우에는 주파수 영역에서의 오류 은폐가 가능하더라도 시간 영역에서 오류를 은폐하므로 변조 노이즈의 발생과 이로 인한 음질 저하 현상을 최소화할 수 있을 것이다.
제 150단계에서 시간 영역에서 오류를 은폐하는 것으로 결정되면 제 140단계로 진행하여 시간 영역에서 현재 프레임의 오류를 은폐한다. 시간 영역에서는 이전 정상 프레임(PGF) 및/또는 다음 정상 프레임(NGF)의 시간 영역의 오디오 신호를 이용하여 현재 프레임의 오디오 신호를 복원한다. 제 150단계에서 주파수 영역에서 오류를 은폐하는 것으로 결정되면, 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 주파수 영역상의 반복 방식에 의해 오류를 은폐할 것인지 아니면 보간 방식에 의해 오류를 은폐할 것인지 여부를 결정한다(제 160단계). 앞서 언급한 바와 같이, 반복 방식을 적용한 오류를 은폐하는 구간의 길이가 길어지게 되면 변조 노이즈가 발생할 수 있다. 따라서 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 현재 프레임의 오류를 은폐하기 위하여 보간 방식을 적용할 수 있는 경우는 보간 방식에 의해 오류를 은폐하고, 보간 방식을 적용할 수 없는 경우에만 반복 방식에 의해 오류를 은폐하도록 하는 것이 바람직할 것이다. 제 160단계에서 보간 방식이 적용가능한지 여부를 결정하는 판단기준에 대해서는 후술하기로 한다.
제 160단계에서 보간 방식에 의한 오류 은폐가 가능한 것으로 판단되면, 보간 방식에 의해 이전 프레임 및 다음 프레임의 스펙트럼을 이용하여 현재 프레임의 오류를 은폐하고(제 170단계), 보간 방식에 의한 오류 은폐가 가능하지 않다고 판단되면, 반복 방식에 의해 현재 프레임의 오류를 은폐한다(제 180단계). 보간 방식의 경우는 이전 정상 프레임(PGF)와 다음 정상 프레임(NGF)의 스펙트럼을 이용하여 현재 프레임의 스펙트럼을 복원하고, 반복 방식의 경우는 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF) 중 어느 한 프레임을 이용하여 현재 프레임의 스펙트럼을 복원한다.
제 170단계 및 제 180단계에서 복원된 현재 프레임의 스펙트럼을 역 MDCT 변환하여 현재 프레임의 오디오 신호를 복원한다(190단계). 제 140단계 및 제 190단계에서 복원된 현재 프레임의 오디오 신호에 시간 영역상의 페이드-인(fade-in) 및 페이-드아웃(fade-out) 기법을 적용하여 복원된 오디오 신호가 보다 자연스럽게 들리도록 하는 후처리 과정(post-processing)을 거친다(제 195단계).
이하, 상기 제 130 단계에서 주파수 영역의 오류은폐방식을 적용할 수 있는지 여부를 판단하는 기준 및 제 160단계에서 주파수 영역의 보간 방식을 적용할 수 있는지 여부를 판단하는 기준에 관하여 보다 자세히 설명하겠다. 본 발명의 일 실시예에 따르면 상기 제 130단계에서는 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 주파수 영역의 오류은폐방식 또는 시간 영역의 오류은폐방식 중에서 현재 프레임의 오류를 은폐하기 위한 방식을 결정한다. 그리고, 제 160단계에서는 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 주파수 영역의 반복 방식 또는 보간 방식 중에서 현재 프레임의 오류를 은폐하기 위한 방식을 결정한다.
여기서, 이전 프레임과 다음 프레임의 오류발생여부라 함은 이전 프레임과 다음 프레임에 오류가 발생하였는지 여부로서, 오류가 발생한 경우는 E(Error)로 표시하였고, 오류가 발생하지 않은 경우는 G(Good)로 표시하였다. 여기서, 프레임의 윈도우 타입이란 해당 프레임의 윈도우가 롱(long) 윈도우 인지 아니면 숏(short) 윈도우인지에 관한 것으로서, 롱 윈도우인 경우는 L(Long)로 표시하였고, 숏 윈도우인 경우는 S(short)로 표시하였다. 이 외에도 롱 윈도우에서 숏 윈도우로 윈도우 타입이 변경되는 경우의 중간에 삽입되는 롱 스탑(long stop) 윈도우와 반대로 숏 윈도우에서 롱 윈도우로 변경되는 경우에 삽입되는 롱 스타트(long start) 윈도우가 더 타입이 더 있으나, 롱 윈도우를 제외한 나머지 윈도우는 설명의 편의를 위하여 모두 숏 윈도우로 통칭하기로 한다. 일반적으로 롱 윈도우는 긴 구간에서 신호의 변화가 거의 없고 안정적인 정적(stationary) 신호를 MDCT(Modulated Discrete Cosine Transformation) 변환할 때 이용되며, 숏 윈도우는 신호가 급격히 변화하거나 돌발적인 어택 신호가 포함된 전이(transient) 신호를 MDCT 변환할 때 사용된다.
제 130 및 제 160단계에서 현재 프레임의 오류은폐방식을 결정하는 기준이 되는 원칙 몇 가지는 다음과 같다.
첫째로, 주파수 영역의 오류은폐방식이 적용되기 위해서는 이전 프레임 및 다음 프레임 중 적어도 어느 하나의 프레임이 정상 프레임이어야 한다. 왜냐하면 보간 방식은 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼을 보간하여 현재 프레임의 스펙트럼을 복원하기 때문이고, 반복 방식은 이전 프레임 또는 다음 프레임 중 어느 한쪽의 프레임의 스펙트럼을 복사하여 현재 프레임의 스펙트럼을 복원하기 때문이다.
둘째로, 주파수 영역의 오류은폐방식에서 사용되는 정상 프레임의 윈도우 타입이 롱 타입이어야 한다. 왜냐하면, 보간 방식의 경우 MDCT의 특성상 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 윈도우 타입이 서로 다르면 주파수 영역의 스펙트럼 계수를 보간할 수 없기 때문이다. 또한, 반복 방식의 경우에도 현재 프레임에 복사할 정상 프레임의 윈도우 타입이 롱 타입이 아니면, 정상 프레임의 스펙트럼을 현재 프레임에 복사하여 복원된 현재 프레임의 오디오 신호가 예상치 못한 노이즈를 발생시킬 수 있기 때문이다. 예를 들어, 이전 정상 프레임이 8개의 숏 윈도우에 의해 MDCT 변환된 경우, 이전 정상 프레임의 마지막 윈도우의 스펙트럼 데이터를 8번 반복하여 현재 프레임의 스펙트럼을 복원하게 되면, 상기 마지막 윈도우에 어택 신호나 노이즈가 삽입된 경우, 현재 프레임에서 어택신호나 노이즈 신호가 계속하여 출력되게 되므로 잘못된 신호가 현재 프레임에서 출력될 수 있다. 또한 상기 마지막 윈도우에 해당되는 스펙트럼이 연속하여 9번 반복되게 되므로 변조 노이즈를 발생시킬 수도 있다.
셋째로, 이전 프레임이 오류 프레임이고, 이전 프레임의 오류가 시간 영역에서 은폐된 경우, 이전 프레임 스펙트럼은 복원되지 않는다는 것이다. 따라서 이 경우에 현재 프레임의 오류를 은폐하기 위하여 이전 프레임의 복원된 스펙트럼을 사용할 수 없기 때문에, 다음 프레임이 정상 프레임인 경우에 다음 정상 프레임을 사용하여 현재 프레임을 복원하거나 이전 프레임의 복원된 시간 영역 신호를 이용하여 현재 프레임의 오류를 시간 영역에서 은폐할 수 있을 뿐이다. 즉, 현재 프레임의 오류를 은폐하기 위하여 이전 프레임의 스펙트럼을 이용하는 반복 방식을 적용할 수 없다.
이하, 도 2를 참조하여, 본 발명의 일 실시예에 따라 이전 프레임과 다음 프레임의 오류발생상황 및 윈도우 타입을 고려하여 결정된 현재 프레임의 오류를 은폐하기 위한 방식에 관하여 살펴보기로 하자. 도 2는 본 발명의 일 실시예에 따라 이전 프레임과 다음 프레임의 오류발생상황 및 윈도우 타입을 고려하여 결정된 현재 프레임의 오류은폐방식을 나타낸 표이다.
첫 번째로, 이전 프레임과 다음 프레임이 모두 정상 프레임인 경우를 고려한다. 먼저, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 윈도우 타입이 모두 롱 타입인 경우는 주파수 영역의 보간 방식을 적용할 수 있으므로 보간 방식에 의해 현재 프레임의 오류를 은폐한다. 다음으로, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF) 중 어느 하나의 프레임의 윈도우 타입만이 롱 타입인 경우는 롱 윈도우에 의해 MDCT 변환된 프레임의 스펙트럼을 현재 프레임에서 반복하여 현재 프레임의 오류를 복원한다. 마지막으로, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 윈도우 타입이 모두 롱 타입이 아닌 경우는 시간 영역의 오류은폐방식에 의해 현재 프레임의 오류를 은폐한다. 이 경우 보간 방식이나 반복 방식과 같은 주파수 영역의 오류은폐방식이 적용될 수 없음을 앞에서 설명한 바와 같다. 여기서, 이전 정상 프레임(PGF)의 시간 영역 신호와 다음 정상 프레임(NGF)의 시간 영역 신호를 모두 이용하여 현재 프레임의 시간 영역 신호를 복원하는 것이 바람직할 것이다.
두 번째로, 이전 프레임과 다음 프레임 중 어느 하나의 프레임만 정상 프레임이고 나머지 프레임은 오류 프레임인 경우를 고려하자. 이 경우는 정상 프레임의 윈도우 타입이 롱 타입인지 아닌지에 따라 구분된다. 먼저, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF)의 윈도우 타입이 롱 타입인 경우는 롱 타입의 윈도우를 갖는 해당 정상 프레임을 이용하여 반복 방식에 의해 현재 프레임의 오류를 은폐한다. 이 때, 이전 프레임은 오류 프레임이고, 다음 정상 프레임(NGF)의 윈도우 타입이 롱 타입인 경우는 물론 다음 정상 프레임(NGF)을 이용하여 반복 방식에 의해 현재 프레임의 오류를 은폐할 수 도 있지만, 이전 프레임의 오류가 시간 영역에서 은폐된 것이 아니라면(즉, 이전 프레임의 오류가 반복 방식에 의해 은폐되었다면) 이전 프레임의 복원된 스펙트럼과 다음 정상 프레임(NGF)의 스펙트럼을 보간하여 현재 프레임의 스펙트럼을 복원함으로써 현재 프레임의 오류를 은폐하도록 할 수도 있을 것이다. 다음으로, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF)의 윈도우 타입이 롱 타입인 아닌 경우는 반복 방식이 적용될 수 없으므로 시간 영역의 오류은폐방식에 의해 현재 프레임의 오류를 은폐한다. 이는 마치 첫 번째에서, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF)의 윈도우 타입 중 어느 하나가 롱 타입이거나 두 정상 프레임의 윈도우 타입이 모두 롱 타입이 아닌 경우와 유사하게 현재 프레임의 오류은폐방식이 결정된다.
세 번째로, 이전 프레임과 다음 프레임이 모두 오류 프레임이 경우를 고려하자. 이 경우는 이전 프레임의 오류가 어떤 방식에 의해 은폐되었는지 여부에 따라 현재 프레임의 오류를 은폐하기 위해 적용될 수 있는 오류은폐방식의 범위가 결정된다. 먼저, 이전 프레임의 오류가 주파수 영역의 반복 방식에 의해 은폐된 경우를 생각해보자. 현재 프레임이 오류 프레임이므로 이전 프레임에서 보간 방식이 적용될 수 없었을 것이다. 이전 프레임의 오류가 반복 방식에 의해 은폐되었다면, 현재 프레임의 오류 역시 이전 프레임에서 반복된 스펙트럼을 다시 반복함으로써 은폐할 수 있다. 다만, 현재까지 연속적으로 소정 횟수 이상 반복 방식에 의해 프레임 오류를 은폐하여 변조 노이즈의 발생이 염려되는 경우라면 시간 영역에 의해 프레임 오류를 은폐하도록 프레임 오류은폐방식을 변경하여 적용할 수도 있을 것이다. 다음으로, 이전 프레임의 오류가 시간 영역에서 은폐된 경우를 생각해보자. 이 경우, 이전 프레임은 시간 영역에서 오류가 은폐되었으므로 이전 프레임의 복원된 스펙트럼은 존재하지 않는다. 따라서 현재 프레임의 오류를 반복 방식에 의해 은폐하기 위하여 이전 프레임의 스펙트럼을 사용할 수 없다. 그러므로 이전 프레임의 오류가 시간 영역의 오류은폐방식에 의해 은폐된 경우에는 현재 프레임의 오류 역시 시간 영역의 오류은폐방식에 의해 은폐해야 할 것이다.
이제 살펴본 내용을 정리해보자.
우선, 제 130단계에서 현재 프레임의 오류를 은폐하기 위하여 주파수 영역의 오류은폐방식(반복 방식 및 보간 방식)을 적용할 수 있는지 여부는 다음을 기준으로 판단한다. 1) 이전 프레임 및 다음 프레임 중 적어도 하나의 프레임 정상 프레임이고, 정상 프레임의 윈도우 타입 중 적어도 하나의 윈도우 타입인 롱 타입인 경우 또는 2) 이전 프레임 및 다음 프레임 중 어느 하나의 프레임도 정상 프레임이 아니고(즉, 이전 프레임 및 다음 프레임이 모두 오류 프레임이고), 이전 프레임의 오류를 은폐하기 위하여 주파수 영역의 오류은폐방식(반복 방식)이 적용된 경우에는 현재 프레임의 오류를 은폐하기 위하여 주파수 영역의 오류은폐방식이 적용될 수 있는 것으로 판단하고, 나머지의 경우에는 주파수 영역의 오류은폐방식이 적용될 수 없는 것으로 판단하여 시간 영역의 오류은폐방식에 의해 현재 프레임의 오류를 은폐하는 것으로 결정한다.
다음으로, 제 160단계에서 현재 프레임의 오류를 은폐하기 위하여 주파수 영역상의 보간 방식을 적용할 수 있을 것인지 여부는 다음을 기준으로 판단한다. 1) 이전 프레임 및 다음 프레임이 모두 정상 프레임이고, 윈도우 타입이 모두 롱 타입인 경우 또는 2)이전 프레임의 오류가 반복 방식에 의해 은폐되고 다음 프레임이 정상 프레임이고 윈도우 타입이 롱 타입인 경우에는 현재 프레임의 오류를 은폐하기 위해 보간 방식을 적용할 수 있는 것으로 판단하여, 보간 방식에 의해 현재 프레임의 오류를 은폐하는 것으로 결정하고, 나머지의 경우 즉, 1) 이전 프레임 및 다음 프레임이 모두 정상 프레임이나 그 중 하나의 프레임의 윈도우 타입만이 롱 타입인 경우, 2) 이전 프레임 및 다음 프레임 중 어느 하나의 프레임이 정상 프레임이고, 윈도우 타입이 롱 타입인 경우, 또는 3) 이전 프레임과 다음 프레임이 모두 오류 프레임이고, 이전 프레임의 오류가 반복 방식에 의해 은폐된 경우에는 현재 프레임의 오류를 은폐하기 반복 방식을 적용할 수 있는 것으로 판단하여, 반복 방식에 의해 현재 프레임의 오류를 은폐하는 것으로 결정할 수 있다.
다만 앞에서 설명한 바와 같이, 이전 프레임이 오류 프레임이고 다음 프레임이 정상 프레임이고, 윈도우 타입이 롱 타입인 경우는, 이전 프레임의 오류가 반복 방식에 의해 은폐된 경우에는 이전 프레임의 복원된 스펙트럼과 다음 정상 프레임의 스펙트럼을 보간하여 보간 방식에 의해 현재 프레임의 오류를 은폐할 수 도 있고, 다음 정상 프레임의 스펙트럼을 반복하여 현재 프레임의 오류를 은폐할 수도 있으므로, 이 경우에는 보간 방식 또는 반복 방식 중에서 어느 하나의 방식을 선택하여 현재 프레임의 오류를 은폐하기 위한 방식으로 결정할 수 있을 것이다.
이처럼, 본 발명의 일 실시예에 따르면 현재 프레임의 오류은폐상황과 전후 프레임의 윈도우 타입을 고려하여 주파수 영역의 반복 방식, 보간 방식 및 시간 영역의 오류은폐방식 중에서 현재 프레임의 오류를 은폐하기 위한 최적의 방식을 선택하고, 선택된 방식에 의해 현재 프레임의 오류를 은폐함으로써 변조 노이즈 발생 및 그로 인한 복원된 오디오 신호의 음질 저하를 최소화할 수 있다.
이하, 도 3a 내지 8b를 참조하여 본 발명에 따른 제 170단계에서의 보간 방식에 의해 현재 프레임의 오류를 은폐하는 단계의 실시예들을 설명하겠다. 도 3a 내지 도 8b는 본 발명의 실시예들에 따른 제 170단계의 보다 자세한 플로우차트들이다.
도 3a에 도시된 제1 실시예에 따르면, 프레임 단위로 이전 정상 프레임(PGF)의 스펙트럼의 크기(amplitude)와 다음 정상 프레임(PGF)의 스펙트럼의 부호(sign)를 조합하여 현재 프레임의 스펙트럼을 생성함으로써 현재 프레임의 오류를 은폐한다. 우선, 이전 정상 프레임(PGF)의 스펙트럼 크기를 추출하고(제 300단계), 다음 정상 프레임(NGF)의 스펙트럼 부호를 추출한다(제 310단계). 그리고 나서, 추출된 스펙트럼의 데이터를 조합하여 현재 프레임의 스펙트럼을 복원한다(제 320단계).
도 3b에 도시된 제2 실시예에 따르면, 프레임 단위로 이전 정상 프레임(PGF)의 스펙트럼 부호와 다음 정상 프레임(NGF)의 스펙트럼 크기를 조합하여 현재 프레임의 스펙트럼을 생성함으로써 현재 프레임의 오류를 은폐한다. 우선, 이전 정상 프레임(PGF)의 스펙트럼 부호를 추출하고(제 330단계), 다음 정상 프레임(NGF)의 스펙트럼 크기를 추출한다(제 340단계). 그리고 나서, 추출된 스펙트럼의 데이터를 조합하여 현재 프레임의 스펙트럼을 복원한다(제 350단계).
도 4a에 도시된 제3 실시예에 따르면, 스케일팩터밴드(scale factor band, SFB)별로 이전 정상 프레임(PGF) 및 다음 정상 프레임(NGF)의 스케일팩트밴드 중에서 에너지가 큰 스케일팩터밴드(SFB)의 스펙트럼 크기와 나머지 스케일팩터밴드(SFB)의 스펙트럼 부호를 조합하여 스케일팩터밴드(SFB) 별로 현재 프레임의 스펙트럼을 복원한다.. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 별 에너지를 각각 계산한다(제 400단계). 스케일팩터밴드(SFB) 별로, 이전 정상 프레임(PGF)의 스케일팩터밴드(SFB) 에너지와 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 에너지가 더 큰 스케일팩터밴드(SFB)의 스펙트럼 크기를 추출하고(제 410단계), 나머지 에너지가 더 작은 스케일팩터밴드(SFB)의 스펙트럼 부호를 추출한다(제 420단계). 그리고 나서, 추출된 스펙트럼 크기와 스펙트럼 부호를 조합하여 현재 프레임의 스펙트럼을 복원한다(제 430단계).
도 4b에 도시된 제4 실시예에 따르면, 스케일팩터밴드(SFB) 별로 이전 정상 프레임(PGF) 및 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 에너지가 큰 스케일팩터밴드(SFB)의 스펙트럼 부호와 나머지 스케일팩터밴드(SFB)의 스펙트럼 크기를 조합하여 스케일팩터밴드(SFB) 별로 현재 프레임의 스펙트럼을 복원한다.. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 별 에너지를 각각 계산한다(제 440단계). 스케일팩터밴드(SFB) 별로, 이전 정상 프레임(PGF)의 스케일팩터밴드(SFB) 에너지와 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 에너지가 더 큰 스케일팩터밴드(SFB)의 스펙트럼 부호를 추출하고(제 450단계), 나머지 에너지가 더 작은 스케일팩터밴드(SFB)의 스펙트럼 크기를 추출한다(제 460단계). 그리고 나서, 추출된 스펙트럼 크기와 스펙트럼 부호를 조합하여 현재 프레임의 스펙트럼을 복원한다(제 470단계).
이 외에도 스케일팩터밴드(SFB) 별로 이전 정상 프레임(PGF)의 스케일팩터밴드(SFB)와 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 어느 하나의 스케일팩터밴드(SFB)를 랜덤하게 선택하고, 선택된 스케일팩터밴드(SFB)의 스펙트럼 크기와 나머지 선택되지 않은 스케일팩터밴드(SFB)의 스펙트럼 부호를 조합하여 스케일팩터밴드(SFB) 별로 현재 프레임의 스펙트럼을 생성할 수도 있을 것이다.
도 5a에 도시된 제5 실시예에 따르면, 주파수 빈(frequency bin) 별로 이전 정상 프레임(PGF) 및 다음 정상 프레임(NGF)의 스펙트럼 중에서 에너지가 큰 스펙트럼의 크기와 나머지 스펙트럼의 부호를 조합하여 주파수 빈별로 현재 프레임의 스펙트럼을 복원한다. 우선, 주파수 빈 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼의 에너지를 각각 계산한다(제 500단계). 주파수 빈 별로, 이전 정상 프레임(PGF)의 스펙트럼과 다음 정상 스펙트럼(NGF) 중에서 제 500단계에서 계산된 이전 정상 프레임(PGF)의 스펙트럼 에너지와 다음 정상 프레임(NGF)의 스펙트럼 중에서 에너지가 더 큰 스펙트럼의 크기를 추출하고(제 510단계), 나머지 에너지가 더 작은 스펙트럼의 부호를 추출한다(제 520단계). 그리고 나서, 추출된 스펙트럼 크기와 스펙트럼 부호를 조합하여 현재 프레임의 스펙트럼을 복원한다(제 530단계).
도 5b에 도시된 제6 실시예에 따르면, 주파수 빈(frequency bin)별로 이전 정상 프레임(PGF) 및 다음 정상 프레임(NGF)의 스펙트럼 중에서 에너지가 큰 스펙트럼의 부호와 나머지 스펙트럼의 크기를 조합하여 주파수 빈별로 현재 프레임의 스펙트럼을 복원한다.. 우선, 주파수 빈 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼의 에너지를 각각 계산한다(제 540단계). 주파수 빈 별로, 이전 정상 프레임(PGF)의 스펙트럼과 다음 정상 스펙트럼(NGF) 중에서 제 500단계에서 계산된 에너지의 크기가 더 큰 스펙트럼의 부호를 추출하고(제 550단계), 나머지 에너지가 더 작은 스펙트럼의 크기를 추출한다(제 560단계). 그리고 나서, 추출된 스펙트럼 크기와 스펙트럼 부호를 조합하여 현재 프레임의 스펙트럼을 복원한다(제 570단계).
이 외에도 주파수 빈 별로 이전 정상 프레임(PGF)의 스펙트럼과 다음 정상 프레임(NGF)의 스펙트럼 중에서 어느 하나의 스펙트럼을 랜덤하게 선택하고, 선택된 스펙트럼의 크기와 나머지 선택되지 않은 스펙트럼의 부호를 조합하여 주파수 빈 별로 현재 프레임의 스펙트럼을 생성할 수도 있을 것이다.
지금까지 살펴본 도 3a 내지 도 5b에 도시된 실시예들에서는 이전 정상 프레임과 다음 정상 프레임의 스펙트럼 중 어느 한 스펙트럼의 크기와 나머지 스펙트럼의 부호를 조합하여 현재 프레임의 스펙트럼을 생성하였다(Spectrum Composition 방식). 그러나 앞으로 살펴볼 도 6a 내지 도 8b에 도시된 실시예들에서는 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF) 중 어느 한 프레임의 스펙트럼에서 크기와 부호를 모두 참조하여 현재 프레임의 스펙트럼을 복원한다(Spectrum Merging 방식).
도 6a에 도시된 제7 실시예에 따르면, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF) 중에서 에너지의 크기가 큰 프레임의 스펙트럼을 사용하여 현재 프레임의 스펙트럼을 복원한다. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 에너지를 계산한다(제 600단계). 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF) 중에서 제 600단계에서 계산된 에너지의 크기가 더 큰 프레임의 스펙트럼 크기 및 부호를 추출한다(제 610단계). 제 610단계에서 추출된 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다(제 620단계).
도 6b에 도시된 제8 실시예에 따르면, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF) 중에서 에너지의 크기가 작은 프레임의 스펙트럼을 사용하여 현재 프레임의 스펙트럼을 복원한다. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 에너지를 계산한다(제 630단계). 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF) 중에서 제 630단계에서 계산된 에너지의 크기가 더 작은 정상 프레임의 스펙트럼 크기 및 부호를 추출한다(제 640단계). 제 640단계에서 추출된 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다(제 650단계).
제 7a에 도시된 제9 실시예에 따르면, 스케일팩터밴드(SFB) 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 에너지의 크기가 더 큰 스케일팩터밴드(SFB)의 스펙트럼 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 별 에너지를 각각 계산한다(제 700단계). 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 제 700단계에서 계산된 에너지의 크기가 더 큰 스케일팩터밴드(SFB)의 스펙트럼 크기 및 부호를 추출한다(제 710단계). 추출된 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다(제 720단계).
제 7b에 도시된 제10 실시예에 따르면, 스케일팩터밴드(SFB) 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 에너지의 크기가 더 작은 스케일팩터밴드(SFB)의 스펙트럼 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 별 에너지를 각각 계산한다(제 730단계). 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스케일팩터밴드(SFB) 중에서 제 730단계에서 계산된 에너지의 크기가 더 작은 스케일팩터밴드(SFB)의 스펙트럼 크기 및 부호를 추출한다(제 740단계). 추출된 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다(제 750단계).
제 8a에 도시된 제11 실시예에 따르면, 주파수 빈 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼 중에서 에너지의 크기가 더 큰 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼 에너지를 주파수 빈 별로 각각 계산한다(제 800단계). 주파수 빈 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼 중에서 제 800단계에서 계산된 에너지의 크기가 더 큰 스펙트럼의 크기 및 부호를 추출한다(제 810단계). 주파수 빈 별로 추출된 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다(제 820단계).
제 8b에 도시된 제12 실시예에 따르면, 주파수 빈 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼 중에서 에너지의 크기가 더 작은 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다. 우선, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼 에너지를 주파수 빈 별로 각각 계산한다(제 830단계). 주파수 빈 별로 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼 중에서 제 830단계에서 계산된 에너지의 크기가 더 작은 스펙트럼의 크기 및 부호를 추출한다(제 840단계). 주파수 빈 별로 추출된 스펙트럼의 크기 및 부호를 사용하여 현재 프레임의 스펙트럼을 복원한다(제 850단계).
도 9는 본 발명의 일 실시예에 따른 오디오 신호의 오류은폐장치를 포함하는 오디오 신호의 복호화장치의 구성을 도시한 블록도로서, 오류검출부(900), 복호화부(910), 오류은폐장치(920) 및 후처리부(930)를 포함하고, 오류은폐장치(920)는 제1 선택부(940), 제2 선택부(950), 주파수영역 오류은폐부(950), 시간 영역 오류은폐부(960) 및 후처리부(960)를 포함한다. 도 9를 참조하여 본 발명의 일 실시예에 따른 오디오 신호의 오류은폐장치와 이를 포함하는 오디오 신호의 복호화장치의 동작을 살펴보자.
오류검출부(900)는 현재 프레임에 오류가 있는지 여부 및 현재 프레임에 오류가 발생되었다면 오류가 발생된 위치가 미리 설정된 임계위치 이후인지 여부를 검사하고, 검사한 결과 현재 프레임에 오류가 없거나(즉, 현재 프레임이 정상 프레임(good frame)거나 현재 프레임에 오류가 있더라도 오류가 발생된 위치라 상기 임계위치 이후인 경우에는 현재 프레임을 복호화부(910)로 전달하고, 현재 프레임에 오류가 있고, 오류가 발생된 위치가 상기 임계 위치 이전인 경우에는 현재 프레임을 오류은폐장치(920)로 전달한다. BSAC과 같이 복수의 계층들로 구성된 비트스트림의 경우는 오류가 발생된 위치 이전에 마련된 계층들은 정상적으로 복호화가 가능하다. 따라서 오류가 오디오 신호의 음질에 영향을 거의 미치지 않는 마지막 계층에서 발생된 경우, 오류가 발생된 마지막 계층의 이전 계층들을 정상적으로 복원하고, 복원된 계층들의 스펙트럼 정보로부터 마지막 계층의 스펙트럼 정보를 충분히 복원할 수 있다. 그러므로 오류검출부(900)에서 현재 프레임에 오류가 발생되었다고 판단된 경우라도, 오류가 발생된 모든 프레임을 오류은폐방식에 복원하는 것이 아니라 오류가 발생된 위치가 오디오 신호의 음질에 영향을 미치지 않는 임계 위치 이후의 계층인 경우에는 현재 프레임에 발생된 오류를 은폐하기 않고 정상적으로 현재 프레임을 복호화하도록 함으로써 오류가 발생되지 않은 계층 정보를 최대로 활용할 수 있을 것이다.
복화화부(910)는 오류검출부(900)에서 전달된 현재 프레임을 정상적으로 복호화하고, 오류은폐장치(920)는 오류검출부(900)에서 전달된 현재 프레임의 오류를 은폐한다. 정상 프레임의 복호화된 결과는 이후 프레임에 발생된 오류를 은폐하기 위해 사용될 수 있도록 저장해 놓는 것이 바람직할 것이다.
제1 선택부(940)는 현재 프레임의 이전 프레임(previous frame)과 다음 프레임(next frame)의 오류발생여부 및 윈도우 타입(window type)을 고려하여 현재 프레임의 오류를 주파수 영역에서 은폐할 수 있는지 여부(즉. 주파수 영역의 오류은폐방식의 적용이 가능한지 여부를 판단한다. 제1 선택부(940)에서 현재 프레임의 오류를 주파수 영역에서 은폐할 수 있는지 여부를 판단하는 구체적인 판단기준에 대해서는 후술하기로 한다.
또한, 제1 선택부(940)는 현재 프레임의 오류를 주파수 영역에서 은폐할 수 있다고 판단되면, 오류가 발생된 구간의 길이를 고려하여 다시 한번 주파수 영역에서 오류를 은폐할 것인지 아니면 시간 영역에서 오류를 은폐할 것인지 여부를 결정한다. 구체적으로, 오류가 발생된 프레임 구간의 길이가 미리 설정된 임계 길이보다 긴 경우는 시간 영역에서 오류를 은폐하는 것으로 결정하고, 임계 길이보다 짧은 경우는 주파수 영역에서 오류를 은폐하는 것으로 결정한다. 이는 긴 구간에서 오류가 발생된 경우, 주파수 영역에서 오류를 은폐하는 경우는 보간 방식을 적용하여 오류를 은폐하더라도 반복 방식에 의해 오류가 은폐되는 구간이 길어져서 동일한 스펙트럼이 긴 구간 반복되므로 변조 노이즈가 발생될 수 있기 때문이다. 이처럼, 긴 구간에서 오류가 발생된 경우에는 주파수 영역에서의 오류 은폐가 가능하더라도 시간 영역에서 오류를 은폐하므로 변조 노이즈의 발생과 이로 인한 음질 저하 현상을 최소화할 수 있을 것이다.
제2 선택부(950)는 제1 선택부(940)에서 현재 프레임의 오류를 주파수 영역에서 현재 프레임의 오류를 은폐할 수 있는 것으로 판단되고, 또한 오류가 발생된 구간의 길이를 고려한 결과 현재 프레임의 오류를 주파수 영역에서 은폐하는 것으로 결정된 경우에, 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 주파수 영역상의 반복 방식에 의해 오류를 은폐할 것인지 아니면 보간 방식에 의해 오류를 은폐할 것인지 여부를 결정한다. 앞서 언급한 바와 같이, 반복 방식을 적용한 오류를 은폐하는 구간의 길이가 길어지게 되면 변조 노이즈가 발생할 수 있다. 따라서 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 현재 프레임의 오류를 은폐하기 위하여 보간 방식을 적용할 수 있는 경우는 보간 방식에 의해 오류를 은폐하고, 보간 방식을 적용할 수 없는 경우에만 반복 방식에 의해 오류를 은폐하도록 하는 것이 바람직할 것이다. 제2 선택부(940)에서 현재 프레임의 오류를 은폐하기 위하여 보간 방식을 적용하는 것이 가능한지 여부를 결정하는 판단기준에 대해서는 후술하기로 한다.
주파수 영역 오류은폐부(960)는 제1 선택부(940)에서 현재 프레임의 오류를 주파수 영역에서 은폐할 수 있다고 판단되고, 오류가 발생된 구간의 길이가 임계 길이를 넘지 않는 경우에, 보간 방식 또는 반복 방식에 의해 현재 프레임의 오류를 은폐한다. 이전 정상 프레임(PGF) 및/또는 다음 정상 프레임(NGF)의 스펙트럼을 이용하여 현재 프레임의 스펙트럼을 복원하고, 복원된 스펙트럼을 역 MDCT 변환하여 현재 프레임의 오디오 신호를 복원한다.
시간 영역 오류은폐부(970)는 제1 선택부(940)에서 현재 프레임의 오류를 주파수 영역에서 은폐할 수 없다고 판단되거나 또는 주파수 영역에서 은폐할 수 있는 경우라 하더라도 오류발생구간의 길이가 임계 길이를 넘어서는 경우에는 시간 영역에서 현재 프레임의 오류를 은폐한다. 시간 영역에서는 이전 정상 프레임(PGF) 및/또는 다음 정상 프레임(NGF)의 시간 영역의 오디오 신호를 이용하여 현재 프레임의 오디오 신호를 복원한다.
후처리부(930)는 오류은폐장치(920)에서 복원된 현재 프레임의 오디오 신호에 시간 영역상의 페이드인(fade-in) 및 페이드아웃(fade-out)을 적용하여 복원된 오디오 신호가 보다 자연스럽게 들리도록 후처리(post-processing)를 한다.
이하, 제1 선택부(940)에서 현재 프레임의 오류를 주파수 영역에서 은폐할 수 있는지 여부를 판단하는 기준 및 제2 선택부(950)에서 현재 프레임의 오류를 보간 방식에 의해 은폐할 수 있는지 여부를 판단하는 기준에 관하여 보다 자세히 설명하겠다. 본 발명의 일 실시예에 따르면 제1 선택부(940)는 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 주파수 영역의 오류은폐방식 또는 시간 영역의 오류은폐방식 중에서 현재 프레임의 오류를 은폐하기 위한 방식을 결정한다. 그리고 제2 선택부(950)는 이전 프레임과 다음 프레임의 오류발생여부 및 윈도우 타입을 고려하여 주파수 영역의 반복 방식 또는 보간 방식 중에서 현재 프레임의 오류를 은폐하기 위한 방식을 결정한다.
여기서, 이전 프레임과 다음 프레임의 오류발생여부라 함은 이전 프레임과 다음 프레임에 오류가 발생하였는지 여부로서, 오류가 발생한 경우는 E(Error)로 표시하였고, 오류가 발생하지 않은 경우는 G(Good)로 표시하였다. 여기서, 프레임의 윈도우 타입이란 해당 프레임의 윈도우가 롱(long) 윈도우 인지 아니면 숏(short) 윈도우인지에 관한 것으로서, 롱 윈도우인 경우는 L(Long)로 표시하였고, 숏 윈도우인 경우는 S(short)로 표시하였다. 이 외에도 롱 윈도우에서 숏 윈도우로 윈도우 타입이 변경되는 경우의 중간에 삽입되는 롱 스탑(long stop) 윈도우와 반대로 숏 윈도우에서 롱 윈도우로 변경되는 경우에 삽입되는 롱 스타트(long start) 윈도우가 더 타입이 더 있으나, 롱 윈도우를 제외한 나머지 윈도우는 설명의 편의를 위하여 모두 숏 윈도우로 통칭하기로 한다. 일반적으로 롱 윈도우는 긴 구간에서 신호의 변화가 거의 없고 안정적인 정적(stationary) 신호를 MDCT(Modulated Discrete Cosine Transformation) 변환할 때 이용되며, 숏 윈도우는 신호가 급격히 변화하거나 돌발적인 어택 신호가 포함된 전이(transient) 신호를 MDCT 변환할 때 사용된다.
제1 선택부(940) 및 제2 선택부(950)에서 현재 프레임의 오류은폐방식을 결정하는 기준이 되는 원칙 몇 가지는 다음과 같다.
첫째로, 주파수 영역의 오류은폐방식이 적용되기 위해서는 이전 프레임 및 다음 프레임 중 적어도 어느 하나의 프레임이 정상 프레임이어야 한다. 왜냐하면 보간 방식은 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 스펙트럼을 보간하여 현재 프레임의 스펙트럼을 복원하기 때문이고, 반복 방식은 이전 프레임 또는 다음 프레임 중 어느 한쪽의 프레임의 스펙트럼을 복사하여 현재 프레임의 스펙트럼을 복원하기 때문이다.
둘째로, 주파수 영역의 오류은폐방식에서 사용되는 정상 프레임의 윈도우 타입이 롱 타입이어야 한다. 왜냐하면, 보간 방식의 경우 MDCT의 특성상 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 윈도우 타입이 서로 다르면 주파수 영역의 스펙트럼 계수를 보간할 수 없기 때문이다. 또한, 반복 방식의 경우에도 현재 프레임에 복사할 정상 프레임의 윈도우 타입이 롱 타입이 아니면, 정상 프레임의 스펙트럼을 현재 프레임에 복사하여 복원된 현재 프레임의 오디오 신호가 예상치 못한 노이즈를 발생시킬 수 있기 때문이다. 예를 들어, 이전 정상 프레임이 8개의 숏 윈도우에 의해 MDCT 변환된 경우, 이전 정상 프레임의 마지막 윈도우의 스펙트럼 데이터를 8번 반복하여 현재 프레임의 스펙트럼을 복원하게 되면, 상기 마지막 윈도우에 어택 신호나 노이즈가 삽입된 경우, 현재 프레임에서 어택신호나 노이즈 신호가 계속하여 출력되게 되므로 잘못된 신호가 현재 프레임에서 출력될 수 있다. 또한 상기 마지막 윈도우에 해당되는 스펙트럼이 연속하여 9번 반복되게 되므로 변조 노이즈를 발생시킬 수도 있다.
셋째로, 이전 프레임이 오류 프레임이고, 이전 프레임의 오류가 시간 영역에서 은폐된 경우, 이전 프레임 스펙트럼은 복원되지 않는다는 것이다. 따라서 이 경우에 현재 프레임의 오류를 은폐하기 위하여 이전 프레임의 복원된 스펙트럼을 사용할 수 없기 때문에, 다음 프레임이 정상 프레임인 경우에 다음 정상 프레임을 사용하여 현재 프레임을 복원하거나 이전 프레임의 복원된 시간 영역 신호를 이용하여 현재 프레임의 오류를 시간 영역에서 은폐할 수 있을 뿐이다. 즉, 현재 프레임의 오류를 은폐하기 위하여 이전 프레임의 스펙트럼을 이용하는 반복 방식을 적용할 수 없다.
이하, 도 2를 참조하여, 본 발명의 일 실시예에 따라 이전 프레임과 다음 프레임의 오류발생상황 및 윈도우 타입을 고려하여 결정된 현재 프레임의 오류를 은폐하기 위한 방식에 관하여 살펴보기로 하자. 도 2는 본 발명의 일 실시예에 따라 이전 프레임과 다음 프레임의 오류발생상황 및 윈도우 타입을 고려하여 결정된 현재 프레임의 오류은폐방식을 나타낸 표이다.
첫 번째로, 이전 프레임과 다음 프레임이 모두 정상 프레임인 경우를 고려한다. 먼저, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 윈도우 타입이 모두 롱 타입인 경우는 주파수 영역의 보간 방식을 적용할 수 있으므로 보간 방식에 의해 현재 프레임의 오류를 은폐한다. 다음으로, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF) 중 어느 하나의 프레임의 윈도우 타입만이 롱 타입인 경우는 롱 윈도우에 의해 MDCT 변환된 프레임의 스펙트럼을 현재 프레임에서 반복하여 현재 프레임의 오류를 복원한다. 마지막으로, 이전 정상 프레임(PGF)과 다음 정상 프레임(NGF)의 윈도우 타입이 모두 롱 타입이 아닌 경우는 시간 영역의 오류은폐방식에 의해 현재 프레임의 오류를 은폐한다. 이 경우 보간 방식이나 반복 방식과 같은 주파수 영역의 오류은폐방식이 적용될 수 없음을 앞에서 설명한 바와 같다. 여기서, 이전 정상 프레임(PGF)의 시간 영역 신호와 다음 정상 프레임(NGF)의 시간 영역 신호를 모두 이용하여 현재 프레임의 시간 영역 신호를 복원하는 것이 바람직할 것이다.
두 번째로, 이전 프레임과 다음 프레임 중 어느 하나의 프레임만 정상 프레임이고 나머지 프레임은 오류 프레임인 경우를 고려하자. 이 경우는 정상 프레임의 윈도우 타입이 롱 타입인지 아닌지에 따라 구분된다. 먼저, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF)의 윈도우 타입이 롱 타입인 경우는 롱 타입의 윈도우를 갖는 해당 정상 프레임을 이용하여 반복 방식에 의해 현재 프레임의 오류를 은폐한다. 이 때, 이전 프레임은 오류 프레임이고, 다음 정상 프레임(NGF)의 윈도우 타입이 롱 타입인 경우는 물론 다음 정상 프레임(NGF)을 이용하여 반복 방식에 의해 현재 프레임의 오류를 은폐할 수 도 있지만, 이전 프레임의 오류가 시간 영역에서 은폐된 것이 아니라면(즉, 이전 프레임의 오류가 반복 방식에 의해 은폐되었다면) 이전 프레임의 복원된 스펙트럼과 다음 정상 프레임(NGF)의 스펙트럼을 보간하여 현재 프레임의 스펙트럼을 복원함으로써 현재 프레임의 오류를 은폐하도록 할 수도 있을 것이다. 다음으로, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF)의 윈도우 타입이 롱 타입인 아닌 경우는 반복 방식이 적용될 수 없으므로 시간 영역의 오류은폐방식에 의해 현재 프레임의 오류를 은폐한다. 이는 마치 첫 번째에서, 이전 정상 프레임(PGF) 또는 다음 정상 프레임(NGF)의 윈도우 타입 중 어느 하나가 롱 타입이거나 두 정상 프레임의 윈도우 타입이 모두 롱 타입이 아닌 경우와 유사하게 현재 프레임의 오류은폐방식이 결정된다.
세 번째로, 이전 프레임과 다음 프레임이 모두 오류 프레임이 경우를 고려하자. 이 경우는 이전 프레임의 오류가 어떤 방식에 의해 은폐되었는지 여부에 따라 현재 프레임의 오류를 은폐하기 위해 적용될 수 있는 오류은폐방식의 범위가 결정된다. 먼저, 이전 프레임의 오류가 주파수 영역의 반복 방식에 의해 은폐된 경우를 생각해보자. 현재 프레임이 오류 프레임이므로 이전 프레임에서 보간 방식이 적용될 수 없었을 것이다. 이전 프레임의 오류가 반복 방식에 의해 은폐되었다면, 현재 프레임의 오류 역시 이전 프레임에서 반복된 스펙트럼을 다시 반복함으로써 은폐할 수 있다. 다만, 현재까지 연속적으로 소정 횟수 이상 반복 방식에 의해 프레임 오류를 은폐하여 변조 노이즈의 발생이 염려되는 경우라면 시간 영역에 의해 프레임 오류를 은폐하도록 프레임 오류은폐방식을 변경하여 적용할 수도 있을 것이다. 다음으로, 이전 프레임의 오류가 시간 영역에서 은폐된 경우를 생각해보자. 이 경우, 이전 프레임은 시간 영역에서 오류가 은폐되었으므로 이전 프레임의 복원된 스펙트럼은 존재하지 않는다. 따라서 현재 프레임의 오류를 반복 방식에 의해 은폐하기 위하여 이전 프레임의 스펙트럼을 사용할 수 없다. 그러므로 이전 프레임의 오류가 시간 영역의 오류은폐방식에 의해 은폐된 경우에는 현재 프레임의 오류 역시 시간 영역의 오류은폐방식에 의해 은폐해야 할 것이다.
이제 살펴본 내용을 정리해보자.
우선, 제1 선택부(950)는 현재 프레임의 오류를 은폐하기 위하여 주파수 영역의 오류은폐방식(반복 방식 및 보간 방식)을 적용할 수 있는지 여부를 다음을 기준으로 판단한다. 1) 이전 프레임 및 다음 프레임 중 적어도 하나의 프레임 정상 프레임이고, 정상 프레임의 윈도우 타입 중 적어도 하나의 윈도우 타입인 롱 타입인 경우 또는 2) 이전 프레임 및 다음 프레임 중 어느 하나의 프레임도 정상 프레임이 아니고(즉, 이전 프레임 및 다음 프레임이 모두 오류 프레임이고), 이전 프레임의 오류를 은폐하기 위하여 주파수 영역의 오류은폐방식(반복 방식)이 적용된 경우에는 현재 프레임의 오류를 은폐하기 위하여 주파수 영역의 오류은폐방식이 적용될 수 있는 것으로 판단하고, 나머지의 경우에는 주파수 영역의 오류은폐방식이 적용될 수 없는 것으로 판단하여 시간 영역의 오류은폐방식에 의해 현재 프레임의 오류를 은폐하는 것으로 결정한다.
다음으로, 제2 선택부(950)는 현재 프레임의 오류를 은폐하기 위하여 주파수 영역상의 보간 방식을 적용할 수 있을 것인지 여부를 다음을 기준으로 판단한다. 1) 이전 프레임 및 다음 프레임이 모두 정상 프레임이고, 윈도우 타입이 모두 롱 타입인 경우 또는 2)이전 프레임의 오류가 반복 방식에 의해 은폐되고 다음 프레임이 정상 프레임이고 윈도우 타입이 롱 타입인 경우에는 현재 프레임의 오류를 은폐하기 위해 보간 방식을 적용할 수 있는 것으로 판단하여, 보간 방식에 의해 현재 프레임의 오류를 은폐하는 것으로 결정하고, 나머지의 경우 즉, 1) 이전 프레임 및 다음 프레임이 모두 정상 프레임이나 그 중 하나의 프레임의 윈도우 타입만이 롱 타입인 경우, 2) 이전 프레임 및 다음 프레임 중 어느 하나의 프레임이 정상 프레임이고, 윈도우 타입이 롱 타입인 경우, 또는 3) 이전 프레임과 다음 프레임이 모두 오류 프레임이고, 이전 프레임의 오류가 반복 방식에 의해 은폐된 경우에는 현재 프레임의 오류를 은폐하기 반복 방식을 적용할 수 있는 것으로 판단하여, 반복 방식에 의해 현재 프레임의 오류를 은폐하는 것으로 결정할 수 있다.
다만 앞에서 설명한 바와 같이, 이전 프레임이 오류 프레임이고 다음 프레임이 정상 프레임이고, 윈도우 타입이 롱 타입인 경우는, 이전 프레임의 오류가 반복 방식에 의해 은폐된 경우에는 이전 프레임의 복원된 스펙트럼과 다음 정상 프레임의 스펙트럼을 보간하여 보간 방식에 의해 현재 프레임의 오류를 은폐할 수 도 있고, 다음 정상 프레임의 스펙트럼을 반복하여 현재 프레임의 오류를 은폐할 수도 있으므로, 이 경우에는 보간 방식 또는 반복 방식 중에서 어느 하나의 방식을 선택하여 현재 프레임의 오류를 은폐하기 위한 방식으로 결정할 수 있을 것이다.
이처럼, 본 발명의 일 실시예에 따르면 현재 프레임의 오류은폐상황과 전후 프레임의 윈도우 타입을 고려하여 주파수 영역의 반복 방식, 보간 방식 및 시간 영역의 오류은폐방식 중에서 현재 프레임의 오류를 은폐하기 위한 최적의 방식을 선택하고, 선택된 방식에 의해 현재 프레임의 오류를 은폐함으로써 변조 노이즈 발생 및 그로 인한 복원된 오디오 신호의 음질 저하를 최소화할 수 있다.
본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장 장치 등이 있다.
이러한 본 발명에 대한 이해를 돕기 위하여 도면에 도시된 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
900 ... 오류검출부 910 ... 복호화부
930 ... 제1 선택부 940 ... 제2 선택부
950 ... 오류은폐부 960 ... 후처리부
930 ... 제1 선택부 940 ... 제2 선택부
950 ... 오류은폐부 960 ... 후처리부
Claims (3)
- 현재 프레임에 오류가 발생되었는지 판단하는 단계;
상기 현재 프레임에 오류가 발생되지 않은 경우, 상기 현재 프레임을 복호화하는 단계;
상기 현재 프레임에 오류가 발생된 경우, 기 설정된 기준에 근거하여, 반복 방식 및 보간 방식을 포함하는 복수의 방식들 중에서 적어도 하나의 방식을 상기 현재 프레임의 오류은폐방식으로 선택하는 단계; 및
상기 선택된 오류은폐방식을 사용하여 상기 현재 프레임의 오류를 은폐하는 단계를 포함하는 오디오 신호의 복호화방법. - 제1 항에 기재된 오디오 신호의 복호화방법을 실행할 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
- 현재 프레임에 오류가 발생되었는지 판단하는 오류검출부;
상기 현재 프레임에 오류가 발생되지 않은 경우, 상기 현재 프레임을 복호화하는 복호화부;
상기 현재 프레임에 오류가 발생된 경우, 기 설정된 기준에 근거하여, 반복 방식 및 보간 방식을 포함하는 복수의 방식들 중에서 적어도 하나의 방식을 상기 현재 프레임의 오류은폐방식으로 선택하는 선택부; 및
상기 선택된 오류은폐방식을 사용하여 상기 현재 프레임의 오류를 은폐하는 오류은폐부를 포함하는 오디오 신호의 복호화장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20060117252 | 2006-11-24 | ||
KR1020060117252 | 2006-11-24 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060128945A Division KR101292771B1 (ko) | 2006-11-24 | 2006-12-15 | 오디오 신호의 오류은폐방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120126041A KR20120126041A (ko) | 2012-11-20 |
KR101291197B1 true KR101291197B1 (ko) | 2013-07-31 |
Family
ID=39663890
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060128945A KR101292771B1 (ko) | 2006-11-24 | 2006-12-15 | 오디오 신호의 오류은폐방법 및 장치 |
KR1020120109727A KR101291197B1 (ko) | 2006-11-24 | 2012-10-02 | 오디오 신호 복호화 방법 및 장치 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060128945A KR101292771B1 (ko) | 2006-11-24 | 2006-12-15 | 오디오 신호의 오류은폐방법 및 장치 |
Country Status (5)
Country | Link |
---|---|
US (5) | US8219393B2 (ko) |
EP (1) | EP2092755B1 (ko) |
KR (2) | KR101292771B1 (ko) |
AT (1) | ATE552585T1 (ko) |
WO (1) | WO2008062959A1 (ko) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101292771B1 (ko) | 2006-11-24 | 2013-08-16 | 삼성전자주식회사 | 오디오 신호의 오류은폐방법 및 장치 |
FR2911228A1 (fr) * | 2007-01-05 | 2008-07-11 | France Telecom | Codage par transformee, utilisant des fenetres de ponderation et a faible retard. |
CN100524462C (zh) * | 2007-09-15 | 2009-08-05 | 华为技术有限公司 | 对高带信号进行帧错误隐藏的方法及装置 |
JP4561837B2 (ja) * | 2008-01-07 | 2010-10-13 | 日本電気株式会社 | 再生装置、システム、方法、プログラム及びコンピュータ読取可能な記録媒体 |
KR100998396B1 (ko) * | 2008-03-20 | 2010-12-03 | 광주과학기술원 | 프레임 손실 은닉 방법, 프레임 손실 은닉 장치 및 음성송수신 장치 |
KR101228165B1 (ko) | 2008-06-13 | 2013-01-30 | 노키아 코포레이션 | 프레임 에러 은폐 방법, 장치 및 컴퓨터 판독가능한 저장 매체 |
CN101937679B (zh) * | 2010-07-05 | 2012-01-11 | 展讯通信(上海)有限公司 | 音频数据帧的错误掩盖方法及音频解码装置 |
EP2770503B1 (en) | 2011-10-21 | 2019-05-29 | Samsung Electronics Co., Ltd. | Method and apparatus for concealing frame errors and method and apparatus for audio decoding |
ES2960089T3 (es) * | 2012-06-08 | 2024-02-29 | Samsung Electronics Co Ltd | Procedimiento y aparato para la ocultación de errores de trama y procedimiento y aparato para la decodificación de audio |
JP6434411B2 (ja) | 2012-09-24 | 2018-12-05 | サムスン エレクトロニクス カンパニー リミテッド | フレームエラー隠匿方法及びその装置、並びにオーディオ復号化方法及びその装置 |
CN103714821A (zh) * | 2012-09-28 | 2014-04-09 | 杜比实验室特许公司 | 基于位置的混合域数据包丢失隐藏 |
PL3098811T3 (pl) * | 2013-02-13 | 2019-04-30 | Ericsson Telefon Ab L M | Ukrywanie błędu ramki |
SG11201510353RA (en) | 2013-06-21 | 2016-01-28 | Fraunhofer Ges Forschung | Apparatus and method realizing a fading of an mdct spectrum to white noise prior to fdns application |
CN104282309A (zh) | 2013-07-05 | 2015-01-14 | 杜比实验室特许公司 | 丢包掩蔽装置和方法以及音频处理系统 |
EP3285254B1 (en) | 2013-10-31 | 2019-04-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder and method for providing a decoded audio information using an error concealment based on a time domain excitation signal |
PL3336839T3 (pl) | 2013-10-31 | 2020-02-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Dekoder audio i sposób dostarczania zdekodowanej informacji audio z wykorzystaniem maskowania błędów modyfikującego sygnał pobudzenia w dziedzinie czasu |
CN107004417B (zh) * | 2014-12-09 | 2021-05-07 | 杜比国际公司 | Mdct域错误掩盖 |
JP6883047B2 (ja) * | 2016-03-07 | 2021-06-02 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | 適切に復号されたオーディオフレームの復号化表現の特性を使用する誤り隠蔽ユニット、オーディオデコーダ、および関連する方法およびコンピュータプログラム |
BR112018067944B1 (pt) | 2016-03-07 | 2024-03-05 | Fraunhofer - Gesellschaft Zur Förderung Der Angewandten Forschung E.V | Unidade de ocultação de erro, método de ocultação de erro,decodificador de áudio, codificador de áudio, método para fornecer uma representação de áudio codificada e sistema |
EP3483878A1 (en) * | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder supporting a set of different loss concealment tools |
EP3483883A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio coding and decoding with selective postfiltering |
EP3483884A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Signal filtering |
EP3483880A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Temporal noise shaping |
WO2019091576A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
EP3483886A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Selecting pitch lag |
EP3483882A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Controlling bandwidth in encoders and/or decoders |
EP3483879A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
US20200020342A1 (en) * | 2018-07-12 | 2020-01-16 | Qualcomm Incorporated | Error concealment for audio data using reference pools |
CN110782906B (zh) * | 2018-07-30 | 2022-08-05 | 南京中感微电子有限公司 | 音频数据恢复方法、装置及蓝牙设备 |
US10763885B2 (en) | 2018-11-06 | 2020-09-01 | Stmicroelectronics S.R.L. | Method of error concealment, and associated device |
CN111402905B (zh) * | 2018-12-28 | 2023-05-26 | 南京中感微电子有限公司 | 音频数据恢复方法、装置及蓝牙设备 |
WO2020165263A2 (en) * | 2019-02-13 | 2020-08-20 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Decoder and decoding method selecting an error concealment mode, and encoder and encoding method |
WO2020164751A1 (en) | 2019-02-13 | 2020-08-20 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Decoder and decoding method for lc3 concealment including full frame loss concealment and partial frame loss concealment |
CN113439302A (zh) * | 2019-02-21 | 2021-09-24 | 瑞典爱立信有限公司 | 用于频域分组丢失隐藏的方法及相关解码器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745169A (en) * | 1993-07-19 | 1998-04-28 | British Telecommunications Public Limited Company | Detecting errors in video images |
US20030115043A1 (en) | 1991-04-06 | 2003-06-19 | Detlev Wiese | Error concealment in digital transmissions |
US6597961B1 (en) | 1999-04-27 | 2003-07-22 | Realnetworks, Inc. | System and method for concealing errors in an audio transmission |
US20050044471A1 (en) | 2001-11-15 | 2005-02-24 | Chia Pei Yen | Error concealment apparatus and method |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2940005B2 (ja) * | 1989-07-20 | 1999-08-25 | 日本電気株式会社 | 音声符号化装置 |
GB2263373B (en) * | 1992-01-09 | 1995-05-24 | Sony Broadcast & Communication | Data error concealment |
KR970011728B1 (ko) * | 1994-12-21 | 1997-07-14 | 김광호 | 음향신호의 에러은닉방법 및 그 장치 |
SE9500858L (sv) * | 1995-03-10 | 1996-09-11 | Ericsson Telefon Ab L M | Anordning och förfarande vid talöverföring och ett telekommunikationssystem omfattande dylik anordning |
US5699485A (en) * | 1995-06-07 | 1997-12-16 | Lucent Technologies Inc. | Pitch delay modification during frame erasures |
JPH09282810A (ja) * | 1996-04-11 | 1997-10-31 | Sony Corp | ディジタルデータ処理装置 |
FI963870A (fi) * | 1996-09-27 | 1998-03-28 | Nokia Oy Ab | Virheiden piilottaminen digitaalisessa audiovastaanottimessa |
US7117156B1 (en) * | 1999-04-19 | 2006-10-03 | At&T Corp. | Method and apparatus for performing packet loss or frame erasure concealment |
US7031926B2 (en) * | 2000-10-23 | 2006-04-18 | Nokia Corporation | Spectral parameter substitution for the frame error concealment in a speech decoder |
WO2003107591A1 (en) * | 2002-06-14 | 2003-12-24 | Nokia Corporation | Enhanced error concealment for spatial audio |
US20040083110A1 (en) * | 2002-10-23 | 2004-04-29 | Nokia Corporation | Packet loss recovery based on music signal classification and mixing |
US7356748B2 (en) * | 2003-12-19 | 2008-04-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Partial spectral loss concealment in transform codecs |
CN101485202B (zh) * | 2005-05-11 | 2013-10-30 | 高通股份有限公司 | 一种用于统一的错误隐匿框架的方法及设备 |
US8255207B2 (en) * | 2005-12-28 | 2012-08-28 | Voiceage Corporation | Method and device for efficient frame erasure concealment in speech codecs |
KR101292771B1 (ko) | 2006-11-24 | 2013-08-16 | 삼성전자주식회사 | 오디오 신호의 오류은폐방법 및 장치 |
CN100524462C (zh) * | 2007-09-15 | 2009-08-05 | 华为技术有限公司 | 对高带信号进行帧错误隐藏的方法及装置 |
-
2006
- 2006-12-15 KR KR1020060128945A patent/KR101292771B1/ko not_active IP Right Cessation
-
2007
- 2007-10-31 US US11/930,752 patent/US8219393B2/en active Active
- 2007-11-08 EP EP07833938A patent/EP2092755B1/en active Active
- 2007-11-08 WO PCT/KR2007/005631 patent/WO2008062959A1/en active Application Filing
- 2007-11-08 AT AT07833938T patent/ATE552585T1/de active
-
2012
- 2012-07-09 US US13/544,203 patent/US8676569B2/en active Active
- 2012-10-02 KR KR1020120109727A patent/KR101291197B1/ko active IP Right Grant
-
2013
- 2013-07-02 US US13/933,247 patent/US9373331B2/en active Active
-
2015
- 2015-01-05 US US14/589,617 patent/US9704492B2/en active Active
-
2017
- 2017-06-08 US US15/617,469 patent/US10283125B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030115043A1 (en) | 1991-04-06 | 2003-06-19 | Detlev Wiese | Error concealment in digital transmissions |
US5745169A (en) * | 1993-07-19 | 1998-04-28 | British Telecommunications Public Limited Company | Detecting errors in video images |
US6597961B1 (en) | 1999-04-27 | 2003-07-22 | Realnetworks, Inc. | System and method for concealing errors in an audio transmission |
US20050044471A1 (en) | 2001-11-15 | 2005-02-24 | Chia Pei Yen | Error concealment apparatus and method |
Also Published As
Publication number | Publication date |
---|---|
WO2008062959A1 (en) | 2008-05-29 |
US9704492B2 (en) | 2017-07-11 |
US10283125B2 (en) | 2019-05-07 |
US20130297322A1 (en) | 2013-11-07 |
US20120278089A1 (en) | 2012-11-01 |
EP2092755B1 (en) | 2012-04-04 |
US9373331B2 (en) | 2016-06-21 |
EP2092755A4 (en) | 2011-03-23 |
KR20080047230A (ko) | 2008-05-28 |
ATE552585T1 (de) | 2012-04-15 |
US20170278520A1 (en) | 2017-09-28 |
US20080126096A1 (en) | 2008-05-29 |
KR101292771B1 (ko) | 2013-08-16 |
KR20120126041A (ko) | 2012-11-20 |
US20150120309A1 (en) | 2015-04-30 |
EP2092755A1 (en) | 2009-08-26 |
US8676569B2 (en) | 2014-03-18 |
US8219393B2 (en) | 2012-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101291197B1 (ko) | 오디오 신호 복호화 방법 및 장치 | |
EP1356454B1 (en) | Wideband signal transmission system | |
US6597961B1 (en) | System and method for concealing errors in an audio transmission | |
KR101291193B1 (ko) | 프레임 오류은닉방법 | |
EP1791115B1 (en) | Classification-based frame loss concealment for audio signals | |
US7328161B2 (en) | Audio decoding method and apparatus which recover high frequency component with small computation | |
JP7472154B2 (ja) | 完全フレーム損失隠蔽および部分的フレーム損失隠蔽を含む、lc3隠蔽のためのデコーダおよび復号方法 | |
US7835916B2 (en) | Channel signal concealment in multi-channel audio systems | |
JP4359499B2 (ja) | オーディオ信号の編集 | |
EP1649452B1 (en) | Error concealment in multi-channel audio systems | |
KR20080075050A (ko) | 오류 프레임의 파라미터 갱신 방법 및 장치 | |
KR101261528B1 (ko) | 복호화된 오디오 신호의 오류 은폐 방법 및 장치 | |
RU2795500C2 (ru) | Декодер и способ декодирования для маскировки lc3, включающий в себя маскировку полных потерь кадров и маскировку частичных потерь кадров | |
RU2807683C2 (ru) | Декодер и способ декодирования с выбором режима скрытия ошибок, а также кодер и способ кодирования | |
KR101291198B1 (ko) | 프레임 오류 은닉장치 | |
Scheme | A Novel Spread Spectrum Digital Audio Watermarking Scheme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160629 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170629 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180628 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190627 Year of fee payment: 7 |