KR102386738B1 - Signal encoding method and apparatus, and signal decoding method and apparatus - Google Patents

Signal encoding method and apparatus, and signal decoding method and apparatus Download PDF

Info

Publication number
KR102386738B1
KR102386738B1 KR1020167022489A KR20167022489A KR102386738B1 KR 102386738 B1 KR102386738 B1 KR 102386738B1 KR 1020167022489 A KR1020167022489 A KR 1020167022489A KR 20167022489 A KR20167022489 A KR 20167022489A KR 102386738 B1 KR102386738 B1 KR 102386738B1
Authority
KR
South Korea
Prior art keywords
band
encoding
unit
decoding
information
Prior art date
Application number
KR1020167022489A
Other languages
Korean (ko)
Other versions
KR20160122160A (en
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 삼성전자주식회사
Priority to KR1020227012038A priority Critical patent/KR102625143B1/en
Priority claimed from PCT/KR2015/001668 external-priority patent/WO2015122752A1/en
Publication of KR20160122160A publication Critical patent/KR20160122160A/en
Application granted granted Critical
Publication of KR102386738B1 publication Critical patent/KR102386738B1/en

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/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/002Dynamic bit allocation
    • 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/032Quantisation or dequantisation of spectral components
    • 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
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding

Abstract

스펙트럼 부호화방법은 적어도 각 밴드의 비트할당정보에 근거하여 부호화방식을 선택하는 단계, 제로밴드에 대하여 제로 부호화를 수행하는 단계, 및 각 넌제로밴드에 대하여 선택된 중요주파수성분의 정보를 부호화하는 단계를 포함할 수 있다.The spectrum encoding method includes the steps of selecting an encoding method based on at least bit allocation information of each band, performing zero encoding on the zero band, and encoding information of the selected important frequency component for each non-zero band. may include

Description

신호 부호화방법 및 장치와 신호 복호화방법 및 장치{SIGNAL ENCODING METHOD AND APPARATUS, AND SIGNAL DECODING METHOD AND APPARATUS}Signal encoding method and apparatus, and signal decoding method and apparatus

본 발명은 오디오 혹은 스피치 신호 부호화 및 복호화에 관한 것으로서, 보다 구체적으로는 주파수 도메인에서 스펙트럼 계수를 부호화 혹은 복호화하는 방법 및 장치에 관한 것이다.The present invention relates to audio or speech signal encoding and decoding, and more particularly, to a method and apparatus for encoding or decoding spectral coefficients in a frequency domain.

주파수 도메인에서 스펙트럼 계수들의 효율적인 부호화를 위해 다양한 방식의 양자화기가 제안되어 있다. 예를 들면, TCQ(Trellis Coded Quantization), USQ(Uniform Scalr Quantization), FPC(Factorial Pulse Coding), AVQ(Algebraic VQ), PVQ(Pyramid VQ) 등이 있으며, 각각의 양자화기에 최적화된 무손실 부호화기가 함께 구현될 수 있다. For efficient encoding of spectral coefficients in the frequency domain, various types of quantizers have been proposed. For example, there are TCQ (Trellis Coded Quantization), USQ (Uniform Scalr Quantization), FPC (Factorial Pulse Coding), AVQ (Algebraic VQ), PVQ (Pyramid VQ), etc. can be implemented.

본 발명이 해결하고자 하는 과제는 주파수 도메인에서 다양한 비트율 혹은 다양한 서브밴드의 크기에 적응적으로 스펙트럼 계수를 부호화 혹은 복호화하는 방법 및 장치를 제공하는데 있다.SUMMARY OF THE INVENTION An object of the present invention is to provide a method and apparatus for encoding or decoding spectral coefficients adaptively to various bit rates or various subband sizes in the frequency domain.

본 발명이 해결하고자 하는 다른 과제는 신호 부호화방법 혹은 복호화방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 있다.Another object of the present invention is to provide a computer-readable recording medium in which a program for executing a signal encoding method or a signal decoding method in a computer is recorded.

본 발명이 해결하고자 하는 다른 과제는 신호 부호화장치 혹은 복호화장치를 채용하는 멀티미디어 기기를 제공하는데 있다.Another object of the present invention is to provide a multimedia device employing a signal encoding device or a decoding device.

상기 과제를 달성하기 위한 일측면에 따른 스펙트럼 부호화방법은 적어도 각 밴드의 비트할당정보에 근거하여 부호화방식을 선택하는 단계; 제로밴드에 대하여 제로 부호화를 수행하는 단계; 및 각 넌제로밴드에 대하여 선택된 중요주파수성분의 정보를 부호화하는 단계를 포함할 수 있다.A spectrum encoding method according to one aspect for achieving the above object includes at least selecting an encoding method based on bit allocation information of each band; performing zero encoding on the zero band; and encoding information of a selected important frequency component for each non-zero band.

상기 과제를 달성하기 위한 일측면에 따른 스펙트럼 복호화방법은 적어도 각 밴드의 비트할당정보에 근거하여 복호화방식을 선택하는 단계; 제로밴드에 대하여 제로 복호화를 수행하는 단계; 및 각 넌제로밴드에 대하여 얻어진 중요주파수성분의 정보를 복호화하는 단계를 포함할 수 있다.According to one aspect of the present invention, a spectrum decoding method includes: selecting a decoding method based on at least bit allocation information of each band; performing zero decoding on the zero band; and decoding information of important frequency components obtained for each non-zero band.

다양한 비트율과 다양한 서브밴드의 크기에 적응적인 스펙트럼 계수의 부호화 및 복호화가 가능하다. 또한, 멀티레이트를 지원하는 코덱에서 설계된 비트레이트 제어모듈을 이용하여 고정비트율로 스펙트럼을 TCQ로 부호화할 수 있다. 이때, TCQ의 높은 성능을 정확한 타겟비트율로 부호화하여 코덱의 부호화성능을 극대화시킬 수 있다.It is possible to encode and decode spectral coefficients adaptive to various bit rates and sizes of various subbands. In addition, the spectrum can be encoded as TCQ at a fixed bit rate by using a bit rate control module designed in a codec supporting multi-rate. In this case, it is possible to maximize the encoding performance of the codec by encoding the high performance of the TCQ at an accurate target bit rate.

도 1a 및 도 1b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 일예에 따른 구성을 각각 나타낸 블록도이다.
도 2a 및 도 2b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 다른 예에 따른 구성을 각각 나타낸 블록도이다.
도 3a 및 도 3b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 다른 예에 따른 구성을 각각 나타낸 블록도이다.
도 4a 및 도 4b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 다른 예에 따른 구성을 각각 나타낸 블록도이다.
도 5는 본 발명이 적용될 수 있는 주파수 도메인 오디오 부호화장치의 구성을 나타낸 블럭도이다.
도 6은 본 발명이 적용될 수 있는 주파수 도메인 오디오 복호화장치의 구성을 나타낸 블럭도이다.
도 7은 일실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다.
도 8은 서브밴드 분할의 예를 나타내는 도면이다.
도 9는 일실시예에 따른 스펙트럼 양자화장치의 구성을 나타내는 블럭도이다.
도 10은 일실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다.
도 11은 일실시예에 따른 ISC 부호화장치의 구성을 나타내는 블럭도이다.
도 12는 일실시예에 따른 ISC 정보 부호화장치의 구성을 나타내는 블럭도이다.
도 13는 다른 실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다.
도 14는 다른 실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다.
도 15는 일실시예에 따른 ISC 수집 및 부호화과정의 개념을 나타내는 도면이다.
도 16은 다른 실시예에 따른 ISC 수집 및 부호화과정의 개념을 나타내는 도면이다.
도 17은 본 발명에서 사용된 TCQ의 일예를 나타내는 도면이다.
도 18은 본 발명이 적용될 수 있는 주파수 도메인 오디오 복호화장치의 구성을 나타낸 블럭도이다.
도 19는 일실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다.
도 20은 일실시예에 따른 스펙트럼 역양자화장치의 구성을 나타내는 블럭도이다.
도 21은 일실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다.
도 22는 일실시예에 따른 ISC 복호화장치의 구성을 나타내는 블럭도이다.
도 23은 일실시예에 따른 ISC 정보 복호화장치의 구성을 나타내는 블럭도이다.
도 24는 다른 실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다.
도 25은 다른 실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다.
도 26은 다른 실시예에 따른 ISC 정보 부호화장치의 구성을 나타내는 블럭도이다.
도 27은 다른 실시예에 따른 ISC 정보 복호화장치의 구성을 나타내는 블럭도이다.
도 28은 일실시예에 따른 멀티미디어 기기의 구성을 나타낸 블록도이다.
도 29는 다른 실시예에 따른 멀티미디어 기기의 구성을 나타낸 블록도이다.
도 30은 다른 실시예에 따른 멀티미디어 기기의 구성을 나타낸 블록도이다.
도 31은 일실시예에 따른 스펙트럼의 미세 구조 부호화방법의 동작을 나타낸 플로우챠트이다.
도 32는 일실시예에 따른 스펙트럼의 미세 구조 복호화방법의 동작을 나타낸 플로우챠트이다.
1A and 1B are block diagrams respectively showing configurations of an audio encoding apparatus and a decoding apparatus to which the present invention can be applied according to an example.
2A and 2B are block diagrams each showing the configuration of an audio encoding apparatus and a decoding apparatus according to another example to which the present invention can be applied.
3A and 3B are block diagrams each showing the configuration of an audio encoding apparatus and a decoding apparatus according to another example to which the present invention can be applied.
4A and 4B are block diagrams respectively showing configurations of an audio encoding apparatus and a decoding apparatus to which the present invention can be applied according to another example.
5 is a block diagram showing the configuration of a frequency domain audio encoding apparatus to which the present invention can be applied.
6 is a block diagram showing the configuration of a frequency domain audio decoding apparatus to which the present invention can be applied.
7 is a block diagram showing the configuration of a spectrum encoding apparatus according to an embodiment.
8 is a diagram illustrating an example of subband division.
9 is a block diagram illustrating a configuration of a spectral quantization apparatus according to an embodiment.
10 is a block diagram showing the configuration of a spectrum encoding apparatus according to an embodiment.
11 is a block diagram showing the configuration of an ISC encoding apparatus according to an embodiment.
12 is a block diagram showing the configuration of an ISC information encoding apparatus according to an embodiment.
13 is a block diagram showing the configuration of a spectrum encoding apparatus according to another embodiment.
14 is a block diagram showing the configuration of a spectrum encoding apparatus according to another embodiment.
15 is a diagram illustrating a concept of an ISC collection and encoding process according to an embodiment.
16 is a diagram illustrating the concept of an ISC collection and encoding process according to another embodiment.
17 is a diagram illustrating an example of TCQ used in the present invention.
18 is a block diagram showing the configuration of a frequency domain audio decoding apparatus to which the present invention can be applied.
19 is a block diagram illustrating a configuration of a spectrum decoding apparatus according to an embodiment.
20 is a block diagram illustrating a configuration of a spectral inverse quantization apparatus according to an embodiment.
21 is a block diagram showing the configuration of a spectrum decoding apparatus according to an embodiment.
22 is a block diagram showing the configuration of an ISC decoding apparatus according to an embodiment.
23 is a block diagram showing the configuration of an ISC information decoding apparatus according to an embodiment.
24 is a block diagram showing the configuration of a spectrum decoding apparatus according to another embodiment.
25 is a block diagram showing the configuration of a spectrum decoding apparatus according to another embodiment.
26 is a block diagram showing the configuration of an ISC information encoding apparatus according to another embodiment.
27 is a block diagram showing the configuration of an ISC information decoding apparatus according to another embodiment.
28 is a block diagram illustrating a configuration of a multimedia device according to an embodiment.
29 is a block diagram illustrating a configuration of a multimedia device according to another embodiment.
30 is a block diagram illustrating a configuration of a multimedia device according to another exemplary embodiment.
31 is a flowchart illustrating an operation of a method for encoding a fine structure of a spectrum according to an embodiment.
32 is a flowchart illustrating an operation of a method for decoding a fine structure of a spectrum according to an embodiment.

본 발명은 다양한 변환을 가할 수 있고 여러가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 기술적 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해될 수 있다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Since the present invention can apply various transformations and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to a specific embodiment, it can be understood to include all transformations, equivalents or substitutes included in the spirit and scope of the present invention. In describing the present invention, if it is determined that a detailed description of a related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들이 용어들에 의해 한정되는 것은 아니다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. Terms such as first, second, etc. may be used to describe various elements, but the elements are not limited by the terms. The terms are used only for the purpose of distinguishing one component from another.

본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 본 발명에서 사용한 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나 이는 당 분야에 종사하는 기술자의 의도, 판례, 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.The terms used in the present invention are only used to describe specific embodiments, and are not intended to limit the present invention. The terms used in the present invention have been selected as currently widely used general terms as possible while considering the functions in the present invention, but these may vary depending on the intention, precedent, or emergence of new technology of those of ordinary skill in the art. In addition, in a specific case, there is a term arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the description of the corresponding invention. Therefore, the term used in the present invention should be defined based on the meaning of the term and the overall content of the present invention, rather than the name of a simple term.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 발명에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present invention, terms such as "comprises" or "have" are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

이하, 본 발명의 실시예들을 첨부 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1a 및 도 1b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 일예에 따른 구성을 각각 나타낸 블록도이다.1A and 1B are block diagrams respectively showing configurations of an audio encoding apparatus and a decoding apparatus to which the present invention can be applied according to an example.

도 1a에 도시된 오디오 부호화장치(110)는 전처리부(112), 주파수도메인 부호화부(114), 및 파라미터 부호화부(116)을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The audio encoding apparatus 110 shown in FIG. 1A may include a preprocessor 112 , a frequency domain encoder 114 , and a parameter encoder 116 . Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 1a에 있어서, 전처리부(112)는 입력신호에 대하여 필터링 혹은 다운샘플링 등을 수행할 수 있으나, 이에 한정되는 것은 아니다. 입력신호는 오디오, 뮤직 혹은 스피치, 혹은 이들의 혼합신호를 나타내는 사운드 등의 미디어 신호를 의미할 수 있으나, 이하에서는 설명의 편의를 위하여 오디오 신호로서 지칭하기로 한다. In FIG. 1A , the preprocessor 112 may perform filtering or downsampling on an input signal, but is not limited thereto. The input signal may mean a media signal such as audio, music or speech, or a sound representing a mixed signal thereof, but hereinafter, it will be referred to as an audio signal for convenience of description.

주파수도메인 부호화부(114)는 전처리부(112)로부터 제공되는 오디오 신호에 대하여 시간-주파수 변환을 수행하고, 오디오 신호의 채널 수, 부호화대역 및 비트율에 대응하여 부호화 툴을 선택하고, 선택된 부호화 툴을 이용하여 오디오 신호에 대한 부호화를 수행할 수 있다. 시간-주파수 변환은 MDCT(Modified Discrete Cosine Transform), MLT(Modulated Lapped Transform) 혹은 FFT(Fast Fourier Transform)를 사용하나, 이에 한정되는 것은 아니다. 여기서, 주어진 비트수가 충분한 경우 전체 대역에 대하여 일반적인 변환 부호화방식을 적용하며, 주어진 비트수가 충분하지 않은 경우 일부 대역에 대해서는 대역확장방식을 적용할 수 있다. 한편, 오디오 신호가 스테레오 혹은 멀티채널인 경우, 주어진 비트수가 충분하면 각 채널별로 부호화하고, 충분하지 않으면 다운믹싱방식을 적용할 수 있다. 주파수도메인 부호화부(114)로부터는 부호화된 스펙트럼 계수가 생성된다.The frequency domain encoding unit 114 performs time-frequency transformation on the audio signal provided from the preprocessor 112 , selects an encoding tool corresponding to the number of channels, encoding band, and bit rate of the audio signal, and selects the selected encoding tool can be used to encode an audio signal. The time-frequency transform uses a Modified Discrete Cosine Transform (MDCT), a Modulated Lapped Transform (MLT), or a Fast Fourier Transform (FFT), but is not limited thereto. Here, when the given number of bits is sufficient, the general transform encoding method is applied to the entire band, and when the given number of bits is insufficient, the band extension method can be applied to some bands. On the other hand, when the audio signal is stereo or multi-channel, if the given number of bits is sufficient, it is encoded for each channel, and if not enough, the downmixing method may be applied. The frequency domain encoder 114 generates encoded spectral coefficients.

파라미터 부호화부(116)는 주파수도메인 부호화부(114)로부터 제공되는 부호화된 스펙트럼 계수로부터 파라미터를 추출하고, 추출된 파라미터를 부호화할 수 있다. 파라미터는 예를 들어 서브밴드 혹은 밴드 별로 추출될 수 있으며, 이하에서는 설명의 간소화를 위하여 서브밴드라고 지칭하기로 한다. 각 서브밴드는 스펙트럼 계수들을 그루핑한 단위로서, 임계대역을 반영하여 균일 혹은 비균일 길이를 가질 수 있다. 비균일 길이를 가지는 경우, 저주파수 대역에 존재하는 서브밴드의 경우 고주파수 대역에서와 비교하여 상대적으로 적은 길이를 가질 수 있다. 한 프레임에 포함되는 서브밴드의 개수 및 길이는 코덱 알고리즘에 따라서 달라지며 부호화 성능에 영향을 미칠 수 있다. 한편, 파라미터는 서브밴드의 스케일팩터, 파워, 평균 에너지, 혹은 norm을 예로 들 수 있으나, 이에 한정되는 것은 아니다. 부호화결과 얻어지는 스펙트럼 계수와 파라미터는 비트스트림을 형성하며, 저장매체에 저장되거나 채널을 통하여 예를 들어 패킷 형태로 전송될 수 있다.The parameter encoder 116 may extract a parameter from the coded spectral coefficient provided from the frequency domain encoder 114 and encode the extracted parameter. The parameter may be extracted for each subband or each band, for example, and will be referred to as a subband hereinafter for the sake of simplicity of description. Each subband is a unit of grouping spectral coefficients, and may have a uniform or non-uniform length by reflecting a critical band. In the case of having a non-uniform length, a subband existing in a low frequency band may have a relatively small length compared to that in a high frequency band. The number and length of subbands included in one frame vary depending on a codec algorithm and may affect encoding performance. Meanwhile, the parameter may include, but is not limited to, a scale factor, power, average energy, or norm of a subband. The spectral coefficients and parameters obtained as a result of encoding form a bitstream, and may be stored in a storage medium or transmitted through a channel, for example, in the form of a packet.

도 1b에 도시된 오디오 복호화장치(130)는 파라미터 복호화부(132), 주파수도메인 복호화부(134), 및 후처리부(136)을 포함할 수 있다. 여기서, 주파수도메인 복호화부(134)는 프레임 소거 은닉(FEC: frame erasure concealment) 알고리즘 혹은 패킷 손실 은닉(PLC: packet loss concelament) 알고리즘을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The audio decoding apparatus 130 illustrated in FIG. 1B may include a parameter decoding unit 132 , a frequency domain decoding unit 134 , and a post-processing unit 136 . Here, the frequency domain decoder 134 may include a frame erasure concealment (FEC) algorithm or a packet loss concealment (PLC) algorithm. Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 1b에 있어서, 파라미터 복호화부(132)는 수신된 비트스트림으로부터 부호화된 파라미터를 복호화하고, 복호화된 파라미터로부터 프레임 단위로 소거 혹은 손실과 같은 에러가 발생하였는지를 체크할 수 있다. 에러 체크는 공지된 다양한 방법을 사용할 수 있으며, 현재 프레임이 정상 프레임인지 소거 혹은 손실 프레임인지에 대한 정보를 주파수도메인 복호화부(134)로 제공한다. 이하에서는 설명의 간소화를 위하여 소거 혹은 손실 프레임을 에러프레임으로 지칭하기로 한다.Referring to FIG. 1B , the parameter decoding unit 132 may decode an encoded parameter from a received bitstream and check whether an error such as erasure or loss occurs from the decoded parameter on a frame-by-frame basis. The error check may use various well-known methods, and information on whether the current frame is a normal frame, an erased frame, or a lost frame is provided to the frequency domain decoder 134 . Hereinafter, an erased or lost frame will be referred to as an error frame for the sake of simplification of description.

주파수도메인 복호화부(134)는 현재 프레임이 정상 프레임인 경우 일반적인 변환 복호화과정을 통하여 복호화를 수행하여 합성된 스펙트럼 계수를 생성할 수 있다. 한편, 주파수도메인 복호화부(134)는 현재 프레임이 에러프레임인 경우 FEC 혹은 PLC 알고리즘을 통하여 이전 정상 프레임의 스펙트럼 계수를 에러프레임에 반복하여 사용하거나 회귀분석을 통하여 스케일링하여 반복함으로써, 합성된 스펙트럼 계수를 생성할 수 있다. 주파수도메인 복호화부(134)는 합성된 스펙트럼 계수에 대하여 주파수-시간 변환을 수행하여 시간도메인 신호를 생성할 수 있다. When the current frame is a normal frame, the frequency domain decoder 134 may perform decoding through a general transform decoding process to generate synthesized spectral coefficients. On the other hand, when the current frame is an error frame, the frequency domain decoder 134 repeatedly uses the spectral coefficients of the previous normal frame for the error frame through the FEC or PLC algorithm, or by scaling and repeating through regression analysis, synthesized spectral coefficients. can create The frequency domain decoder 134 may generate a time domain signal by performing frequency-time conversion on the synthesized spectral coefficients.

후처리부(136)는 주파수도메인 복호화부(134)로부터 제공되는 시간도메인 신호에 대하여 음질 향상을 위한 필터링 혹은 업샘플링 등을 수행할 수 있으나, 이에 한정되는 것은 아니다. 후처리부(136)는 출력신호로서 복원된 오디오 신호를 제공한다.The post-processing unit 136 may perform filtering or upsampling to improve sound quality on the time domain signal provided from the frequency domain decoding unit 134 , but is not limited thereto. The post-processing unit 136 provides the restored audio signal as an output signal.

도 2a 및 도 2b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 다른 예에 따른 구성을 각각 나타낸 블록도로서, 스위칭 구조를 가진다. 2A and 2B are block diagrams respectively illustrating configurations of an audio encoding apparatus and a decoding apparatus according to another example to which the present invention can be applied, and have a switching structure.

도 2a에 도시된 오디오 부호화장치(210)는 전처리부(212), 모드결정부(213),주파수도메인 부호화부(214), 시간도메인 부호화부(215) 및 파라미터 부호화부(216)을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The audio encoding apparatus 210 shown in FIG. 2A may include a preprocessor 212 , a mode determiner 213 , a frequency domain encoder 214 , a time domain encoder 215 , and a parameter encoder 216 . can Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 2a에 있어서, 전처리부(212)는 도 1a의 전처리부(112)와 실질적으로 동일하므로 설명을 생략하기로 한다.In FIG. 2A , the pre-processing unit 212 is substantially the same as the pre-processing unit 112 of FIG. 1A , and thus a description thereof will be omitted.

모드결정부(213)는 입력신호의 특성을 참조하여 부호화 모드를 결정할 수 있다. 입력신호의 특성에 따라서 현재 프레임에 적합한 부호화 모드가 음성모드인지 또는 음악모드인지 여부를 결정할 수 있고, 또한 현재 프레임에 효율적인 부호화 모드가 시간도메인 모드인지 아니면 주파수도메인 모드인지를 결정할 수 있다. 여기서, 프레임의 단구간 특성 혹은 복수의 프레임들에 대한 장구간 특성 등을 이용하여 입력신호의 특성을 파악할 수 있으나, 이에 한정되는 것은 아니다. 예를 들면, 입력신호가 음성신호에 해당하면 음성모드 혹은 시간도메인 모드로 결정하고, 입력신호가 음성신호 이외의 신호 즉, 음악신호 혹은 혼합신호에 해당하면 음악모드 혹은 주파수도메인 모드로 결정할 수 있다. 모드결정부(213)는 입력신호의 특성이 음악모드 혹은 주파수도메인 모드에 해당하는 경우에는 전처리부(212)의 출력신호를 주파수도메인 부호화부(214)로, 입력신호의 특성이 음성모드 혹은 시간도메인 모드에 해당하는 경우 시간도메인 부호화부(215)로 제공할 수 있다.The mode determiner 213 may determine the encoding mode with reference to the characteristics of the input signal. Whether the encoding mode suitable for the current frame is the voice mode or the music mode may be determined according to the characteristics of the input signal, and it may be determined whether the encoding mode effective for the current frame is the time domain mode or the frequency domain mode. Here, the characteristics of the input signal may be determined by using the short-term characteristics of the frame or the long-term characteristics of a plurality of frames, but is not limited thereto. For example, if the input signal corresponds to a voice signal, the voice mode or time domain mode is determined. . The mode determining unit 213 transmits the output signal of the preprocessor 212 to the frequency domain encoding unit 214 when the characteristics of the input signal correspond to the music mode or the frequency domain mode, and the characteristics of the input signal are the voice mode or the time domain. If it corresponds to the domain mode, it may be provided to the time domain encoder 215 .

주파수도메인 부호화부(214)는 도 1a의 주파수도메인 부호화부(114)와 실질적으로 동일하므로 설명을 생략하기로 한다.Since the frequency domain encoder 214 is substantially the same as the frequency domain encoder 114 of FIG. 1A , a description thereof will be omitted.

시간도메인 부호화부(215)는 전처리부(212)로부터 제공되는 오디오 신호에 대하여 CELP(Code Excited Linear Prediction) 부호화를 수행할 수 있다. 구체적으로, ACELP(Algebraic CELP)를 사용할 수 있으나, 이에 한정되는 것은 아니다. The time domain encoder 215 may perform Code Excited Linear Prediction (CELP) encoding on the audio signal provided from the preprocessor 212 . Specifically, ACELP (Algebraic CELP) may be used, but is not limited thereto.

파라미터 부호화부(216)는 주파수도메인 부호화부(214) 혹은 시간도메인 부호화부(215)로부터 제공되는 부호화된 스펙트럼 계수로부터 파라미터를 추출하고, 추출된 파라미터를 부호화한다. 파라미터 부호화부(216)는 도 1a의 파라미터 부호화부(116)와 실질적으로 동일하므로 설명을 생략하기로 한다. 부호화결과 얻어지는 스펙트럼 계수와 파라미터는 부호화 모드 정보와 함께 비트스트림을 형성하며, 채널을 통하여 패킷 형태로 전송되거나 저장매체에 저장될 수 있다.The parameter encoder 216 extracts parameters from the encoded spectral coefficients provided from the frequency domain encoder 214 or the time domain encoder 215 and encodes the extracted parameters. Since the parameter encoder 216 is substantially the same as the parameter encoder 116 of FIG. 1A , a description thereof will be omitted. Spectral coefficients and parameters obtained as a result of encoding form a bitstream together with encoding mode information, and may be transmitted in a packet form through a channel or stored in a storage medium.

도 2b에 도시된 오디오 복호화장치(230)는 파라미터 복호화부(232), 모드결정부(233), 주파수도메인 복호화부(234), 시간도메인 복호화부(235) 및 후처리부(236)을 포함할 수 있다. 여기서, 주파수도메인 복호화부(234)와 시간도메인 복호화부(235)는 각각 해당 도메인에서의 FEC 혹은 PLC 알고리즘을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The audio decoding apparatus 230 shown in FIG. 2B may include a parameter decoding unit 232 , a mode determining unit 233 , a frequency domain decoding unit 234 , a time domain decoding unit 235 , and a post-processing unit 236 . can Here, the frequency domain decoding unit 234 and the time domain decoding unit 235 may each include an FEC or PLC algorithm in a corresponding domain. Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 2b에 있어서, 파라미터 복호화부(232)는 패킷 형태로 전송되는 비트스트림으로부터 파라미터를 복호화하고, 복호화된 파라미터로부터 프레임 단위로 에러가 발생하였는지를 체크할 수 있다. 에러 체크는 공지된 다양한 방법을 사용할 수 있으며, 현재 프레임이 정상 프레임인지 에러프레임인지에 대한 정보를 주파수도메인 복호화부(234) 혹은 시간도메인 복호화부(235)로 제공한다. Referring to FIG. 2B , the parameter decoding unit 232 may decode a parameter from a bitstream transmitted in the form of a packet, and check whether an error has occurred from the decoded parameter on a frame-by-frame basis. Various known methods may be used for the error check, and information on whether the current frame is a normal frame or an error frame is provided to the frequency domain decoder 234 or the time domain decoder 235 .

모드결정부(233)는 비트스트림에 포함된 부호화 모드 정보를 체크하여 현재 프레임을 주파수도메인 복호화부(234) 혹은 시간도메인 복호화부(235)로 제공한다.The mode determiner 233 checks the encoding mode information included in the bitstream and provides the current frame to the frequency domain decoder 234 or the time domain decoder 235 .

주파수도메인 복호화부(234)는 부호화 모드가 음악모드 혹은 주파수도메인 모드인 경우 동작하며, 현재 프레임이 정상 프레임인 경우 일반적인 변환 복호화과정을 통하여 복호화를 수행하여 합성된 스펙트럼 계수를 생성한다. 한편, 현재 프레임이 에러프레임이고, 이전 프레임의 부호화 모드가 음악모드 혹은 주파수도메인 모드인 경우 주파수 도메인에서의 FEC 혹은 PLC 알고리즘을 통하여 이전 정상 프레임의 스펙트럼 계수를 에러프레임에 반복하여 사용하거나 회귀분석을 통하여 스케일링하여 반복함으로써, 합성된 스펙트럼 계수를 생성할 수 있다. 주파수도메인 복호화부(234)는 합성된 스펙트럼 계수에 대하여 주파수-시간 변환을 수행하여 시간도메인 신호를 생성할 수 있다. The frequency domain decoder 234 operates when the encoding mode is the music mode or the frequency domain mode, and when the current frame is a normal frame, performs decoding through a general transform decoding process to generate synthesized spectral coefficients. On the other hand, if the current frame is an error frame and the encoding mode of the previous frame is music mode or frequency domain mode, the spectral coefficients of the previous normal frame are repeatedly used in the error frame through FEC or PLC algorithm in the frequency domain, or regression analysis is performed. It is possible to generate synthesized spectral coefficients by repeating by scaling. The frequency domain decoder 234 may generate a time domain signal by performing frequency-time conversion on the synthesized spectral coefficients.

시간도메인 복호화부(235)는 부호화 모드가 음성모드 혹은 시간도메인 모드인 경우 동작하며, 현재 프레임이 정상 프레임인 경우 일반적인 CELP 복호화과정을 통하여 복호화를 수행하여 시간도메인 신호를 생성한다. 한편, 현재 프레임이 에러프레임이고, 이전 프레임의 부호화 모드가 음성모드 혹은 시간도메인 모드인 경우 시간 도메인에서의 FEC 혹은 PLC 알고리즘을 수행할 수 있다.The time domain decoder 235 operates when the encoding mode is the voice mode or the time domain mode, and when the current frame is a normal frame, performs decoding through a general CELP decoding process to generate a time domain signal. Meanwhile, when the current frame is an error frame and the encoding mode of the previous frame is a voice mode or a time domain mode, the FEC or PLC algorithm in the time domain may be performed.

후처리부(236)는 주파수도메인 복호화부(234) 혹은 시간도메인 복호화부(235)로부터 제공되는 시간도메인 신호에 대하여 필터링 혹은 업샘플링 등을 수행할 수 있으나, 이에 한정되는 것은 아니다. 후처리부(236)는 출력신호로서 복원된 오디오신호를 제공한다.The post-processing unit 236 may perform filtering or upsampling on the time domain signal provided from the frequency domain decoding unit 234 or the time domain decoding unit 235, but is not limited thereto. The post-processing unit 236 provides the restored audio signal as an output signal.

도 3a 및 도 3b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 다른 예에 따른 구성을 각각 나타낸 블록도로서, 스위칭 구조를 가진다. 3A and 3B are block diagrams respectively illustrating configurations of an audio encoding apparatus and a decoding apparatus according to another example to which the present invention can be applied, and have a switching structure.

도 3a에 도시된 오디오 부호화장치(310)는 전처리부(312), LP(Linear Prediction) 분석부(313), 모드결정부(314), 주파수도메인 여기부호화부(315), 시간도메인 여기부호화부(316) 및 파라미터 부호화부(317)을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The audio encoding apparatus 310 shown in FIG. 3A includes a preprocessor 312, a linear prediction (LP) analysis unit 313, a mode determination unit 314, a frequency domain excitation encoding unit 315, and a time domain excitation encoding unit. 316 and a parameter encoder 317 may be included. Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 3a에 있어서, 전처리부(312)는 도 1a의 전처리부(112)와 실질적으로 동일하므로 설명을 생략하기로 한다.In FIG. 3A , the pre-processing unit 312 is substantially the same as the pre-processing unit 112 of FIG. 1A , and thus a description thereof will be omitted.

LP 분석부(313)는 입력신호에 대하여 LP 분석을 수행하여 LP 계수를 추출하고, 추출된 LP 계수로부터 여기신호를 생성한다. 여기신호는 부호화 모드에 따라서 주파수도메인 여기부호화부(315)와 시간도메인 여기부호화부(316) 중 하나로 제공될 수 있다.The LP analysis unit 313 extracts LP coefficients by performing LP analysis on the input signal, and generates an excitation signal from the extracted LP coefficients. The excitation signal may be provided to one of the frequency domain excitation encoder 315 and the time domain excitation encoder 316 according to the encoding mode.

모드결정부(314)는 도 2b의 모드결정부(213)와 실질적으로 동일하므로 설명을 생략하기로 한다.Since the mode determining unit 314 is substantially the same as the mode determining unit 213 of FIG. 2B , a description thereof will be omitted.

주파수도메인 여기부호화부(315)는 부호화 모드가 음악모드 혹은 주파수도메인 모드인 경우 동작하며, 입력신호가 여기신호인 것을 제외하고는 도 1a의 주파수도메인 부호화부(114)와 실질적으로 동일하므로 설명을 생략하기로 한다.The frequency domain excitation encoder 315 operates when the encoding mode is a music mode or a frequency domain mode, and is substantially the same as the frequency domain encoder 114 of FIG. 1A except that the input signal is an excitation signal. to be omitted.

시간도메인 여기부호화부(316)는 부호화 모드가 음성모드 혹은 시간도메인 모드인 경우 동작하며, 입력신호가 여기신호인 것을 제외하고는 도 2a의 시간도메인 부호화부(215)와 실질적으로 동일하므로 설명을 생략하기로 한다.The time domain excitation encoder 316 operates when the encoding mode is the voice mode or the time domain mode, and is substantially the same as the time domain encoder 215 of FIG. 2A except that the input signal is an excitation signal. to be omitted.

파라미터 부호화부(317)는 주파수도메인 여기부호화부(315) 혹은 시간도메인 여기부호화부(316)로부터 제공되는 부호화된 스펙트럼 계수로부터 파라미터를 추출하고, 추출된 파라미터를 부호화한다. 파라미터 부호화부(317)는 도 1a의 파라미터 부호화부(116)와 실질적으로 동일하므로 설명을 생략하기로 한다. 부호화결과 얻어지는 스펙트럼 계수와 파라미터는 부호화 모드 정보와 함께 비트스트림을 형성하며, 채널을 통하여 패킷 형태로 전송되거나 저장매체에 저장될 수 있다.The parameter encoder 317 extracts parameters from the coded spectral coefficients provided from the frequency domain excitation encoder 315 or the time domain excitation encoder 316 , and encodes the extracted parameters. Since the parameter encoder 317 is substantially the same as the parameter encoder 116 of FIG. 1A , a description thereof will be omitted. Spectral coefficients and parameters obtained as a result of encoding form a bitstream together with encoding mode information, and may be transmitted in a packet form through a channel or stored in a storage medium.

도 3b에 도시된 오디오 복호화장치(330)는 파라미터 복호화부(332), 모드결정부(333), 주파수도메인 여기복호화부(334), 시간도메인 여기복호화부(335), LP 합성부(336) 및 후처리부(337)을 포함할 수 있다. 여기서, 주파수도메인 여기복호화부(334)와 시간도메인 여기복호화부(335)는 각각 해당 도메인에서의 FEC 혹은 PLC 알고리즘을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The audio decoding apparatus 330 shown in FIG. 3B includes a parameter decoding unit 332 , a mode determining unit 333 , a frequency domain excitation decoding unit 334 , a time domain excitation decoding unit 335 , and an LP synthesis unit 336 . and a post-processing unit 337 . Here, the frequency domain excitation decoding unit 334 and the time domain excitation decoding unit 335 may each include an FEC or PLC algorithm in a corresponding domain. Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 3b에 있어서, 파라미터 복호화부(332)는 패킷 형태로 전송되는 비트스트림으로부터 파라미터를 복호화하고, 복호화된 파라미터로부터 프레임 단위로 에러가 발생하였는지를 체크할 수 있다. 에러 체크는 공지된 다양한 방법을 사용할 수 있으며, 현재 프레임이 정상 프레임인지 에러프레임인지에 대한 정보를 주파수도메인 여기복호화부(334) 혹은 시간도메인 여기복호화부(335)로 제공한다. Referring to FIG. 3B , the parameter decoding unit 332 may decode a parameter from a bitstream transmitted in the form of a packet and check whether an error has occurred from the decoded parameter on a frame-by-frame basis. Various known methods may be used for error checking, and information on whether the current frame is a normal frame or an error frame is provided to the frequency domain excitation decoding unit 334 or the time domain excitation decoding unit 335 .

모드결정부(333)는 비트스트림에 포함된 부호화 모드 정보를 체크하여 현재 프레임을 주파수도메인 여기복호화부(334) 혹은 시간도메인 여기복호화부(335)로 제공한다.The mode determining unit 333 checks the encoding mode information included in the bitstream and provides the current frame to the frequency domain excitation decoding unit 334 or the time domain excitation decoding unit 335 .

주파수도메인 여기복호화부(334)는 부호화 모드가 음악모드 혹은 주파수도메인 모드인 경우 동작하며, 현재 프레임이 정상 프레임인 경우 일반적인 변환 복호화과정을 통하여 복호화를 수행하여 합성된 스펙트럼 계수를 생성한다. 한편, 현재 프레임이 에러프레임이고, 이전 프레임의 부호화 모드가 음악모드 혹은 주파수도메인 모드인 경우 주파수 도메인에서의 FEC 혹은 PLC 알고리즘을 통하여 이전 정상 프레임의 스펙트럼 계수를 에러프레임에 반복하여 사용하거나 회귀분석을 통하여 스케일링하여 반복함으로써, 합성된 스펙트럼 계수를 생성할 수 있다. 주파수도메인 여기복호화부(334)는 합성된 스펙트럼 계수에 대하여 주파수-시간 변환을 수행하여 시간도메인 신호인 여기신호를 생성할 수 있다. The frequency domain excitation decoding unit 334 operates when the encoding mode is the music mode or the frequency domain mode, and when the current frame is a normal frame, performs decoding through a general transform decoding process to generate synthesized spectral coefficients. On the other hand, if the current frame is an error frame and the encoding mode of the previous frame is music mode or frequency domain mode, the spectral coefficients of the previous normal frame are repeatedly used in the error frame through FEC or PLC algorithm in the frequency domain, or regression analysis is performed. It is possible to generate synthesized spectral coefficients by repeating by scaling. The frequency domain excitation decoder 334 may generate an excitation signal that is a time domain signal by performing frequency-time conversion on the synthesized spectral coefficients.

시간도메인 여기복호화부(335)는 부호화 모드가 음성모드 혹은 시간도메인 모드인 경우 동작하며, 현재 프레임이 정상 프레임인 경우 일반적인 CELP 복호화과정을 통하여 복호화를 수행하여 시간도메인 신호인 여기신호를 생성한다. 한편, 현재 프레임이 에러프레임이고, 이전 프레임의 부호화 모드가 음성모드 혹은 시간도메인 모드인 경우 시간 도메인에서의 FEC 혹은 PLC 알고리즘을 수행할 수 있다.The time domain excitation decoding unit 335 operates when the encoding mode is the voice mode or the time domain mode, and when the current frame is a normal frame, performs decoding through a general CELP decoding process to generate an excitation signal that is a time domain signal. Meanwhile, when the current frame is an error frame and the encoding mode of the previous frame is a voice mode or a time domain mode, the FEC or PLC algorithm in the time domain may be performed.

LP 합성부(336)는 주파수도메인 여기복호화부(334) 혹은 시간도메인 여기복호화부(335)로부터 제공되는 여기신호에 대하여 LP 합성을 수행하여 시간도메인 신호를 생성한다.The LP synthesis unit 336 generates a time domain signal by performing LP synthesis on the excitation signal provided from the frequency domain excitation decoding unit 334 or the time domain excitation decoding unit 335 .

후처리부(337)는 LP 합성부(336)로부터 제공되는 시간도메인 신호에 대하여 필터링 혹은 업샘플링 등을 수행할 수 있으나, 이에 한정되는 것은 아니다. 후처리부(337)는 출력신호로서 복원된 오디오신호를 제공한다.The post-processing unit 337 may perform filtering or upsampling on the time domain signal provided from the LP synthesis unit 336, but is not limited thereto. The post-processing unit 337 provides the restored audio signal as an output signal.

도 4a 및 도 4b는 본 발명이 적용될 수 있는 오디오 부호화장치 및 복호화장치의 다른 예에 따른 구성을 각각 나타낸 블록도로서, 스위칭 구조를 가진다.4A and 4B are block diagrams respectively illustrating configurations of an audio encoding apparatus and a decoding apparatus according to another example to which the present invention can be applied, and have a switching structure.

도 4a에 도시된 오디오 부호화장치(410)는 전처리부(412), 모드결정부(413), 주파수도메인 부호화부(414), LP 분석부(415), 주파수도메인 여기부호화부(416), 시간도메인 여기부호화부(417) 및 파라미터 부호화부(418)을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다. 도 4a에 도시된 오디오 부호화장치(410)는 도 2a의 오디오 부호화장치(210)와 도 3a의 오디오 부호화장치(310)를 결합한 것으로 볼 수 있으므로, 공통되는 부분의 동작 설명은 생략하는 한편, 모드결정부(413)의 동작에 대하여 설명하기로 한다.The audio encoding apparatus 410 shown in FIG. 4A includes a preprocessor 412 , a mode determiner 413 , a frequency domain encoder 414 , an LP analyzer 415 , a frequency domain excitation encoder 416 , and time It may include a domain excitation encoder 417 and a parameter encoder 418 . Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown). Since the audio encoding apparatus 410 shown in FIG. 4A can be viewed as a combination of the audio encoding apparatus 210 of FIG. 2A and the audio encoding apparatus 310 of FIG. 3A , descriptions of operations of common parts are omitted, while the mode An operation of the determination unit 413 will be described.

모드결정부(413)는 입력신호의 특성 및 비트율을 참조하여 입력신호의 부호화모드를 결정할 수 있다. 모드결정부(413)는 입력신호의 특성에 따라서 현재 프레임이 음성모드인지 또는 음악모드인지에 따라서, 또한 현재 프레임에 효율적인 부호화 모드가 시간도메인 모드인지 아니면 주파수도메인 모드인지에 따라서 CELP 모드와 그외의 모드로 결정할 수 있다. 만약, 입력신호의 특성이 음성모드인 경우에는 CELP 모드로 결정하고, 음악모드이면서 고비트율인 경우 FD 모드로 결정하고, 음악모드이면서 저비트율인 경우 오디오 모드로 결정할 수 있다. 모드결정부(413)는 FD 모드인 경우 입력신호를 주파수도메인 부호화부(414)로, 오디오 모드인 경우 LP 분석부(415)를 통하여 주파수도메인 여기부호화부(416)로, CELP 모드인 경우 LP 분석부(415)를 통하여 시간도메인 여기부호화부(417)로 제공할 수 있다.The mode determiner 413 may determine the encoding mode of the input signal by referring to the characteristics and bit rate of the input signal. The mode determining unit 413 determines whether the current frame is a voice mode or a music mode according to the characteristics of the input signal, and whether the efficient encoding mode for the current frame is a time domain mode or a frequency domain mode. mode can be determined. If the characteristic of the input signal is the voice mode, the CELP mode may be determined, the FD mode may be determined in the case of a music mode and a high bit rate, and the audio mode may be determined if the music mode is a low bit rate. The mode determination unit 413 transmits the input signal to the frequency domain encoding unit 414 in the FD mode, the frequency domain excitation encoding unit 416 through the LP analysis unit 415 in the audio mode, and the LP in the CELP mode. It may be provided to the time domain excitation encoding unit 417 through the analysis unit 415 .

주파수도메인 부호화부(414)는 도 1a의 오디오 부호화장치(110)의 주파수도메인 부호화부(114) 혹은 도 2a의 오디오 부호화장치(210)의 주파수도메인 부호화부(214)에, 주파수도메인 여기부호화부(416) 혹은 시간도메인 여기부호화부(417는)는 도 3a의 오디오 부호화장치(310)의 주파수도메인 여기부호화부(315) 혹은 시간도메인 여기부호화부(316)에 대응될 수 있다.The frequency domain encoding unit 414 is connected to the frequency domain encoding unit 114 of the audio encoding apparatus 110 of FIG. 1A or the frequency domain encoding unit 214 of the audio encoding apparatus 210 of FIG. 2A, and the frequency domain excitation encoding unit 416 or the time domain excitation encoder 417 may correspond to the frequency domain excitation encoder 315 or the time domain excitation encoder 316 of the audio encoding apparatus 310 of FIG. 3A .

도 4b에 도시된 오디오 복호화장치(430)는 파라미터 복호화부(432), 모드결정부(433), 주파수도메인 복호화부(434), 주파수도메인 여기복호화부(435), 시간도메인 여기복호화부(436), LP 합성부(437) 및 후처리부(438)를 포함할 수 있다. 여기서, 주파수도메인 복호화부(434), 주파수도메인 여기복호화부(435)와 시간도메인 여기복호화부(436)는 각각 해당 도메인에서의 FEC 혹은 PLC 알고리즘을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다. 도 4b에 도시된 오디오 복호화장치(430)는 도 2b의 오디오 복호화장치(230)와 도 3b의 오디오 복호화장치(330)를 결합한 것으로 볼 수 있으므로, 공통되는 부분의 동작 설명은 생략하는 한편, 모드결정부(433)의 동작에 대하여 설명하기로 한다.The audio decoding apparatus 430 shown in FIG. 4B includes a parameter decoding unit 432 , a mode determining unit 433 , a frequency domain decoding unit 434 , a frequency domain excitation decoding unit 435 , and a time domain excitation decoding unit 436 . ), an LP synthesis unit 437 and a post-processing unit 438 may be included. Here, the frequency domain decoding unit 434, the frequency domain excitation decoding unit 435, and the time domain excitation decoding unit 436 may each include an FEC or PLC algorithm in a corresponding domain. Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown). Since the audio decoding device 430 shown in FIG. 4B can be viewed as a combination of the audio decoding device 230 of FIG. 2B and the audio decoding device 330 of FIG. 3B , the description of common parts of the operation is omitted, while the mode An operation of the determination unit 433 will be described.

모드결정부(433)는 비트스트림에 포함된 부호화 모드 정보를 체크하여 현재 프레임을 주파수도메인 복호화부(434), 주파수도메인 여기복호화부(435) 혹은 시간도메인 여기복호화부(436)로 제공한다.The mode determination unit 433 checks the encoding mode information included in the bitstream and provides the current frame to the frequency domain decoding unit 434 , the frequency domain excitation decoding unit 435 , or the time domain excitation decoding unit 436 .

주파수도메인 복호화부(434)는 도 1b의 오디오 부호화장치(130)의 주파수도메인 복호화부(134) 혹은 도 2b의 오디오 복호화장치(230)의 주파수도메인 복호화부(234)에, 주파수도메인 여기복호화부(435) 혹은 시간도메인 여기복호화부(436)는 도 3b의 오디오 복호화장치(330)의 주파수도메인 여기복호화부(334) 혹은 시간도메인 여기복호화부(335)에 대응될 수 있다.The frequency domain decoding unit 434 is connected to the frequency domain decoding unit 134 of the audio encoding apparatus 130 of FIG. 1B or the frequency domain decoding unit 234 of the audio decoding apparatus 230 of FIG. 2B, and the frequency domain excitation decoding unit (435) or the time domain excitation decoding unit 436 may correspond to the frequency domain excitation decoding unit 334 or the time domain excitation decoding unit 335 of the audio decoding apparatus 330 of FIG. 3B.

도 5는 본 발명이 적용되는 주파수 도메인 오디오 부호화장치의 구성을 나타낸 블럭도이다.5 is a block diagram showing the configuration of a frequency domain audio encoding apparatus to which the present invention is applied.

도 5에 도시된 주파수 도메인 오디오 부호화장치(510)는 트랜지언트 검출부(511), 변환부(512), 신호분류부(513), 에너지 부호화부(514), 스펙트럼 정규화부(515), 비트할당부(516), 스펙트럼 부호화부(517) 및 다중화부(518)를 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다. 여기서, 주파수 도메인 오디오 부호화장치(510)는 도 2에 도시된 주파수 도메인 부호화부(214)의 모든 기능과 파라미터 부호화부(216)의 일부 기능을 수행할 수 있다. 한편, 주파수 도메인 오디오 부호화장치(510)는 신호분류부(513)를 제외하고는 ITU-T G.719 표준에 개시된 엔코더의 구성으로 대체될 수 있으며, 이때 변환부(512)는 50%의 오버랩 구간을 갖는 변환윈도우를 사용할 수 있다. 또한, 주파수 도메인 오디오 부호화장치(510)는 트랜지언트 검출부(511)와 신호분류부(513)를 제외하고는 ITU-T G.719 표준에 개시된 엔코더의 구성으로 대체될 수 있다. 각 경우에 있어서, 도시되지는 않았으나, ITU-T G.719 표준에서와 같이 스펙트럼 부호화부(517)의 후단에 노이즈 레벨 추정부를 더 구비하여, 비트할당 과정에서 제로 비트가 할당된 스펙트럼 계수를 위한 노이즈 레벨을 추정하여 비트스트림에 포함시킬 수 있다. The frequency domain audio encoding apparatus 510 shown in FIG. 5 includes a transient detection unit 511 , a transformation unit 512 , a signal classification unit 513 , an energy encoding unit 514 , a spectrum normalization unit 515 , and a bit allocation unit. 516 , a spectrum encoder 517 and a multiplexer 518 may be included. Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown). Here, the frequency domain audio encoding apparatus 510 may perform all functions of the frequency domain encoding unit 214 shown in FIG. 2 and some functions of the parameter encoding unit 216 . On the other hand, the frequency domain audio encoding apparatus 510 may be replaced with the encoder configuration disclosed in the ITU-T G.719 standard except for the signal classifying unit 513, and in this case, the transforming unit 512 has an overlap of 50%. A transformation window with a section can be used. Also, the frequency domain audio encoding apparatus 510 may be replaced with the encoder configuration disclosed in the ITU-T G.719 standard except for the transient detection unit 511 and the signal classification unit 513 . In each case, although not shown, a noise level estimation unit is further provided at the rear end of the spectrum encoding unit 517 as in the ITU-T G.719 standard, so that in the bit allocation process, a zero bit is allocated for the spectral coefficient. The noise level may be estimated and included in the bitstream.

도 5를 참조하면, 트랜지언트 검출부(511)는 입력 신호를 분석하여 트랜지언트 특성을 나타내는 구간을 검출하고, 검출 결과에 대응하여 각 프레임에 대한 트랜지언트 시그널링 정보를 생성할 수 있다. 이때, 트랜지언트 구간의 검출에는 공지된 다양한 방법을 사용할 수 있다. 일실시예에 따르면, 트랜지언트 검출부(511)는 먼저 현재 프레임이 트랜지언트 프레임인지를 1차적으로 판단하고, 트랜지언트 프레임으로 판단된 현재 프레임에 대하여 2차적으로 검증을 수행할 수 있다. 트랜지언트 시그널링 정보는 다중화부(518)를 통하여 비트스트림에 포함되는 한편, 변환부(512)로 제공될 수 있다.Referring to FIG. 5 , the transient detection unit 511 may analyze an input signal to detect a section indicating a transient characteristic, and generate transient signaling information for each frame in response to the detection result. In this case, various known methods may be used to detect the transient section. According to an embodiment, the transient detector 511 may first determine whether the current frame is a transient frame, and may secondarily perform verification on the current frame determined as the transient frame. The transient signaling information may be included in the bitstream through the multiplexer 518 and provided to the converter 512 .

변환부(512)는 트랜지언트 구간의 검출 결과에 따라서, 변환에 사용되는 윈도우 사이즈를 결정하고, 결정된 윈도우 사이즈에 근거하여 시간-주파수 변환을 수행할 수 있다. 일예로서, 트랜지언트 구간이 검출된 서브밴드의 경우 단구간 윈도우(short window)를, 검출되지 않은 서브밴드의 경우 장구간 윈도우(long window)를 적용할 수 있다. 다른 예로서, 트랜지언트 구간을 포함하는 프레임에 대하여 단구간 윈도우를 적용할 수 있다.The transform unit 512 may determine a window size used for transformation according to a detection result of the transient section, and perform time-frequency transformation based on the determined window size. As an example, a short window may be applied to a subband in which a transient period is detected, and a long window may be applied to a subband in which a transient period is not detected. As another example, a short-term window may be applied to a frame including a transient period.

신호분류부(513)는 변환부(512)로부터 제공되는 스펙트럼을 프레임 단위로 분석하여 각 프레임이 하모닉 프레임에 해당하는지 여부를 판단할 수 있다. 이때, 하모닉 프레임의 판단에는 공지된 다양한 방법을 사용할 수 있다. 일실시예에 따르면, 신호분류부(513)는 변환부(512)로부터 제공되는 스펙트럼을 복수의 서브밴드로 나누고, 각 서브밴드에 대하여 에너지의 피크치와 평균치를 구할 수 있다. 다음, 각 프레임에 대하여 에너지의 피크치가 평균치보다 소정 비율 이상 큰 서브밴드의 갯수를 구하고, 구해진 서브밴드의 갯수가 소정값 이상인 프레임을 하모닉 프레임으로 결정할 수 있다. 여기서, 소정 비율 및 소정값은 실험 혹은 시뮬레이션을 통하여 미리 결정될 수 있다. 하모닉 시그널링 정보는 다중화부(518)를 통하여 비트스트림에 포함될 수 있다.The signal classifying unit 513 may analyze the spectrum provided from the transform unit 512 in units of frames to determine whether each frame corresponds to a harmonic frame. In this case, various known methods may be used to determine the harmonic frame. According to an exemplary embodiment, the signal classifying unit 513 may divide the spectrum provided from the converting unit 512 into a plurality of subbands, and obtain a peak value and an average value of energy for each subband. Next, for each frame, the number of subbands having a peak value of energy greater than the average value by a predetermined ratio or more may be obtained, and a frame having the obtained number of subbands greater than or equal to a predetermined value may be determined as a harmonic frame. Here, the predetermined ratio and the predetermined value may be determined in advance through experiments or simulations. The harmonic signaling information may be included in the bitstream through the multiplexer 518 .

에너지 부호화부(514)는 각 서브밴드 단위로 에너지를 구하여 양자화 및 무손실 부호화할 수 있다. 일실시예에 따르면, 에너지로서, 각 서브밴드의 평균 스펙트럼 에너지에 해당하는 Norm 값을 사용할 수 있으며, 스케일 팩터 혹은 파워를 대신 사용할 수 있으나 이에 한정되는 것은 아니다. 여기서, 각 서브밴드의 Norm 값은 스펙트럼 정규화부(515) 및 비트할당부(516)로 제공되는 한편, 다중화부(518)를 통하여 비트스트림에 포함될 수 있다. The energy encoder 514 may obtain energy in units of each subband and perform quantization and lossless encoding. According to an embodiment, as the energy, a Norm value corresponding to the average spectral energy of each subband may be used, and a scale factor or power may be used instead, but is not limited thereto. Here, the Norm value of each subband is provided to the spectrum normalizer 515 and the bit allocator 516 , and may be included in the bitstream through the multiplexer 518 .

스펙트럼 정규화부(515)는 각 서브밴드 단위로 구해진 Norm 값을 이용하여 스펙트럼을 정규화할 수 있다.The spectrum normalizer 515 may normalize the spectrum by using the Norm value obtained for each subband.

비트할당부(516)는 각 서브밴드 단위로 구해진 Norm 값을 이용하여 정수 단위 혹은 소수점 단위로 비트 할당을 수행할 수 있다. 또한, 비트할당부(516)는 각 서브밴드 단위로 구해진 Norm 값을 이용하여 마스킹 임계치를 계산하고, 마스킹 임계치를 이용하여 지각적으로 필요한 비트수 즉, 허용비트수를 추정할 수 있다. 다음, 비트할당부(516)는 각 서브밴드에 대하여 할당 비트수가 허용 비트수를 초과하지 않도록 제한할 수 있다. 한편, 비트할당부(516)는 Norm 값이 큰 서브밴드에서부터 순차적으로 비트를 할당하며, 각 서브밴드의 Norm 값에 대하여 각 서브밴드의 지각적 중요도에 따라서 가중치를 부여함으로써 지각적으로 중요한 서브밴드에 더 많은 비트가 할당되도록 조정할 수 있다. 이때, Norm 부호화부(514)로부터 비트할당부(516)로 제공되는 양자화된 Norm 값은 ITU-T G.719 에서와 마찬가지로 심리음향가중(psycho-acoustical weighting) 및 마스킹 효과를 고려하기 위하여 미리 조정된 다음 비트할당에 사용될 수 있다. The bit allocator 516 may allocate bits in units of integers or decimal points by using the Norm value obtained in units of each subband. In addition, the bit allocator 516 may calculate a masking threshold using the Norm value obtained for each subband, and estimate the number of perceptually necessary bits, that is, the number of allowable bits using the masking threshold. Next, the bit allocator 516 may limit the number of allocated bits for each subband so as not to exceed the allowable number of bits. Meanwhile, the bit allocator 516 sequentially allocates bits from the subband having a large Norm value, and assigns a weight to the Norm value of each subband according to the perceptual importance of each subband, thereby perceptually important subbands. can be adjusted to allocate more bits to At this time, the quantized Norm value provided from the Norm encoder 514 to the bit allocator 516 is pre-adjusted in order to consider psycho-acoustical weighting and masking effects as in ITU-T G.719. It can then be used for bit allocation.

스펙트럼 부호화부(517)는 정규화된 스펙트럼에 대하여 각 서브밴드의 할당 비트수를 이용하여 양자화를 수행하고, 양자화된 결과에 대하여 무손실 부호화할 수 있다. 일예로서, 스펙트럼 부호화에 TCQ(Trellis Coded Quantizer), USQ(Uniform Scalar Quantizer), FPC(Factorial Pulse Coder), AVQ(Analog Vector Quantizer), PVQ(Predictive Vector Quantizer) 혹은 이들의 조합과, 각 양자화기에 대응되는 무손실 부호화기를 사용할 수 있다. 또한, 해당 코덱이 탑재되는 환경 혹은 사용자의 필요에 따라서 다양한 스펙트럼 부호화기법을 적용할 수 있다. 스펙트럼 부호화부(517)에서 부호화된 스펙트럼에 대한 정보는 다중화부(518)를 통하여 비트스트림에 포함될 수 있다. The spectrum encoder 517 may perform quantization with respect to the normalized spectrum by using the number of allocated bits of each subband, and may perform lossless encoding on the quantized result. As an example, TCQ (Trellis Coded Quantizer), USQ (Uniform Scalar Quantizer), FPC (Factorial Pulse Coder), AVQ (Analog Vector Quantizer), PVQ (Predictive Vector Quantizer) or a combination thereof and each quantizer correspond to spectral coding A lossless encoder can be used. In addition, various spectrum encoding techniques can be applied according to the environment in which the corresponding codec is mounted or the needs of the user. Information on the spectrum encoded by the spectrum encoder 517 may be included in the bitstream through the multiplexer 518 .

도 6은 본 발명이 적용되는 주파수 도메인 오디오 부호화장치의 구성을 나타낸 블럭도이다.6 is a block diagram showing the configuration of a frequency domain audio encoding apparatus to which the present invention is applied.

도 6에 도시된 오디오 부호화장치(600)는 전처리부(610), 주파수도메인 부호화부(630), 시간도메인 부호화부(650) 및 다중화부(670)을 포함할 수 있다. 주파수도메인 부호화부(630)는 트랜지언트 검출부(631), 변환부(633) 및 스펙트럼 부호화부(6355)를 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The audio encoding apparatus 600 illustrated in FIG. 6 may include a preprocessor 610 , a frequency domain encoder 630 , a time domain encoder 650 , and a multiplexer 670 . The frequency domain encoder 630 may include a transient detector 631 , a transform unit 633 , and a spectrum encoder 6355 . Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 6에 있어서, 전처리부(610)는 입력신호에 대하여 필터링 혹은 다운샘플링 등을 수행할 수 있으나, 이에 한정되는 것은 아니다. 전처리부(610)는 신호 특성에 근거하여 부호화 모드를 결정할 수 있다. 신호 특성에 따라서 현재 프레임에 적합한 부호화 모드가 음성모드인지 또는 음악모드인지 여부를 결정할 수 있고, 또한 현재 프레임에 효율적인 부호화 모드가 시간도메인 모드인지 아니면 주파수도메인 모드인지를 결정할 수 있다. 여기서, 프레임의 단구간 특성 혹은 복수의 프레임들에 대한 장구간 특성 등을 이용하여 신호 특성을 파악할 수 있으나, 이에 한정되는 것은 아니다. 예를 들면, 입력신호가 음성신호에 해당하면 음성모드 혹은 시간도메인 모드로 결정하고, 입력신호가 음성신호 이외의 신호 즉, 음악신호 혹은 혼합신호에 해당하면 음악모드 혹은 주파수도메인 모드로 결정할 수 있다. 전처리부(610)는 신호 특성이 음악모드 혹은 주파수도메인 모드에 해당하는 경우에는 입력신호를 주파수도메인 부호화부(630)로, 신호 특성이 음성모드 혹은 시간도메인 모드에 해당하는 경우 입력신호를 시간도메인 부호화부(650)로 제공할 수 있다.6 , the preprocessor 610 may perform filtering or downsampling on the input signal, but is not limited thereto. The preprocessor 610 may determine an encoding mode based on signal characteristics. Whether the encoding mode suitable for the current frame is the voice mode or the music mode may be determined according to the signal characteristics, and it may also be determined whether the encoding mode efficient for the current frame is the time domain mode or the frequency domain mode. Here, the signal characteristics may be identified using a short-term characteristic of a frame or a long-term characteristic of a plurality of frames, but is not limited thereto. For example, if the input signal corresponds to a voice signal, the voice mode or time domain mode is determined. . The preprocessor 610 converts the input signal to the frequency domain encoder 630 when the signal characteristic corresponds to the music mode or the frequency domain mode, and converts the input signal to the time domain when the signal characteristic corresponds to the voice mode or the time domain mode. It may be provided to the encoder 650 .

주파수도메인 부호화부(630)는 전처리부(610)로부터 제공되는 오디오 신호를 변환부호화에 근거하여 처리할 수 있다. 구체적으로, 트랜지언트 검출부(631)는 오디오신호로부터 트랜지언트 성분을 검출하여 현재 프레임이 트랜지언트 프레임인지를 판단할 수 있다. 변환부(633)는 트랜지언트 검출부(631)로부터 제공되는 프레임 타입 즉, 트랜지언트 정보에 근거하여 변환 윈도우의 길이 혹은 형태를 결정하고, 결정된 변환 윈도우에 근거하여 오디오 신호를 주파수 도메인으로 변환할 수 있다. 변환기법으로는 MDCT, FFT, 혹은 MLT를 적용할 수 있다. 일반적으로, 트랜지언트 성분을 갖는 프레임에 대해서는 짧은 길이의 변환 윈도우를 적용할 수 있다. 스펙트럼 부호화부(635)는 주파수 도메인으로 변환된 오디오 스펙트럼에 대하여 부호화를 수행할 수 있다. 스펙트럼 부호화부(635)에 대해서는 도 7 및 도 9를 참조하여 좀 더 구체적으로 설명하기로 한다.The frequency domain encoder 630 may process the audio signal provided from the preprocessor 610 based on transform encoding. Specifically, the transient detector 631 may determine whether the current frame is a transient frame by detecting a transient component from the audio signal. The transform unit 633 may determine the length or shape of the transform window based on the frame type, ie, transient information, provided from the transient detector 631 , and convert the audio signal into the frequency domain based on the determined transform window. As a transformation method, MDCT, FFT, or MLT may be applied. In general, a short-length transform window may be applied to a frame having a transient component. The spectrum encoder 635 may perform encoding on the audio spectrum transformed into the frequency domain. The spectrum encoder 635 will be described in more detail with reference to FIGS. 7 and 9 .

시간도메인 부호화부(650)는 전처리부(610)로부터 제공되는 오디오 신호에 대하여 CELP(Code Excited Linear Prediction) 부호화를 수행할 수 있다. 구체적으로, ACELP(Algebraic CELP)를 사용할 수 있으나, 이에 한정되는 것은 아니다. The time domain encoder 650 may perform Code Excited Linear Prediction (CELP) encoding on the audio signal provided from the preprocessor 610 . Specifically, ACELP (Algebraic CELP) may be used, but is not limited thereto.

다중화부(670)는 주파수도메인 부호화부(630) 혹은 시간도메인 부호화부(650)에서 부호화결과 생성되는 스펙트럼 성분 혹은 신호 성분과 다양한 인덱스를 다중화하여 비트스트림을 생성하며, 비트스트림은 채널을 통하여 패킷 형태로 전송되거나 저장매체에 저장될 수 있다.The multiplexer 670 multiplexes a spectrum component or a signal component generated as a result of encoding by the frequency domain encoder 630 or the time domain encoder 650 with various indexes to generate a bitstream, and the bitstream is a packet through a channel. It may be transmitted in a form or stored in a storage medium.

도 7은 일실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다. 도 7에 도시된 장치는 도 6의 스펙트럼 부호화부(635)에 대응되거나, 다른 주파수도메인 부호화장치에 포함되거나, 독립적으로 구현될 수 있다.7 is a block diagram showing the configuration of a spectrum encoding apparatus according to an embodiment. The apparatus illustrated in FIG. 7 may correspond to the spectrum encoding unit 635 of FIG. 6 , may be included in another frequency domain encoding apparatus, or may be implemented independently.

도 7에 도시된 스펙트럼 부호화장치(700)는 에너지 추정부(710), 에너지 양자화 및 부호화부(720), 비트할당부(730), 스펙트럼 정규화부(740), 스펙트럼 양자화 및 부호화부(750) 및 노이즈 필링부(760)를 포함할 수 있다.The spectrum encoding apparatus 700 shown in FIG. 7 includes an energy estimator 710 , an energy quantization and encoding unit 720 , a bit allocator 730 , a spectrum normalization unit 740 , and a spectrum quantization and encoding unit 750 . and a noise peeling unit 760 .

도 7을 참조하면, 에너지 추정부(710)는 원래의 스펙트럼 계수들에 대하여 서브밴드로 분리하고, 각 서브밴드별 에너지, 예를 들면 Norm값을 추정할 수 있다. 여기서, 하나의 프레임에서 각 서브밴드는 동일한 크기를 갖거나, 저대역에서부터 고대역으로 갈수록 각 서브밴드에 포함되는 스펙트럼 계수들의 갯수를 증가시킬 수 있다. Referring to FIG. 7 , the energy estimator 710 may divide the original spectral coefficients into subbands and estimate the energy of each subband, for example, a Norm value. Here, each subband in one frame may have the same size or the number of spectral coefficients included in each subband may increase from a low band to a high band.

에너지 양자화 및 부호화부(720)는 각 서브밴드에 대하여 추정된 Norm값을 양자화 및 부호화할 수 있다. 이때, Norm값은 벡터 양자화, 스칼라 양자화, TCQ, LVQ(Lattice vector quantization) 등 다양한 방식으로 양자화될 수 있다. 에너지 양자화 및 부호화부(720)는 추가적인 부호화 효율을 향상시키기 위해 무손실 부호화를 추가적으로 수행할 수 있다. The energy quantization and encoding unit 720 may quantize and encode the Norm value estimated for each subband. In this case, the Norm value may be quantized in various ways, such as vector quantization, scalar quantization, TCQ, and lattice vector quantization (LVQ). The energy quantization and encoding unit 720 may additionally perform lossless encoding to further improve encoding efficiency.

비트할당부(730)는 서브밴드별로 양자화된 Norm값을 이용하여 프레임당 허용비트를 고려하면서 부호화에 필요한 비트를 할당할 수 있다. The bit allocator 730 may allocate bits necessary for encoding while considering allowable bits per frame by using the quantized Norm value for each subband.

스펙트럼 정규화부(740)는 서브밴드별로 양자화된 Norm값을 이용하여 스펙트럼에 대한 정규화를 수행할 수 있다.The spectrum normalizer 740 may normalize the spectrum by using the quantized Norm value for each subband.

스펙트럼 양자화 및 부호화부(750)는 정규화된 스펙트럼에 대하여 서브밴드별로 할당된 비트에 근거하여 양자화 및 부호화를 수행할 수 있다.The spectrum quantization and encoding unit 750 may perform quantization and encoding on the normalized spectrum based on bits allocated to each subband.

노이즈 필링부(760)는 스펙트럼 양자화 및 부호화부(750)에서 허용비트의 제약으로 0으로 양자화된 부분에 적절한 노이즈를 추가할 수 있다. The noise peeling unit 760 may add appropriate noise to the portion quantized to 0 due to the limitation of allowable bits in the spectral quantization and encoding unit 750 .

도 8은 서브밴드 분할의 예를 나타내는 도면이다.8 is a diagram illustrating an example of subband division.

도 8을 참조하면, 입력신호가 48kHz의 샘플링 주파수를 사용하며, 20ms의 프레임 크기를 갖는 경우, 매 프레임당 처리할 샘플의 개수는 960개가 된다. 즉, 입력 신호를 MDCT를 이용하여 50%의 오버래핑을 적용하여 변환하면 960개의 스펙트럼 계수가 얻어진다. 여기서, 오버래핑의 비율은 부호화 방식에 따라 다양하게 설정될 수 있다. 주파수 도메인에서는 이론적으로 24kHz까지 처리가능하지만 인간의 가청대역을 고려하여 20kHz까지의 대역을 표현하기로 한다. 저대역인 0~3.2kHz까지는 8개의 스펙트럼 계수를 하나의 서브밴드로 묶어서 사용하며, 3.2~6.4kHz의 대역에서는 16개의 스펙트럼 계수를 하나의 서브밴드로 묶어서 사용한다. 6.4~13.6kHz의 대역에서는 24개의 스펙트럼 계수를 하나의 서브밴드로 묶어서 사용하며, 13.6~20kHz의 대역에서는 32개의 스펙트럼 계수를 하나의 서브밴드로 묶어서 사용한다. 실제 Norm값을 구해서 부호화를 할 경우, 부호화기에서 정해준 대역까지 Norm을 구하여 부호화할 수 있다. 정해진 대역 이후의 특정 고대역에서는 대역확장과 같은 다양한 방식에 근거한 부호화가 가능하다.Referring to FIG. 8 , when an input signal uses a sampling frequency of 48 kHz and has a frame size of 20 ms, the number of samples to be processed per frame is 960. That is, 960 spectral coefficients are obtained when the input signal is transformed by applying an overlap of 50% using MDCT. Here, the overlapping ratio may be variously set according to the encoding method. In the frequency domain, it is theoretically possible to process up to 24 kHz, but it is decided to express a band up to 20 kHz in consideration of the human audible band. In the low band of 0 to 3.2 kHz, 8 spectrum coefficients are grouped into one subband, and in the band of 3.2 to 6.4 kHz, 16 spectrum coefficients are grouped into one subband. In the band of 6.4~13.6kHz, 24 spectral coefficients are grouped into one subband and used, and in the band of 13.6~20kHz, 32 spectral coefficients are grouped and used as one subband. When encoding is performed by obtaining an actual Norm value, it is possible to obtain and encode a Norm up to a band determined by the encoder. In a specific high band after a predetermined band, encoding based on various methods such as band extension is possible.

도 9는 일실시예에 따른 스펙트럼 양자화장치의 구성을 나타내는 블럭도이다. 9 is a block diagram illustrating a configuration of a spectral quantization apparatus according to an embodiment.

도 9에 도시된 장치는 양자화기 선택부(910), USQ(930) 및 TCQ(950)을 포함할 수 있다.The apparatus shown in FIG. 9 may include a quantizer selection unit 910 , a USQ 930 , and a TCQ 950 .

도 9에 있어서, 양자화기 선택부(910)는 입력신호 즉, 양자화될 신호의 특성에 따라서 다양한 양자화기 중에서 가장 효율적인 양자화기를 선택할 수 있다. 입력신호의 특성으로서는 밴드별 비트 할당정보, 밴드의 크기 정보 등이 사용 가능하다. 선택결과에 따라서, 양자화될 신호를 USQ(830) 및 TCQ(850) 중 하나로 제공되어 대응되는 양자화를 수행할 수 있다.9 , the quantizer selector 910 may select the most efficient quantizer from among various quantizers according to the characteristics of the input signal, that is, the signal to be quantized. As characteristics of the input signal, bit allocation information for each band, band size information, and the like can be used. According to the selection result, the signal to be quantized is provided to one of the USQ 830 and the TCQ 850 to perform corresponding quantization.

도 10은 일실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다. 도 10에 도시된 장치는 도 7의 스펙트럼 양자화 및 부호화부(750)에 대응되거나, 다른 주파수도메인 부호화장치에 포함되거나, 독립적으로 구현될 수 있다. 10 is a block diagram showing the configuration of a spectrum encoding apparatus according to an embodiment. The apparatus illustrated in FIG. 10 may correspond to the spectral quantization and encoding unit 750 of FIG. 7 , may be included in another frequency domain encoding apparatus, or may be implemented independently.

도 10에 도시된 장치는 부호화방식 선택부(1010), 제로 부호화부(1020), 스케일링부(1030), ISC 부호화부(1040), 양자화 성분 복원부(1050) 및 역스케일링부(1060)를 포함할 수 있다. 여기서, 여기서, 양자화성분 복원부(1050) 및 역스케일링부(1060)는 옵션으로 구비될 수 있다.The apparatus shown in FIG. 10 includes an encoding method selection unit 1010, a zero encoding unit 1020, a scaling unit 1030, an ISC encoding unit 1040, a quantization component restoration unit 1050, and an inverse scaling unit 1060. may include Here, the quantization component restoration unit 1050 and the inverse scaling unit 1060 may be optionally provided.

도 10에 있어서, 부호화방식 선택부(1010)는 입력신호 특성을 고려하여 부호화방식을 선택할 수 있다. 입력신호 특성은 밴드별 할당된 비트를 포함할 수 있다. 정규화된 스펙트럼은 밴드별로 선택된 부호화방식에 근거하여 제로 부호화부(1020) 혹은 스케일링부(1030)로 제공될 수 있다. 실시예에 따르면, 밴드의 각 샘플에 할당된 평균 비트수가 소정값, 예를 들면 0.75 이상인 경우 해당 밴드는 매우 중요하다고 판단되어 USQ가 사용되는 한편, 모든 다른 밴드는 TCQ가 사용될 수 있다. 여기서, 평균 비트수는 밴드 길이 혹은 밴드 크기를 고려하여 결정될 수 있다. 선택된 부호화방식은 1 비트의 플래그를 이용하여 설정될 수 있다.Referring to FIG. 10 , the encoding method selection unit 1010 may select an encoding method in consideration of input signal characteristics. The input signal characteristics may include bits allocated for each band. The normalized spectrum may be provided to the zero encoder 1020 or the scaling unit 1030 based on the encoding method selected for each band. According to an embodiment, when the average number of bits allocated to each sample of a band is greater than or equal to a predetermined value, for example, 0.75, the corresponding band is determined to be very important and USQ is used, while TCQ can be used for all other bands. Here, the average number of bits may be determined in consideration of a band length or a band size. The selected encoding method may be set using a 1-bit flag.

제로 부호화부(1020)는 할당된 비트가 0인 밴드에 대하여 모든 샘플들을 0으로 부호화할 수 있다. The zero encoder 1020 may encode all samples to 0 for a band in which the allocated bit is 0.

스케일링부(1030)는 밴드에 할당된 비트에 근거하여 스펙트럼에 대한 스케일링을 수행함으로써 비트율을 조절할 수 있다. 이때, 정규화된 스펙트럼이 사용될 수 있다. 스케일링부(1030)는 밴드에 포함된 각 샘플, 즉 스펙트럼 계수에 할당된 평균 비트수를 고려하여 스케일링을 수행할 수 있다. 예를 들면, 평균 비트수가 많을수록 더 큰 스케일링이 행해질 수 있다. The scaling unit 1030 may adjust the bit rate by scaling the spectrum based on the bits allocated to the band. In this case, a normalized spectrum may be used. The scaling unit 1030 may perform scaling in consideration of the average number of bits allocated to each sample included in the band, that is, a spectrum coefficient. For example, the larger the average number of bits, the greater the scaling can be done.

실시예에 따르면, 스케일링부(1030)는 밴드별로 비트 할당에 따라 적절한 스케일링값을 결정할 수 있다. According to an embodiment, the scaling unit 1030 may determine an appropriate scaling value according to bit allocation for each band.

구체적으로, 먼저 밴드 길이(band length)와 비트 할당 정보를 이용하여 현재 밴드를 위한 펄스 개수를 추정할 수 있다. 여기서, 펄스는 단위 펄스를 의미할 수 있다. 먼저 하기의 수학식 1에 근거하여 현재 밴드에서 실제로 필요한 비트(b)를 산출할 수 있다. Specifically, first, the number of pulses for the current band may be estimated using the band length and bit allocation information. Here, the pulse may mean a unit pulse. First, based on Equation 1 below, it is possible to calculate the bit (b) actually required in the current band.

Figure 112016079904909-pct00001
Figure 112016079904909-pct00001

여기서 n은 밴드의 길이를 나타내며, m은 펄스 개수(number of pulses)를 의미하고, i는 ISC(the Important Spectral Component)를 갖는 넌제로위치의 갯수를 의미한다.Here, n denotes the length of the band, m denotes the number of pulses, and i denotes the number of non-zero positions having the Important Spectral Component (ISC).

한편, 넌제로위치의 개수는 예를 들면, 하기 수학식 2에서와 같이 확률에 근거하여 얻어질 수 있다.On the other hand, the number of non-zero positions can be obtained based on probability, for example, as in Equation 2 below.

Figure 112016079904909-pct00002
Figure 112016079904909-pct00002

그리고, 넌제로위치들을 위하여 필요한 비트수는 하기 수학식 3에서와 같이 추정될 수 있다.And, the number of bits required for non-zero positions can be estimated as in Equation 3 below.

Figure 112016079904909-pct00003
Figure 112016079904909-pct00003

최종적으로, 최종적으로 펄스의 개수는 각 밴드에 할당된 비트에 가장 가까운 값을 갖는 b 값에 의해 선택될 수 있다.Finally, finally, the number of pulses may be selected by a value of b having a value closest to the bit assigned to each band.

다음, 밴드별로 구해진 펄스 개수 추정치와 입력신호의 절대값을 이용하여 초기 스케일링 팩터를 결정할 수 있다. 입력신호는 초기 스케일링 팩터에 의해 스케일링될 수 있다. 만약, 스케일링된 원신호 즉, 양자화된 신호에 대한 펄스 개수의 합이 펄스 개수 추정치와 같지 않은 경우에는, 업데이트된 스케일링 팩터를 이용하여 펄스 재분배(redistribution) 처리를 수행할 수 있다. 펄스 재분배 처리는 현재 밴드에 대하여 선택된 펄스 개수가 밴드별로 구해진 펄스 개수 추정치보다 적은 경우에는 스케일링 팩터를 감소시켜 펄스 개수를 증가시키며, 반대로 많은 경우에는 스케일링 팩터를 증가시켜 펄스 개수를 감소시킨다. 이때, 원신호와의 왜곡을 최소화 하는 위치를 선택하여 미리 정해진 값만큼 증가시키거나 감소시킬 수 있다. Next, the initial scaling factor may be determined using the estimated number of pulses obtained for each band and the absolute value of the input signal. The input signal may be scaled by an initial scaling factor. If the sum of the number of pulses for the scaled original signal, that is, the quantized signal, is not equal to the estimated value of the number of pulses, a pulse redistribution process may be performed using the updated scaling factor. In the pulse redistribution process, if the number of pulses selected for the current band is less than the estimated number of pulses obtained for each band, the scaling factor is decreased to increase the number of pulses. In this case, it is possible to increase or decrease by a predetermined value by selecting a position that minimizes distortion with the original signal.

TSQ를 위한 왜곡 함수는 정확한 거리보다는 상대적인 크기를 필요로 하기 때문에 하기의 수학식 4에서와 같이 각 밴드에서 각 양자화 및 역양자화된 값의 자승 거리의 합으로 얻어질 수 있다. Since the distortion function for TSQ requires a relative size rather than an exact distance, it can be obtained as the sum of the square distances of each quantized and inverse-quantized value in each band as in Equation 4 below.

Figure 112016079904909-pct00004
Figure 112016079904909-pct00004

여기서, pi는 실제 값이고, qi는 양자화된 값을 나타낸다.Here, p i is an actual value, and q i is a quantized value.

한편, USQ를 위한 왜곡 함수는, 최선의 양자화된 값을 결정하기 위하여 유클리디안 거리를 사용할 수 있다. 이때, 복잡도를 최소화하기 위하여 스케일링 팩터를 포함하는 수정된 수학식을 사용하며, 왜곡 함수는 하기 수학식 5에 의해 산출될 수 있다.Meanwhile, the distortion function for USQ may use the Euclidean distance to determine the best quantized value. In this case, a modified equation including a scaling factor is used to minimize complexity, and the distortion function may be calculated by the following equation (5).

Figure 112016079904909-pct00005
Figure 112016079904909-pct00005

만약, 밴드당 펄스개수가 요구되는 값과 매칭되지 않는 경우, 최소 메트릭을 유지하면서 소정갯수의 펄스를 가감할 필요가 있다. 이는 하나의 펄스를 가감하는 과정을 펄스개수가 요구되는 값에 이를때까지 반복하는 방법에 의해 수행될 수 있다.If the number of pulses per band does not match the required value, it is necessary to add or subtract a predetermined number of pulses while maintaining the minimum metric. This can be performed by repeating the process of adding or subtracting one pulse until the number of pulses reaches a required value.

하나의 펄스를 가감하기 위하여, 가장 최적의 왜곡값을 구하기 위한 n개의 왜곡값을 구할 필요가 있다. 예를 들어, 왜곡값 j는 하기 수학식 6에서와 같이 밴드에서 j 번째 위치에 펄스를 추가하는 것에 해당될 수 있다.In order to add or subtract one pulse, it is necessary to obtain n distortion values to obtain the most optimal distortion value. For example, the distortion value j may correspond to adding a pulse to the j-th position in the band as shown in Equation 6 below.

Figure 112016079904909-pct00006
Figure 112016079904909-pct00006

상기 수학식 6을 n 번 수행하는 것을 피하기 위하여, 하기 수학식 7에서와 같은 편차(deviation)을 사용할 수 있다.In order to avoid performing Equation 6 n times, a deviation as in Equation 7 below may be used.

Figure 112016079904909-pct00007
Figure 112016079904909-pct00007

상기 수학식 7에서

Figure 112016079904909-pct00008
는 한번만 계산하면 된다. 한편, n은 밴드 길이 즉, 밴드에 있는 계수 갯수를 나타내며, p는 원신호 즉, 양자화기의 입력신호, q는 양자화된 신호, g는 스케일링 팩터를 나타낸다. 최종적으로, 왜곡 d를 최소화하는 위치 j가 선택되고, qj 가 업데이트될 수 있다. In Equation 7 above
Figure 112016079904909-pct00008
is calculated only once. Meanwhile, n represents the band length, that is, the number of coefficients in the band, p represents the original signal, that is, the input signal of the quantizer, q represents the quantized signal, and g represents the scaling factor. Finally, a position j that minimizes distortion d is selected, and qj can be updated.

한편, 비트율을 제어하기 위하여, 스케일링된 스펙트럼 계수를 사용하여 적절한 ISC를 선택하여 부호화할 수 있다. 구체적으로, 양자화하기 위한 스펙트럼 성분은 각 밴드의 비트 할당을 사용하여 선택될 수 있다. 이때, 스펙트럼 성분들의 분포 및 분산에 따른 다양한 조합에 근거하여 스펙트럼 성분을 선택할 수 있다. 다음, 실제 넌제로위치들을 산출할 수 있다. 넌제로위치는 스케일링 양과 재분배 동작을 분석하여 얻을 수 있으며, 이와 같이 선택된 넌제로위치가 다른 말로 ISC라할 수 있다. 요약하면, 스케일링과 재분배 과정을 거친 신호의 크기를 분석하여 최적 스케일링 팩터와 ISC에 해당하는 넌제로위치 정보를 구할 수 있다. 여기서 넌제로위치 정보는 넌제로위치의 개수와 위치를 의미한다. 만일 스케일링과 재분배 과정을 통해서 펄스 개수가 조절되지 않을 경우, 선택된 펄스를 실제 TCQ과정을 통해 양자화하고 그 결과를 이용하여 잉여 비트를 조정할 수 있다. 이 과정은 다음과 같은 예가 가능하다.Meanwhile, in order to control the bit rate, an appropriate ISC may be selected and encoded using scaled spectral coefficients. Specifically, the spectral component to quantize can be selected using the bit allocation of each band. In this case, the spectral component may be selected based on various combinations according to the distribution and dispersion of the spectral components. Then, the actual non-zero positions can be calculated. The non-zero position can be obtained by analyzing the scaling amount and the redistribution operation, and the non-zero position selected in this way can be called ISC in other words. In summary, it is possible to obtain the optimal scaling factor and non-zero position information corresponding to the ISC by analyzing the magnitude of the signal that has undergone the scaling and redistribution process. Here, the non-zero position information refers to the number and positions of non-zero positions. If the number of pulses is not adjusted through the scaling and redistribution process, the selected pulse is quantized through the actual TCQ process, and the excess bits can be adjusted using the result. Examples of this process are as follows.

넌제로위치 갯수와 밴드별로 구해진 펄스개수 추정치가 같지 않고 넌제로위치의 개수가 소정값, 예를 들면 1보다 크고 구해진 양자화기 선택정보가 TCQ를 나타내는 조건의 경우, 실제 TCQ 양자화를 통해서 잉여 비트를 조정할 수 있다. 구체적으로 상기 조건에 해당하는 경우, 잉여 비트를 조정하기 위하여 먼저 TCQ양자화 과정을 거친다. 사전에 밴드별로 구해진 펄스개수 추정치에 비해 실제 TCQ 양자화를 통해 구해진 현재 밴드의 펄스개수가 더 적은 경우에는 그전에 정해진 스케일링 팩터에 1보다 큰 값, 예를 들어 1.1을 곱해서 스케일링 팩터를 증가시키고, 반대의 경우에는 1보다 적은 값, 예를 들어 0.9를 곱해서 스케일링 팩터를 감소시킨다. 이와 같은 과정을 반복하여 밴드별로 구해진 펄스 개수 추정치와 TCQ 양자화를 통해 구해진 현재 밴드의 펄스개수가 같아지는 경우에 실제 TCQ양자화 과정에서 사용된 비트를 계산하여 잉여 비트를 업데이트한다. 이와 같이 구해진 넌제로위치가 ISC에 해당할 수 있다.In the case of a condition that the number of non-zero positions and the estimated number of pulses obtained for each band are not the same, and the number of non-zero positions is greater than a predetermined value, for example, 1 and the obtained quantizer selection information indicates TCQ, excess bits are obtained through actual TCQ quantization. Can be adjusted. Specifically, when the above condition is satisfied, a TCQ quantization process is first performed in order to adjust the redundant bits. If the number of pulses in the current band obtained through the actual TCQ quantization is smaller than the estimated number of pulses obtained for each band in advance, the scaling factor is increased by multiplying the previously determined scaling factor by a value greater than 1, for example, 1.1, and vice versa. In this case, the scaling factor is reduced by multiplying it by a value less than 1, for example, 0.9. By repeating this process, when the estimated number of pulses obtained for each band and the number of pulses of the current band obtained through TCQ quantization are the same, bits used in the actual TCQ quantization process are calculated and the excess bits are updated. The non-zero position obtained in this way may correspond to the ISC.

ISC 부호화부(1040)에서는 최종적으로 선택된 ISC의 개수 정보 및 넌제로위치 정보를 부호화할 수 있다. 이 과정에서 부호화 효율을 높이기 위해 무손실 부호화를 적용할 수도 있다. ISC 부호화부(1040)는 할당된 비트가 0이 아닌 넌제로밴드에 대하여 선택된 양자화기를 이용하여 부호화를 수행할 수 있다. 구체적으로, ISC 부호화부(1040)는 정규화된 스펙트럼에 대하여 각 밴드별로 ISC를 선택하고, 각 밴드별로 선택된 ISC의 정보를 갯수, 위치, 크기 및 부호에 근거하여 부호화할 수 있다. 이때, ISC의 크기는 갯수, 위치 및 부호와는 다른 방식으로 부호화할 수 있다. 일예를 들면 ISC의 크기는 USQ와 TCQ 중 하나를 이용하여 양자화하고 산술부호화하는 한편, ISC의 갯수, 위치 및 부호에 대해서는 산술부호화를 수행할 수 있다. 특정 밴드가 중요한 정보를 포함하고 있다고 판단되는 경우 USQ를 사용하고, 그렇지 않은 경우 TCQ를 사용할 수 있다. 실시예에 따르면, 신호특성에 근거하여 TCQ와 USQ 중 하나를 선택할 수 있다. 여기서, 신호특성은 각 밴드에 할당된 비트 혹은 밴드의 길이를 포함할 수 있다. 만약, 밴드에 포함된 각 샘플에 할당된 평균 비트수가 임계치, 예를 들어 0.75 이상인 경우 해당 밴드는 매우 중요한 정보를 포함하고 있는 것으로 판단할 수 있으므로 USQ가 사용될 수 있다. 한편, 밴드의 길이가 짧은 저대역의 경우에도 필요에 따라서 USQ가 사용될 수 있다. 다른 실시예에 따르면, 대역폭에 따라서 제1 조인트 방식과 제2 조인트 방식 중 하나가 사용될 수 있다. 예를 들면, NB와 WB에 대해서는 각 밴드에 대한 원래의 비트할당 정보 뿐 아니라, 이전 부호화된 밴드로부터의 잉여 비트에 대한 2차 비트할당 처리를 추가적으로 이용하여 양자화기 선택이 수행되는 제1 조인트 방식이 사용될 수 있고, SWB와 FB에 대해서는 USQ를 사용하는 것으로 결정된 밴드에 대하여 LSB(Least Significant Bit)에 대해서는 TCQ를 사용하는 제2 조인트 방식이 사용될 수 있다. 제1 조인트 방식에서 2차 비트할당 처리는 이전 부호화된 밴드로부터의 잉여 비트들을 분배하는 것으로서, 두개 밴드를 선택할 수 있다. 한편, 제2 조인트 방식에서 나머지 비트들은 USQ를 사용할 수 있다.The ISC encoder 1040 may encode information on the number of finally selected ISCs and non-zero position information. In this process, lossless encoding may be applied to increase encoding efficiency. The ISC encoder 1040 may perform encoding on a non-zero band in which an allocated bit is not 0 using a selected quantizer. Specifically, the ISC encoder 1040 may select an ISC for each band with respect to the normalized spectrum, and encode information of the selected ISC for each band based on the number, location, size, and sign. In this case, the size of the ISC may be coded in a different way from the number, position, and sign. For example, the size of the ISC may be quantized and arithmetic-coded using one of USQ and TCQ, while arithmetic coding may be performed on the number, position, and sign of the ISC. If it is determined that a specific band contains important information, USQ may be used, and if not, TCQ may be used. According to an embodiment, one of TCQ and USQ may be selected based on signal characteristics. Here, the signal characteristics may include bits allocated to each band or the length of the band. If the average number of bits allocated to each sample included in the band is greater than or equal to a threshold, for example, 0.75, the corresponding band may be determined to contain very important information, and thus USQ may be used. Meanwhile, even in the case of a low band having a short band length, USQ may be used if necessary. According to another embodiment, one of the first joint method and the second joint method may be used according to the bandwidth. For example, for NB and WB, the first joint method in which quantizer selection is performed by additionally using not only original bit allocation information for each band, but also secondary bit allocation processing for residual bits from a previously coded band may be used, and a second joint method using TCQ for LSB (Least Significant Bit) for a band determined to use USQ for SWB and FB may be used. In the first joint scheme, the secondary bit allocation process distributes excess bits from a previously coded band, and two bands can be selected. Meanwhile, in the second joint method, the remaining bits may use USQ.

양자화 성분 복원부(1050)는 양자화된 성분에 ISC의 위치, 크기 및 부호 정보를 부가하여 실제의 양자화된 성분을 복원할 수 있다. 여기서, 제로 위치 즉, 제로로 부호화된 스펙트럼 계수에는 0이 할당될 수 있다.The quantized component restoration unit 1050 may restore the actual quantized component by adding ISC position, size, and sign information to the quantized component. Here, 0 may be assigned to a zero position, that is, a spectral coefficient encoded as zero.

역스케일링부(1060)는 복원된 양자화 성분에 대하여 역스케일링을 수행하여, 정규화된 입력 스펙트럼과 동일한 레벨의 양자화된 스펙트럼 계수를 출력할 수 있다. 스케일링부(1030)와 역스케일링부(1060)에서는 동일한 스케일링 팩터를 사용할 수 있다.The inverse scaling unit 1060 may perform inverse scaling on the reconstructed quantized component to output a quantized spectrum coefficient having the same level as that of the normalized input spectrum. The same scaling factor may be used in the scaling unit 1030 and the inverse scaling unit 1060 .

도 11은 일실시예에 따른 ISC 부호화장치의 구성을 나타내는 블럭도이다. 11 is a block diagram showing the configuration of an ISC encoding apparatus according to an embodiment.

도 11에 도시된 장치는 ISC 선택부(1110) 및 ISC 정보 부호화부(1130)을 포함할 수 있다. 도 11의 장치는 도 10의 ISC 부호화부(1040)에 대응되거나 독립적인 장치로 구현될 수 있다.The apparatus shown in FIG. 11 may include an ISC selection unit 1110 and an ISC information encoding unit 1130 . The device of FIG. 11 may correspond to the ISC encoder 1040 of FIG. 10 or may be implemented as an independent device.

도 11에 있어서, ISC 선택부(1110)는 비트율을 조절하기 위하여 스케일링된 스펙트럼으로부터 소정 기준에 의거하여 ISC를 선택할 수 있다. ISC 선택부(1110)는 스케일링된 스펙트럼으로부터 스케일링된 정도를 분석하여, 실제의 넌제로위치를 구할 수 있다. 여기서, ISC는 스케일링 이전의 실제의 넌제로 스펙트럼 계수에 해당할 수 있다. ISC 선택부(1110)는 밴드별 할당된 비트에 근거하여 스펙트럼 계수의 분포 및 분산을 고려하여 부호화할 스펙트럼 계수 즉 넌제로 위치를 선택할 수 있다. ISC 선택을 위하여 TCQ를 사용할 수 있다.11 , the ISC selection unit 1110 may select an ISC based on a predetermined criterion from a scaled spectrum in order to adjust the bit rate. The ISC selector 1110 may obtain an actual non-zero position by analyzing the scaled degree from the scaled spectrum. Here, ISC may correspond to an actual non-zero spectral coefficient before scaling. The ISC selector 1110 may select a spectral coefficient to be encoded, that is, a non-zero position, in consideration of the distribution and dispersion of the spectral coefficients based on the bits allocated for each band. TCQ can be used for ISC selection.

ISC 정보 부호화부(1130)는 선택된 ISC에 근거하여, ISC 정보 즉 ISC 개수정보, 위치정보, 크기정보 및 부호를 복호화할 수 있다.The ISC information encoder 1130 may decode ISC information, that is, ISC number information, location information, size information, and a code, based on the selected ISC.

도 12는 일실시예에 따른 ISC 정보 부호화장치의 구성을 나타내는 블럭도이다. 12 is a block diagram showing the configuration of an ISC information encoding apparatus according to an embodiment.

도 12에 도시된 장치는 위치정보 부호화부(1210), 크기정보 부호화부(1230) 및 부호 부호화부(1250)를 포함할 수 있다.The apparatus shown in FIG. 12 may include a location information encoder 1210 , a size information encoder 1230 , and a code encoder 1250 .

도 12에 있어서, 위치정보 부호화부(1210)는 ISC 선택부(도 11의 1110)에서 선택된 ISC의 위치정보 즉, 넌-제로 스펙트럼 계수의 위치정보를 부호화할 수 있다. 위치정보는 선택된 ISC의 갯수와 위치를 포함할 수 있다. 위치정보의 부호화에는 산술 부호화(arirhmetic coding)가 사용될 수 있다. 한편, 선택된 ISC를 모아서 새로운 버퍼를 구성할 수 있다. ISC 수집을 위하여 제로 밴드와 선택되지 못한 스펙트럼은 제외될 수 있다.12 , the location information encoder 1210 may encode location information of the ISC selected by the ISC selection unit ( 1110 of FIG. 11 ), that is, location information of non-zero spectral coefficients. The location information may include the number and location of the selected ISC. For encoding the location information, arithmetic coding may be used. On the other hand, a new buffer can be configured by collecting the selected ISCs. Zero bands and unselected spectra can be excluded for ISC collection.

크기정보 부호화부(1230)는 새롭게 구성된 ISC의 크기정보에 대하여 부호화를 수행할 수 있다. 이때, TCQ와 USQ 중 하나를 선택하여 양자화를 수행하고, 이어서 산술 부호화를 추가적으로 수행할 수 있다. 산술 부호화의 효율을 높이기 위하여 넌-제로 위치정보와 ISC의 갯수가 사용될 수 있다. The size information encoder 1230 may encode the size information of the newly configured ISC. In this case, quantization may be performed by selecting one of TCQ and USQ, and then arithmetic encoding may be additionally performed. In order to increase the efficiency of arithmetic encoding, non-zero location information and the number of ISCs may be used.

부호정보 부호화부(1250)는 선택된 ISC의 부호정보에 대하여 부호화를 수행할 수 있다. 부호정보의 부호화에는 산술 부호화가 사용될 수 있다.The code information encoding unit 1250 may perform encoding on the selected ISC code information. Arithmetic encoding may be used for encoding the code information.

도 13은 다른 실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다. 도 13에 도시된 장치는 도 7의 스펙트럼 양자화 및 부호화부(750)에 대응되거나, 다른 주파수도메인 부호화장치에 포함되거나, 독립적으로 구현될 수 있다. 13 is a block diagram showing the configuration of a spectrum encoding apparatus according to another embodiment. The apparatus illustrated in FIG. 13 may correspond to the spectral quantization and encoding unit 750 of FIG. 7 , may be included in another frequency domain encoding apparatus, or may be implemented independently.

도 13에 도시된 장치는, 스케일링부(1330), ISC 부호화부(1340), 양자화 성분 복원부(1350) 및 역스케일링부(1360)를 포함할 수 있다. 도 10과 비교할 때, 제로 부호화부(1020)와 부호화방식 선택부(1010)가 생략되며, ISC 부호화부(1340)는 TCQ를 사용할 수 있다는 것을 제외하고 각 구성요소의 동작을 동일하다.The apparatus shown in FIG. 13 may include a scaling unit 1330 , an ISC encoding unit 1340 , a quantization component restoration unit 1350 , and an inverse scaling unit 1360 . Compared with FIG. 10 , the operation of each component is the same except that the zero encoder 1020 and the encoding method selector 1010 are omitted, and the ISC encoder 1340 can use TCQ.

도 14는 다른 실시예에 따른 스펙트럼 부호화장치의 구성을 나타내는 블럭도이다. 도 14에 도시된 장치는 도 7의 스펙트럼 양자화 및 부호화부(750)에 대응되거나, 다른 주파수도메인 부호화장치에 포함되거나, 독립적으로 구현될 수 있다. 14 is a block diagram showing the configuration of a spectrum encoding apparatus according to another embodiment. The apparatus illustrated in FIG. 14 may correspond to the spectral quantization and encoding unit 750 of FIG. 7 , may be included in another frequency domain encoding apparatus, or may be implemented independently.

도 14에 도시된 장치는, 부호화방식 선택부(1410), 스케일링부(1430), ISC 부호화부(1440), 양자화 성분 복원부(1450) 및 역스케일링부(1460)를 포함할 수 있다. 도 10과 비교할 때, 제로 부호화부(1020)가 생략되어 있다는 것을 제외하고 각 구성요소의 동작을 동일하다.The apparatus shown in FIG. 14 may include an encoding method selection unit 1410 , a scaling unit 1430 , an ISC encoding unit 1440 , a quantization component restoration unit 1450 , and an inverse scaling unit 1460 . Compared with FIG. 10 , the operation of each component is the same except that the zero encoder 1020 is omitted.

도 15는 일실시예에 따른 ISC 수집 및 부호화과정의 개념을 나타내는 도면으로서, 먼저 제로 밴드 즉, 0으로 양자화될 밴드는 제외한다. 다음, 넌-제로 밴드에 존재하는 스펙트럼 성분들 중에서 선택된 ISC를 이용하여 새로운 버퍼를 구성할 수 있다. 새로 구성된 ISC에 대하여 밴드 단위로 TCQ를 수행하고, 대응하는 무손실 부호화를 수행할 수 있다. 15 is a diagram illustrating a concept of an ISC collection and encoding process according to an embodiment. First, a zero band, that is, a band to be quantized to 0 is excluded. Next, a new buffer may be constructed using an ISC selected from among the spectral components existing in the non-zero band. TCQ may be performed on a band-by-band basis on the newly configured ISC, and corresponding lossless encoding may be performed.

도 16은 다른 실시예에 따른 ISC 수집 및 부호화과정ISC 수집과정의 개념을 나타내는 도면으로서, 먼저 제로 밴드 즉, 0으로 양자화될 밴드는 제외한다. 다음, 넌-제로 밴드에 존재하는 스펙트럼 성분들 중에서 선택된 ISC를 이용하여 새로운 버퍼를 구성할 수 있다. 새로 구성된 ISC에 대하여 밴드 단위로 USC 혹은 TCQ를 수행하고, 대응하는 무손실 부호화를 수행할 수 있다. 16 is a diagram illustrating the concept of an ISC collection and encoding process and an ISC collection process according to another embodiment. First, a zero band, that is, a band to be quantized to 0 is excluded. Next, a new buffer may be constructed using an ISC selected from among the spectral components existing in the non-zero band. USC or TCQ may be performed on a band-by-band basis with respect to the newly configured ISC, and corresponding lossless encoding may be performed.

도 17은 본 발명에서 사용된 TCQ의 일예를 나타내는 도면으로서, 두개의 제로 레벨을 갖는 8 스테이트 4 코셋의 트렐리스 구조에 해당한다. 해당 TCQ에 대한 자세한 설명은 US 7605727에 개시되어 있다. 17 is a diagram illustrating an example of TCQ used in the present invention, and corresponds to a trellis structure of an 8-state 4 coset having two zero levels. A detailed description of the TCQ is disclosed in US 7605727.

도 18은 본 발명이 적용될 수 있는 주파수 도메인 오디오 복호화장치의 구성을 나타낸 블럭도이다.18 is a block diagram showing the configuration of a frequency domain audio decoding apparatus to which the present invention can be applied.

도 18에 도시된 주파수 도메인 오디오 복호화장치(1800)는 프레임 에러 검출부(1810), 주파수도메인 복호화부(1830), 시간도메인 복호화부(1850) 및 후처리부(1870)을 포함할 수 있다. 주파수도메인 복호화부(1830)는 스펙트럼 복호화부(1831), 메모리 갱신부(1833), 역변환부(1835) 및 OLA(overlap and add)부(1837)을 포함할 수 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다.The frequency domain audio decoding apparatus 1800 shown in FIG. 18 may include a frame error detection unit 1810 , a frequency domain decoding unit 1830 , a time domain decoding unit 1850 , and a post-processing unit 1870 . The frequency domain decoding unit 1830 may include a spectrum decoding unit 1831 , a memory update unit 1833 , an inverse transform unit 1835 , and an overlap and add (OLA) unit 1837 . Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 18을 참조하면, 프레임 에러 검출부(1810)는 수신된 비트스트림으로부터 프레임에러가 발생하였는지를 검출할 수 있다. Referring to FIG. 18 , the frame error detection unit 1810 may detect whether a frame error has occurred from a received bitstream.

주파수도메인 복호화부(1830)는 부호화 모드가 음악모드 혹은 주파수도메인 모드인 경우 동작하며, 프레임에러가 발생한 경우 FEC 혹은 PLC 알고리즘을 동작시키며, 프레임에러가 발생하지 않은 경우 일반적인 변환 복호화과정을 통하여 시간 도메인 신호를 생성한다. 구체적으로, 스펙트럼 복호화부(1831)는 복호화된 파라미터를 이용하여 스펙트럼 복호화를 수행하여 스펙트럼 계수를 합성할 수 있다. 스펙트럼 복호화부(1831)에 대해서는 도 19 및 도 20을 참조하여 좀 더 구체적으로 설명하기로 한다.The frequency domain decoding unit 1830 operates when the encoding mode is the music mode or the frequency domain mode, and operates the FEC or PLC algorithm when a frame error occurs. generate a signal Specifically, the spectrum decoding unit 1831 may synthesize spectrum coefficients by performing spectrum decoding using the decoded parameters. The spectrum decoder 1831 will be described in more detail with reference to FIGS. 19 and 20 .

메모리 갱신부(1833)는 정상 프레임인 현재 프레임에 대하여 합성된 스펙트럼 계수, 복호화된 파라미터를 이용하여 얻어진 정보, 현재까지 연속된 에러프레임의 개수, 각 프레임의 신호특성 혹은 프레임 타입 정보 등을 다음 프레임을 위하여 갱신할 수 있다. 여기서, 신호특성은 트랜지언트 특성, 스테이셔너리 특성을 포함할 수 있고, 프레임 타입은 트랜지언트 프레임, 스테이셔너리 프레임 혹은 하모닉 프레임을 포함할 수 있다.The memory update unit 1833 stores spectral coefficients synthesized with respect to the current frame, which is a normal frame, information obtained using decoded parameters, the number of consecutive error frames, and signal characteristics or frame type information of each frame to the next frame. can be updated for Here, the signal characteristic may include a transient characteristic and a stationary characteristic, and the frame type may include a transient frame, a stationary frame, or a harmonic frame.

역변환부(1835)는 합성된 스펙트럼 계수에 대하여 시간-주파수 역변환을 수행하여 시간 도메인 신호를 생성할 수 있다. The inverse transform unit 1835 may generate a time domain signal by performing time-frequency inverse transform on the synthesized spectral coefficients.

OLA부(1837)는 이전 프레임의 시간 도메인 신호를 이용하여 OLA 처리를 수행하고, 그 결과 현재 프레임에 대한 최종 시간 도메인 신호를 생성하여 후처리부(1870)으로 제공할 수 있다.The OLA unit 1837 may perform OLA processing using the time domain signal of the previous frame, and as a result, may generate a final time domain signal for the current frame and provide it to the post-processing unit 1870 .

시간도메인 복호화부(1850)는 부호화 모드가 음성모드 혹은 시간도메인 모드인 경우 동작하며, 프레임에러가 발생한 경우 FEC 혹은 PLC 알고리즘을 동작시키며, 프레임에러가 발생하지 않은 경우 일반적인 CELP 복호화과정을 통하여 시간도메인 신호를 생성한다.The time domain decoding unit 1850 operates when the encoding mode is the voice mode or the time domain mode, operates the FEC or PLC algorithm when a frame error occurs, and when a frame error does not occur, the time domain through the general CELP decoding process generate a signal

후처리부(1870)는 주파수도메인 복호화부(1830) 혹은 시간도메인 복호화부(1850)로부터 제공되는 시간도메인 신호에 대하여 필터링 혹은 업샘플링 등을 수행할 수 있으나, 이에 한정되는 것은 아니다. 후처리부(1670)는 출력신호로서 복원된 오디오신호를 제공한다.The post-processing unit 1870 may perform filtering or upsampling on the time domain signal provided from the frequency domain decoding unit 1830 or the time domain decoding unit 1850, but is not limited thereto. The post-processing unit 1670 provides the restored audio signal as an output signal.

도 19는 일실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다. 도 19에 도시된 장치는 도 18의 스펙트럼 복호화부(1831)에 대응되거나, 다른 주파수도메인 복호화장치에 포함되거나, 독립적으로 구현될 수 있다.19 is a block diagram illustrating a configuration of a spectrum decoding apparatus according to an embodiment. The apparatus shown in FIG. 19 may correspond to the spectrum decoding unit 1831 of FIG. 18 , may be included in another frequency domain decoding apparatus, or may be implemented independently.

도 19에 도시된 스펙트럼 복호화장치(1900)는 에너지 복호화 및 역양자화부(1910), 비트할당부(1930), 스펙트럼 복호화 및 역양자화부(1950), 노이즈 필링부(1970) 및 스펙트럼 쉐이핑부(1990)을 포함할 수 있다. 여기서, 노이즈 필링부(1970)는 스펙트럼 쉐이핑부(1990)의 후단에 위치할 수도 있다. 각 구성요소는 적어도 하나 이상의 모듈로 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다. The spectrum decoding apparatus 1900 shown in FIG. 19 includes an energy decoding and inverse quantization unit 1910, a bit allocator 1930, a spectrum decoding and inverse quantization unit 1950, a noise filling unit 1970, and a spectrum shaping unit ( 1990) may be included. Here, the noise filling unit 1970 may be located at a rear end of the spectrum shaping unit 1990 . Each component may be integrated into at least one or more modules and implemented as at least one or more processors (not shown).

도 19를 참조하면, 에너지 복호화 및 역양자화부(1910)는 부호화과정에서 무손실 부호화가 수행된 파라미터, 예를 들어 Norm값과 같은 에너지에 대하여 무손실 복호화를 수행하고, 복호화된 Norm값에 대하여 역양자화를 수행할 수 있다. 부호화과정에서 Norm값의 양자화된 방식에 대응되는 방식을 사용하여 역양자화를 수행할 수 있다.Referring to FIG. 19 , the energy decoding and inverse quantization unit 1910 performs lossless decoding on a parameter to which lossless encoding has been performed in the encoding process, for example, energy such as a Norm value, and inverse quantizes the decoded Norm value. can be performed. In the encoding process, inverse quantization may be performed using a method corresponding to the quantization method of the Norm value.

비트할당부(1930)는 양자화된 Norm값 혹은 역양자화된 Norm값에 근거하여 서브밴드별로 필요로 하는 비트수를 할당할 수 있다. 이 경우, 서브밴드 단위로 할당된 비트수는 부호화과정에서 할당된 비트수와 동일할 수 있다.The bit allocator 1930 may allocate the number of bits required for each subband based on the quantized Norm value or the inverse quantized Norm value. In this case, the number of bits allocated in units of subbands may be the same as the number of bits allocated in the encoding process.

스펙트럼 복호화 및 역양자화부(1950)는 부호화된 스펙트럼 계수에 대하여 서브밴드별로 할당된 비트수를 사용하여 무손실 복호화를 수행하고, 복호화된 스펙트럼 계수에 대하여 역양자화 과정을 수행하여 정규화된 스펙트럼 계수를 생성할 수 있다.The spectral decoding and inverse quantization unit 1950 performs lossless decoding on the coded spectral coefficients using the number of bits allocated to each subband, and performs inverse quantization on the decoded spectral coefficients to generate normalized spectral coefficients. can do.

노이즈 필링부(1970)는 정규화된 스펙트럼 계수 중, 서브밴드별로 노이즈 필링을 필요로 하는 부분에 대하여 노이즈를 채울 수 있다. The noise filling unit 1970 may fill noise with respect to a portion requiring noise filling for each subband among the normalized spectral coefficients.

스펙트럼 쉐이핑부(1990)는 역양자화된 Norm값을 이용하여 정규화된 스펙트럼 계수를 쉐이핑할 수 있다. 스펙트럼 쉐이핑 과정을 통하여 최종적으로 복호화된 스펙트럼 계수가 얻어질 수 있다.The spectrum shaping unit 1990 may shape the normalized spectrum coefficients using the inverse quantized Norm value. A finally decoded spectral coefficient may be obtained through a spectral shaping process.

도 20은 일실시예에 따른 스펙트럼 역양자화장치의 구성을 나타내는 블럭도이다. 20 is a block diagram illustrating a configuration of a spectral inverse quantization apparatus according to an embodiment.

도 20에 도시된 장치는 역양자화기 선택부(2010), USQ(2030) 및 TCQ(2050)을 포함할 수 있다.The apparatus shown in FIG. 20 may include an inverse quantizer selector 2010, a USQ 2030, and a TCQ 2050.

도 20에 있어서, 역양자화기 선택부(2010)는 입력신호 즉, 역양자화될 신호의 특성에 따라서 다양한 역양자화기 중에서 가장 효율적인 역양자화기를 선택할 수 있다. 입력신호의 특성으로서는 밴드별 비트 할당정보, 밴드의 크기 정보 등이 사용 가능하다. 선택결과에 따라서, 역양자화될 신호를 USQ(2030) 및 TCQ(2050) 중 하나로 제공되어 대응하는 역양자화를 수행할 수 있다.Referring to FIG. 20 , the inverse quantizer selector 2010 may select the most efficient inverse quantizer from among various inverse quantizers according to characteristics of an input signal, that is, a signal to be inversely quantized. As characteristics of the input signal, bit allocation information for each band, band size information, and the like can be used. According to the selection result, the signal to be inverse quantized is provided to one of the USQ 2030 and the TCQ 2050 to perform corresponding inverse quantization.

도 21는 일실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다. 도 21에 도시된 장치는 도 19의 스펙트럼 복호화 및 역양자화부(1950)에 대응되거나, 다른 주파수도메인 복호화장치에 포함되거나, 독립적으로 구현될 수 있다. 21 is a block diagram showing the configuration of a spectrum decoding apparatus according to an embodiment. The apparatus shown in FIG. 21 may correspond to the spectrum decoding and inverse quantization unit 1950 of FIG. 19 , may be included in another frequency domain decoding apparatus, or may be implemented independently.

도 21에 도시된 장치는 복호화방식 선택부(2110), 제로 복호화부(2130), ISC 복호화부(2150), 양자화성분 복원부(2170) 및 역스케일링부(2190)을 포함할 수 있다. 여기서, 양자화성분 복원부(2170) 및 역스케일링부(2190)는 옵션으로 구비될 수 있다.The apparatus shown in FIG. 21 may include a decoding method selection unit 2110, a zero decoding unit 2130, an ISC decoding unit 2150, a quantization component restoration unit 2170, and an inverse scaling unit 2190. Here, the quantization component restoration unit 2170 and the inverse scaling unit 2190 may be optionally provided.

도 21에 있어서, 복호화방식 선택부(2110)는 밴드별 할당된 비트에 근거하여 복호화방식을 선택할 수 있다. 정규화된 스펙트럼은 밴드별로 선택된 복호화방식에 근거하여 제로 복호화부(2130) 혹은 ISC 복호화부(2150) 로 제공될 수 있다.In FIG. 21 , the decoding method selector 2110 may select a decoding method based on bits allocated for each band. The normalized spectrum may be provided to the zero decoder 2130 or the ISC decoder 2150 based on a decoding method selected for each band.

제로 복호화부(2130)는 할당된 비트가 0인 밴드에 대하여 모든 샘플들을 0으로 복호화할 수 있다.The zero decoder 2130 may decode all samples to 0 for the band in which the allocated bit is 0.

ISC 복호화부(2150)는 할당된 비트가 0이 아닌 밴드에 대하여 선택된 역양자화기를 이용하여 복호화를 수행할 수 있다. ISC 복호화부(2150)는 부호화된 스펙트럼의 각 밴드별로 중요주파수성분의 정보를 얻고, 각 밴드별로 얻어진 중요주파수성분의 정보를 갯수, 위치, 크기 및 부호에 근거하여 복호화할 수 있다. 중요주파수성분의 크기는 갯수, 위치 및 부호와는 다른 방식으로 복호화할 수 있다. 일예를 들면 중요주파수성분의 크기는 산술복호화하고 USQ와 TCQ 중 하나를 이용하여 역양자화하는 한편, 중요주파수성분의 갯수, 위치 및 부호에 대하여 산술복호화를 수행할 수 있다. 역양자화기 선택은 도 10에 도시된 ISC 부호화부(1040)에서와 동일한 결과를 이용하여 수행할 수 있다. ISC 복호화부(2150)는 할당된 비트가 0이 아닌 밴드에 대하여 TCQ와 USQ 중 하나를 이용하여 역양자화를 수행할 수 있다. The ISC decoder 2150 may perform decoding with respect to a band having a non-zero allocated bit by using a selected inverse quantizer. The ISC decoder 2150 may obtain information on important frequency components for each band of the encoded spectrum, and decode the information on important frequency components obtained for each band based on the number, location, size, and sign. The magnitude of the significant frequency component can be decoded in a different way from the number, position, and sign. For example, the magnitude of the significant frequency component is arithmetic-decoded and inverse quantized using one of USQ and TCQ, while arithmetic decoding can be performed on the number, position, and sign of the significant frequency component. The inverse quantizer selection may be performed using the same result as in the ISC encoder 1040 shown in FIG. 10 . The ISC decoder 2150 may perform inverse quantization on a band in which the allocated bit is not 0 using one of TCQ and USQ.

양자화 성분 복원부(2170)는 복원된 ISC의 위치, 크기 및 부호 정보에 근거하여 실제의 양자화 성분을 복원할 수 있다. 여기서, 제로 위치 즉, 제로로 복호화된 스펙트럼 계수인 양자화되지 않은 부분에는 0이 할당될 수 있다.The quantization component restoration unit 2170 may reconstruct an actual quantization component based on the position, size, and sign information of the restored ISC. Here, 0 may be assigned to a zero position, that is, a non-quantized portion that is a spectral coefficient decoded to zero.

추가적으로 역스케일링부(미도시)를 포함하여 복원된 양자화 성분에 대하여 역스케일링을 수행하여, 정규화된 스펙트럼과 동일한 레벨의 양자화된 스펙트럼 계수를 출력할 수 있다.In addition, an inverse scaling unit (not shown) may be included to perform inverse scaling on the reconstructed quantized component to output a quantized spectrum coefficient having the same level as that of the normalized spectrum.

도 22는 일실시예에 따른 ISC 복호화장치의 구성을 나타내는 블럭도이다. 22 is a block diagram showing the configuration of an ISC decoding apparatus according to an embodiment.

도 22의 장치는 펄스수 추정부(2210) 및 ISC 정보 복호화부(2230)을 포함할 수 있다. 도 22의 장치는 도 21의 ISC 복호화부(2150)에 대응되거나 독립적인 장치로 구현될 수 있다.The apparatus of FIG. 22 may include a pulse number estimator 2210 and an ISC information decoder 2230 . The device of FIG. 22 may correspond to the ISC decoder 2150 of FIG. 21 or may be implemented as an independent device.

도 22에 있어서, 펄스수 추정부(2210)는 밴드 크기와 비트 할당 정보를 이용하여 현재 밴드에서 필요한 펄스 개수 추정치를 결정할 수 있다. 즉, 현재 프레임의 비트할당 정보가 인코더와 동일하므로 동일한 비트 할당 정보를 이용하여 동일한 펄스 개수 추정치를 도출하여 복호화를 진행한다. 22 , the pulse number estimator 2210 may determine an estimate of the number of pulses required in the current band by using the band size and bit allocation information. That is, since the bit allocation information of the current frame is the same as that of the encoder, the same pulse number estimate is derived using the same bit allocation information and decoding is performed.

ISC 정보 복호화부(2230)는 추정된 펄스수에 근거하여, ISC 정보 즉 ISC 개수정보, 위치정보, 크기정보 및 부호를 복호화할 수 있다.The ISC information decoding unit 2230 may decode ISC information, ie, ISC number information, location information, size information, and a code, based on the estimated number of pulses.

도 23은 일실시예에 따른 ISC 정보 복호화장치의 구성을 나타내는 블럭도이다. 23 is a block diagram showing the configuration of an ISC information decoding apparatus according to an embodiment.

도 23에 도시된 장치는 위치정보 복호화부(2310), 크기정보 복호화부(2330) 및 부호 복호화부(2350)를 포함할 수 있다.The apparatus shown in FIG. 23 may include a location information decoding unit 2310 , a size information decoding unit 2330 , and a code decoding unit 2350 .

도 23에 있어서, 위치정보 복호화부(2310)는 비트스트림에 포함된 위치정보와 관련된 인덱스를 복호화하여 ISC의 갯수 및 위치를 복원할 수 있다. 위치정보의 복호화에는 산술 복호화가 사용될 수 있다. 크기정보 복호화부(2330)는 비트스트림에 포함된 크기정보와 관련된 인덱스에 대하여 산술복호화를 수행하고, 복호화된 인덱스에 대하여 TCQ와 USQ 중 하나를 선택하여 역양자화를 수행할 수 있다. 산술 복호화의 효율을 높이기 위하여 넌-제로 위치정보와 ISC의 갯수가 사용될 수 있다. 부호 복호화부(2350)는 비트스트림에 포함된 부호정보와 관련된 인덱스를 복호화하여 ISC의 부호를 복원할 수 있다. 부호정보의 복호화에는 산술 복호화가 사용될 수 있다. 일실시예에 따르면, 넌-제로 밴드가 필요로 하는 펄스 갯수를 추정하여 위치정보, 크기정보 혹은 부호정보 복호화에 사용할 수 있다. 23 , the location information decoding unit 2310 may restore the number and location of ISCs by decoding an index related to location information included in a bitstream. Arithmetic decoding may be used for decoding the location information. The size information decoding unit 2330 may perform arithmetic decoding on an index related to size information included in the bitstream, and may perform inverse quantization by selecting one of TCQ and USQ on the decoded index. In order to increase the efficiency of arithmetic decoding, non-zero location information and the number of ISCs may be used. The code decoder 2350 may restore the ISC code by decoding the index related to the code information included in the bitstream. Arithmetic decoding may be used for decoding the code information. According to an embodiment, the number of pulses required for the non-zero band may be estimated and used for decoding position information, magnitude information, or code information.

도 24는 다른 실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다. 도 24에 도시된 장치는 도 19의 스펙트럼 복호화 및 역양자화부(1950)에 대응되거나, 다른 주파수도메인 복호화장치에 포함되거나, 독립적으로 구현될 수 있다. 24 is a block diagram showing the configuration of a spectrum decoding apparatus according to another embodiment. The apparatus shown in FIG. 24 may correspond to the spectrum decoding and inverse quantization unit 1950 of FIG. 19 , may be included in another frequency domain decoding apparatus, or may be implemented independently.

도 24에 도시된 장치는 ISC 복호화부(2150), 양자화성분 복원부(2170) 및 역스케일링부(2490)을 포함할 수 있다. 도 21과 비교할 때, 복호화방식 선택부(2110)와 제로 복호화부(2130)가 생략되어 있고, ISC 복호화부(2150)가 TCQ를 사용한다는 것을 제외하고 각 구성요소의 동작을 동일하다.The apparatus shown in FIG. 24 may include an ISC decoding unit 2150 , a quantization component restoration unit 2170 , and an inverse scaling unit 2490 . Compared with FIG. 21 , the operation of each component is the same except that the decoding method selection unit 2110 and the zero decoding unit 2130 are omitted, and the ISC decoding unit 2150 uses TCQ.

도 25는 다른 실시예에 따른 스펙트럼 복호화장치의 구성을 나타내는 블럭도이다. 도 25에 도시된 장치는 도 19의 스펙트럼 복호화 및 역양자화부(1950)에 대응되거나, 다른 주파수도메인 복호화장치에 포함되거나, 독립적으로 구현될 수 있다. 25 is a block diagram showing the configuration of a spectrum decoding apparatus according to another embodiment. The apparatus shown in FIG. 25 may correspond to the spectrum decoding and inverse quantization unit 1950 of FIG. 19 , may be included in another frequency domain decoding apparatus, or may be implemented independently.

도 25에 도시된 장치는 복호화방식 선택부(2510), ISC 복호화부(2550), 양자화성분 복원부(2570) 및 역스케일링부(2590)을 포함할 수 있다. 도 21과 비교할 때, 제로 복호화부(2130)가 생략되어 있다는 것을 제외하고 각 구성요소의 동작을 동일하다.The apparatus shown in FIG. 25 may include a decoding method selection unit 2510 , an ISC decoding unit 2550 , a quantization component restoration unit 2570 , and an inverse scaling unit 2590 . Compared with FIG. 21 , the operation of each component is the same except that the zero decoding unit 2130 is omitted.

도 26은 다른 실시예에 따른 ISC 정보 부호화장치의 구성을 나타내는 블럭도이다. 26 is a block diagram showing the configuration of an ISC information encoding apparatus according to another embodiment.

도 26의 장치는 확률 산출부(2610)와 무손실 부호화부(2630)을 포함할 수 있다. The apparatus of FIG. 26 may include a probability calculator 2610 and a lossless encoder 2630 .

도 26에 있어서, 확률 산출부(2610)는 ISC 개수, 펄스 개수, TCQ 정보를 이용하여 하기의 수학식 8과 9에 따라 크기 부호화를 위한 확률값을 계산할 수 있다.In FIG. 26 , the probability calculator 2610 may calculate a probability value for magnitude encoding according to Equations 8 and 9 below by using the number of ISCs, the number of pulses, and TCQ information.

Figure 112016079904909-pct00009
Figure 112016079904909-pct00009

Figure 112016079904909-pct00010
Figure 112016079904909-pct00010

여기서

Figure 112016079904909-pct00011
는 각 밴드에서 전송될 ISC 개수중에서 부호화되고 남은 개수,
Figure 112016079904909-pct00012
은 각 밴드에서 전송될 펄스의 개수중의 부호화되고 남은 개수를 나타내며, Ms는 트렐리스 상태에서 존재하는 크기의 집합을 의미한다. 그리고 j는 크기 중에서 부호화된 펄스 개수를 의미한다. here
Figure 112016079904909-pct00011
is the remaining number of encoded ISCs among the number of ISCs to be transmitted in each band;
Figure 112016079904909-pct00012
denotes the remaining number of encoded pulses among the number of pulses to be transmitted in each band, and Ms denotes a set of sizes existing in the trellis state. And j denotes the number of encoded pulses among the magnitudes.

무손실 부호화부(2630)는 이 구해진 확률값을 이용하여 TCQ 크기 정보 즉, 크기와 경로정보를 무손실 부호화할 수 있다. 각 크기의 펄스 개수는

Figure 112016079904909-pct00013
Figure 112016079904909-pct00014
값에 의해 부호화된다. 여기서
Figure 112016079904909-pct00015
값은 이전 크기의 마지막 펄스의 확률을 의미한다. 그리고
Figure 112016079904909-pct00016
는 그 이외의 다른 펄스들에 해당하는 확률을 의미한다. 최종적으로 이와 같이 구해진 확률값에 의해 부호화된 인덱스를 출력한다The lossless encoding unit 2630 may losslessly encode TCQ size information, ie, size and path information, by using the obtained probability value. The number of pulses of each magnitude is
Figure 112016079904909-pct00013
Wow
Figure 112016079904909-pct00014
coded by value. here
Figure 112016079904909-pct00015
The value refers to the probability of the last pulse of the previous magnitude. And
Figure 112016079904909-pct00016
denotes a probability corresponding to other pulses. Finally, an index encoded by the obtained probability value is output.

도 27은 다른 실시예에 따른 ISC 정보 복호화장치의 구성을 나타내는 블럭도이다. 27 is a block diagram showing the configuration of an ISC information decoding apparatus according to another embodiment.

도 27의 장치는 확률 산출부(2710)와 무손실 복호화부(2730)을 포함할 수 있다. The apparatus of FIG. 27 may include a probability calculator 2710 and a lossless decoder 2730 .

도 27에 있어서, 확률 산출부(2710)는 ISC 정보(개수 i, 위치), TCQ 정보, 펄스 개수(m)와 밴드의 크기(n)를 이용하여 크기(magnitude) 부호화를 위한 확률 값을 계산할 수 있다. 이를 위하여, 먼저 구해진 펄스 개수와 밴드 크기를 이용하여 필요한 비트 정보(b)를 구한다. 이때 상기 수학식 1에서와 같이 구해질 수 있다. 그런 다음 구해진 비트 정보(b), ISC 개수, ISC 위치, 그리고 TCQ 정보를 이용하여 상기 수학식 8 및 9에 근거하여 크기 부호화를 위한 확률값을 계산한다.27, the probability calculator 2710 calculates a probability value for magnitude encoding using ISC information (number i, position), TCQ information, the number of pulses (m), and the size (n) of the band. can To this end, the necessary bit information (b) is obtained using the first obtained number of pulses and the band size. In this case, it can be obtained as in Equation 1 above. Then, a probability value for size encoding is calculated based on Equations (8) and (9) using the obtained bit information (b), the number of ISCs, ISC positions, and TCQ information.

무손실 복호화부(2730)는 부호화장치에서와 동일하게 구해진 확률값과 전송된 인덱스 정보를 이용하여 TCQ 크기정보 즉, 크기(magnitude) 정보와 경로(path) 정보를 무손실 복호화할 수 있다. 이를 위하여, 먼저 확률값을 이용하여 개수 정보에 대한 산술부호화 모델을 만들고, 이 구해진 모델을 이용하여 TCQ 크기 정보의 산술복호화를 수행하여 TCQ 크기 정보를 복호화한다. 구체적으로, 각 magnitude의 펄스 개수는

Figure 112016079904909-pct00017
Figure 112016079904909-pct00018
값에 의해 복호화된다. 여기서
Figure 112016079904909-pct00019
값은 이전 magnitude의 마지막 펄스의 확률을 의미한다. 그리고
Figure 112016079904909-pct00020
는 그 이외의 다른 펄스들에 해당하는 확률을 의미한다. 최종적으로 이와 같이 구해진 확률값에 의해 복호화된 TCQ 정보 즉 크기 정보와 경로 정보를 출력한다. The lossless decoding unit 2730 may losslessly decode TCQ size information, that is, magnitude information and path information, by using the obtained probability value and transmitted index information in the same manner as in the encoding apparatus. To this end, first, an arithmetic encoding model for number information is created using a probability value, and TCQ size information is decoded by performing arithmetic decoding on the TCQ size information using the obtained model. Specifically, the number of pulses of each magnitude is
Figure 112016079904909-pct00017
Wow
Figure 112016079904909-pct00018
Decrypted by value. here
Figure 112016079904909-pct00019
The value means the probability of the last pulse of the previous magnitude. And
Figure 112016079904909-pct00020
denotes a probability corresponding to other pulses. Finally, TCQ information decoded by the obtained probability value, that is, size information and path information is output.

도 28은 본 발명의 일실시예에 따른 부호화모듈을 포함하는 멀티미디어 기기의 구성을 나타낸 블록도이다.28 is a block diagram showing the configuration of a multimedia device including an encoding module according to an embodiment of the present invention.

도 28에 도시된 멀티미디어 기기(2800)는 통신부(2810)와 부호화모듈(2830)을 포함할 수 있다. 또한, 부호화 결과 얻어지는 오디오 비트스트림의 용도에 따라서, 오디오 비트스트림을 저장하는 저장부(2850)을 더 포함할 수 있다. 또한, 멀티미디어 기기(2800)는 마이크로폰(2870)을 더 포함할 수 있다. 즉, 저장부(2450)와 마이크로폰(2870)은 옵션으로 구비될 수 있다. 한편, 도 28에 도시된 멀티미디어 기기(2800)는 임의의 복호화모듈(미도시), 예를 들면 일반적인 복호화 기능을 수행하는 복호화모듈 혹은 본 발명의 일실시예에 따른 복호화모듈을 더 포함할 수 있다. 여기서, 부호화모듈(2830)은 멀티미디어 기기(2800)에 구비되는 다른 구성요소(미도시)와 함께 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다. The multimedia device 2800 shown in FIG. 28 may include a communication unit 2810 and an encoding module 2830 . In addition, according to the purpose of the audio bitstream obtained as a result of encoding, the storage unit 2850 for storing the audio bitstream may be further included. Also, the multimedia device 2800 may further include a microphone 2870 . That is, the storage unit 2450 and the microphone 2870 may be provided as options. Meanwhile, the multimedia device 2800 shown in FIG. 28 may further include an arbitrary decryption module (not shown), for example, a decryption module performing a general decryption function or a decryption module according to an embodiment of the present invention. . Here, the encoding module 2830 may be integrated with other components (not shown) included in the multimedia device 2800 and implemented by at least one processor (not shown).

도 28을 참조하면, 통신부(2810)는 외부로부터 제공되는 오디오와 부호화된 비트스트림 중 적어도 하나를 수신하거나, 복원된 오디오와 부호화모듈(2830)의 부호화결과 얻어지는 오디오 비트스트림 중 적어도 하나를 송신할 수 있다.Referring to FIG. 28 , the communication unit 2810 receives at least one of an audio provided from the outside and an encoded bitstream, or transmits at least one of the restored audio and an audio bitstream obtained as a result of encoding by the encoding module 2830. can

통신부(2810)는 무선 인터넷, 무선 인트라넷, 무선 전화망, 무선 랜(LAN), 와이파이(Wi-Fi), 와이파이 다이렉트(WFD, Wi-Fi Direct), 3G(Generation), 4G(4 Generation), 블루투스(Bluetooth), 적외선 통신(IrDA, Infrared Data Association), RFID(Radio Frequency Identification), UWB(Ultra WideBand), 지그비(Zigbee), NFC(Near Field Communication)와 같은 무선 네트워크 또는 유선 전화망, 유선 인터넷과 같은 유선 네트워크를 통해 외부의 멀티미디어 기기 혹은 서버와 데이터를 송수신할 수 있도록 구성된다.The communication unit 2810 is a wireless Internet, wireless intranet, wireless telephone network, wireless LAN (LAN), Wi-Fi (Wi-Fi), Wi-Fi Direct (WFD, Wi-Fi Direct), 3G (Generation), 4G (4 Generation), Bluetooth Wireless networks such as (Bluetooth), Infrared Data Association (IrDA), Radio Frequency Identification (RFID), Ultra WideBand (UWB), Zigbee, Near Field Communication (NFC) or wired telephone networks, such as wired Internet It is configured to transmit/receive data to/from an external multimedia device or server through a wired network.

부호화모듈(2830)은 일실시예에 따르면, 정규화된 스펙트럼에 대하여 각 밴드별로 중요주파수성분을 선택하고, 각 밴드별로 선택된 중요주파수성분의 정보를 갯수, 위치, 크기 및 부호에 근거하여 부호화할 수 있다. 중요주파수성분의 크기는 갯수, 위치 및 부호와는 다른 방식으로 부호화할 수 있으며, 일예를 들면 중요주파수성분의 크기는 USQ와 TCQ 중 하나를 이용하여 양자화하고 산술부호화하는 한편, 중요주파수성분의 갯수, 위치 및 부호에 대하여 산술부호화를 수행할 수 있다. 일실시예에 따르면, 정규화된 스펙트럼을 각 밴드별 할당된 비트에 근거하여 스케일링을 수행하고, 스케일링된 스펙트럼에 대하여 중요주파수성분을 선택할 수 있다.According to an embodiment, the encoding module 2830 may select an important frequency component for each band with respect to the normalized spectrum, and encode information of the important frequency component selected for each band based on the number, location, size and sign. there is. The size of the significant frequency component can be coded in a different way from the number, position, and sign. For example, the size of the significant frequency component is quantized and arithmetic-coded using one of USQ and TCQ, while the number of important frequency components , arithmetic encoding can be performed on positions and signs. According to an embodiment, scaling may be performed on the normalized spectrum based on bits allocated to each band, and an important frequency component may be selected from the scaled spectrum.

저장부(2850)는 멀티미디어 기기(2800)의 운용에 필요한 다양한 프로그램을 저장할 수 있다.The storage unit 2850 may store various programs necessary for the operation of the multimedia device 2800 .

마이크로폰(2870)은 사용자 혹은 외부의 오디오신호를 부호화모듈(2830)로 제공할 수 있다.The microphone 2870 may provide a user or an external audio signal to the encoding module 2830 .

도 29는 본 발명의 일실시예에 따른 복호화모듈을 포함하는 멀티미디어 기기의 구성을 나타낸 블록도이다.29 is a block diagram showing the configuration of a multimedia device including a decoding module according to an embodiment of the present invention.

도 29에 도시된 멀티미디어 기기(2900)는 통신부(2910)와 복호화모듈(2930)을 포함할 수 있다. 또한, 복호화 결과 얻어지는 복원된 오디오신호의 용도에 따라서, 복원된 오디오신호를 저장하는 저장부(2950)을 더 포함할 수 있다. 또한, 멀티미디어 기기(2900)는 스피커(2970)를 더 포함할 수 있다. 즉, 저장부(2950)와 스피커(2970)는 옵션으로 구비될 수 있다. 한편, 도 16에 도시된 멀티미디어 기기(2900)는 임의의 부호화모듈(미도시), 예를 들면 일반적인 부호화 기능을 수행하는 부호화모듈 혹은 본 발명의 일실시예에 따른 부호화모듈을 더 포함할 수 있다. 여기서, 복호화모듈(2930)은 멀티미디어 기기(2900)에 구비되는 다른 구성요소(미도시)와 함께 일체화되어 적어도 하나의 이상의 프로세서(미도시)로 구현될 수 있다.The multimedia device 2900 shown in FIG. 29 may include a communication unit 2910 and a decoding module 2930 . In addition, according to the purpose of the restored audio signal obtained as a result of decoding, the storage unit 2950 for storing the restored audio signal may be further included. Also, the multimedia device 2900 may further include a speaker 2970 . That is, the storage unit 2950 and the speaker 2970 may be provided as options. Meanwhile, the multimedia device 2900 shown in FIG. 16 may further include an arbitrary encoding module (not shown), for example, an encoding module performing a general encoding function or an encoding module according to an embodiment of the present invention. . Here, the decoding module 2930 may be integrated with other components (not shown) included in the multimedia device 2900 and implemented by at least one processor (not shown).

도 29를 참조하면, 통신부(2910)는 외부로부터 제공되는 부호화된 비트스트림과 오디오 신호 중 적어도 하나를 수신하거나 복호화 모듈(2930)의 복호화결과 얻어지는 복원된 오디오 신호와 부호화결과 얻어지는 오디오 비트스트림 중 적어도 하나를 송신할 수 있다. 한편, 통신부(2910)는 도 28의 통신부(2810)와 실질적으로 유사하게 구현될 수 있다.Referring to FIG. 29 , the communication unit 2910 receives at least one of an encoded bitstream and an audio signal provided from the outside, or at least one of a reconstructed audio signal obtained as a result of decoding by the decoding module 2930 and an audio bitstream obtained as a result of encoding. You can send one. Meanwhile, the communication unit 2910 may be implemented substantially similarly to the communication unit 2810 of FIG. 28 .

복호화 모듈(2930)은 일실시예에 따르면, 통신부(2910)를 통하여 제공되는 비트스트림을 수신하고, 부호화된 스펙트럼의 각 밴드별로 중요주파수성분의 정보를 얻고, 각 밴드별로 얻어진 중요주파수성분의 정보를 갯수, 위치, 크기 및 부호에 근거하여 복호화할 수 있다. 중요주파수성분의 크기는 갯수, 위치 및 부호와는 다른 방식으로 복호화할 수 있으며, 일예를 들면 중요주파수성분의 크기는 산술복호화하고 USQ와 TCQ 중 하나를 이용하여 역양자화하는 한편, 중요주파수성분의 갯수, 위치 및 부호에 대하여 산술복호화를 수행할 수 있다.According to an embodiment, the decoding module 2930 receives the bitstream provided through the communication unit 2910, obtains information on important frequency components for each band of the encoded spectrum, and information on important frequency components obtained for each band. can be decoded based on the number, position, size, and sign. The size of the important frequency component can be decoded in a different way from the number, position, and sign. For example, the size of the important frequency component is arithmetic-decoded and inverse quantized using one of USQ and TCQ, while Arithmetic decoding can be performed on the number, position, and sign.

저장부(2950)는 복호화 모듈(2930)에서 생성되는 복원된 오디오신호를 저장할 수 있다. 한편, 저장부(2950)는 멀티미디어 기기(2900)의 운용에 필요한 다양한 프로그램을 저장할 수 있다.The storage unit 2950 may store the restored audio signal generated by the decoding module 2930 . Meanwhile, the storage unit 2950 may store various programs necessary for the operation of the multimedia device 2900 .

스피커(2970)는 복호화 모듈(2930)에서 생성되는 복원된 오디오신호를 외부로 출력할 수 있다.The speaker 2970 may output the restored audio signal generated by the decoding module 2930 to the outside.

도 30은 본 발명의 일실시예에 따른 부호화모듈과 복호화모듈을 포함하는 멀티미디어 기기의 구성을 나타낸 블록도이다.30 is a block diagram showing the configuration of a multimedia device including an encoding module and a decoding module according to an embodiment of the present invention.

도 30에 도시된 멀티미디어 기기(3000)는 통신부(3010), 부호화모듈(3020)과 복호화모듈(3030)을 포함할 수 있다. 또한, 부호화 결과 얻어지는 오디오 비트스트림 혹은 복호화 결과 얻어지는 복원된 오디오신호의 용도에 따라서, 오디오 비트스트림 혹은 복원된 오디오신호를 저장하는 저장부(3040)을 더 포함할 수 있다. 또한, 멀티미디어 기기(3000)는 마이크로폰(3050) 혹은 스피커(3060)를 더 포함할 수 있다. 여기서, 부호화모듈(3020)과 복호화모듈(3030)은 멀티미디어 기기(3000)에 구비되는 다른 구성요소(미도시)와 함께 일체화되어 적어도 하나 이상의 프로세서(미도시)로 구현될 수 있다. The multimedia device 3000 shown in FIG. 30 may include a communication unit 3010 , an encoding module 3020 , and a decoding module 3030 . In addition, the storage unit 3040 for storing the audio bitstream or the restored audio signal according to the purpose of the audio bitstream obtained as a result of encoding or the restored audio signal obtained as a result of decoding may be further included. Also, the multimedia device 3000 may further include a microphone 3050 or a speaker 3060 . Here, the encoding module 3020 and the decoding module 3030 may be integrated with other components (not shown) included in the multimedia device 3000 and implemented by at least one processor (not shown).

도 30에 도시된 각 구성요소는 도 28에 도시된 멀티미디어 기기(2800)의 구성요소 혹은 도 29에 도시된 멀티미디어 기기(2900)의 구성요소와 중복되므로, 그 상세한 설명은 생략하기로 한다.Since each component shown in FIG. 30 overlaps with the component of the multimedia device 2800 shown in FIG. 28 or the component of the multimedia device 2900 shown in FIG. 29, a detailed description thereof will be omitted.

도 28 내지 도 30에 도시된 멀티미디어 기기(2800, 2900, 3000)에는, 전화, 모바일 폰 등을 포함하는 음성통신 전용단말, TV, MP3 플레이어 등을 포함하는 방송 혹은 음악 전용장치, 혹은 음성통신 전용단말과 방송 혹은 음악 전용장치의 융합 단말장치, 텔레컨퍼런싱 혹은 인터랙션 시스템의 사용자 단말이 포함될 수 있으나, 이에 한정되는 것은 아니다. 또한, 멀티미디어 기기(2800, 2900, 3000)는 클라이언트, 서버 혹은 클라이언트와 서버 사이에 배치되는 변환기로서 사용될 수 있다.The multimedia devices 2800, 2900, and 3000 shown in FIGS. 28 to 30 include a voice communication terminal including a telephone, a mobile phone, etc., a broadcasting or music exclusive device including a TV, an MP3 player, or the like, or a dedicated voice communication terminal. It may include, but is not limited to, a terminal and a fusion terminal of a broadcast or music-only device, and a user terminal of a teleconferencing or interaction system. Also, the multimedia devices 2800 , 2900 , and 3000 may be used as a client, a server, or a converter disposed between the client and the server.

한편, 멀티미디어 기기(2800, 2900, 3000)가 예를 들어 모바일 폰인 경우, 도시되지 않았지만 키패드 등과 같은 유저 입력부, 유저 인터페이스 혹은 모바일 폰에서 처리되는 정보를 디스플레이하는 디스플레이부, 모바일 폰의 전반적인 기능을 제어하는 프로세서를 더 포함할 수 있다. 또한, 모바일 폰은 촬상 기능을 갖는 카메라부와 모바일 폰에서 필요로 하는 기능을 수행하는 적어도 하나 이상의 구성요소를 더 포함할 수 있다.On the other hand, when the multimedia devices 2800 , 2900 , and 3000 are, for example, mobile phones, although not shown, a user input unit such as a keypad, a user interface or a display unit for displaying information processed in the mobile phone, and overall functions of the mobile phone are controlled It may further include a processor that does. In addition, the mobile phone may further include a camera unit having an imaging function and at least one or more components performing functions required by the mobile phone.

한편, 멀티미디어 기기(2800, 2900, 3000)가 예를 들어 TV인 경우, 도시되지 않았지만 키패드 등과 같은 유저 입력부, 수신된 방송정보를 디스플레이하는 디스플레이부, TV의 전반적인 기능을 제어하는 프로세서를 더 포함할 수 있다. 또한, TV는 TV에서 필요로 하는 기능을 수행하는 적어도 하나 이상의 구성요소를 더 포함할 수 있다.On the other hand, if the multimedia device (2800, 2900, 3000) is, for example, a TV, although not shown, it may further include a user input unit such as a keypad, a display unit for displaying received broadcast information, and a processor for controlling overall functions of the TV. can In addition, the TV may further include at least one or more components that perform functions required by the TV.

도 31은 일실시예에 따른 스펙트럼의 미세 구조 부호화방법의 동작을 나타낸 플로우챠트이다.31 is a flowchart illustrating an operation of a method for encoding a fine structure of a spectrum according to an embodiment.

도 31을 참조하면, 3110 단계에서는 부호화방식이 선택될 수 있다. 이를 위하여 각 밴드에 대한 정보 및 비트 할당 정보가 사용될 수 있다. 여기서, 부호화방식은 양자화방식을 포함할 수 있다.Referring to FIG. 31 , in operation 3110, an encoding method may be selected. For this, information on each band and bit allocation information may be used. Here, the encoding method may include a quantization method.

3130 단계에서는 현재 밴드가 비트 할당이 제로인 밴드 즉, 제로 밴드인지를 판단하여, 제로 밴드인 경우 3250 단계로 이행하고, 넌제로 밴드인 경우 3270 단계로 이행한다.In step 3130, it is determined whether the current band is a band in which bit allocation is zero, that is, a zero band.

3150 단계에서는 제로 밴드에 있는 모든 샘플을 제로로 부호화할 수 있다.In operation 3150, all samples in the zero band may be zero-coded.

3170 단계에서는 제로 밴드가 아닌 밴드를 선택된 양자화방식에 근거하여 부호화할 수 있다. 일실시예에 따르면, 밴드 길이 및 비트 할당 정보를 사용하여 밴드당 펄스 개수를 추정하고, 넌제로위치 개수를 결정하고, 넌제로위치의 필요 비트수를 추정하여 최종 펄스수를 결정할 수 있다. 다음, 밴드당 펄스 개수와 입력신호의 절대값에 근거하여 초기 스케일링 팩터를 결정하고, 초기 스케일링 팩터에 의한 스케일링 및 펄스 재분배 과정을 통하여 스케일링 팩터를 업데이트할 수 있다. 최종 업데이트된 스케일링 팩터를 이용하여 스펙트럼 계수를 스케일링하고, 스케일링된 스펙트럼 계수를 사용하여 적절한 ISC가 선택될 수 있다. 양자화할 스펙트럼 성분은 각 밴드의 비트 할당정보에 근거하여 선택될 수 있다. 다음, 수집된 ISC의 크기가 USC 및 TCQ 조인트 방식에 의해 양자화되고 산술부호화될 수 있다. 여기서, 산술부호화의 효율을 높이기 위하여 넌제로위치와 ISC의 갯수가 사용될 수 있다. USC 및 TCQ 조인트 방식은 대역폭에 따라서 제1 조인트 방식과 제2 조인트 방식을 가질 수 있다. 제1 조인트 방식은 이전 밴드로부터의 잉여 비트에 대한 2차 비트할당 처리를 이용하여 양자화기 선택이 수행되는 것으로서, NB 와 WB에 사용될 수 있고, 제2 조인트 방식은 USQ 로 결정된 밴드에 대하여 LSB에 대해서는 TCQ를 사용하고 나머지 비트들은 USQ를 사용하는 방식으로서 SWB 와 FB에 사용할 수 있다. 한편, 선택된 ISC의 부호 정보는 음과 양의 부호에 대하여 동일한 확률로 산술 복호화될 수 있다.In operation 3170, a band other than the zero band may be encoded based on the selected quantization method. According to an embodiment, the number of pulses per band may be estimated using the band length and bit allocation information, the number of non-zero positions may be determined, and the number of necessary bits of the non-zero positions may be estimated to determine the final number of pulses. Next, the initial scaling factor may be determined based on the number of pulses per band and the absolute value of the input signal, and the scaling factor may be updated through scaling and pulse redistribution using the initial scaling factor. The spectral coefficient may be scaled using the last updated scaling factor, and an appropriate ISC may be selected using the scaled spectral coefficient. A spectral component to be quantized may be selected based on bit allocation information of each band. Next, the size of the collected ISC can be quantized and arithmetic by the USC and TCQ joint schemes. Here, in order to increase the efficiency of arithmetic encoding, non-zero positions and the number of ISCs may be used. The USC and TCQ joint schemes may have a first joint scheme and a second joint scheme according to bandwidth. The first joint method is that quantizer selection is performed using the secondary bit allocation processing for the excess bits from the previous band, and can be used for NB and WB, and the second joint method is used for the LSB for the band determined by USQ. For SWB and FB, TCQ is used and the remaining bits are USQ. Meanwhile, code information of the selected ISC may be arithmetic-decoded with the same probability for negative and positive codes.

3170 단계 이후 추가적으로 양자화 성분을 복원하는 단계와 밴드를 역스케일링하는 단계를 구비할 수 있다. 각 밴드의 실제 양자화 성분을 복원하기 위하여 양자화 성분에 위치, 부호, 크기 정보가 부가될 수 있다. 제로 위치에는 제로가 할당될 수 있다. 한편, 스케일링시 사용된 것과 동일한 스케일링 팩터를 사용하여 역스케일링 팩터를 추출하고, 복원된 실제 양자화 성분에 대하여 역스케일링을 수행할 수 있다. 역스케일링된 신호는 정규화된 스펙트럼 즉, 입력신호와 동일한 레벨을 가질 수 있다.After step 3170, the step of additionally reconstructing the quantization component and the step of inverse-scaling the band may be included. In order to reconstruct the actual quantized component of each band, position, sign, and size information may be added to the quantized component. A zero may be assigned to the zero position. Meanwhile, an inverse scaling factor may be extracted using the same scaling factor as used for scaling, and inverse scaling may be performed on the restored actual quantized component. The descaled signal may have a normalized spectrum, that is, the same level as the input signal.

도 31의 각 단계에 대해서는 필요에 따라서 전술한 부호화장치의 각 구성요소의 동작이 더 부가될 수 있다.For each step of FIG. 31 , an operation of each component of the above-described encoding apparatus may be further added as needed.

도 32는 일실시예에 따른 스펙트럼의 미세 구조 복호화방법의 동작을 나타낸 플로우챠트이다. 도 32의 방법에 따르면, 정규화된 스펙트럼의 미세 구조를 역양자화하기 위하여, 각 밴드에 대하여 ISC와 선택된 ISC에 대한 정보가 위치, 갯수, 부호 및 크기에 의해 복호화된다. 여기서, 크기 정보는 산술복호화와 USQ 및 TCQ 조인트 방식에 의해 복호화되고, 위치, 갯수, 부호 정보는 산술복호화에 의해 복호화된다.32 is a flowchart illustrating an operation of a method for decoding a fine structure of a spectrum according to an embodiment. According to the method of FIG. 32, in order to inverse quantize the fine structure of the normalized spectrum, information on the ISC and the selected ISC for each band is decoded by position, number, sign, and size. Here, size information is decoded by arithmetic decoding and a USQ and TCQ joint method, and position, number, and sign information are decoded by arithmetic decoding.

구체적으로, 도 32를 참조하면, 3210 단계에서는 복호화방식이 선택될 수 있다. 이를 위하여 각 밴드에 대한 정보 및 비트 할당 정보가 사용될 수 있다. 여기서, 복호화방식은 역양자화방식을 포함할 수 있다. 역양자화방식은 전술한 부호화장치에서 적용된 양자화방식 선택과 동일한 과정을 통하여 선택될 수 있다.Specifically, referring to FIG. 32 , a decoding method may be selected in operation 3210 . For this, information on each band and bit allocation information may be used. Here, the decoding method may include an inverse quantization method. The inverse quantization method may be selected through the same process as the quantization method selection applied in the above-described encoding apparatus.

3230 단계에서는 현재 밴드가 비트 할당이 제로인 밴드 즉, 제로 밴드인지를 판단하여, 제로 밴드인 경우 3250 단계로 이행하고, 넌제로 밴드인 경우 3270 단계로 이행한다.In step 3230, it is determined whether the current band is a band in which bit allocation is zero, that is, a zero band.

3250 단계에서는 제로 밴드에 있는 모든 샘플을 제로로 복호화할 수 있다.In operation 3250, all samples in the zero band may be decoded to zero.

3270 단계에서는 제로 밴드가 아닌 밴드를 선택된 역양자화방식에 근거하여 복호화할 수 있다. 일실시예에 따르면, 밴드 길이 및 비트 할당 정보를 사용하여 밴드당 펄스 개수를 추정 혹은 결정할 수 있다. 이는 전술한 부호화장치에서 적용된 스케일링과 동일한 과정을 통하여 수행될 수 있다. 다음, ISC 의 위치 정보 즉, ISC의 갯수 및 위치를 복원할 수 있다. 이는 전술한 부호화장치에서와 유사하게 처리되고, 적절한 복호화를 위하여 동일한 확률값이 사용될 수 있다. 다음, 수집된 ISC의 크기가 산술 복호화에 의해 복호화되고, USC 및 TCQ 조인트 방식에 의해 역양자화될 수 있다. 여기서, 넌제로위치와 ISC의 갯수가 산술복호화를 위하여 사용될 수 있다. USC 및 TCQ 조인트 방식은 대역폭에 따라서 제1 조인트 방식과 제2 조인트 방식을 가질 수 있다. 제1 조인트 방식은 이전 밴드로부터의 잉여 비트에 대한 2차 비트할당 처리를 추가적으로 이용하여 양자화기 선택이 수행되는 것으로 NB 와 WB에 사용될 수 있고, 제2 조인트 방식은 USQ 로 결정된 밴드에 대하여 LSB에 대해서는 TCQ를 사용하고 나머지 비트들은 USQ를 사용하는 방식으로서 SWB 와 FB에 사용할 수 있다. 한편, 선택된 ISC의 부호 정보는 음과 양의 부호에 대하여 동일한 확률로 산술 복호화될 수 있다.In operation 3270, a non-zero band may be decoded based on the selected inverse quantization method. According to an embodiment, the number of pulses per band may be estimated or determined using the band length and bit allocation information. This may be performed through the same process as the scaling applied in the above-described encoding apparatus. Next, location information of the ISC, that is, the number and location of the ISC may be restored. This is processed similarly to the above-described encoding apparatus, and the same probability value may be used for proper decoding. Next, the size of the collected ISC may be decoded by arithmetic decoding and dequantized by a USC and TCQ joint scheme. Here, the non-zero positions and the number of ISCs may be used for arithmetic decoding. The USC and TCQ joint schemes may have a first joint scheme and a second joint scheme according to bandwidth. In the first joint method, quantizer selection is performed by additionally using the secondary bit allocation processing for the excess bits from the previous band, and it can be used for NB and WB, and the second joint method is used for the LSB for the band determined by USQ. For SWB and FB, TCQ is used and the remaining bits are USQ. Meanwhile, code information of the selected ISC may be arithmetic-decoded with the same probability for negative and positive codes.

3270 단계 이후 추가적으로 양자화 성분을 복원하는 단계와 밴드를 역스케일링하는 단계를 구비할 수 있다. 각 밴드의 실제 양자화 성분을 복원하기 위하여 양자화 성분에 위치, 부호, 크기 정보가 부가될 수 있다. 전송되는 데이터가 없는 밴드는 제로로 채워질 수 있다. 다음, 넌제로 밴드에 있는 펄스 수가 추정되고 ISC의 갯수와 위치를 포함하는 위치 정보가 추정된 펄스 수에 근거하여 복호 U힐 수 있다. 크기 정보에 대해서는 무손실 복호화 및 USC 및 TCQ 조인트 방식에 의한 복호화가 수행될 수 있다. 넌제로 크기값에 대해서는 부호 및 양자화된 성분이 최종적으로 복원될 수 있다. 한편, 복원된 실제 양자화 성분에 대하여 전송된 norm 정보를 사용하여 역스케일링이 수행될 수 있다.After step 3270, the step of additionally reconstructing the quantization component and the step of inverse-scaling the band may be included. In order to reconstruct the actual quantized component of each band, position, sign, and size information may be added to the quantized component. A band with no data to be transmitted may be filled with zeros. Next, the number of pulses in the non-zero band is estimated, and position information including the number and position of ISCs may be decoded based on the estimated number of pulses. Lossless decoding and decoding using USC and TCQ joint schemes may be performed on the size information. For a non-zero magnitude value, the sign and the quantized component may be finally reconstructed. Meanwhile, inverse scaling may be performed using the transmitted norm information on the reconstructed actual quantization component.

도 32의 각 단계에 대해서는 필요에 따라서 전술한 복호화장치의 각 구성요소의 동작이 더 부가될 수 있다.For each step of FIG. 32 , an operation of each component of the above-described decoding apparatus may be further added as needed.

상기 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예들에서 사용될 수 있는 데이터 구조, 프로그램 명령, 혹은 데이터 파일은 컴퓨터로 읽을 수 있는 기록매체에 다양한 수단을 통하여 기록될 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함할 수 있다. 컴퓨터로 읽을 수 있는 기록매체의 예로는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 또한, 컴퓨터로 읽을 수 있는 기록매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 전송 매체일 수도 있다. 프로그램 명령의 예로는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.The above embodiments can be written as a program that can be executed on a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. In addition, the data structure, program command, or data file that can be used in the above-described embodiments of the present invention may be recorded in a computer-readable recording medium through various means. The computer-readable recording medium may include any type of storage device in which data readable by a computer system is stored. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and floppy disks. Hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like may be included. In addition, the computer-readable recording medium may be a transmission medium for transmitting a signal designating a program command, a data structure, and the like. Examples of program instructions may include high-level language codes that can be executed by a computer using an interpreter as well as machine language codes such as those generated by a compiler.

이상과 같이 본 발명의 일실시예는 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명의 일실시예는 상기 설명된 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 스코프는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 이의 균등 또는 등가적 변형 모두는 본 발명 기술적 사상의 범주에 속한다고 할 것이다.As described above, although one embodiment of the present invention has been described with reference to the limited embodiments and drawings, one embodiment of the present invention is not limited to the above-described embodiments, which are common knowledge in the field to which the present invention pertains. Various modifications and variations are possible from such a base material. Accordingly, the scope of the present invention is shown in the claims rather than the above description, and all equivalents or equivalent modifications thereof will fall within the scope of the technical spirit of the present invention.

Claims (15)

밴드에 할당된 비트가 0이면, 상기 밴드 내 샘플들을 0으로 부호화하는 단계;
상기 밴드에 할당된 비트가 0이 아니면, 상기 밴드의 각 샘플에 할당된 평균 비트수와 소정 값의 비교 결과에 따라 USQ(Uniform Scalar Quantization)와 TCQ(Trellis Coded Quantization) 중 어느 하나의 양자화 방식을 선택하는 단계;
상기 밴드에 할당된 비트에 근거하여, 상기 밴드의 스펙트럼 성분에 대한 스케일링을 수행하는 단계;
상기 밴드의 상기 스케일링된 스펙트럼 성분에 기초하여, 상기 밴드의 주요 스펙트럼 성분을 선택하는 단계; 및
상기 밴드의 주요 스펙트럼 성분의 크기에 대해 상기 선택된 양자화 방식을 적용하여, 상기 밴드의 주요 스펙트럼 성분의 크기를 부호화하는 단계를 포함하는 스펙트럼 부호화방법.
if the bit allocated to the band is 0, encoding the samples in the band as 0;
If the bit allocated to the band is not 0, either a quantization method of USQ (Uniform Scalar Quantization) and TCQ (Trellis Coded Quantization) is selected according to the comparison result of the average number of bits allocated to each sample of the band and a predetermined value. selecting;
performing scaling on a spectral component of the band based on the bits allocated to the band;
selecting a major spectral component of the band based on the scaled spectral component of the band; and
and encoding the size of the main spectral component of the band by applying the selected quantization method to the size of the main spectral component of the band.
제1 항에 있어서,
상기 스펙트럼 부호화방법은,
상기 밴드에 할당된 비트가 0이 아니면, 상기 밴드의 주요 스펙트럼 성분의 갯수, 위치 및 부호에 관한 정보를 부호화하는 단계를 더 포함하는 스펙트럼 부호화방법.
According to claim 1,
The spectrum encoding method comprises:
If the bit allocated to the band is not 0, encoding information on the number, position, and sign of major spectral components of the band.
제2 항에 있어서, 상기 주요 스펙트럼 성분의 크기는 상기 주요 스펙트럼 성분의 갯수, 위치 및 부호와는 다른 방식으로 부호화되는 스펙트럼 부호화방법.

3. The method of claim 2, wherein the magnitude of the major spectral component is encoded in a manner different from the number, position, and sign of the major spectral component.

삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020167022489A 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus KR102386738B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227012038A KR102625143B1 (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461940798P 2014-02-17 2014-02-17
US61/940,798 2014-02-17
PCT/KR2015/001668 WO2015122752A1 (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227012038A Division KR102625143B1 (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus

Publications (2)

Publication Number Publication Date
KR20160122160A KR20160122160A (en) 2016-10-21
KR102386738B1 true KR102386738B1 (en) 2022-04-14

Family

ID=57257234

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020247000605A KR20240008413A (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus
KR1020227012038A KR102625143B1 (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus
KR1020167022489A KR102386738B1 (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020247000605A KR20240008413A (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus
KR1020227012038A KR102625143B1 (en) 2014-02-17 2015-02-17 Signal encoding method and apparatus, and signal decoding method and apparatus

Country Status (4)

Country Link
EP (1) EP3109611A4 (en)
JP (1) JP6633547B2 (en)
KR (3) KR20240008413A (en)
CN (2) CN110176241B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220051028A (en) * 2014-02-17 2022-04-25 삼성전자주식회사 Signal encoding method and apparatus, and signal decoding method and apparatus

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105745703B (en) 2013-09-16 2019-12-10 三星电子株式会社 Signal encoding method and apparatus, and signal decoding method and apparatus
CN107077855B (en) 2014-07-28 2020-09-22 三星电子株式会社 Signal encoding method and apparatus, and signal decoding method and apparatus
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
JP7173134B2 (en) 2018-04-13 2022-11-16 日本電信電話株式会社 Encoding device, decoding device, encoding method, decoding method, program, and recording medium
CN110992963B (en) * 2019-12-10 2023-09-29 腾讯科技(深圳)有限公司 Network communication method, device, computer equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061055A1 (en) 2001-05-08 2003-03-27 Rakesh Taori Audio coding
US20130290003A1 (en) 2012-03-21 2013-10-31 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding high frequency for bandwidth extension
JP2014016625A (en) 2008-01-04 2014-01-30 Dolby International Ab Audio coding system, audio decoder, audio coding method, and audio decoding method

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369724A (en) * 1992-01-17 1994-11-29 Massachusetts Institute Of Technology Method and apparatus for encoding, decoding and compression of audio-type data using reference coefficients located within a band of coefficients
JP3685823B2 (en) * 1993-09-28 2005-08-24 ソニー株式会社 Signal encoding method and apparatus, and signal decoding method and apparatus
US6717990B1 (en) * 2000-01-05 2004-04-06 General Dynamics Decision Systems, Inc. Communication system and method for multi-rate, channel-optimized trellis-coded quantization
US6847684B1 (en) * 2000-06-01 2005-01-25 Hewlett-Packard Development Company, L.P. Zero-block encoding
EP1798724B1 (en) * 2004-11-05 2014-06-18 Panasonic Corporation Encoder, decoder, encoding method, and decoding method
KR100851970B1 (en) * 2005-07-15 2008-08-12 삼성전자주식회사 Method and apparatus for extracting ISCImportant Spectral Component of audio signal, and method and appartus for encoding/decoding audio signal with low bitrate using it
JP4640020B2 (en) * 2005-07-29 2011-03-02 ソニー株式会社 Speech coding apparatus and method, and speech decoding apparatus and method
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
MX370012B (en) * 2011-06-30 2019-11-28 Samsung Electronics Co Ltd Apparatus and method for generating bandwidth extension signal.
EP2763137B1 (en) * 2011-09-28 2016-09-14 LG Electronics Inc. Voice signal encoding method and voice signal decoding method
JP6039678B2 (en) * 2011-10-27 2016-12-07 エルジー エレクトロニクス インコーポレイティド Audio signal encoding method and decoding method and apparatus using the same
JP6633547B2 (en) * 2014-02-17 2020-01-22 サムスン エレクトロニクス カンパニー リミテッド Spectrum coding method
CN107077855B (en) * 2014-07-28 2020-09-22 三星电子株式会社 Signal encoding method and apparatus, and signal decoding method and apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061055A1 (en) 2001-05-08 2003-03-27 Rakesh Taori Audio coding
JP2014016625A (en) 2008-01-04 2014-01-30 Dolby International Ab Audio coding system, audio decoder, audio coding method, and audio decoding method
US20130290003A1 (en) 2012-03-21 2013-10-31 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding high frequency for bandwidth extension

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AMR Wideband speech codec. 3GPP TS 26.190 version 5.1.0 Release 5. 2001.12.*
ETSI TS 126 445 V12.0.0, EVS Codec Detailed Algorithmic Description, 2014.11.
Low-complexity, full-band audio coding for high-quality, conversational applications. Recommendation ITU-T G.719. 2008.06.*

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220051028A (en) * 2014-02-17 2022-04-25 삼성전자주식회사 Signal encoding method and apparatus, and signal decoding method and apparatus
KR102625143B1 (en) * 2014-02-17 2024-01-15 삼성전자주식회사 Signal encoding method and apparatus, and signal decoding method and apparatus

Also Published As

Publication number Publication date
CN110176241B (en) 2023-10-31
EP3109611A4 (en) 2017-08-30
CN106233112B (en) 2019-06-28
CN110176241A (en) 2019-08-27
KR20160122160A (en) 2016-10-21
KR20240008413A (en) 2024-01-18
JP2017506771A (en) 2017-03-09
JP6633547B2 (en) 2020-01-22
CN106233112A (en) 2016-12-14
EP3109611A1 (en) 2016-12-28
KR102625143B1 (en) 2024-01-15
KR20220051028A (en) 2022-04-25

Similar Documents

Publication Publication Date Title
JP6980871B2 (en) Signal coding method and its device, and signal decoding method and its device
US10194151B2 (en) Signal encoding method and apparatus and signal decoding method and apparatus
US11705142B2 (en) Signal encoding method and device and signal decoding method and device
KR102386737B1 (en) Signal encoding method and apparatus and signal decoding method and apparatus
KR102386738B1 (en) Signal encoding method and apparatus, and signal decoding method and apparatus
US10902860B2 (en) Signal encoding method and apparatus, and signal decoding method and apparatus

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
A107 Divisional application of patent
GRNT Written decision to grant