KR102209837B1 - Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치 - Google Patents

Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치 Download PDF

Info

Publication number
KR102209837B1
KR102209837B1 KR1020190159104A KR20190159104A KR102209837B1 KR 102209837 B1 KR102209837 B1 KR 102209837B1 KR 1020190159104 A KR1020190159104 A KR 1020190159104A KR 20190159104 A KR20190159104 A KR 20190159104A KR 102209837 B1 KR102209837 B1 KR 102209837B1
Authority
KR
South Korea
Prior art keywords
frame
block
mdct
unit
window
Prior art date
Application number
KR1020190159104A
Other languages
English (en)
Other versions
KR20190137745A (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 KR20190137745A publication Critical patent/KR20190137745A/ko
Priority to KR1020210010462A priority Critical patent/KR102322867B1/ko
Application granted granted Critical
Publication of KR102209837B1 publication Critical patent/KR102209837B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/04Speech 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 predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/173Transcoding, i.e. converting between two coded representations avoiding cascaded coding-decoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/0204Speech 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 subband decomposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/04Speech 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 predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes

Abstract

MDCT 기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치가 개시된다. 인코딩 장치는 MDCT 기반의 코더와 이종의 코더 간 변환이 발생할 때, MDCT 기반의 코딩 방식에 따라 인코딩된 입력 신호를 복원하기 위해 부가 정보를 코딩할 수 있다. 인코딩 장치에 의하면, 불필요한 비트 스트림의 생성을 방지하는 한편, 최소한의 부가 정보를 인코딩할 수 있다.

Description

MDCT기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치 {APPARATUS FOR ENCODING AND DECODING FOR TRANSFORMATION BETWEEN CODER BASED ON MDCT AND HETERO-CODER}
본 발명은 MDCT 기반의 오디오 코더와 다른 음성/오디오 코더를 통합하여 오디오 신호를 인코딩 또는 디코딩할 때 서로 다른 종류의 코더 간 변환 시 발생하는 왜곡을 상쇄하기 위한 방법 및 장치에 관한 것이다.
음성과 오디오가 결합된 형태의 입력 신호에 대해서는 입력 신호의 특성에 따라 인코딩, 디코딩 방법을 달리 적용하면, 성능 및 음질이 극대화 될 수 있다. 예를 들어, 음성과 유사한 특성을 나타낸 신호는 CELP(Code Excited Linear Prediction) 구조의 인코더를 적용하는 것이 효율이 높고, 오디오와 같은 신호는 주파수 변환 기반의 인코더를 적용하는 것이 효율이 높다.
이러한 개념을 적용한 것이 통합 부호화기(USAC: United Sound and Audio Coding)이다. 통합 부호화기는 시간에 대해 연속적인 입력 신호를 수신하고, 특정 시간마다 입력 신호의 특성을 분석할 수 있다. 그런 후, 통합 부호화기는 입력 신호의 특성에 따라 스위칭을 통해 인코딩 장치의 종류를 다르게 적용하여 입력 신호를 인코딩할 수 있다.
이와 같은 통합 부호화기에서 신호의 스위칭시 신호의 왜곡이 발생할 수 있다. 통합 부호화기는 입력 신호를 블록 단위로 인코딩하기 때문에, 서로 다른 방식의 인코딩이 적용되는 경우 블록 간 왜곡(Blocking Artifact)이 발생할 수 있다. 이러한 문제를 해결하기 위해 통합 부호화기는 서로 다른 인코딩이 적용되는 블록들에 윈도우를 적용하여 오버랩 연산을 수행할 수 있다. 그러나, 이와 같은 방법은 오버랩으로 인해 추가 비트 스트림 정보가 필요하고, 스위칭이 빈번하게 발생하는 경우 블록 간의 왜곡을 제거하기 위한 추가적인 비트 스트림이 증가할 수 있다. 비트스트림이 증가하는 경우, 인코딩 효율이 떨어질 수 있다.
특히, 통합 부호화기는 오디오 특성 신호를 MDCT(Modified Discrete Cosine Transform) 변환 방식의 인코딩 장치를 이용하여 인코딩할 수 있다. MDCT 변환 방식은 시간 영역의 입력 신호를 주파수 영역의 입력 신호로 변환하고, 블록 간 오버랩 연산을 수행하는 방식을 의미한다. MDCT 변환 방식은 오버랩 연산을 수행하더라도 비트 레이트가 증가하지 않는 장점이 있으나, 시간 영역에 aliasing을 발생시키는 단점이 있다.
이 때, MDCT 변환 방식에 따라 입력 신호를 복원하기 위해서는 이웃 블록과 50% 오버랩 연산이 수행되어야 한다. 즉, 출력하고자 하는 현재 블록은 이전 블록의 출력 결과에 종속적으로 디코딩될 수 있다. 그러나, 통합 부호화기에서 이전 블록이 MDCT 변환을 통해 인코딩되지 않은 경우, MDCT 변환을 통해 인코딩된 현재 블록은 이전 블록의 MDCT 정보를 활용할 수 없어 오버랩 연산을 통해 디코딩될 수 없다. 따라서, 통합 부호화기는 스위칭 이후 MDCT 변환을 통해 현재 블록을 인코딩하는 경우, 이전 블록에 대한 MDCT 정보를 추가적으로 요구한다.
만약, 스위칭이 빈번하게 발생하는 경우, 디코딩을 위한 추가적인 MDCT 정보가 스위칭 횟수만큼 증가한다. 그러면, 추가적인 MDCT 정보로 인해 비트 레이트가 증가하여 코딩 효율이 현저하게 감소하는 문제점이 있다. 따라서, 스위칭할 때 추가적인 MDCT 정보를 최소화하면서 블록 간 왜곡을 제거할 수 있는 방법이 필요하다.
본 발명은 블록간 신호 왜곡을 제거하면서도 스위칭시 요구하는 MDCT 정보를 최소화하는 인코딩 방법 및 장치와 디코딩 방법 및 장치를 제공한다.
본 발명의 일실시예에 따른 인코딩 장치는 MDCT 기반의 코딩 방식과 다른 이종(hetero)의 코딩 방식에 따라 입력 신호의 음성 특성 신호를 인코딩하는 제1 인코딩부 및 상기 MDCT 기반의 코딩 방식에 따라 상기 입력 신호의 오디오 특성 신호를 인코딩하는 제2 인코딩부를 포함하고, 상기 제2 인코딩부는 상기 입력 신호의 현재 프레임에서 이전 프레임의 신호가 음성 특성 신호이고, 현재 오디오 특성 신호 간에 스위칭이 발생할 경우, MDCT 변환시 발생하는 폴딩 포인트에 대하여, 변환지점에서의 폴딩 포인트를 넘지 않는 분석 윈도우를 적용하여 인코딩할 수 있다. 여기서 폴딩 포인트란 MDCT 변환/역변환을 수행 시, 발생하는 aliasing 신호가 접히는 부분을 의미한다. 이 때, N-point MDCT 수행 시, 폴딩 포인트는 N/4, 3*N/4되는 지점이다. 이는 MDCT 변환에서 발생하는 널리 알려진 특성 중에 하나이므로 그 수학적 근거에 대한 설명은 본 발명에서 생략하기로 하며, 명세서 설명을 위한 MDCT 변환 및 폴딩 포인트의 간단한 개념에 대해서는 도 5에서 설명하기로 한다.
또한, 본 발명의 간결한 설명 및 분명한 이해를 돕기 위해, 상기 폴딩 포인트에 대해서, 즉, 이전 프레임 신호가 음성 특성 신호이고, 현재 프레임의 신호가 오디오 특특 신호일 때, 스위칭이 발생되어 두 이종의 특성 신호 연결 시 이용되는 상기 폴딩 포인트의 명칭을, '스위칭이 발생하는 폴딩 포인트'라고 명하기로 하고 이후 명세서 설명에 활용하기로 하겠다. 뿐만 아니라, 그 역인 경우에도, 즉, 이후 프레임 신호가 음성특성신호이고, 현재 프레임의 신호가 오디오 특성 신호일 때, 이종의 특성 신호 연결 시 이용되는 폴딩 포인트에 대해서도 '스위칭이 발생하는 폴딩 포인트라'라고 명하기로 한다.
본 발명의 일실시예에 따른 인코딩 장치는 입력 신호의 현재 프레임에 대해 분석 윈도우를 적용하는 윈도우 처리부, 상기 분석 윈도우가 적용된 현재 프레임을 MDCT 변환하는 MDCT 변환부 및 상기 MDCT 변환된 현재 프레임을 인코딩하여 상기 입력 신호의 비트 스트림을 생성하는 비트 스트림 생성부를 포함하고, 상기 윈도우 처리부는 상기 입력 신호의 현재 프레임에서 이전 프레임의 신호가 음성 특성 신호이며, 현재 프레임인 오디오 특성 신호 간에 '스위칭이 발생하는 폴딩 포인트'가 존재하는 경우, 상기 폴딩 포인트를 넘지 않는 분석 윈도우를 적용할 수 있다.
본 발명의 일실시예에 따른 디코딩 장치는 MDCT 기반의 코딩 방식과 다른 이종(hetero)의 코딩 방식에 따라 인코딩된 입력 신호의 음성 특성 신호를 디코딩하는 제1 디코딩부, 상기 MDCT 기반의 코딩 방식에 따라 인코딩된 입력 신호의 오디오 특성 신호를 디코딩하는 제2 디코딩부 및 상기 제1 디코딩부의 결과와 상기 제2 디코딩부의 결과에 대해 블록 보상을 수행하여 입력 신호를 복원하는 블록 보상부를 포함하고, 상기 블록 보상부는 상기 입력 신호의 현재 프레임에서 음성 특성 신호와 오디오 특성 신호 간에 '스위칭이 발생하는 폴딩 포인트'가 존재하는 경우, 상기 폴딩 포인트를 넘지 않는 합성 윈도우를 적용할 수 있다.
본 발명의 일실시예에 따른 디코딩 장치는 입력 신호의 현재 프레임에서 음성 특성 신호와 오디오 특성 신호 간에 '스위칭이 발생하는 폴딩 포인트'가 존재하는 경우, 상기 현재 프레임과 상기 음성 특성 신호로부터 도출된 부가 정보에 각각 합성 윈도우를 적용하여 상기 입력 신호를 복원하는 블록 보상부를 포함할 수 있다.
본 발명의 일실시예에 따르면, 입력 신호의 특성에 따라 이종 코더 간 스위칭이 발생할 때 요구되는 추가적인 MDCT 정보를 최소화하면서도 블록간 신호 왜곡을 제거할 수 있다.
본 발명의 일실시예에 따르면, 이종의 코더간 스위칭시 필요한 추가적인 MDCT 정보를 최소화함으로써 비트 레이트의 증가를 방지하여 코딩 효율을 향상시킬 수 있다.
도 1은 본 발명의 일실시예에 따라 인코딩 장치와 디코딩 장치를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따라 인코딩 장치의 세부 구성을 도시한 블록 다이어그램이다.
도 3은 본 발명의 일실시예에 따라 제2 인코딩부를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 4는 본 발명의 일실시예에 따라 윈도우 처리를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 5는 본 발명의 일실시예에 따라 MDCT 변환 과정을 나타낸 도면이다.
도 6은 본 발명의 일실시예에 따라 이종의 인코딩을 수행하는 과정(C1, C2)을 나타낸 도면이다.
도 7은 본 발명의 일실시예에 따라 C1인 경우 비트 스트림을 생성하는 과정을 나타낸 도면이다.
도 8은 본 발명의 일실시예에 따라 C1인 경우 윈도우 처리를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 9는 본 발명의 일실시예에 따라 C2인 경우 비트 스트림을 생성하는 과정을 나타낸 도면이다.
도 10은 본 발명의 일실시예에 따라 C2인 경우 윈도우 처리를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 11은 본 발명의 일실시예에 따라 입력 신호를 인코딩할 때 적용되는 부가 정보를 나타낸 도면이다.
도 12는 본 발명의 일실시예에 따라 디코딩 장치의 세부 구성을 도시한 블록 다이어그램이다.
도 13은 본 발명의 일실시예에 따라 제2 디코딩부를 통해 비트 스트림을 디코딩하는 과정을 나타낸 도면이다.
도 14는 본 발명의 일실시예에 따라 오버랩 연산을 통해 출력 신호를 도출하는 과정을 나타낸 도면이다.
도 15는 본 발명의 일실시예에 따라 C1인 경우 출력 신호를 생성하는 과정을 나타낸 도면이다.
도 16은 본 발명의 일실시예에 따라 C1인 경우 블록 보상을 수행하는 과정을 나타낸 도면이다.
도 17은 본 발명의 일실시예에 따라 C2인 경우 출력 신호를 생성하는 과정을 나타낸 도면이다.
도 18은 본 발명의 일실시예에 따라 C2인 경우 블록 보상을 수행하는 과정을 나타낸 도면이다.
이하, 첨부된 도면들에 기재된 내용들을 참조하여 본 발명에 따른 실시예를 상세하게 설명한다. 다만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일실시예에 따라 인코딩 장치와 디코딩 장치를 도시한 도면이다.
인코딩 장치(101)는 블록 단위의 입력 신호를 인코딩하여 비트 스트림을 생성할 수 있다. 이 때, 인코딩 장치(101)는 음성과 유사한 특성을 나타내는 음성 특성 신호와 오디오와 유사한 특성을 나타내는 오디오 특성 신호를 인코딩할 수 있다. 인코딩 결과, 입력 신호에 대한 비트 스트림이 생성되어 디코딩 장치(102)로 전달될 수 있다. 그러면, 디코딩 장치(101)는 비트 스트림을 디코딩하여 출력 신호를 생성함으로써 인코딩된 입력 신호를 복원할 수 있다.
구체적으로, 인코딩 장치(101)는 시간적으로 연속적인 입력 신호의 상태를 분석하고, 입력 신호의 상태 분석 결과에 따라 입력 신호의 특성에 대응하는 인코딩 방식을 적용할 수 있도록 스위칭할 수 있다. 따라서, 인코딩 장치(101)는 이종의 코딩 방식이 적용되는 블록들을 인코딩할 수 있다. 일례로, 인코딩 장치(101)는 음성 특성 신호를 CELP 방식에 따라 인코딩할 수 있고, 오디오 특성 신호를 MDCT 방식에 따라 인코딩할 수 있다. 반대로, 디코딩 장치(102)는 CELP 방식에 따라 인코딩된 입력 신호를 CELP 방식에 따라 디코딩하여 입력 신호를 복원하고, MDCT 방식에 따라 인코딩된 입력 신호를 MDCT 방식에 따라 디코딩하여 입력 신호를 복원할 수 있다.
이 때, 입력 신호가 음성 특성 신호에서 오디오 특성 신호로 스위칭되는 경우, 인코딩 장치(101)는 스위칭을 통해 CELP 방식에서 MDCT 방식으로 변환하여 인코딩할 수 있다. 인코딩은 블록 단위로 이루어지기 때문에, 블록 간 왜곡이 발생할 수 있다. 이 경우, 디코딩 장치(102)는 블록 간 오버랩 연산을 통해 블록 간 왜곡을 제거할 수 있다.
그리고, 입력 신호의 현재 블록이 MDCT 방식에 따라 인코딩된 경우, 이를 복원하기 위해서는 이전 블록의 MDCT 정보가 요구된다. 그러나, 이전 블록이 CELP 방식에 따라 인코딩된 경우, 이전 블록의 MDCT 정보가 존재하지 않기 때문에 현재 블록을 MDCT 변환 방식에 따라 복원할 수 없다. 따라서, 이전 블록에 대해 추가적인 MDCT 변환 정보가 필요하며, 본 발명의 일실시예에 따른 인코딩 장치(101)는 추가적인 MDCT 변환 정보를 최소화하여 비트 레이트의 증가를 방지할 수 있다.
도 2는 본 발명의 일실시예에 따라 인코딩 장치의 세부 구성을 도시한 블록 다이어그램이다.
도 2를 참고하면, 인코딩 장치(101)는 블록 지연부(201), 상태 분석부(202), 신호 절단부(203), 제1 인코딩부(204) 및 제2 인코딩부(205)를 포함할 수 있다.
블록 지연부(201)는 입력 신호를 블록 단위로 지연시킬 수 있다. 입력 신호는 인코딩을 위해 블록 단위로 처리될 수 있다. 블록 지연부(201)는 입력된 현재 블록을 과거 지연(-)시키거나 또는 미래 지연(+) 시킬 수 있다.
상태 분석부(202)는 입력 신호의 특성을 결정할 수 있다. 일례로, 상태 분석부(202)는 입력 신호가 음성 특성 신호인 지 또는 오디오 특성 신호인지 여부를 결정할 수 있다. 이 때, 상태 분석부(202)의 출력은 제어 변수를 출력할 수 있다. 제어 변수는 입력 신호의 현재 블록을 어떤 인코딩 방식에 따라 인코딩할 것인지를 결정하도록 한다.
예를 들어, 상태 분석부(202)는 입력 신호의 특성을 분석하여 (1) 하모닉 성분이 명확하고 안정되게 나타내는 Steady-Harmonic(SH) State, (2) 하모닉 성분의 주기성이 상대적으로 길고, 낮은 주파수 대역에서 강한 steady 특성을 나타내는 Low Steady Harmonic(LSH) State, (3) 백색성 잡음 상태인 Steady-Noise(SN) State에 대응하는 신호 구간을 음성 특성 신호로 결정할 수 있다. 그리고, 상태 분석부(202)는 (4)입력 신호의 특성을 분석하여 여러 톤 성분들이 혼합되어 복잡한 하모닉 구조를 나타내는 Complex-Harmonic(CH) State, (5) 불안정한 잡음 성분들이 포함된 Complex-Noisy(CN) State에 대응하는 신호 구간을 오디오 특성 신호로 결정할 수 있다. 여기서, 신호 구간은 입력 신호의 블록 단위에 대응할 수 있다.
신호 절단부(203)는 입력 신호를 블록 단위로 절단하여 복수의 sub-set 신호로 만들 수 있다.
제1 인코딩부(204)는 블록 단위의 입력 신호 중 음성 특성 신호를 인코딩할 수 있다. 일례로, 제1 인코딩부(204)는 음성 특성 신호를 시간 영역에서 LPC(Linear Predictive Coding)에 따라 인코딩할 수 있다. 이 때, 제1 인코딩부(204)는 음성 특성 신호를 CELP 기반의 코딩 방식에 따라 인코딩할 수 있다. 도 3에서 제1 인코딩부(204)는 하나만 도시되었으나, 하나 이상으로 구성될 수 있다.
제2 인코딩부(205)는 블록 단위의 입력 신호 중 오디오 특성 신호를 인코딩할 수 있다. 일례로, 제2 인코딩부(205)는 오디오 특성 신호를 시간 영역에서 주파수 영역으로 변환하여 인코딩할 수 있다. 이 때, 제2 인코딩부(205)는 오디오 특성 신호를 MDCT 기반의 코딩 방식에 따라 인코딩할 수 있다. 제1 인코딩부(204)와 제2 인코딩부(205)의 인코딩 결과는 비트 스트림에 생성되고, 각각의 인코딩부에서 생성된 비트 스트림은 비트 스트림 MUX를 통해 하나의 비트 스트림으로 조절될 수 있다.
결국, 인코딩 장치(101)는 상태 분석부(202)의 제어 변수에 따라 스위칭하여 입력 신호를 제1 인코딩부(204) 또는 제2 인코딩부(205) 중 어느 하나를 통해 인코딩할 수 있다. 그리고, 제1 인코딩부(204)는 MDCT 기반의 코딩 방식과 다른 이종(hetero)의 코딩 방식에 따라 입력 신호의 음성 특성 신호를 인코딩할 수 있다. 또한, 제2 인코딩부(205)는 MDCT 기반의 코딩 방식에 따라 입력 신호의 오디오 특성 신호를 인코딩할 수 있다.
도 3은 본 발명의 일실시예에 따라 제2 인코딩부를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 3을 참고하면, 제2 인코딩부(205)는 윈도우 처리부(301), MDCT 변환부(302) 및 비트스트림 생성부(303)를 포함할 수 있다.
도 3에서, X(b)는 입력 신호의 기본 블록 단위를 나타낸다. 입력 신호에 대해서는 도 4, 도 6에서 구체적으로 설명된다. 입력 신호는 윈도우 처리부(301)에 입력될 수 있다. 그리고, 입력 신호는 블록 지연부(201)를 거쳐 윈도우 처리부(301)에 입력될 수 있다.
윈도우 처리부(301)는 입력 신호의 현재 프레임에 대해 분석 윈도우(analysis window)를 적용할 수 있다. 구체적으로, 윈도우 처리부(301)는 현재 블록(X(b))와 블록 지연부(201)를 통해 현재 블록이 과거 지연된 과거 블록(X(b-2))에 대해 분석 윈도우를 적용할 수 있다.
일례로, 윈도우 처리부(301)는 현재 프레임에서 음성 특성 신호와 오디오 특성 신호 간에 ‘스위칭이 발생하는 폴딩 포인트’가 존재하는 경우, 폴딩 포인트를 넘지 않는 분석 윈도우를 현재 프레임에 적용할 수 있다. 이 때, 윈도우 처리부(301)는 폴딩 포인트를 중심으로 음성 특성 신호를 나타내는 제1 서브 블록에 대응하는 윈도우, 제2 서브 블록 중 부가 정보 영역에 대응하는 윈도우 및 오디오 특성 신호를 나타내는 제2 서브 블록 중 나머지 영역에 대응하는 윈도우로 구성되는 분석 윈도우를 적용할 수 있다. 이 때, 제1 서브 블록에 대응하는 윈도우는 0이고, 상기 제2 서브 블록 중 나머지 영역에 대응하는 윈도우는 1의 값을 가질 수 있다.
블록 지연부(201)가 수행하는 블록 지연의 정도는 입력 신호를 구성하는 블록 단위에 따라 달라질 수 있다. 입력 신호가 윈도우 처리부(301)를 거치면, 입력 신호가 분석 윈도우가 적용되어 {X(b-2), X(b)} Wanalysis가 도출될 수 있다. 그러면, MDCT 변환부(302)는 분석 윈도우가 적용된 현재 프레임을 MDCT 변환할 수 있다. 그리고, 비트스트림 생성부(303)는 MDCT 변환된 입력 신호의 현재 프레임을 인코딩하여 입력 신호의 비트스트림을 생성할 수 있다.
도 4는 본 발명의 일실시예에 따라 윈도우 처리를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 4를 참고하면, 윈도우 처리부(301)는 입력 신호에 대해 분석 윈도우를 적용할 수 있다. 이 때, 분석 윈도우는 rectangle 형태이거나 또는 sine형태일 수 있다. 분석 윈도우의 형태는 입력 신호에 따라 변경될 수 있다.
현재 블록(X(b))가 입력되면, 윈도우 처리부(301)는 블록 지연부(102)를 통해 과거 지연된 과거 블록(X(b-2))과 현재 블록(X(b))에 분석 윈도우(Wanalysis)를 적용할 수 있다. 일례로, 입력 신호는 하기 수학식 1에 따른 블록 X(b)를 기본 단위로 설정될 수 있다. 이 때, 입력 신호는 2개의 블록이 하나의 프레임으로 설정되어 인코딩될 수 있다.
Figure 112019124918728-pat00001
이 때,
Figure 112019124918728-pat00002
는 하나의 블록을 구성하는 서브 블록을 의미할 수 있다.
Figure 112019124918728-pat00003
는 하기 수학식 2에 따라 정의될 수 있다.
Figure 112019124918728-pat00004
이 때, N은 입력 신호를 구성하는 블록의 사이즈를 의미할 수 있다. 즉, 입력 신호는 복수 개의 블록으로 구성될 수 있고, 각각의 블록은 2개의 서브 블록으로 구성될 수 있다. 하나의 블록에 포함되는 서브 블록의 개수는 시스템의 구성 또는 입력 신호에 따라 변경될 수 있다.
일례로, 분석 윈도우는 하기 수학식 3에 따라 정의될 수 있다. 그리고, 수학식 2와 수학식 3에 따라, 입력 신호의 현재 블록에 분석 윈도우가 적용된 결과는 하기 수학식 4에 따라 표현될 수 있다.
Figure 112019124918728-pat00005
Figure 112019124918728-pat00006
Figure 112019124918728-pat00007
는 분석 윈도우를 의미하며, symmetric한 특성을 나타낸다. 결국, 도 4에서 볼 수 있듯이, 분석 윈도우는 2개의 블록에 적용될 수 있다. 다시 말해, 분석 윈도우는 4개의 서브 블록에 적용될 수 있다. 그리고, 윈도우 처리부(301)는 입력 신호의 N-Point에 대해 Point by Point 곱셈 연산을 수행한다. N-Point는 MDCT 변환사이즈이다. 즉, 윈도우 처리부(301)는 서브 블록 및 분석 윈도우 중 서브 블록에 대응하는 영역 간에 곱셈 연산을 수행할 수 있다.
MDCT 변환부(302)는 분석 윈도우가 처리된 입력 신호에 대해 MDCT 변환을 수행할 수 있다.
도 5는 본 발명의 일실시예에 따라 MDCT 변환 과정을 나타낸 도면이다.
도 5를 참고하면, 볼록 단위로 구성된 입력 신호와 입력 신호에 적용되는 분석 윈도우가 도시된다. 앞서 설명하였듯이, 본 발명의 일실시예에 따르면, 입력 신호는 복수 개의 블록으로 구성된 프레임을 포함하며, 하나의 블록은 2개의 서브 블록으로 구성될 수 있다.
인코딩 장치(101)는 현재 프레임을 구성하는 서브 블록
Figure 112019124918728-pat00008
로 구분된 입력 신호에
Figure 112019124918728-pat00009
로 구분된 분석 윈도우 Wanalysis를 적용할 수 있다. 그리고, 분석 윈도우가 적용된 입력 신호가 서브 블록을 구분하는 폴딩 포인트를 기초로 MDCT/양자화/IMDCT(Inverse MDCT)가 적용되면, Original 부분과 Aliasing 영역이 발생한다.
디코딩 장치(102)는 인코딩된 입력 신호에 합성 윈도우를 적용하고 오버랩 Add 연산을 통해 MDCT 변환 과정에서 발생하는 Aliasing을 제거하면서 출력 신호를 도출할 수 있다.
도 6은 본 발명의 일실시예에 따라 이종의 인코딩을 수행하는 과정(C1, C2)을 나타낸 도면이다.
도 6에서 C1(Change Case Ⅰ)과 C2(Change Case Ⅱ)는 이종(hetero)의 인코딩 방식이 적용되는 입력 신호의 경계를 나타낸다. C1을 중심으로 왼쪽에 존재하는 서브 블록(s(b-5), s(b-4), s(b-3), s(b-2))은 음성 특성 신호를 의미하고, 오른쪽에 존재하는 서브 블록(s(b-1), s(b), s(b+1), s(b+2))은 오디오 특성 신호를 의미한다. 그리고, C2를 중심으로 왼쪽에 존재하는 서브 블록(s(b+m-1), s(b+m))은 오디오 특성 신호를 의미하고, 오른쪽에 존재하는 서브 블록(s(b+m+1), s(b+m+2))은 음성 특성 신호를 의미한다.
도 2에서, 음성 특성 신호는 제1 인코딩부(204)를 통해 인코딩되고, 오디오 특성 신호는 제2 인코딩부(205)를 통해 인코딩되므로, C1과 C2에서 스위칭이 발생할 수 있다. 이 때, 서브 블록 간의 폴딩 포인트에서 스위칭이 발생할 수 있다. 그리고, C1과 C2를 중심으로 입력 신호의 특성이 달라지고, 이에 따라 인코딩 방식이 다르게 적용되기 때문에 블록 간 왜곡이 발생할 수 있다.
이 때, MDCT 기반의 코딩 방식에 따라 인코딩된 경우, 디코딩 장치(102)는 과거 블록과 현재 블록을 모두 사용하는 오버랩 연산을 통해 블록 간 왜곡을 제거할 수 있다. 다만, C1과 C2와 같이 오디오 특성 신호와 음성 특성 신호 간에 스위칭이 발생하는 경우, MDCT 기반의 오버랩 연산이 불가능하기 때문에 MDCT 기반의 디코딩을 위한 부가 정보가 필요하다. 일례로, C1의 경우, 부가 정보 SoL(b-1)가 요구되며, C2의 경우, 부가 정보 ShL(b+m)이 요구된다. 본 발명의 일실시예에 따르면, 부가 정보 SoL(b-1)와 부가 정보 ShL(b+m)를 최소화함으로써, 비트 레이트의 증가를 방지하여 코딩 효율을 향상시킬 수 있다.
본 발명의 일실시예에 따른 인코딩 장치(101)는 음성 특성 신호와 오디오 특성 신호 간에 스위칭이 발생할 때, 오디오 특성 신호를 복원하기 위한 부가 정보를 인코딩할 수 있다. 이 때, 부가 정보는 음성 특성 신호를 인코딩하는 제1 인코딩부(204)를 통해 인코딩될 수 있다. 구체적으로, C1의 경우, 음성 특성 신호인 s(b-2)에서 SoL(b-1)에 대응하는 영역이 부가 정보로 인코딩되고, C2의 경우, 음성 특성 신호인 s(b+m+1)에서 ShL(b+m)에 대응하는 영역이 부가 정보로 인코딩 될 수 있다.
C1 및 C2가 발생했을 때, 인코딩하는 방법은 도 7 내지 도 11에서 구체적으로설명되고, 디코딩하는 방법은 도 15 내지 도 18에서 구체적으로 설명된다.
도 7은 본 발명의 일실시예에 따라 C1인 경우 비트 스트림을 생성하는 과정을 나타낸 도면이다.
상태 분석부(202)는 입력 신호의 블록 X(b)가 입력되면, 해당 블록의 상태를 분석할 수 있다. 이 때, 블록 X(b)는 오디오 특성 신호이고, 블록 X(b-2)는 음성 특성 신호인 경우, 상태 분석부(202)는 블록 X(b)와 블록 X(b-2) 사이에 존재하는 폴딩 포인트에 C1이 발생했음을 인지할 수 있다. 그러면, C1이 발생했다는 제어 정보는 블록 지연부(201), 윈도우 처리부(301) 및 제1 인코딩부(204)에 전달될 수 있다.
입력 신호의 블록 X(b)가 입력되면, 블록 X(b)와 블록 지연부(201)를 통해 미래 지연(+2)된 블록 X(b+2)이 윈도우 처리부(301)에 입력된다. 그러면, 도 6의 C1에서 서브 블록 s(b-1), s(b)로 구성된 블록 X(b)와 서브 블록 s(b+1), s(b+2)로 구성된 블록 X(b+2)에 대해 분석 윈도우가 적용된다. 분석 윈도우가 적용된 블록 X(b), X(b+2)는 MDCT 변환부(302)를 통해 MDCT 변환되고, 비트 스트림 생성부(303)를 통해 MDCT 변환된 블록이 인코딩되어 입력 신호의 블록 X(b)에 대한 비트 스트림이 생성된다.
또한, 블록 X(b)에 대해 오버랩 연산을 위한 부가 정보 SoL(b-1)를 생성하기 위해, 블록 지연부(201)는 블록 X(b)를 과거 지연(-1)하여 블록 X(b-1)를 도출할 수 있다. 블록 X(b-1)는 서브 블록 s(b-2)와 S(b-1)로 구성된다. 그리고, 신호 절단부(203)는 신호 절단을 수행하여 블록 X(b-1) 중 부가 정보에 대응하는 SoL(b-1)를 추출할 수 있다.
일례로, SoL(b-1)는 하기 수학식 5에 따라 결정될 수 있다.
Figure 112019124918728-pat00010
이 때, N은 MDCT 변환을 위한 블록의 사이즈를 의미한다.
그러면, 제1 인코딩부(204)는 오디오 특성 신호와 음성 특성 신호가 스위칭되는 폴딩 포인트를 중심으로 블록 간 오버랩을 위해 음성 특성 신호 중 부가 정보 영역에 대응하는 부분을 인코딩할 수 있다. 일례로, 제1 인코딩부(204)는 음성 특성 신호인 서브 블록 s(b-2)에서 부가 정보 영역 oL에 대응하는 SoL(b-1)를 인코딩할 수 있다. 즉, 제1 인코딩부(204)는 신호 절단부(203)를 통해 추출된 부가 정보 SoL(b-1)를 인코딩하여 SoL(b-1)에 대한 비트 스트림을 생성한다. 즉, C1이 발생하면, 제1 인코딩부(204)는 부가 정보인 SoL(b-1)에 대한 비트 스트림만 생성할 수 있다. C1이 발생하는 경우, SoL(b-1)는 블록 간 왜곡을 제거하는 부가 정보로 활용된다.
다른 일례로, 블록 X(b-1)이 인코딩 될 때 SoL(b-1)이 획득될 수 있는 경우, 제1 인코딩부(204)는 SoL(b-1)를 인코딩하지 않을 수 있다.
도 8은 본 발명의 일실시예에 따라 C1인 경우 윈도우 처리를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 8에서, 음성 특성 신호에서 오디오 특성 신호로 ‘스위칭되는 폴딩 포인트’인 C1은 음성 특성 신호인 zero 서브 블록과 오디오 특성 신호인 서브 블록 S(b-1) 사이에 위치한다. 도 8에서 볼 수 있듯이, 블록 X(b)이 입력되면, 윈도우 처리부(301)는 입력된 현재 프레임에 분석 윈도우를 적용할 수 있다. 도 8에서 볼 수 있듯이, 입력 신호의 현재 프레임에서 음성 특성 신호(Zero)와 오디오 특성 신호(s(b-1)) 간에 ‘스위칭이 발생하는 폴딩 포인트’가 존재하는 경우, 윈도우 처리부(301)는 폴딩 포인트를 넘지 않는 분석 윈도우를 현재 프레임에 적용하여 인코딩 할 수 있다.
일례로, 윈도우 처리부(301)는 폴딩 포인트를 중심으로 음성 특성 신호를 나타내는 제1 서브 블록에 대응하는 윈도우, 오디오 특성 신호를 나타내는 제2 서브 블록 중 부가 정보 영역에 대응하는 윈도우 및 제2 서브 블록 중 나머지 영역에 대응하는 윈도우로 구성되는 분석 윈도우를 적용할 수 있다. 이 때, 제1 서브 블록에 대응하는 윈도우는 0이고, 제2 서브 블록 중 나머지 영역에 대응하는 윈도우는 1일 수 있다. 도 8에서, 폴딩 포인트는 N/4 크기의 서브 블록으로 구성된 현재 프레임에서 N/4 지점에 위치한다.
즉, 도 8에서 볼 수 있듯이, 분석 윈도우는 음성 특성 신호인 Zero 서브 블록에 대응하는 윈도우
Figure 112019124918728-pat00011
, 오디오 특성 신호를 나타내는 S(b-1) 서브 블록 중 부가 정보 영역 oL에 대응하는 윈도우 및 나머지 영역 N/4-oL 영역에 대응하는 윈도우로 구성된 W2로 구성될 수 있다.
이 때, 윈도우 처리부(301)는 음성 특성 신호인 zero 서브 블록에 대해 분석 윈도우
Figure 112019124918728-pat00012
를 zero값으로 대체할 수 있다. 또한, 윈도우 처리부(301)는 오디오 특성 신호를 나타내는 서브 블록 s(b-1)에 대응하는 분석 윈도우
Figure 112019124918728-pat00013
를 하기 수학식 6에 따라 결정할 수 있다.
Figure 112019124918728-pat00014
Figure 112019124918728-pat00015
Figure 112019124918728-pat00016
즉, 서브 블록 s(b-1)에 대해 적용되는 분석 윈도우
Figure 112019124918728-pat00017
는 부가 정보 영역인 oL 영역과 부가 정보 영역(oL)과 나머지 영역(N/4-oL)으로 구성될 수 있다. 이 때, 나머지 영역은 1로 구성될 수 있다.
이 때,
Figure 112019124918728-pat00018
Figure 112019124918728-pat00019
의 크기의 sine-window의 전반부 절반을 의미한다. oL은 C1에서 블록 간의 오버랩 연산을 위한 사이즈를 의미하며,
Figure 112019124918728-pat00020
Figure 112019124918728-pat00021
의 사이즈를 결정한다. 그리고, 블록 샘플(800)에서, 블록 샘플
Figure 112019124918728-pat00022
는 이후 설명을 위해 정의된 것이다.
일례로, 제1 인코딩부(204)는 폴딩 포인트를 중심으로 블록 간 오버랩을 위해 음성 특성 신호를 나타내는 서브 블록에서 부가 정보 영역에 대응하는 부분을 인코딩할 수 있다. 도 8에서, 제1 인코딩부(204)는 zero 블록에 해당하는 s(b-2)에서 부가 정보 영역인 oL에 대응하는 부분을 부가 정보로 인코딩할 수 있다. 앞서 설명하였듯이, 제1 인코딩부(204)는 부가 정보 영역에 대응하는 부분을 MDCT 기반의 코딩 방식과 이종의 코딩 방식에 따라 인코딩할 수 있다.
도 8에서 볼 수 있듯이, 윈도우 처리부(301)는 sine 형태의 분석 윈도우를 입력신호에 적용할 수 있다. 다만, C1이 발생하면, 윈도우 처리부(301)는 폴딩 포인트인 C1 이전에 위치한 서브 블록 zero에 대응하는 분석 윈도우를 0으로 설정할 수 있다. 그리고, 윈도우 처리부(301)는 C1 이후에 위치한 서브 블록 s(b-1)에 대응하는 분석 윈도우를 부가 정보 영역 oL에 대응하는 분석 윈도우와 나머지 영역 N/4-oL에 대응하는 분석 윈도우로 구성되도록 설정할 수 있다. 나머지 영역에 대응하는 분석 윈도우는 1 이고, 부가 정보 영역에 대응하는 분석 윈도우는 sine 신호의 전반부일 수 있다. MDCT 변환부(302)는 도 8에 도시된 분석 윈도우가 적용된 입력 신호
Figure 112019124918728-pat00023
에 대해 MDCT 변환을 수행할 수 있다.
도 9는 본 발명의 일실시예에 따라 C2인 경우 비트 스트림을 생성하는 과정을 나타낸 도면이다.
상태 분석부(202)는 입력 신호의 블록 X(b)가 입력되면, 해당 블록의 상태를 분석할 수 있다. 도 6과 같이 서브 블록 s(b+m)는 오디오 특성 신호이고, 이후에 존재하는 서브 블록 s(b+m+1)이 음성 특성 신호인 경우, 상태 분석부(202)는 C2가 발생했음을 인지할 수 있다. 그러면, C2가 발생했다는 제어 정보는 블록 지연부(201), 윈도우 처리부(301) 및 제1 인코딩부(204)에 전달될 수 있다.
입력 신호의 블록 X(b+m-1)가 입력되면, 블록 X(b+m-1)와 블록 지연부(201)를 통해 미래 지연(+2)된 블록 X(b+m+1)가 윈도우 처리부(301)에 입력된다. 그러면, 도 6의 C2에서 서브 블록 s(b+m), s(b+m+1)로 구성된 블록 X(b+m+1)와 서브 블록 s(b+m-2), s(b+m-1)로 구성된 블록 X(b+m-1)에 대해 분석 윈도우가 적용된다.
일례로, 윈도우 처리부(301)는 입력 신호의 현재 프레임에서 음성 특성 신호와 오디오 특성 신호 간에 폴딩 포인트 C2가 존재하는 경우, 폴딩 포인트를 넘지 않는 분석 윈도우를 오디오 특성 신호에 적용할 수 있다.
분석 윈도우가 적용된 블록 X(b+m-1), X(b+m-1)는 MDCT 변환부(302)를 통해 MDCT 변환되고, 비트 스트림 생성부(303)를 통해 MDCT 변환된 블록이 인코딩되어 입력 신호의 블록 X(b+m-1)에 대한 비트 스트림이 생성된다.
또한, 블록 X(b+m-1)에 오버랩 연산을 위한 부가 정보 ShL(b+m)를 생성하기 위해, 블록 지연부(201)는 블록 X(b+m-1)를 미래 지연(+1)하여 블록 X(b+m)을 도출할 수 있다. 블록 X(b+m)은 서브 블록 s(b+m-1)와 S(b+m)로 구성된다. 그리고, 신호 절단부(203)는 블록 X(b+m)에 대해 신호 절단을 수행하여 ShL(b+m)만 도출할 수 있다.
일례로, ShL(b+m)는 하기 수학식 7에 따라 결정될 수 있다.
Figure 112019124918728-pat00024
이 때, N은 MDCT 변환을 위한 블록의 사이즈를 의미한다.
그러면, 제1 인코딩부(204)는 부가 정보 ShL(b+m)를 인코딩하여 ShL(b+m)에 대한 비트 스트림을 생성한다. 즉, C2가 발생하면, 제1 인코딩부(204)는 부가 정보인 ShL(b+m)에 대한 비트 스트림만 생성할 수 있다. C2가 발생하는 경우, ShL(b+m)은 블록 간 왜곡을 제거하는 부가 정보로 활용된다.
도 10은 본 발명의 일실시예에 따라 C2인 경우 윈도우 처리를 통해 입력 신호를 인코딩하는 과정을 나타낸 도면이다.
도 10에서, 오디오 특성 신호에서 음성 특성 신호로 스위칭되는 폴딩 포인트인 C2는 서브 블록 s(b+m)과 s(b+m+1) 사이에 위치한다. 즉, 도 10에 도시된 현재 프레임이 N/4 크기의 서브 블록으로 구성된 경우, 폴딩 포인트 C2는 3N/4 지점에 위치한다.
일례로, 윈도우 처리부(301)는 입력 신호의 현재 프레임에서 음성 특성 신호와 오디오 특성 신호 간에 ‘스위칭이 발생하는 폴딩 포인트’가 존재하는 경우, 폴딩 포인트를 넘지 않는 분석 윈도우를 오디오 특성 신호에 적용할 수 있다. 즉, 윈도우 처리부(301)는 입력된 현재 프레임에 분석 윈도우를 적용할 수 있다.
또한, 윈도우 처리부(301)는 폴딩 포인트를 중심으로 음성 특성 신호를 나타내는 제1 서브 블록에 대응하는 윈도우, 오디오 특성 신호를 나타내는 제2 서브 블록 중 부가 정보 영역에 대응하는 윈도우 및 제2 서브 블록 중 나머지 영역에 대응하는 윈도우로 구성되는 분석 윈도우를 적용할 수 있다. 이 때, 제1 서브 블록에 대응하는 윈도우는 0이고, 상기 제2 서브 블록 중 나머지 영역에 대응하는 윈도우는 1일 수 있다. 도 10에서, 폴딩 포인트는 N/4 크기의 서브 블록으로 구성된 현재 프레임에서 3N/4 지점에 위치한다.
즉, 윈도우 처리부(301)는 음성 특성 신호를 나타내는 s(b+m+1)에 대응하는 분석 윈도우
Figure 112019124918728-pat00025
를 zero값으로 대체할 수 있다. 또한, 윈도우 처리부(301)는 오디오 특성 신호를 나타내는 서브 블록 s(b+m)에 대응하는 분석 윈도우
Figure 112019124918728-pat00026
를 하기 수학식 8에 따라 결정할 수 있다.
Figure 112019124918728-pat00027
Figure 112019124918728-pat00028
Figure 112019124918728-pat00029
즉, 폴딩 포인트를 중심으로 오디오 특성 신호를 나타내는 서브 블록 s(b+m)에 대해 적용되는 분석 윈도우
Figure 112019124918728-pat00030
는 부가 정보 영역인 hL 과 나머지 영역 N/4-oL에 대응하는 윈도우로 구성될 수 있다. 이 때, 나머지 영역에 대응하는 윈도우는 1로 구성될 수 있다.
이 때,
Figure 112019124918728-pat00031
Figure 112019124918728-pat00032
의 크기의 sine-window의 후반부 절반을 의미한다. hL은 C2에서 블록 간의 오버랩 연산을 위한 사이즈를 의미하며,
Figure 112019124918728-pat00033
Figure 112019124918728-pat00034
의 사이즈를 결정한다. 그리고, 블록샘플(1000)에서, 블록 샘플
Figure 112019124918728-pat00035
는 이후 설명을 위해 정의된 것이다.
일례로, 제1 인코딩부(204)는 폴딩 포인트를 중심으로 블록 간 오버랩을 위해 음성 특성 신호를 나타내는 서브 블록에서 부가 정보 영역에 대응하는 부분을 인코딩할 수 있다. 도 10에서, 제1 인코딩부(204)는 s(b+m+1) 서브 블록에서 부가 정보 영역인 hL에 대응하는 부분을 부가 정보로 인코딩할 수 있다. 앞서 설명하였듯이, 제1 인코딩부(204)는 부가 정보 영역에 대응하는 부분을 MDCT 기반의 코딩 방식과 이종의 코딩 방식에 따라 인코딩할 수 있다.
도 10에서 볼 수 있듯이, 윈도우 처리부(301)는 sine 형태의 분석 윈도우를 입력 신호에 적용할 수 있다. 다만, C2가 발생하면, 윈도우 처리부(301)는 폴딩 포인트인 C2 이후에 위치한 서브 블록에 대응하는 분석 윈도우를 0으로 설정할 수 있다. 그리고, 윈도우 처리부(301)는 C2 이전에 위치한 서브 블록 s(b+m)에 대응하는 분석 윈도우를 부가 정보 영역 hL에 대응하는 분석 윈도우와 나머지 영역 N/4-hL에 대응하는 분석 윈도우로 구성되도록 설정할 수 있다. 이 때, 나머지 분석 윈도우는 1 값을 가진다. MDCT 변환부(302)는 도 10에 도시된 분석 윈도우가 적용된 입력 신호
Figure 112019124918728-pat00036
에 대해 MDCT 변환을 수행할 수 있다.
도 11은 본 발명의 일실시예에 따라 입력 신호를 인코딩할 때 적용되는 부가 정보를 나타낸 도면이다.
부가 정보(1101)는 폴딩 포인트인 C1을 중심으로 음성 특성 신호를 나타내는 서브 블록의 일부에 대응하고, 부가 정보(1102)는 폴딩 포인트인 C2를 중심으로 음성 특성 신호를 나타내는 서브 블록의 일부에 대응한다. 이 때, C1 이후에 존재하는 오디오 특성 신호에 대응하는 서브 블록은 부가 정보(1101) 중 전반부(oL)가 반영된 합성 윈도우가 적용될 수 있다. 나머지 영역(N/4-oL)은 1로 대체될 수 있다. 그리고, C2 이전에 존재하는 오디오 특성 신호에 대응하는 서브 블록은 부가 정보(1102) 중 후반부(hL)가 반영된 합성 윈도우가 적용될 수 있다. 나머지 영역(N/4-hL)은 1로 대체될 수 있다.
도 12는 본 발명의 일실시예에 따라 디코딩 장치의 세부 구성을 도시한 블록 다이어그램이다.
도 12를 참고하면, 디코딩 장치(102)는 블록 지연부(1201), 제1 디코딩부(1202), 제2 디코딩부(1203) 및 블록 보상부(1204)를 포함할 수 있다.
블록 지연부(1201)는 입력된 비트 스트림에 포함된 제어 변수(C1, C2)에 따라 대응하는 블록을 미래 지연하거나 과거 지연할 수 있다.
그리고, 디코딩 장치(102)는 입력된 비트 스트림의 제어 변수에 따라 디코딩 방식을 스위칭함으로써 비트 스트림을 제1 디코딩부(1202) 또는 제2 디코딩부(1203) 중 어느 하나에서 디코딩하도록 결정할 수 있다. 이 때, 제1 디코딩부(1202)는 인코딩된 음성 특성 신호를 디코딩하고, 제2 디코딩부(1202)는 인코딩된 오디오 특성 신호를 디코딩할 수 있다. 일례로, 제1 디코딩부(1202)는 CELP 방식에 따라 음성 특성 신호를 디코딩하고, 제2 디코딩부(1202)는 MDCT 방식에 따라 오디오 특성 신호를 디코딩할 수 있다.
제1 디코딩부(1202) 및 제2 디코딩부(1203)를 통해 디코딩된 결과는 블록 보상부(1204)를 통해 최종적인 입력 신호로 도출된다.
블록 보상부(1204)는 제1 디코딩부(1202)의 결과와 제2 디코딩부(1203)의 결과에 대해 블록 보상을 수행하여 입력 신호를 복원할 수 있다. 일례로, 블록 보상부(1204)는 입력 신호의 현재 프레임에서 음성 특성 신호와 오디오 특성 신호 간에 ‘스위칭이 발생하는 폴딩 포인트’가 존재하는 경우, 폴딩 포인트를 넘지 않는 합성 윈도우를 적용할 수 있다.
이 때, 블록 보상부(1204)는 제1 디코딩부(1202)로부터 도출된 부가 정보에 제1 합성 윈도우를 적용하고, 제2 디코딩부(1203)로부터 도출된 현재 프레임에 대해 제2 합성 윈도우를 적용하여 오버랩 연산을 수행할 수 있다. 블록 보상부(1204)는 폴딩 포인트를 중심으로 음성 특성 신호를 나타내는 제1 서브 블록에 대해 0으로 구성되고, 오디오 특성 신호를 나타내는 제2 서브 블록에 대해 부가 정보 영역과 1로 구성되는 제2 합성 윈도우를 현재 프레임에 적용할 수 있다. 블록 보상부(1204)에 대해서는 도 16 및 도 18에서 구체적으로 설명된다.
도 13은 본 발명의 일실시예에 따라 제2 디코딩부를 통해 비트 스트림을 디코딩하는 과정을 나타낸 도면이다.
도 13을 참고하면, 제2 디코딩부(1203)는 비트 스트림 복원부(1301), IMDCT 변환부(1302), 윈도우 합성부(1303) 및 오버랩 연산부(1304)를 포함할 수 있다.
비트 스트림 복원부(1301)는 입력된 비트 스트림을 디코딩할 수 있다. 그리고, IMDCT 변환부(1302)는 IMDCT(Inverse MDCT) 변환을 통해 디코딩된 신호를 시간 영역의 샘플로 변환할 수 있다.
IMDCT 변환부(1302)를 통해 변환된 Y(b)는 블록 지연부(1201)를 통해 과거 지연되어 윈도우 합성부(1303)에 입력될 수 있다. 그리고, Y(b)는 과거 지연을 거치지 않고 바로 윈도우 합성부(1303)에 입력될 수 있다. 이 때, Y(b)는
Figure 112019124918728-pat00037
의 값을 가질 수 있다. 이 때, X(b)는 도 3에서 제2 인코딩부(205)를 통해 입력된 현재 블록을 의미한다.
윈도우 합성부(1303)는 입력된 Y(b)와 과거 지연된 Y(b-2)에 합성 윈도우(synthesis window)를 적용할 수 있다. C1과 C2가 발생하지 않을 때, 윈도우 합성부(1303)는 Y(b)와 Y(b-2)에 대해 동일하게 합성 윈도우를 적용할 수 있다.
일례로, 윈도우 합성부(1303)는 입력된 Y(b)에 대해 하기 수학식 9와 같이 합성 윈도우를 적용할 수 있다.
Figure 112019124918728-pat00038
이 때, 합성 윈도우 Wsysthesis는 분석 윈도우 Wanalysis와 동일할 수 있다.
오버랩 연산부(1304)는 Y(b)와 Y(b-2)에 합성 윈도우가 적용된 결과를 50% 오버랩 add 연산을 수행할 수 있다. 오버랩 연산부(1304)를 통해 도출된 결과
Figure 112019124918728-pat00039
는 하기 수학식 10의 값을 가질 수 있다.
Figure 112019124918728-pat00040
이 때,
Figure 112019124918728-pat00041
는 Y(b)에 관한 것이고,
Figure 112019124918728-pat00042
는 Y(b-2)에 관한 것이다. 수학식 10을 참고하면,
Figure 112019124918728-pat00043
Figure 112019124918728-pat00044
와 합성 윈도우의 전반부
Figure 112019124918728-pat00045
가 결합된 결과 및
Figure 112019124918728-pat00046
와 합성 윈도우의 후반부
Figure 112019124918728-pat00047
가 결합된 결과가 오버랩 add 연산된 것임을 의미한다.
도 14는 본 발명의 일실시예에 따라 오버랩 연산을 통해 출력 신호를 도출하는 과정을 나타낸 도면이다.
도 14에 도시된 윈도우(1401, 1402, 1403)는 합성 윈도우를 의미하다. 오버랩 연산부(1304)는 합성 윈도우(1402)가 적용된 블록(1405), 블록(1406)과 합성 윈도우(1401)가 적용된 블록(1404), 블록(1405)을 오버랩 Add 연산하여 블록(1405)을 출력할 수 있다. 동일한 방법으로, 오버랩 연산부(1304)는 합성 윈도우(1402)가 적용된 블록(1405), 블록(1406)과 합성 윈도우(1403)가 적용된 블록(1406), 블록(1407)을 오버랩 Add 연산하여 블록(1406)을 출력할 수 있다.
즉, 도 14를 참고하면, 오버랩 연산부(1304)는 현재 블록과 과거 지연된 과거 블록을 오버랩 연산하여 현재 블록을 구성하는 서브 블록을 도출할 수 있다. 이 때, 각각의 블록은 MDCT 변환과 관련된 오디오 특성 신호를 나타낸 것이다.
그러나, 만약, 블록(1404)이 음성 특성 신호이고, 블록(1405)은 오디오 특성 신호인 경우(C1이 발생한 경우), 블록(1404)는 MDCT 변환 정보를 가지지 않기 때문에 오버랩 연산이 불가능하다. 이 경우, 오버랩 연산을 위해 블록(1404)에 대한 MDCT 부가 정보가 요구된다. 반대로, 블록(1404)이 오디오 특성 신호이고, 블록(1405)가 음성 특성 신호인 경우(C2가 발생한 경우), 블록(1405)는 MDCT 변환 정보를 가지지 않기 때문에 오버랩 연산이 불가능하다. 이 경우, 오버랩 연산을 위한 블록(1405)에 대한 MDCT 부가 정보가 요구된다.
도 15는 본 발명의 일실시예에 따라 C1인 경우 출력 신호를 생성하는 과정을 나타낸 도면이다. 즉, 도 15는 도 7을 통해 인코딩된 입력 신호를 디코딩하는 구성을 나타낸다.
C1은 입력 신호의 현재 프레임(800)에서 음성 특성 신호 이후에 오디오 특성 신호가 발생하는 폴딩 포인트를 의미한다. 이 때, 폴딩 포인트는 현재 프레임(800)에서 N/4 지점에 위치한다.
비트 스트림 복원부(1301)는 입력된 비트 스트림을 디코딩할 수 있다. 그 후, IMDCT 변환부(1302)는 디코딩된 결과에 대해 IMDCT(Inverse MDCT) 변환을 수행할 수 있다. 그 이후, 윈도우 합성부(1303)는 제2 인코딩부(205)를 통해 인코딩된 입력 신호의 현재 프레임(800) 중 블록
Figure 112019124918728-pat00048
에 대해 합성 윈도우를 적용할 수 있다. 즉, 제2 디코딩부(1203)는 입력 신호의 현재 프레임(800)에서 폴딩 포인트에 인접하지 않은 블록에 s(b)와 s(b+1)대해 디코딩을 수행할 수 있다.
이 때, 도 13과 달리, 도 15에서는 IMDCT 변환된 결과는 블록 지연부(1201)를 거치지 않는다.
블록
Figure 112019124918728-pat00049
에 대해 합성 윈도우를 적용된 결과는 하기 수학식 11과 같다.
Figure 112019124918728-pat00050
블록
Figure 112019124918728-pat00051
는 현재 프레임(800)에 대해 오버랩을 위한 블록 신호로 사용될 수 있다.
제2 디코딩부(1203)를 통해 현재 프레임(800) 중 블록
Figure 112019124918728-pat00052
에 대응하는 입력 신호만 복원된다. 따라서, 현재 프레임(800)에는 블록
Figure 112019124918728-pat00053
만이 존재하므로, 오버랩 연산부(1304)는 오버랩 add 연산이 수행되지 않은 블록
Figure 112019124918728-pat00054
에 대응하는 입력 신호를 복원할 수 있다. 블록
Figure 112019124918728-pat00055
는 현재 프레임(800)에 대해 제2 디코딩부(1203)에서 합성 윈도우가 적용되지 않은 블록을 의미한다. 그리고, 제1 디코딩부(1202)는 비트 스트림에 포함된 부가 정보를 디코딩하여 서브 블록
Figure 112019124918728-pat00056
를 출력할 수 있다.
제2 디코딩부(1203)를 통해 도출된 블록
Figure 112019124918728-pat00057
과 제1 디코딩부(1202)를 통해 도출된 블록
Figure 112019124918728-pat00058
은 블록 보상부(1204)에 입력된다. 블록 보상부(1204)를 통해 최종적인 출력 신호가 생성될 수 있다.
도 16은 본 발명의 일실시예에 따라 C1인 경우 블록 보상을 수행하는 과정을 나타낸 도면이다.
블록 보상부(1204)는 제1 디코딩부(1202)의 결과와 제2 디코딩부(1203)의 결과에 대해 블록 보상을 수행하여 입력 신호를 복원할 수 있다. 일례로, 블록 보상부(1204)는 입력 신호의 현재 프레임에 대해 음성 특성 신호와 오디오 특성 신호 간에 스위칭이 발생하는 폴딩 포인트가 존재하는 경우, 폴딩 포인트를 넘지 않는 합성 윈도우를 적용할 수 있다.
도 15에서 부가 정보
Figure 112019124918728-pat00059
는 제1 디코딩부(1202)를 통해 도출된다. 블록 보상부(1204)는 서브 블록
Figure 112019124918728-pat00060
에 윈도우
Figure 112019124918728-pat00061
를 적용할 수 있다. 따라서, 서브 블록
Figure 112019124918728-pat00062
에 윈도우
Figure 112019124918728-pat00063
가 적용된 서브 블록
Figure 112019124918728-pat00064
은 하기 수학식 12로 도출될 수 있다.
Figure 112019124918728-pat00065
그리고, 오버랩 연산부(1304)를 통해 도출된 블록
Figure 112019124918728-pat00066
는 블록 보상부(1204)를 통해 합성 윈도우(1601)가 적용된다.
일례로, 블록 보상부(1204)는 폴딩 포인트를 중심으로 음성 특성 신호를 나타내는 서브 블록에 대응하는 윈도우와 오디오 특성 신호를 나타내는 서브 블록 중 부가 정보 영역 oL과 나머지 영역 N/4-oL에 대응하는 윈도우로 구성된 합성 윈도우를 현재 프레임(800)에 적용할 수 있다. 합성 윈도우(1601)가 적용된 블록
Figure 112019124918728-pat00067
는 하기 수학식 13과 같다.
Figure 112019124918728-pat00068
즉, 블록
Figure 112019124918728-pat00069
는 음성 특성 신호를 나타내는 zero 서브 블록에 대응하는 윈도우와 오디오 특성 신호를 나타내는 서브 블록
Figure 112019124918728-pat00070
중 윈도우가 부가 정보 영역 oL과 나머지 영역 N/4-oL에 대응하는 윈도우로 구성된 합성 윈도우가 적용된다. 여기서, zero 서브 블록에 대응하는 윈도우는 0이고, 서브 블록
Figure 112019124918728-pat00071
중 나머지 영역에 대응하는 윈도우는 1이다.
이 때, 블록
Figure 112019124918728-pat00072
을 구성하는 서브 블록
Figure 112019124918728-pat00073
은 하기 수학식 14로 결정된다.
Figure 112019124918728-pat00074
여기서, 블록 보상부(1204)는 합성 윈도우(1601)와 합성 윈도우(1602)에서 WoL 영역을 오버랩 Add 연산하면, 서브 블록
Figure 112019124918728-pat00075
중 oL 영역에 대응하는
Figure 112019124918728-pat00076
가 도출된다. 이 때, 수학식 14에서 서브 블록
Figure 112019124918728-pat00077
은 하기 수학식 15로 결정된다. 그리고, 수학식 14에서 서브 블록
Figure 112019124918728-pat00078
중 oL 영역을 제외한 나머지 영역에 대응하는 서브 블록
Figure 112019124918728-pat00079
은 하기 수학식 16으로 결정된다.
Figure 112019124918728-pat00080
Figure 112019124918728-pat00081
결국, 블록 보상부(1204)를 통해 출력 신호
Figure 112019124918728-pat00082
가 도출된다.
도 17은 본 발명의 일실시예에 따라 C2인 경우 출력 신호를 생성하는 과정을 나타낸 도면이다. 즉, 도 17은 도 9를 통해 인코딩된 입력 신호를 디코딩하는 구성을 나타낸다.
C2는 입력 신호의 현재 프레임(1000)에서 오디오 특성 신호 이후에 음성 특성 신호가 발생하는 폴딩 포인트를 의미한다. 이 때, 폴딩 포인트는 현재 프레임(1000)에서 3N/4 지점에 위치한다.
비트 스트림 복원부(1301)는 입력된 비트 스트림을 디코딩할 수 있다. 그 후, IMDCT 변환부(1302)는 디코딩된 결과에 대해 IMDCT(Inverse MDCT) 변환을 수행할 수 있다. 그 이후, 윈도우 합성부(1303)는 제2 인코딩부(205)를 통해 인코딩된 입력 신호의 현재 프레임(1000) 중 블록
Figure 112019124918728-pat00083
에 대해 합성 윈도우를 적용할 수 있다. 즉, 제2 디코딩부(1203)는 입력 신호의 현재 프레임(1000)에서 폴딩 포인트에 인접하지 않은 블록 s(b+m-2), s(b+m-1)에 대해 디코딩을 수행할 수 있다.
이 때, 도 13과 달리, 도 17에서는 IMDCT 변환된 결과는 블록 지연부(1201)를 거치지 않는다.
블록
Figure 112019124918728-pat00084
에 대해 합성 윈도우를 적용된 결과는 하기 수학식 17과 같다.
Figure 112019124918728-pat00085
블록
Figure 112019124918728-pat00086
는 현재 프레임(1000)에 대해 오버랩을 위한 블록 신호로 사용될 수 있다.
제2 디코딩부(1203)를 통해 현재 프레임(1000) 중 블록
Figure 112019124918728-pat00087
에 대응하는 입력 신호만 복원된다. 따라서, 현재 프레임(1000)에는 블록
Figure 112019124918728-pat00088
만이 존재하므로, 오버랩 연산부(1304)는 오버랩 연산이 수행되지 않은 블록
Figure 112019124918728-pat00089
에 대응하는 입력 신호를 복원할 수 있다. 블록
Figure 112019124918728-pat00090
는 현재 프레임(1000)에 대해 제2 디코딩부(1203)에서 합성 윈도우가 적용되지 않은 디코딩된 블록을 의미한다. 그리고, 제1 디코딩부(1202)는 비트 스트림에 포함된 부가 정보를 디코딩하여 서브 블록
Figure 112019124918728-pat00091
을 출력할 수 있다.
제2 디코딩부(1203)를 통해 도출된 블록
Figure 112019124918728-pat00092
과 제1 디코딩부(1202)를 통해 도출된 블록
Figure 112019124918728-pat00093
은 블록 보상부(1204)에 입력된다. 블록 보상부(1204)를 통해 최종적인 출력 신호가 생성될 수 있다.
도 18은 본 발명의 일실시예에 따라 C2인 경우 블록 보상을 수행하는 과정을 나타낸 도면이다.
블록 보상부(1204)는 제1 디코딩부(1202)의 결과와 제2 디코딩부(1203)의 결과에 대해 블록 보상을 수행하여 입력 신호를 복원할 수 있다. 일례로, 블록 보상부(1204)는 입력 신호의 현재 프레임에 대해 음성 특성 신호와 오디오 특성 신호 간에 ‘스위칭이 발생하는 폴딩 포인트’가 존재하는 경우, 폴딩 포인트를 넘지 않는 합성 윈도우를 적용할 수 있다.
도 17에서 부가 정보
Figure 112019124918728-pat00094
는 제1 디코딩부(1202)를 통해 도출된다. 블록 보상부(1204)는 서브 블록
Figure 112019124918728-pat00095
에 윈도우
Figure 112019124918728-pat00096
를 적용할 수 있다. 따라서, 서브 블록
Figure 112019124918728-pat00097
에 윈도우
Figure 112019124918728-pat00098
가 적용된 서브 블록
Figure 112019124918728-pat00099
은 하기 수학식 18로 도출될 수 있다.
Figure 112019124918728-pat00100
그리고, 오버랩 연산부(1304)를 통해 도출된 블록
Figure 112019124918728-pat00101
는 블록 보상부(1204)를 통해 합성 윈도우(1801)가 적용된다. 일례로, 블록 보상부(1204)는 폴딩 포인트를 중심으로 음성 특성 신호를 나타내는 서브 블록 s(b+m+1)에 대응하는 윈도우와 오디오 특성 신호를 나타내는 서브 블록 s(b+m) 중 부가 정보 영역 hL과 나머지 영역 N/4-hL에 대응하는 윈도우로 구성된 합성 윈도우를 현재 프레임(1000)에 적용할 수 있다. 이 때, 서브 블록 s(b+m+1)에 대응하는 윈도우는 0이고, 나머지 영역 N/4-hL에 대응하는 윈도우는 1이다.
합성 윈도우(1801)가 적용된
Figure 112019124918728-pat00102
는 하기 수학식 19와 같다.
Figure 112019124918728-pat00103
이 때, 블록
Figure 112019124918728-pat00104
을 구성하는 서브 블록
Figure 112019124918728-pat00105
은 하기 수학식 20으로 결정된다.
Figure 112019124918728-pat00106
여기서, 블록 보상부(1204)는 합성 윈도우(1801)과 합성 윈도우(1802)에서 WhL 영역을 오버랩 Add 연산하면, 서브 블록
Figure 112019124918728-pat00107
중 hL 영역에 대응하는
Figure 112019124918728-pat00108
가 도출된다. 이 때, 수학식 20에서 서브 블록
Figure 112019124918728-pat00109
은 하기 수학식 21로 결정된다. 그리고, 수학식 20에서 서브 블록
Figure 112019124918728-pat00110
중 hL 영역을 제외한 나머지 영역에 대응하는 서브 블록
Figure 112019124918728-pat00111
은 하기 수학식 22로 결정된다.
Figure 112019124918728-pat00112
Figure 112019124918728-pat00113
결국, 블록 보상부(1204)를 통해 출력 신호
Figure 112019124918728-pat00114
가 도출된다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.
삭제

Claims (11)

  1. 프레임 처리 방법에 있어서,
    시간 도메인의 CELP에 따라 처리되는 제1 프레임에서 주파수 도메인의 MDCT에 따라 처리되는 제2 프레임으로 스위칭이 발생하는 지 여부를 판단하는 단계;
    상기 제1 프레임에서 제2 프레임으로 스위칭이 발생하는 경우, MDCT에 의해 발생되는 시간 도메인의 앨리어싱을 제거하기 위한 부가 데이터를 식별하는 단계;
    상기 식별된 부가 데이터, 상기 제1 프레임의 일부 및 제2 프레임을 이용하여 상기 제2 프레임을 처리하는 단계
    를 포함하고,
    상기 부가 데이터는, 상기 제1 프레임과 제2 프레임의 경계에 적용되는 프레임 처리 방법.
  2. 삭제
  3. 프레임 처리 방법에 있어서,
    시간 도메인의 CELP에 따라 처리되는 제1 프레임에서 주파수 도메인의 MDCT에 따라 처리되는 제2 프레임으로 스위칭이 발생하는 지 여부를 판단하는 단계;
    상기 제1 프레임에서 제2 프레임으로의 스위칭이 발생하는 경우, MDCT에 의해 발생되는 시간 도메인의 앨리어싱을 제거하기 위한 부가 데이터를 식별하는 단계;
    상기 제1 프레임의 전체 영역 중 일부 영역을 식별하는 단계;
    상기 식별된 제1 프레임의 일부 영역, 상기 부가 데이터 및 상기 제2 프레임을 이용하여 상기 제2 프레임을 처리하는 처리하는 단계
    를 포함하고,
    상기 부가 데이터는, 상기 제1 프레임과 제2 프레임의 경계에 적용되는 프레임 처리 방법.
  4. 삭제
  5. 제3항에 있어서,
    상기 일부 영역은, 상기 부가 데이터의 영역에 대응하는 프레임 처리 방법.
  6. 제3항에 있어서,
    상기 부가 데이터는, 제1 프레임으로부터 도출되어 비트스트림을 통해 전달되는 프레임 처리 방법.
  7. 시간 도메인의 CELP에 따라 처리되는 제1 프레임에서 주파수 도메인의 MDCT에 따라 처리되는 제2 프레임으로 스위칭이 발생하는 지 여부를 판단하는 단계;
    상기 제1 프레임에서 제2 프레임으로 스위칭이 발생하는 경우, MDCT에 의해 발생되는 시간 도메인의 앨리어싱을 제거하기 위한 부가 데이터를 식별하는 단계;
    상기 제1 프레임의 전체 영역 중 상기 부가 데이터의 영역에 대응하는 제1 프레임의 일부 영역을 식별하는 단계;
    상기 부가 데이터, 상기 식별된 제1 프레임의 일부 영역 및 상기 제2 프레임을 애드함으로써 제2 프레임을 복원하는 단계
    를 포함하고,
    상기 부가 데이터는, 상기 제1 프레임과 제2 프레임의 경계에 적용되는 프레임 처리 방법.
  8. 삭제
  9. 제7항에 있어서,
    상기 제2 프레임을 복원하는 단계는,
    상기 제1 프레임과 제2 프레임 간의 경계에서 상기 부가 데이터, 상기 식별된 제1 프레임의 일부 영역 및 상기 제2 프레임을 애드함으로써 수행되는 프레임 처리 방법.
  10. 제7항에 있어서,
    상기 제2 프레임을 복원하는 단계는,
    상기 제2 프레임을 MDCT에 따라 처리할 때 발생될 수 있는 시간 도메인의 앨리어싱을 처리하기 위해 상기 부가 데이터, 상기 식별된 제1 프레임의 일부 영역 및 상기 제2 프레임을 애드하는 프레임 처리 방법.
  11. 프레임 처리 방법에 있어서,
    CELP로 처리되는 제1 프레임에서 MDCT로 처리되는 제2 프레임으로 스위칭되는지 여부를 판단하는 단계;
    제1 프레임에서 제2 프레임으로 스위칭되는 경우, 상기 MDCT에 따라 발생되는 시간 도메인의 앨리어싱을 제거하기 위해 제1 프레임의 전체 영역 중 일부 영역을 수정하는 단계;
    상기 수정된 일부 영역이 적용된 제1 프레임을 이용하여 제2 프레임을 처리하는 단계
    를 포함하고,
    상기 일부 영역을 수정하는 단계는,
    상기 제1 프레임의 전체 영역 중 제2 프레임과 오버랩 애드되는 일부 영역을 수정하는 프레임 처리 방법.
KR1020190159104A 2008-09-18 2019-12-03 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치 KR102209837B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210010462A KR102322867B1 (ko) 2008-09-18 2021-01-25 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20080091697 2008-09-18
KR1020080091697 2008-09-18

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180151175A Division KR102053924B1 (ko) 2008-09-18 2018-11-29 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210010462A Division KR102322867B1 (ko) 2008-09-18 2021-01-25 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치

Publications (2)

Publication Number Publication Date
KR20190137745A KR20190137745A (ko) 2019-12-11
KR102209837B1 true KR102209837B1 (ko) 2021-01-29

Family

ID=42040027

Family Applications (8)

Application Number Title Priority Date Filing Date
KR1020090088524A KR101670063B1 (ko) 2008-09-18 2009-09-18 Mdct 기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020160137911A KR101797228B1 (ko) 2008-09-18 2016-10-21 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020170147487A KR101925611B1 (ko) 2008-09-18 2017-11-07 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020180151175A KR102053924B1 (ko) 2008-09-18 2018-11-29 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020190159104A KR102209837B1 (ko) 2008-09-18 2019-12-03 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020210010462A KR102322867B1 (ko) 2008-09-18 2021-01-25 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020210148143A KR20210134564A (ko) 2008-09-18 2021-11-01 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020240039174A KR20240041305A (ko) 2008-09-18 2024-03-21 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치

Family Applications Before (4)

Application Number Title Priority Date Filing Date
KR1020090088524A KR101670063B1 (ko) 2008-09-18 2009-09-18 Mdct 기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020160137911A KR101797228B1 (ko) 2008-09-18 2016-10-21 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020170147487A KR101925611B1 (ko) 2008-09-18 2017-11-07 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020180151175A KR102053924B1 (ko) 2008-09-18 2018-11-29 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020210010462A KR102322867B1 (ko) 2008-09-18 2021-01-25 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020210148143A KR20210134564A (ko) 2008-09-18 2021-11-01 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR1020240039174A KR20240041305A (ko) 2008-09-18 2024-03-21 Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치

Country Status (6)

Country Link
US (3) US9773505B2 (ko)
EP (2) EP2339577B1 (ko)
KR (8) KR101670063B1 (ko)
CN (2) CN104240713A (ko)
ES (1) ES2671711T3 (ko)
WO (1) WO2010032992A2 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9773505B2 (en) * 2008-09-18 2017-09-26 Electronics And Telecommunications Research Institute Encoding apparatus and decoding apparatus for transforming between modified discrete cosine transform-based coder and different coder
KR101649376B1 (ko) 2008-10-13 2016-08-31 한국전자통신연구원 Mdct 기반 음성/오디오 통합 부호화기의 lpc 잔차신호 부호화/복호화 장치
WO2010044593A2 (ko) 2008-10-13 2010-04-22 한국전자통신연구원 Mdct 기반 음성/오디오 통합 부호화기의 lpc 잔차신호 부호화/복호화 장치
FR2977439A1 (fr) * 2011-06-28 2013-01-04 France Telecom Fenetres de ponderation en codage/decodage par transformee avec recouvrement, optimisees en retard.
TWI564884B (zh) 2013-06-21 2017-01-01 弗勞恩霍夫爾協會 用以改良在錯誤消除期間於不同域之信號衰減之裝置及方法、以及相關電腦程式
KR102398124B1 (ko) 2015-08-11 2022-05-17 삼성전자주식회사 음향 데이터의 적응적 처리
KR20210003514A (ko) 2019-07-02 2021-01-12 한국전자통신연구원 오디오의 고대역 부호화 방법 및 고대역 복호화 방법, 그리고 상기 방법을 수하는 부호화기 및 복호화기

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009325A1 (en) * 1998-01-22 2003-01-09 Raif Kirchherr Method for signal controlled switching between different audio coding schemes

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100419545B1 (ko) * 1994-10-06 2004-06-04 코닌클리케 필립스 일렉트로닉스 엔.브이. 다른코딩원리들을이용한전송시스템
US5642464A (en) * 1995-05-03 1997-06-24 Northern Telecom Limited Methods and apparatus for noise conditioning in digital speech compression systems using linear predictive coding
US5867819A (en) * 1995-09-29 1999-02-02 Nippon Steel Corporation Audio decoder
US6134518A (en) * 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
FI114248B (fi) * 1997-03-14 2004-09-15 Nokia Corp Menetelmä ja laite audiokoodaukseen ja audiodekoodaukseen
AU3372199A (en) * 1998-03-30 1999-10-18 Voxware, Inc. Low-complexity, low-delay, scalable and embedded speech and audio coding with adaptive frame loss concealment
US6959274B1 (en) * 1999-09-22 2005-10-25 Mindspeed Technologies, Inc. Fixed rate speech compression system and method
DE10102155C2 (de) * 2001-01-18 2003-01-09 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Erzeugen eines skalierbaren Datenstroms und Verfahren und Vorrichtung zum Decodieren eines skalierbaren Datenstroms
DE10102159C2 (de) * 2001-01-18 2002-12-12 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Erzeugen bzw. Decodieren eines skalierbaren Datenstroms unter Berücksichtigung einer Bitsparkasse, Codierer und skalierbarer Codierer
US6658383B2 (en) 2001-06-26 2003-12-02 Microsoft Corporation Method for coding speech and music signals
DE10200653B4 (de) * 2002-01-10 2004-05-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Skalierbarer Codierer, Verfahren zum Codieren, Decodierer und Verfahren zum Decodieren für einen skalierten Datenstrom
WO2003091989A1 (en) * 2002-04-26 2003-11-06 Matsushita Electric Industrial Co., Ltd. Coding device, decoding device, coding method, and decoding method
US7787632B2 (en) * 2003-03-04 2010-08-31 Nokia Corporation Support of a multichannel audio extension
WO2004082288A1 (en) * 2003-03-11 2004-09-23 Nokia Corporation Switching between coding schemes
GB2403634B (en) * 2003-06-30 2006-11-29 Nokia Corp An audio encoder
US7325023B2 (en) 2003-09-29 2008-01-29 Sony Corporation Method of making a window type decision based on MDCT data in audio encoding
CA2457988A1 (en) * 2004-02-18 2005-08-18 Voiceage Corporation Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
US7596486B2 (en) * 2004-05-19 2009-09-29 Nokia Corporation Encoding an audio signal using different audio coder modes
KR20070068424A (ko) * 2004-10-26 2007-06-29 마츠시타 덴끼 산교 가부시키가이샤 음성 부호화 장치 및 음성 부호화 방법
US7386445B2 (en) * 2005-01-18 2008-06-10 Nokia Corporation Compensation of transient effects in transform coding
US20070147518A1 (en) * 2005-02-18 2007-06-28 Bruno Bessette Methods and devices for low-frequency emphasis during audio compression based on ACELP/TCX
ES2356492T3 (es) * 2005-07-22 2011-04-08 France Telecom Método de conmutación de tasa de transmisión en decodificación de audio escalable en tasa de transmisión y ancho de banda.
KR101171098B1 (ko) 2005-07-22 2012-08-20 삼성전자주식회사 혼합 구조의 스케일러블 음성 부호화 방법 및 장치
US8090573B2 (en) * 2006-01-20 2012-01-03 Qualcomm Incorporated Selection of encoding modes and/or encoding rates for speech compression with open loop re-decision
EP1989706B1 (fr) * 2006-02-14 2011-10-26 France Telecom Dispositif de ponderation perceptuelle en codage/decodage audio
US8682652B2 (en) * 2006-06-30 2014-03-25 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic
ES2383217T3 (es) * 2006-12-12 2012-06-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificador, descodificador y métodos para codificar y descodificar segmentos de datos que representan una corriente de datos de dominio de tiempo
CN101025918B (zh) * 2007-01-19 2011-06-29 清华大学 一种语音/音乐双模编解码无缝切换方法
US9653088B2 (en) * 2007-06-13 2017-05-16 Qualcomm Incorporated Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
EP2015293A1 (en) * 2007-06-14 2009-01-14 Deutsche Thomson OHG Method and apparatus for encoding and decoding an audio signal using adaptively switched temporal resolution in the spectral domain
MY181247A (en) * 2008-07-11 2020-12-21 Frauenhofer Ges Zur Forderung Der Angenwandten Forschung E V Audio encoder and decoder for encoding and decoding audio samples
US9773505B2 (en) * 2008-09-18 2017-09-26 Electronics And Telecommunications Research Institute Encoding apparatus and decoding apparatus for transforming between modified discrete cosine transform-based coder and different coder
KR101649376B1 (ko) * 2008-10-13 2016-08-31 한국전자통신연구원 Mdct 기반 음성/오디오 통합 부호화기의 lpc 잔차신호 부호화/복호화 장치
US9384748B2 (en) * 2008-11-26 2016-07-05 Electronics And Telecommunications Research Institute Unified Speech/Audio Codec (USAC) processing windows sequence based mode switching
KR101315617B1 (ko) * 2008-11-26 2013-10-08 광운대학교 산학협력단 모드 스위칭에 기초하여 윈도우 시퀀스를 처리하는 통합 음성/오디오 부/복호화기
RU2557455C2 (ru) * 2009-06-23 2015-07-20 Войсэйдж Корпорейшн Прямая компенсация наложения спектров во временной области с применением в области взвешенного или исходного сигнала
PT3405951T (pt) * 2016-01-22 2020-02-05 Fraunhofer Ges Forschung Aparelhos e métodos para codificar ou descodificar um sinal de áudio multicanal utilizando sincronização de controlo de quadro

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009325A1 (en) * 1998-01-22 2003-01-09 Raif Kirchherr Method for signal controlled switching between different audio coding schemes

Also Published As

Publication number Publication date
KR20210134564A (ko) 2021-11-10
WO2010032992A2 (ko) 2010-03-25
EP2339577B1 (en) 2018-03-21
EP2339577A2 (en) 2011-06-29
US20220005486A1 (en) 2022-01-06
KR20160126950A (ko) 2016-11-02
WO2010032992A3 (ko) 2010-11-04
KR101797228B1 (ko) 2017-11-13
CN104240713A (zh) 2014-12-24
KR102053924B1 (ko) 2019-12-09
KR20240041305A (ko) 2024-03-29
KR101670063B1 (ko) 2016-10-28
US11062718B2 (en) 2021-07-13
CN102216982A (zh) 2011-10-12
EP3373297B1 (en) 2023-12-06
EP3373297A1 (en) 2018-09-12
EP2339577A4 (en) 2012-05-23
US9773505B2 (en) 2017-09-26
US20110137663A1 (en) 2011-06-09
KR20100032843A (ko) 2010-03-26
KR102322867B1 (ko) 2021-11-10
KR20190137745A (ko) 2019-12-11
ES2671711T3 (es) 2018-06-08
KR101925611B1 (ko) 2018-12-05
US20180130478A1 (en) 2018-05-10
KR20210012031A (ko) 2021-02-02
KR20180129751A (ko) 2018-12-05
KR20170126426A (ko) 2017-11-17

Similar Documents

Publication Publication Date Title
KR102209837B1 (ko) Mdct기반의 코더와 이종의 코더 간 변환에서의 인코딩 장치 및 디코딩 장치
KR102148492B1 (ko) Mdct 기반 음성/오디오 통합 부호화기의 lpc 잔차신호 부호화/복호화 장치
KR101139172B1 (ko) 스케일러블 음성 및 오디오 코덱들에서 양자화된 mdct 스펙트럼에 대한 코드북 인덱스들의 인코딩/디코딩을 위한 기술
KR101171098B1 (ko) 혼합 구조의 스케일러블 음성 부호화 방법 및 장치
KR101016224B1 (ko) 인코더, 디코더 및 시간 영역 데이터 스트림을 나타내는 데이터 세그먼트를 인코딩하고 디코딩하는 방법
JP5551693B2 (ja) エイリアシングスイッチスキームを用いてオーディオ信号を符号化/復号化するための装置および方法
JP6457625B2 (ja) 独立したノイズ充填を用いた強化された信号を生成するための装置および方法
JP2009524100A (ja) 符号化/復号化装置及び方法
KR20080005325A (ko) 적응적 부호화/복호화 방법 및 장치
JP2010020346A (ja) 音声信号および音楽信号を符号化する方法
KR20140075466A (ko) 오디오 신호의 인코딩 및 디코딩 방법, 및 오디오 신호의 인코딩 및 디코딩 장치
CN107924683A (zh) 正弦编码和解码的方法和装置
US20170206905A1 (en) Method, medium and apparatus for encoding and/or decoding signal based on a psychoacoustic model
Fuchs et al. A speech coder post-processor controlled by side-information
JPH10133695A (ja) 音響信号符号化方法および音響信号復号化方法

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant