KR20120126041A - 오디오 신호의 오류은폐방법 및 장치, 이를 이용한 오디오 신호 복호화 방법 및 장치 - Google Patents

오디오 신호의 오류은폐방법 및 장치, 이를 이용한 오디오 신호 복호화 방법 및 장치 Download PDF

Info

Publication number
KR20120126041A
KR20120126041A KR1020120109727A KR20120109727A KR20120126041A KR 20120126041 A KR20120126041 A KR 20120126041A KR 1020120109727 A KR1020120109727 A KR 1020120109727A KR 20120109727 A KR20120109727 A KR 20120109727A KR 20120126041 A KR20120126041 A KR 20120126041A
Authority
KR
South Korea
Prior art keywords
error
frame
current frame
spectrum
previous
Prior art date
Application number
KR1020120109727A
Other languages
English (en)
Other versions
KR101291197B1 (ko
Inventor
오은미
주기현
성호상
손창용
김중회
이강은
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20120126041A publication Critical patent/KR20120126041A/ko
Application granted granted Critical
Publication of KR101291197B1 publication Critical patent/KR101291197B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods 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/895Methods 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/0212Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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

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

오디오 신호의 오류은폐방법 및 장치, 이를 이용한 오디오 신호 복호화 방법 및 장치{Method and Apparatus for error concealment of Audio signal, and Method and Apparatur for decoding Audio signal using it}
본 발명은 오디오 신호의 오류를 은폐하는 방법 및 장치에 관한 것으로서, 특히 주파수 영역에서 반복 방식에 의해 긴 구간에 걸쳐 발생한 오류를 은폐하므로 발생할 수 있는 변조 노이즈(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는 본 발명의 일 실시예에 따른 오디오 신호의 오류은폐장치를 포함하는 오디오 신호의 복호화장치의 구성을 도시한 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 오디오 신호의 오류은폐방법 및 장치, 이를 이용하는 오디오 신호의 복호화 방법 및 장치에 관하여 상세히 설명하겠다.
도 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 ... 후처리부

Claims (3)

  1. 현재 프레임에 오류가 발생되었는지 판단하는 단계;
    상기 현재 프레임에 오류가 발생되지 않은 경우, 상기 현재 프레임을 복호화하는 단계;
    상기 현재 프레임에 오류가 발생된 경우, 오디오신호의 특성에 근거하여, 중첩 방식, 반복 방식 혹은 보간 방식을 포함하는 방식들 중에서 적어도 하나의 방식을 상기 현재 프레임의 오류은폐방식으로 선택하는 단계; 및
    상기 선택된 오류은폐방식을 사용하여 상기 현재 프레임의 오류를 은폐하는 단계를 포함하는 오디오 신호의 복호화방법.
  2. 제1 항에 기재된 오디오 신호의 복호화방법을 실행할 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  3. 현재 프레임에 오류가 발생되었는지 판단하는 오류검출부;
    상기 현재 프레임에 오류가 발생되지 않은 경우, 상기 현재 프레임을 복호화하는 복호화부;
    상기 현재 프레임에 오류가 발생된 경우, 오디오신호의 특성에 근거하여, 중첩 방식, 반복 방식 혹은 보간 방식을 포함하는 방식들 중에서 적어도 하나의 방식을 상기 현재 프레임의 오류은폐방식으로 선택하는 선택부; 및
    상기 선택된 오류은폐방식을 사용하여 상기 현재 프레임의 오류를 은폐하는 오류은폐부를 포함하는 오디오 신호의 복호화장치.
KR1020120109727A 2006-11-24 2012-10-02 오디오 신호 복호화 방법 및 장치 KR101291197B1 (ko)

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 true KR20120126041A (ko) 2012-11-20
KR101291197B1 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)

* Cited by examiner, † Cited by third party
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 瑞典爱立信有限公司 用于频域分组丢失隐藏的方法及相关解码器

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2940005B2 (ja) * 1989-07-20 1999-08-25 日本電気株式会社 音声符号化装置
DE4111131C2 (de) 1991-04-06 2001-08-23 Inst Rundfunktechnik Gmbh Verfahren zum Übertragen digitalisierter Tonsignale
GB2263373B (en) * 1992-01-09 1995-05-24 Sony Broadcast & Communication Data error concealment
WO1995003674A1 (en) * 1993-07-19 1995-02-02 British Telecommunications Public Limited Company Detecting errors in video images
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
US6597961B1 (en) 1999-04-27 2003-07-22 Realnetworks, Inc. System and method for concealing errors in an audio transmission
US7031926B2 (en) * 2000-10-23 2006-04-18 Nokia Corporation Spectral parameter substitution for the frame error concealment in a speech decoder
US20050044471A1 (en) 2001-11-15 2005-02-24 Chia Pei Yen Error concealment apparatus and method
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 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置

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
US20150120309A1 (en) 2015-04-30
KR101291197B1 (ko) 2013-07-31
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
US7328161B2 (en) Audio decoding method and apparatus which recover high frequency component with small computation
KR101291193B1 (ko) 프레임 오류은닉방법
KR101001170B1 (ko) 오디오 코딩
US7835916B2 (en) Channel signal concealment in multi-channel audio systems
JP7472154B2 (ja) 完全フレーム損失隠蔽および部分的フレーム損失隠蔽を含む、lc3隠蔽のためのデコーダおよび復号方法
CN102479513A (zh) 子带已编码音频信号的错误隐藏
JP4359499B2 (ja) オーディオ信号の編集
EP1649452B1 (en) Error concealment in multi-channel audio systems
KR20080075050A (ko) 오류 프레임의 파라미터 갱신 방법 및 장치
KR101261528B1 (ko) 복호화된 오디오 신호의 오류 은폐 방법 및 장치
RU2807683C2 (ru) Декодер и способ декодирования с выбором режима скрытия ошибок, а также кодер и способ кодирования
RU2795500C2 (ru) Декодер и способ декодирования для маскировки lc3, включающий в себя маскировку полных потерь кадров и маскировку частичных потерь кадров
KR101291198B1 (ko) 프레임 오류 은닉장치
US10763885B2 (en) Method of error concealment, and associated device
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